我想知道Hadoop批处理分析和Hadoop实时分析的区别。
例如,Hadoop real time analytics可以使用Apache Spark完成,而Hadoop batch analytics可以使用Map reduce编程。
另外,如果实时分析是更好的分析方法,那么批量分析需要什么?
谢谢
发布于 2016-02-11 20:55:04
批处理意味着处理到目前为止收集的所有数据。实时意味着您在数据进入系统时处理它.两者都不是“首选”。
发布于 2016-02-12 13:24:51
让我解释一下批处理和真实处理的用例。
批处理:
在股票市场应用程序中,您需要每天提供以下汇总数据。
这里需要24小时的股市数据来生成这些报告。
**天气申请:**
把世界各地的天气报告留给所有国家。对于纽约这样的地方,或者像美国这样的国家,都会发现自1900年以来最热最冷的一天。这个查询需要巨大的输入数据集,这需要对数千个数字进行处理。
您可以使用Hadoop Map Reduce job提供上述摘要。您可能必须处理Peta字节的数据,这些数据存储在Hadoop集群中的4000+服务器中。
实时分析:
另一个用例是,你登录了像facebook或twitter这样的社交网站。你的朋友在你的墙上贴了一条信息,或者在推特上发了一条推特。你必须实时收到这些通知。
当您访问像Booking.com这样的网站预订酒店时,您将得到实时通知,比如X用户当前正在查看该酒店等等。这些通知是实时生成的。
在上述用例中,系统应该处理数据流并向用户生成实时通知,而不是等待一天的数据。星火流为处理这类场景提供了极好的支持。
Spark使用内存中的处理来加快查询执行速度,但是不可能总是对peta字节的数据使用内存中的处理。Spark可以处理of字节的数据,Hadoop可以处理Peta字节的数据。
发布于 2016-02-12 05:37:27
Hadoop批处理分析和实时分析完全不同,这取决于您想要的用例,例如,您有大量的行数据集,而且您只想从该数据集中提取很少的信息,信息可能是基于某些计算/趋势等,而这可以通过批量处理来完成,比如从过去50年来找到最低温度。
而实时分析,意味着你需要像你的朋友在twitter上发推文那样,尽快获得预期的输出,并且只要你的朋友发了推文,你就会得到这些信息。
https://stackoverflow.com/questions/35348499
复制相似问题