Hadoop批量分析和hadoop实时分析之间有什么区别

时间:2016-02-11 19:36:30

标签: hadoop apache-spark

我想知道Hadoop批量分析和Hadoop实时分析之间的区别

E.g Hadoop real time analytics可以使用Apache Spark完成,Hadoop batch analytics可以使用Map reduce编程完成。

此外,如果实时分析是更受欢迎的分析,那么什么是批量分析?

感谢

4 个答案:

答案 0 :(得分:2)

批处理意味着您处理到目前为止收集的aaaaaaall数据。实时意味着您在数据进入系统时处理数据。没有人是"首选"。

答案 1 :(得分:1)

让我解释一下批处理的用例&真正的处理。

批处理:

在股票市场申请中,您需要每天提供以下摘要数据

  1. 对于每只股票,买单总数和所有买单的总和
  2. 对于每个股票,销售订单总数和所有卖单的总和
  3. 对于每只股票,成功订单的总数&订单失败

  4. 这里需要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就是示例。