Hadoop学习资源集合

Hadoop是一个由Apache基金会所开发的开源分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序,充分利用集群的威力进行高速运算和存储。Hadoop得以在大数据处理应用中广泛应用得益于其自身在数据提取、变形和加载(ETL)方面上的天然优势。Hadoop的分布式架构,将大数据处理引擎尽可能的靠近存储。

为了帮助大家进一步了解Hadoop,云栖社区组织翻译了GitHub Awesome Hadoop 资源,涵盖Hadoop中常见的库与工具、存储方式、数据库,以及相关的书籍、网站等资源。

目录:

  • Awesome Hadoop
    • Hadoop
    • YARN
    • NoSQL
    • Hadoop上的SQL
    • 数据管理
    • 工作流、生命周期及管理
    • 数据提取与整合
    • DSL
    • 库和工具
    • 实时数据处理
    • 分布式计算和编程 
    • 包装、配置和监测
    • 监测
    • 搜索
    • 安全性
    • 基准
    • 机器学习和大数据分析
    • 其他
  • 资源
    • 网站
    • 演示
    • 书籍
    • Hadoop & 大数据事件

Hadoop

  •   Apache Tez – 它是一个针对Hadoop数据处理应用程序的新分布式执行框架,该框架基于YARN
  •   SpatialHadoop – SpatialHadoop是Apache Hadoop的MapReduce扩展,专门用于处理空间数据;
  •   GIS Tools for Hadoop –用于Hadoop框架的大数据空间分析;
  •   Elasticsearch Hadoop – ElasticsearchHadoop深度集成,用于实时搜索和分析,支持Map/Reduce、 Cascading、Apache Hive和Apache Pig;
  •   dumbo - Python模块,使Hadoop程序的编写和运行更为容易;
  •   hadoopy – 用Cython写的Python MapReduce库;
  •   mrjob - mrjob是一个Python2.5+程序包,可以帮助编写和运行Hadoop工作流;
  •   pydoop -为Hadoop提供Python API的程序包;
  •   hdfs-du -Hadoop分布式文件系统(HDFS)的交互可视化;
  •   White Elephant - Hadoop的日志聚合器和仪表板;
  •   Kiji Project
  •   Genie - Genie提供REST-ful API,以便运行Hadoop、Hive和Pig jobs,还管理多个Hadoop资源,并在它们之间进行作业提交;
  •   Apache Kylin –最初来自eBay公司的开源分布式分析引擎,能提供Hadoop之上的SQL查询接口及多维分析(OLAP),以支持超大规模数据集;
  •   Crunch -基于Go的工具包,用于在Hadoop上的ETL和特征提取;
  •   Apache Ignite -分布式内存平台。

YARN

  •   Apache Slider - Apache Slider是Apache软件基金会的孵化项目,旨在能够轻松地实现现有应用程序到YARN集群的部署;
  •   Apache Twill - Apache Twill是Apache Hadoop® YARN的抽象层,降低了开发分布式应用程序的复杂度,让开发者更专注于自己的应用逻辑;
  •   mpich2-yarn –在YARN上运行MPICH2。

NoSQL

下一代数据库大多定位于以下几点:非关系型、分布式、开放源码和横向扩展。

  •   Apache HBase - Apache HBase;
  •   Apache Phoenix – Hbase的SQL驱动,支持辅助索引;
  •   happybase -一个开发者友好型的Python库,用于Apache HBase的交互;
  •   Hannibal –用于监测和维护HBase 集群的工具;
  •   Haeinsa –用于HBase的线性可扩展多行多表交易库;
  •   hindex – Hbase的辅助索引;
  •   Apache Accumulo - Apache Accumulo可排序分布式键/值存储,是一个强大的可扩展高性能数据存储和检索系统;
  •   OpenTSDB -可扩展时间序列数据库;
  •   Apache Cassandra

Hadoop中的SQL

  •   Apache Hive
  •   Apache Phoenix - Hbase的SQL驱动,支持辅助索引;
  •   Pivotal HAWQ – Hadoop上的并行数据库;
  •   Lingual -用于级联的SQL接口(MR / TEZ工作发生器);
  •   Cloudera Impala
  •   Presto –用于大数据的分布式SQL查询引擎,该查询引擎由Facebook开发,现已开源;
  •   Apache Tajo - Apache Hadoop的数据仓库系统;
  •   Apache Drill

