Hadoop拥有一个庞大而且充满活力的开发者社区,但Hadoop生态系统当中的很多项目在名称与功能的匹配性方面出入很大,这直接导致很多朋友难以分清各个项目的作用以及使用目的。 作为Hadoop的构建核心,HDFS与MapReduce是无法回避的两大要素。不过开发者及企业做出的大量贡献让Hadoop成为一套更为复杂的平台。生态系统中的一部分项目属于Apache基金会项目(在下图中以‘A’作为标注),另一些则属于具备Apache许可、但却由企业负责运作(在下图中以‘AL’作为标注)的项目。 在今天的文章中,我们将对Hadoop的发展历程做一番回顾,看看如今其阵容之中包含着哪些“猛将”。 能做什么: 作为Hadoop的文件系统或者存储机制。 有何帮助: 创建一套重复性、可容错且可扩展的文件系统,旨在处理大型文件。利用数据位置提高MapReduce任务的数据输入性能。 能做什么: 一款高度可扩展的数据库。 有何帮助: 允许我们以线性方式对数据库进行扩展。提供可进行调节的数据一致性级别控制。 能做什么: 利用HDFS创建高度可扩展性数据库。 有何帮助: 实现高度可扩展特性与随机访问。利用HDFS保障严格的数据一致性。 做能什么:帮助分布式节点之间的数据实现同步 。 有何帮助: 对集群中所有节点之间的一致性分布式小规模数据进行维护。 能做什么: 将一项工作拆分为多个任务并同时加以实施。 有何帮助: 框架会对分布式系统当中的疑难组件进行抽象化处理,允许系统同时处理大量数据。 能做什么: 允许用户通过查询语言来处理数据。 有何帮助: 帮助SQL程序员通过创建类SQL查询以使用MapReduce。 能做什么: 在大规模数据当中实现低延迟查询。 有何帮助: 帮助SQL程序员通过创建类SQL查询以提高大数据访问速度。
|