简介
本片博客介绍大数据相关的开源系统以及他们对应的一句话简介, 对于各位想大概了解大数据都有哪些开源系统的同学有帮助。
【广告】 如果你喜欢本博客,请点此查看本博客所有文章:http://www.cnblogs.com/xuanku/p/index.html
各种相关开源系统简介
如下是Apache基金支持的开源软件
- hdfs
跟GFS类似, 一个分布式文件系统。 - mapreduce
跟Google的MapReduce类似, 一个典型的简单的分布式计算框架。 - yarn
资源管理系统, 跟Mesos类比。 - Avro
跟PB类似, 用于将数据结构序列化成字节码, 在不同的语言之间切换。
官方举例是将C转换给Pig。 - BigTop
一个给Hadoop打包和测试的软件。其本来是cloudera公司自己给自己写的一个方便OP部署和搭建环境的工具, 不过因为写得不错, 已经成为了Apache顶级项目。目前支持系列Hadoop生态链中的软件: Zookeeper, Flume, HBase, Pig, Hive, Sqoop, Oozie, Whirr, Mahout, SolrCloud, Crunch, DataFu and Hue - Chukwa
收集各种实时监控数据(比如日志)并固化到HDFS上的事情。 - Drill
Google的Dremel的开源版本。PB以上数据实时秒级查询。 - Flume
用来做数据迁移的工具。支持数据包括Avro, files, 系统日志, 落地的系统包括HDFS, HBase。 - HBase
Google的BigTable的开源版本。宽列存储, 底层基于HDFS。 - HCatalog
为HDFS做的一个管理metadata的系统。基于Hive, 提供服务给MapReduce, Pig, 将来会支持HBase。 - Hive
支持HSQL, 将SQL转换成MapReduce任务。 - Mahout
一个数据挖掘, 机器分析的算法库。 - Oozie
用来管理Hadoop中的多轮任务的工具, 类似DAG管理工具。 - Tez
也是多个任务的DAG管理工具, 但是其做得更底层,直接替代了MR的调度程序,多个任务之间的数据传递不用再落地到hdfs上了。 - Pig
跟Hive类似, 提供比裸写MR更友好的界面, 然后翻译成MapReduce。只是Hive提供的是SQL, Pig提供的是更高级别的语言Pig-Latin, 供用户做数据挖掘和分析。 - Sqoop
Sql-to-Hadoop。将关系型数据库中的数据导入到Hadoop当中。 - ZooKeeper
提供高可用的存储服务。内部采用paxos一致性协议。 - Whirr
用于将Hadoop放到各种IaaS里面去运行的环境部署类项目。 - Crunch
用来管理Hadoop/Spark上面的Pipeline的软件。应该是比Pig/Hive更低一个级别的抽象, 提供数据的join/aggregation的Java API。 - DataFu
为Pig而准备的系列数据挖掘算法软件包。 - Hue
Hadoop的漂亮平台化界面。
如下是非Apache组织的一些项目
18. Spark
支持迭代式计算。将MapReduce的一轮一轮计算的概念转换成同一批数据不停处理的概念, 并提供高级语言。
19. Shark
Hive On Spark。即支持HSQL。
20. Impala(Cloudera)
另一个Google的Dremel的开源版本, 界面跟Hive类似(事实上就是使用的Hive-SQL的子集), 只是不是翻译成MapReduce而是直接查询。
21. Sentry(Cloudera)
在Hive/Impala之上独立的一层专门做认证授权的系统。
22. SolrCloud
Solr+Hadoop, Big Data Search。
参考
- Hadoop Software Ecosystem. http://www.revelytix.com/?q=content/hadoop-ecosystem
- Avro in 3 minutes. https://www.youtube.com/watch?v=3BOkW1iVQOQ
- OLAP技术产品组成. http://www.maxatx.com/olap/index.htm