Hadoop是一个由Apache基金会所开发的开源分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序,充分利用集群的威力进行高速运算和存储。Hadoop得以在大数据处理应用中广泛应用得益于其自身在数据提取、变形和加载(ETL)方面上的天然优势。Hadoop的分布式架构,将大数据处理引擎尽可能的靠近存储。
为了帮助大家进一步了解Hadoop,云栖社区组织翻译了GitHubAwesomeHadoop资源,涵盖Hadoop中常见的库与工具、存储方式、数据库,以及相关的书籍、网站等资源。
目录:
AwesomeHadoop
Hadoop
YARN
NoSQL
Hadoop上的SQL
数据管理
工作流、生命周期及管理
数据提取与整合
DSL
库和工具
实时数据处理
分布式计算和编程
包装、配置和监测
监测
搜索
安全性
基准
机器学习和大数据分析
其他
资源
网站
演示
书籍
Hadoop大数据事件
Hadoop
ApacheTez–它是一个针对Hadoop数据处理应用程序的新分布式执行框架,该框架基于YARN;
SpatialHadoop–SpatialHadoop是ApacheHadoop的MapReduce扩展,专门用于处理空间数据;
GISToolsforHadoop–用于Hadoop框架的大数据空间分析;
ElasticsearchHadoop–Elasticsearch与Hadoop深度集成,可用于实时搜索和分析,支持Map/Reduce、Cascading、ApacheHive和ApachePig;
dumbo-Python模块,使Hadoop程序的编写和运行更为容易;
hadoopy–用Cython写的PythonMapReduce库;
mrjob-mrjob是一个Python2.5+程序包,可以帮助编写和运行Hadoop工作流;
pydoop-为Hadoop提供PythonAPI的程序包;
hdfs-du-Hadoop分布式文件系统(HDFS)的交互可视化;
WhiteElephant-Hadoop的日志聚合器和仪表板;
KijiProject
Genie-Genie提供REST-fulAPI,以便运行Hadoop、Hive和Pigjobs,还管理多个Hadoop资源,并在它们之间进行作业提交;
ApacheKylin–最初来自eBay公司的开源分布式分析引擎,能提供Hadoop之上的SQL查询接口及多维分析(OLAP),以支持超大规模数据集;
Crunch-基于Go的工具包,用于在Hadoop上的ETL和特征提取;
ApacheIgnite-分布式内存平台。
YARN
ApacheSlider-ApacheSlider是Apache软件基金会的孵化项目,旨在能够轻松地实现现有应用程序到YARN集群的部署;
ApacheTwill-ApacheTwill是ApacheHadoop?YARN的抽象层,降低了开发分布式应用程序的复杂度,让开发者更专注于自己的应用逻辑;
mpich2-yarn–在YARN上运行MPICH2。
NoSQL
下一代数据库大多定位于以下几点:非关系型、分布式、开放源码和横向扩展。
ApacheHBase-ApacheHBase;
ApachePhoenix–Hbase的SQL驱动,支持辅助索引;
happybase-一个开发者友好型的Python库,用于ApacheHBase的交互;
Hannibal–用于监测和维护HBase集群的工具;
Haeinsa–用于HBase的线性可扩展多行多表交易库;
hindex–Hbase的辅助索引;
ApacheAccumulo-ApacheAccumulo可排序分布式键/值存储,是一个强大的、可扩展高性能数据存储和检索系统;
OpenTSDB-可扩展时间序列数据库;
ApacheCassandra
Hadoop中的SQL
ApacheHive
ApachePhoenix-Hbase的SQL驱动,支持辅助索引;
PivotalHAWQ–Hadoop上的并行数据库;
Lingual-用于级联的SQL接口(MR/TEZ工作发生器);
ClouderaImpala
Presto–用于大数据的分布式SQL查询引擎,该查询引擎由Facebook开发,现已开源;
ApacheTajo-ApacheHadoop的数据仓库系统;
ApacheDrill
数据管理
ApacheCalcite-动态数据管理框架;
ApacheAtlas-用于元数据标记及类群捕获,支持复杂的商业数据分类。
工作流,生命周期及管理
ApacheOozie-ApacheOozie;
Azkaban
ApacheFalcon-数据管理与处理平台;
ApacheNiFi-数据流系统;
AirFlow–AirFlow是以编程方式建立、调度和监控数据管道的平台;
Luigi-Python包,用于构建批处理作业的复杂管道。
数据提取及整合
ApacheFlume-ApacheFlume;
Suro-Netflix分布式数据管道;
ApacheSqoop-ApacheSqoop;
ApacheKafka-ApacheKafka;
GobblinfromLinkedIn–Hadoop的通用数据提取框架;
DSL
ApachePig-ApachePig
ApacheDataFu–Hadoop中用于处理大规模数据的库的集合;
vahara–基于ApachePig的机器学习和自然语言处理;
packetpig-用于开源大数据安全性分析;
akela–Mozilla的实用工具库,用于Hadoop、HBase、Pig等等;
seqpig-Hadoop中用于大型定序数据集的简单可扩展脚本(bioinfomation除外);
Lipstick–Pig工作流程可视化工具;A(pache)的Lipstick简介;
PigPen-PigPen是Clojure或分布式Clojure的Map-reduce,能够编译ApachePig,但是不需要过多了解Pig也可以使用PigPen。
库和工具
KiteSoftwareDevelopmentKit–一组库、工具、示例和文档;
gohadoop-ApacheHadoopYARN的本地Go客户端;
Hue–用ApacheHadoop分析数据的Web界面;
ApacheZeppelin-基于Web的笔记,可进行交互式数据分析;
Jumbune-Jumbune是为分析Hadoop集群和MapReduce作业而构建的开源产品;
ApacheThrift
ApacheAvro-ApacheAvro是一个数据序列化系统;
ElephantBird–Twitter中LZO、缓冲协议相关的Hadoop、Pig、Hive和HBase代码的集合;
SpringforApacheHadoop
hdfs-AnativegoclientforHDFS
OozieEclipsePlugin-Eclipse中用于编辑ApacheOozie工作流的图形编辑器。
实时数据处理
ApacheStorm
ApacheSamza
ApacheSpark
ApacheFlink-ApacheFlink是高效的分布式通用数据处理的平台,用于精准的流处理。
分布式计算和编程
ApacheSpark