大数据处理技术之hadoop概览

来源:互联网 发布:c类网络的子网掩码 编辑:程序博客网 时间:2024/04/27 21:38
上两个图,可以对热到极致的大数据处理技术有一个基本的认识

大数据处理技术之演进



大数据处理技术之hadoop软件族:

hadoop 1


hadoop2


相关软件下面简介:
1
Ambari:Hadoop管理工具,可以快捷的监控、部署、管理集群。
    官网:http://hadoop.apache.org/

2
HDFS: Hadoop分布式文件系统(Distributed File System) - HDFS (Hadoop Distributed File System)
    官网:http://hadoop.apache.org/

3
MapReduce:并行计算框架,0.20前使用 org.apache.hadoop.mapred 旧接口,0.20版本开始引入org.apache.hadoop.mapreduce的新API
    官网:http://hadoop.apache.org/

4
HBase: 类似Google BigTable的分布式NoSQL列数据库。(HBase和Avro已经于2010年5月成为顶级 Apache 项目)
    官网:http://hbase.apache.org/

5
Mahout: ASF开源项目,提供一些可扩展的机器学习领域经典算法的实现。Mahout包含聚类、分类、推荐过滤、频繁子项挖掘等算法实现。
    官网:http://mahout.apache.org/

6
Pig: 大数据分析平台,为用户提供多种接口。
    官网:http://pig.apache.org/

7
Hive:数据仓库工具,由Facebook贡献。
    官网:http://hive.apache.org/

8
Zookeeper:分布式锁设施,提供类似Google Chubby的功能,由Facebook贡献。
    官网:http://zookeeper.apache.org/

9
Sqoop:用于在HADOOP(Hive)与传统的数据库(mysql、postgresql...)间进行数据的传递,可以将一个关系型数据库(例如 : MySQL ,Oracle ,Postgres等)中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。
    官网:http://sqoop.apache.org/

10
Flume/chukwa
Flume:高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方(可定制)的能力。由Cloudera提供
chukwa 是一个开源的用于监控大型分布式系统的数据收集系统。用HDFS存储,用mapreduce处理数据。它提供了很多模块以支持hadoop集群日志分析。

下面这些是也是该主题相关的重要项目:
11
    Cassandra™: A scalable multi-master database with no single points of failure.
Cassandra,是一套开源分布式NoSQL数据库系统,最初由Facebook开发。是一个混合型的非关系的数据库,类似于Google的BigTable。其主要功能比Dynamo (分布式的Key-Value存储系统)更丰富,但支持度却不如文档存储MongoDB(介于关系数据库和非关系数据库之间的开源产品,是非关系数据库当中功能最丰富,最像关系数据库的。支持的数据结构非常松散,是类似json的bjson格式,因此可以存储比较复杂的数据类型)。Cassandra最初由Facebook开发,后转变成了开源项目。它是一个网络社交云计算方面理想的数据库。以Amazon专有的完全分布式的Dynamo为基础,结合了Google BigTable基于列族(Column Family)的数据模型。P2P去中心化的存储。很多方面都可以称之为Dynamo 2.0。
    官网:http://cassandra.apache.org/

12
Spark是继Hadoop之后的新一代大数据分布式处理框架,由UC Berkeley的Matei Zaharia主导开发。
    Spark™: A fast and general compute engine for Hadoop data. Spark provides a simple and expressive programming model that supports a wide range of applications, including ETL, machine learning, stream processing, and graph computation.
    官网:http://spark.apache.org/

13
Tez是Apache最新的支持DAG( 有向无环图 ) 作业的开源计算框架,它可以将多个有依赖的作业转换为一个作业从而大幅提升DAG作业的性能。Tez并不直接面向最终用户——事实上它允许开发者为最终用户构建性能更快、扩展性更好的应用程序。Hadoop传统上是一个大量数据批处理平台。但是,有很多用例需要近乎实时的查询处理性能。还有一些工作则不太适合MapReduce,例如机器学习。Tez的目的就是帮助Hadoop处理这些用例场景。
    Tez™: A generalized data-flow programming framework, built on Hadoop YARN, which provides a powerful and flexible engine to execute an arbitrary DAG of tasks to process data for both batch and interactive use-cases. Tez is being adopted by Hive™, Pig™ and other frameworks in the Hadoop ecosystem, and also by other commercial software (e.g. ETL tools), to replace Hadoop™ MapReduce as the underlying execution engine.
    官网:http://tez.apache.org/


14
Yean
从业界使用分布式系统的变化趋势和 hadoop 框架的长远发展来看,MapReduce 的 JobTracker/TaskTracker 机制需要大规模的调整来修复它在可扩展性,内存消耗,线程模型,可靠性和性能上的缺陷。在过去的几年中,hadoop 开发团队做了一些 bug 的修复,但是最近这些修复的成本越来越高,这表明对原框架做出改变的难度越来越大。

为从根本上解决旧 MapReduce 框架的性能瓶颈,促进 Hadoop 框架的更长远发展,从 0.23.0 版本开始,Hadoop 的 MapReduce 框架完全重构,发生了根本的变化。新的 Hadoop MapReduce 框架命名为 MapReduceV2 或者叫 Yarn,其架构图如下图所示:

15

再具体点的可以参阅http://www.aboutyun.com/thread-7826-1-1.html


参考:

http://hadoop.apache.org/



-----------------

转载请著明出处:
blog.csdn.net/beiigang
1 0
原创粉丝点击