Hadoop基本概念

Hadoop:算法

 

1 HDFS(分布式文件系统)数据库

2 HBase/Sqoop/Flume(数据导入与导出)编程

3 MapReduce/Spark(并行计算架构)架构

4 Pig/Hive(Hadoop编程)框架

5 ZooKeeper/Oozie(系统管理架构)机器学习

6 Ambari/Whirr(系统部署管理)编程语言

7 Mahout(机器学习/算法库)分布式

8 Impala (查询系统)工具

Hadoop是一个你们族,是一个开源的生态系统,是一个分布式运行系统,是基于Java编程语言的架构。不过它最高明的技术仍是HDFS和MapReduce,使得它能够分布式处理海量数据。oop

1 HDFS(分布式文件系统)

它与现存的文件系统不一样的特性有不少,好比高度容错(即便中途出错,也能继续运行),支持多媒体数据和流媒体数据访问,高效率访问大型数据集合,数据保持严谨一致,部署成本下降,部署效率提交等,如图是HDFS的基础架构

2 HBase/Sqoop/Flume(数据导入与导出):

HBase是运行在HDFS架构上的列存储数据库,而且已经与Pig/Hive很好地集成。经过Java API能够近无缝地使用HBase。

Sqoop设计的目的是方便从传统数据库导入数据到Hadoop数据集合(HDFS/Hive)。

Flume设计的目的是便捷地从日志文件系统直接把数据导到Hadoop数据集合(HDFS)中。

以上这些数据转移工具都极大的方便了使用的人,提升了工做效率,把经历专一在业务分析上!

3 MapReduce/Spark(并行计算架构):

它能够将计算任务拆分红大量能够独立运行的子任务,接着并行运算,另外会有一个系统调度的架构负责收集和汇总每一个子任务的分析结果。其中 包含映射算法与规约算法。如图是MapReduce的内部计算步骤

Spark是一个内存计算的框架。目前一个大的趋势。MapReduce会有很大的IO操做,而Spark是在内存中计算。速度是Hadoop的10倍(官网上这样说的)。Spark是目前一个趋势,是须要了解的。

4 Pig/Hive(Hadoop编程):

Pig是一种高级编程语言,在处理半结构化数据上拥有很是高的性能,能够帮助咱们缩短开发周期。

Hive是数据分析查询工具,尤为在使用类SQL查询分析时显示是极高的性能。能够在分分钟完成ETL要一夜才能完成的事情,这就是优点,占了先机!

5 ZooKeeper/Oozie(系统管理架构):ZooKeeper是一个系统管理协调架构,用于管理分布式架构的基本配置。它提供了不少接口,使得配置管理任务简单化!Oozie服务是用于管理工做流。用于调度不一样工做流,使得每一个工做都善始善终。这些架构帮助咱们轻量化地管理大数据分布式计算架构。 

6 Ambari/Whirr(系统部署管理):Ambari帮助相关人员快捷地部署搭建整个大数据分析架构,而且实时监控系统的运行情况。Whirr的主要做用是帮助快速的进行云计算开发。

7 Mahout(机器学习/算法库):Mahout旨在帮助咱们快速地完成高智商的系统。其中已经实现了部分机器学习的逻辑。这个架构可让咱们快速地集成更多机器学习的智能!!又是数据挖掘算法库,里面内置了大量的算法。能够用来作预测、分类、聚类等。工具很强大,可是技术要求能力较高。

8 Impala (查询系统) :Impala是Cloudera公司主导开发的新型查询系统,它提供SQL语义,能查询存储在Hadoop的HDFS和HBase中的PB级大数据。已有的Hive系统虽然也提供了SQL语义,但因为Hive底层执行使用的是MapReduce引擎,仍然是一个批处理过程,难以知足查询的交互性。相比之下,Impala的最大特色也是最大卖点就是它的快速。Imapa能够和Phoenix,Spark Sql联系起来了解一下。

推荐:两本最重要的书籍(这两本基本已经能够知足大部分你对Hadoop的须要):

Hadoop权威指南

Hadoop最佳实践

相关文章
相关标签/搜索