各种Hadoop软件集成包 其它Apache项目

开发的一些安装包是为了捆绑其它软件,例如Hive、HBase、Pig,一些细微的版本不兼容问题只有在系统处理特殊任务时才会显现。所以,把这些软件打包发布可以提供一组兼容的软件。另一些开发人员使用私有扩展增强Hadoop,使其既可以成为免费开源产品也可以成为商业产品

Cloudera开发的Hadoop版本

http://www.cloudera.com/hadoop,它是目前使用最广泛的Hadoop安装包,集成了很多实用软件,不仅可免费使用,而且的质量可靠,简写为CDH(Cloudera Distribution for Hadoop),CDH提供了多种格式的安装包供用户下载,并以即装即用的方式部署软件。

Hortonworks推出的数据平台

http://hortonworks.com/products/hortonworksdataplatform/,2011年Yahoo成立的一个名为Hortonworks新公司,推出了自行研发的预集成的Hadoop安装包,取名为HDP,HDP甚至包括其管理工具在内,基本上是一个完全开源的产品,公司把它定位成一个关键的集成平台。

MapR

http://www.mapr.com,MapR主要关注软件性能和可用性,率先实现了Hadoop NameNode和JobTracker的高可用性解决方案,还集成了NFS文件系统,用完全兼容POSIX的文件系统代替了HDFS,便于远程挂接。MapR同时提供了免费版和企业版。

IBM InfoSphere Big Insights

http://www.ibm.com/software/data/infosphere/biginsights/,分别提供了免费版和企业版。免费版对Apache Hadoop产品进行了改进,新增一些免费的管理工具和部署工具。企业版还可以与CDH或HDP共同使用。

HBase

Mapreduce和Hive任务都侧重于成批地访问数据,HBase正好相反,它力求低延迟的访问数据。因此,它能够直接支持面向用户的服务。用户可以在HBase运行时新增数据列,并依据数据值将其插入HBase中的合适位置。因为HBase实现了从原始键到目标列的高效映射,所以每次数据查找操作的执行速度都很快。如果用户需要低延迟地访问存储在Hadoop里的大规模结构化数据,HBase绝对是最好的选择之一。

Oozie

Oozie是一个针对Hadoop开发的工作流调试工具,以最简单的模式提供了执行MapReduce作业的调度机制,其调度原则要么是一定的时间段(例如,每小时执行一次),要么是数据可用性(例如,当新数据到达时执行)。还可以指定多级工作流。

除了直接调度MapReduce作业的运行之外,也可以调度Hive或Pig命令的运行,甚至是完全和Hadoop无关的任务(如发邮件,执行shell脚本或在远程机上运行命令)。用户可通过多种方式构建工作流,一种通用的方法就是使用Pentaho Kettle(http://kettle.pentaho.com)和Spring Batch(http://static.springsource.org/spring-batch)这样的Extract Transform Load工具。这些工具中集成了部分Hadoop,如果程序员要构建一个Hadoop交互工作流,手边却没有一款满意的集成了Hadoop的工作流工具,不妨考虑一下Oozie。

Whir

如果想借助Amazon AWS这样的云服务部署Hadoop,还不如直接使用更高级的ElasticMapReduce服务,而不必再基于EC2搭建自有集群。开发Whir的初衷,是解决在云基础设施上部署Hadoop的复杂性。它是一个通用的云服务,并不限定具体的应用程序,Hadoop只是其中一个例子。

Whir提供了一种程序化的方法在云基础设施上部署Hadoop,它会解决所有底层服务的问题。而且,它与云服务提供商无关,这样就能避免在不同云服务平台上部署应用程序的很多问题。

Pig与Cascading

Pig与Hive的主要区别:Pig是一个命令式语言,它定义了数据处理过程的执行方式,而Hive更侧重于描述,它定义了目标结果却不管如何实现这个目标。Hive和Pig使用不同语言描述处理过程,而Cascading则提供了一系列更高层的抽象。它无需考虑多个MapReduce作业的处理方式以及如何与Cascading共享数据,而是采用了数据流的数据模型。数据流中用到了管道和多个连接器、分接头和类似构件。这些部件以编程方式构建的,Cascading负责管理工作流在集群上的翻译、调度和执行。

你可能感兴趣的:(Distributed,Filesystem)