第一章 遇见HADOOP 第四节 超越批处理(hadoop:the definitive guide)

    MapReduce根本上是一个批处理系统,它并不适用于交互式分析。你不可能在几秒

或更少的时间内得到查询结果。典型的查询需要耗时几分钟甚至更长,所以它最好是

线下使用,不需要一个人坐在那里等循环处理的结果。

    尽管如此,由于它的独创性,HADOOP比批处理更好。其实,HADOOP有时候是指

一个大的项目生态系统,而不仅仅指HDFS和MapReduce,它们都在分布式计算和大数据

处理的基础设施的庇护下。它们都由APACHE软件基金会管理,它为开源社区提供支持,

包括一个原始的HTTP服务器,并由它得到了名字(appache http server)。

    第一个提供线上访问的组件是HBase,一个键-值存储,使用HDFS作为底层存储。HBase

同时提供了读/写特定行和大批量数据读/写,使它成为一个创建应用程序的好的解决方案。

    HADOOP的新的处理模式的真正推动者是在HADOOP 2中引入了YARN(Yet Another Resource Negotiator)。

YARN是一个集群资源管理系统,它可以让任何分布式程序(不仅仅是MapReduce)运行在

HADOOP的集群上。

    最近几年,与HADOOP相关的各种处理模式已很繁荣。例如:

  •     交互式SQL

        摒弃MapReduce而使用一个分布式查询引擎(如Impala)或容器复用(如Tez上的Hive),

在HADOOP上使用SQL查询大数据时可以达到低延迟。

  •     迭代处理

        许多算法--比如机器学习中的算法--都是迭代的,所以在内存中存储中间数据,与每次迭代都从

硬盘上加载相比是更有效的。MapReduce不允许这样做,但是可以直接使用Spark来做这件事。

  •     流处理

        流处理系统如Storm,Spark Streaming,或Samza,使实时计算分布式的大数据流成为可能,并返回

处理结果给HADOOP存储或其它的外部系统。

  •     查询

          Solr查询平台可以运行在HADOOP集群上,他们添加文档索引在HDFS上,根据索引提供查询服务。

      

    尽管在HADOOP上出现了不同的处理框架,但是MapReduce在批处理领域还是占有一席之地,理解它

的工作原理是非常有用的,它引入了一些被广泛接受的观点(像输入格式化,或数据集合拆分)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值