数据管理

  •   Apache Calcite -动态数据管理框架;
  •   Apache Atlas -用于元数据标记及类群捕获,支持复杂的商业数据分类。 

工作流,生命周期及管理

  •   Apache Oozie - Apache Oozie;
  •   Azkaban
  •   Apache Falcon -数据管理与处理平台;
  •   Apache NiFi -数据流系统;
  •   AirFlow – AirFlow是以编程方式建立、调度和监控数据管道的平台;
  •   Luigi - Python包,用于构建批处理作业的复杂管道。

数据提取及整合

  •   Apache Flume - Apache Flume;
  •   Suro - Netflix分布式数据管道;
  •   Apache Sqoop - Apache Sqoop;
  •   Apache Kafka - Apache Kafka;
  •   Gobblin from LinkedIn – Hadoop的通用数据提取框架;

DSL

  •   Apache Pig - Apache Pig
  •   Apache DataFu – Hadoop中用于处理大规模数据的库的集合;
  •   vahara –基于Apache Pig的机器学习和自然语言处理;
  •   packetpig -用于开源大数据安全性分析;
  •   akela – Mozilla的实用工具库,用于Hadoop、HBase、Pig等等;
  •   seqpig -Hadoop中用于大型定序数据集的简单可扩展脚本(bioinfomation除外);
  •   Lipstick – Pig工作流程可视化工具;A(pache)的Lipstick简介
  •   PigPen - PigPen 是Clojure或分布式Clojure的Map-reduce,能够编译Apache Pig,但是不需要过多了解Pig也可以使用PigPen。

库和工具

  •   Kite Software Development Kit –一组库、工具、示例和文档;
  •   gohadoop - Apache Hadoop YARN的本地Go客户端;
  •   Hue – 用Apache Hadoop分析数据的Web界面;
  •   Apache Zeppelin -基于Web的笔记,可进行交互式数据分析;
  •   Jumbune - Jumbune是为分析Hadoop集群和MapReduce作业而构建的开源产品;
  •   Apache Thrift
  •   Apache Avro - Apache Avro是一个数据序列化系统;
  •   Elephant Bird – Twitter中LZO、缓冲协议相关的Hadoop、Pig、Hive和HBase代码的集合;
  •   Spring for Apache Hadoop
  •   hdfs - A native go client for HDFS
  •   Oozie Eclipse Plugin -Eclipse中用于编辑Apache Oozie工作流的图形编辑器。

实时数据处理

  •   Apache Storm
  •   Apache Samza
  •   Apache Spark
  •   Apache Flink - Apache Flink是高效的分布式通用数据处理的平台,用于精准的流处理。

分布式计算和编程

  •   Apache Spark
    •   Spark Packages - Apache Spark程序包的community(社区)索引
    •   SparkHub - Apache Spark的社
  •   Apache Crunch
  •   Cascading - Cascading是在Hadoop上构建数据应用的成熟的应用开发平台;
  •   Apache Flink - Apache Flink是高效的分布式通用数据处理的平台;
  •   Apache Apex (incubating) -企业级的统一流处理和批处理引擎。 

包装,配置与监测

  •   Apache Bigtop - 用于Apache Hadoop生态系统的包装和测试;
  •   Apache Ambari - Apache Ambari
  •   Ganglia Monitoring System
  •   ankush -一个大数据集群管理工具,用于创建和管理不同的技术集群;
  •   Apache Zookeeper - Apache Zookeeper
  •   Apache Curator - 用于ZooKeeper的客户端简化包装和丰富ZooKeeper框架; 
  •   Buildoop - Hadoop生态系统生成器;
  •   Deploop - Hadoop的部署系统;
  •   Jumbune -一个用于开源MapReduce分析,MapReduce流程调试,HDFS数据质量校验和Hadoop集群监测工具;
  •   inviso - Inviso是一个轻量级的工具,它提供搜索Hadoop作业,可视化性能,查看集群利用率的能力。

搜索

  •   ElasticSearch
  •   SenseiDB
  •   Apache Solr -开源、分布式、实时、半结构化的数据库;
  •   Banana - Apache Solr的Kibana端口。

搜索引擎框架

  •   Apache Nutch –Apache Nutch是一个高度可扩展的,可伸缩的开源网络爬虫软件项目。

