我想知道Hadoop批量分析和Hadoop实时分析之间的区别。
E.g Hadoop real time analytics
可以使用Apache Spark
完成,Hadoop batch analytics
可以使用Map reduce
编程完成。
此外,如果实时分析是更受欢迎的分析,那么什么是批量分析?
感谢
答案 0 :(得分:2)
批处理意味着您处理到目前为止收集的aaaaaaall数据。实时意味着您在数据进入系统时处理数据。没有人是"首选"。
答案 1 :(得分:1)
让我解释一下批处理的用例&真正的处理。
批处理:
在股票市场申请中,您需要每天提供以下摘要数据
对于每只股票,成功订单的总数&订单失败
等
这里需要24小时的股票市场数据来生成这些报告。
**天气应用:**
保存所有国家/地区所有地方的天气报告。对于像纽约这样的特定地方或像美国这样的国家,找到自1900年以来最热和最冷的一天。这个查询需要巨大的输入数据集,需要处理数千个noudes。
您可以使用 Hadoop Map Reduce job
来提供上述摘要。您可能必须处理Peta字节的数据,这些数据存储在Hadoop集群中的4000多个服务器中。
实时分析:
另一个用例,您登录了facebook或twitter等社交网站。你的朋友在你的墙上贴了一条消息,或者在twitter上发了推文。您必须实时获得这些通知。
当您访问Booking.com等网站预订酒店时,您会收到X用户正在查看此酒店等的实时通知。这些通知是实时生成的。
在上述用例中,系统应处理数据流并向用户生成实时通知,而不是等待一天的数据。 Spark流为处理这些类型的场景提供了出色的支持。
Spark使用内存处理来加快查询执行速度,但是不可能总是在内存中使用peta字节的数据。 Spark可以处理数TB的数据,Hadoop可以处理Peta字节的数据。
答案 2 :(得分:0)
Hadoop批量分析和实时分析都完全不同,具体取决于您的用例,例如 - 您有大量的行数据集,并且您只想从该数据集中提取少量信息,信息可能是根据一些计算/趋势等,这可以通过批处理来完成,例如找到自过去50年以来的最低温度。
实时分析意味着您需要尽可能快地获得预期的输出,就像您的朋友在Twitter上发布推文一样,您的朋友会在推文时尽快收到推文。
答案 3 :(得分:0)
批处理数据是处理大量数据的有效方法,该方法是在一段时间内收集一组事务。收集,输入,处理数据,然后生成批处理结果(Hadoop专注于批处理数据处理)。批处理需要用于输入,处理和输出的单独程序。工资和计费系统就是一个例子。
相反,实时数据处理涉及数据的连续输入,处理和输出。数据必须在短时间内(或接近实时)进行处理。雷达系统,客户服务和银行ATM就是示例。