安全性

  •   Apache Ranger - Ranger是一个框架,能够跨Hadoop平台启用、监控和全面管理数据安全性;
  •   Apache Sentry - Hadoop的一个授权模块;
  •   Apache Knox Gateway –用于与Hadoop集群交互的REST API网关。

基准

  •   Big Data Benchmark
  •   HiBench
  •   Big-Bench
  •   hive-benchmarks
  •   hive-testbench –一个测试平台,用于进行任何规模数据的Apache Hive实验;
  •   YCSB -雅虎云服务基准(YCSB)是一个开源规范和程序套件,用于评估计算机程序的检索和维护功能;它常被用于比较NoSQL数据库管理系统的相对性能。

机器学习和大数据分析

  •   Apache Mahout
  •   Oryx 2 –基于Spark、Kafka的Lambda架构,用于实时大规模的机器学习;
  •   MLlib - MLlib是Apache Spark的可扩展机器学习库;
  •   R - R是用于统计计算和图形的自由软件环境;
  •   RHadoop -包括RHDFS、RHBase、RMR2和plyrmr;
  •   RHive –用于从R中开始Hive查询;
  •   Apache Lens

其它

  •   Hive Plugins
    •   UDF
      •   http://nexr.github.io/hive-udf/
      •   https://github.com/edwardcapriolo/hive_cassandra_udfs
      •   https://github.com/livingsocial/HiveSwarm
      •   https://github.com/ThinkBigAnalytics/Hive-Extensions-from-Think-Big-Analytics
      •   https://github.com/karthkk/udfs
      •   https://github.com/twitter/elephant-bird - Twitter
      •   https://github.com/lovelysystems/ls-hive
      •   https://github.com/stewi2/hive-udfs
      •   https://github.com/klout/brickhouse
      •   https://github.com/markgrover/hive-translate (PostgreSQL translate())
      •   https://github.com/deanwampler/HiveUDFs
      •   https://github.com/myui/hivemall (Machine Learning UDF/UDAF/UDTF)
      •   https://github.com/edwardcapriolo/hive-geoip (GeoIP UDF)
      •   https://github.com/Netflix/Surus
    •   Storage Handler
      •   https://github.com/dvasilen/Hive-Cassandra
      •   https://github.com/yc-huang/Hive-mongo
      •   https://github.com/balshor/gdata-storagehandler
      •   https://github.com/karthkk/hive-hbase-json
      •   https://github.com/sunsuk7tp/hive-hbase-integration
      •   https://bitbucket.org/rodrigopr/redisstoragehandler
      •   https://github.com/zhuguangbin/HiveJDBCStorageHanlder
      •   https://github.com/chimpler/hive-solr
      •   https://github.com/bfemiano/accumulo-hive-storage-manager
    •   SerDe
    •   https://github.com/rcongiu/Hive-JSON-Serde
    •   https://github.com/mochi/hive-json-serde
    •   https://github.com/ogrodnek/csv-serde
    •   https://github.com/parag/HiveJsonSerde
    •   https://github.com/johanoskarsson/hive-json-serde
    •   https://github.com/electrum/hive-serde - JSON
    •   https://github.com/karthkk/hive-hbase-json
    •   Libraries and tools
      •   https://github.com/forward3d/rbhive
      •   https://github.com/synctree/activerecord-hive-adapter
      •   https://github.com/hrp/sequel-hive-adapter
      •   https://github.com/forward/node-hive
      •   https://github.com/recruitcojp/WebHive
      •   shib - WebUI for query engines: Hive and Presto
      •   clive - Clojure library for interacting with Hive via Thrift
      •   https://github.com/anjuke/hwi
      •   https://code.google.com/a/apache-extras.org/p/hipy/
      •   https://github.com/dmorel/Thrift-API-HiveClient2 (Perl - HiveServer2)
      •   PyHive - Python interface to Hive and Presto
      •   https://github.com/recruitcojp/OdbcHive
      •   Hive-Sharp
      •   HiveRunner - An Open Source unit test framework for hadoop hive queries based on JUnit4
      •   Beetest - A super simple utility for testing Apache Hive scripts locally for non-Java developers.
      •   Hive_test- Unit test framework for hive and hive-service
  •   Flume Plugins
    •   Flume MongoDB Sink
    •   Flume HornetQ Channel
    •   Flume MessagePack Source
    •   Flume RabbitMQ source and sink
    •   Flume UDP Source
    •   Stratio Ingestion - Custom sinks: Cassandra, MongoDB, Stratio Streaming and JDBC
    •   Flume Custom Serializers
    •   Real-time analytics in Apache Flume
    •   .Net FlumeNG Clients

资源

还有各种书籍、网站和文章等相关的资源,列表如下:

网站

有用的网站和文章

  •   Hadoop Weekly(译:Hadoop周刊)
  •   The Hadoop Ecosystem Table(译:Hadoop生态系统表)
  •   Hadoop 1.x vs 2(译:Hadoop1.x vs 2
  •   Apache Hadoop YARN: Yet Another Resource NegotiatorApache Hadoop YARN:另一种资源谈判)
  •   Introducing Apache Hadoop YARN(译:Apache Hadoop YARN简介)
  •   Apache Hadoop YARN - Background and an Overview(译:Apache Hadoop YARN——背景和概述)
  •   Apache Hadoop YARN - Concepts and Applications(译:Apache Hadoop YARN——概念与应用)
  •   Apache Hadoop YARN - ResourceManager(译:Apache Hadoop YARN - ResourceManager
  •   Apache Hadoop YARN - NodeManager(译:Apache Hadoop YARN - NodeManager
  •   Migrating to MapReduce 2 on YARN (For Users)(译:迁移到YARN上的MapReduce 2(针对用户))
  •   Migrating to MapReduce 2 on YARN (For Operators) (译:迁移到YARN上的MapReduce 2(针对运营商))
  •   Hadoop and Big Data: Use Cases at Salesforce.com(译:Hadoop和大数据:Salesforce.com中的用例)
  •   All you wanted to know about Hadoop, but were too afraid to ask: genealogy of elephants.(译:你想了解却不敢询问的Hadoop知识:大象的家谱)
  •   What is Bigtop, and Why Should You Care?(译:什么是Bigtop?为什么要关注Bigtop?)
  •   Hadoop - Distributions and Commercial Support(译:Hadoop的分布和商业支持)
  •   Ganglia configuration for a small Hadoop cluster and some troubleshooting(译:小型Hadoop集群的Ganglia配置和检修)
  •   Hadoop illuminated - Open Source Hadoop Book(译:Hadoop启示——开源Hadoop书)
  •   NoSQL Database(译:NoSQL数据库)
  •   10 Best Practices for Apache Hive(译:Apache Hive10个最佳实践)
  •   Hadoop Operations at Scale
  •   AWS BigData Blog(译:AWS大数据博客)
  •   Hadoop360

演示

  •   Hadoop Summit Presentations - Slide decks from Hadoop Summit(译:Hadoop的峰会展示)
  •   Hadoop 24/7
  •   An example Apache Hadoop Yarn upgrade(译:Apache Hadoop Yarn更新实例)
  •   Apache Hadoop In Theory And Practice(译:Apache Hadoop的理论和实践)
  •   Hadoop Operations at LinkedIn(译:HadoopLinkedIn的操作)
  •   Hadoop Performance at LinkedIn(译:HadoopLinkedIn的性能)
  •   Docker based Hadoop provisioning(译:基于DockerHadoop配置)

书籍

  •   Hadoop: The Definitive Guide(译:Hadoop权威指南)
  •   Hadoop Operations(译:Hadoop运营)
  •   Apache Hadoop Yarn(译:Apache Hadoop Yarn
  •   HBase: The Definitive Guide(译:HBase权威指南)
  •   Programming Pig(译:Pig程序设计)
  •   Programming Hive(译:Hive程序设计)
  •   Hadoop in Practice, Second Edition(译:Hadoop实践,第二版)
  •   Hadoop in Action, Second Edition(译:Hadoop实战,第二版)

Hadoop&大数据事件

  •   ApacheCon
  •   Strata + Hadoop World
  •   Hadoop Summit
以上为Hadoop学习资源集合的全部内容,更多精彩敬请期待。


编译自: https://github.com/youngwookim/awesome-hadoop
译者:刘崇鑫   校对:王殿进

如果发现原文翻译有误,请邮件通知云栖社区([email protected]),感谢您的支持。

你可能感兴趣的:(Hadoop学习资源集合)