“大数据”指数据集的大小超过了现有典型的数据库软件和工具的处理能力。
与此同时,及时捕捉、存储、聚合、管理这些大数据以及对数据的深度
分析的新技术和新能力,正在快速增长、就像预测计算芯片增长速度的
摩尔定律一样。
关系型数据 VS Hadoop
并行关系数据库:
1.多个独立的关系数据库服务器,访问共享的存储资源池。
2.优势:
(1)采用多个关系数据库服务器,多个存储,与原有的架构
相比,扩展了存储容量和计算能力。
3.劣势:
(1)计算与存储分离,数据访问存在竞争和带宽瓶颈。
(2)支持的关系数据库服务器数量有限
(3)只能向上扩展,不能横向扩展
4.适合复杂的需要事务处理的应用
MMP or Hadoop:
1.由大量独立的服务器通过网络互连形成集群,每个服务器带存储。
2.优势:计算与存储融合,支持横向扩展,更好的扩展性。
3.劣势:解决数据冲突时需要节点间协作
4.适用范围:
(1)数据仓库和离线数据分析(MMP,Hadoop/HBase)
(2)大规模在线实时应用(单行事务处理能满足的场景)(HBase)
Hadoop的子项目:
1.Core(必学): 一套分布式文件系统以及支持Map-Reduce的计算框架。
2.Avro: 定义了一种用于支持大叔数据应用的数据格式,并为这种格式
提供了不同的编程语言的支持。
3.HDFS(必学):Hadoop分布文件系统。
4.Map/Reduce(必学): 是一个使用简易的软件框架,基于它写出来的应用程序能够运行
在由上千个商用机器组成的大型集群上,并以一种可靠容错的方式
并行处理上T级别的数据集。
5.ZooKeeper(必学):是高可用的和可靠的分布式协同系统。
6.Pig:建立于Hadoop Core之上为并行计算环境提供了一套数据工作流语言和执行框架。
7.Hive(必学):是为提供简单的数据操作而设计的下一代分布式数据仓库。它提供了简单的类似
SQL的语法的HiveQL语言进行数据查询。
8.HBase(必学):建立于Hadoop Core 之上提供一个可扩展的数据库系统。
9.Flume:一个分布式、可靠、和高可用的海量日志聚合的系统,支持在系统中定制各类
数据发送方,用于收集数据。
10.Mahout:是一套具有可扩充能力的机器学习类库。
11.Sqoop:是Apache下用于RDBMS和HDFS互相导数据的工具
Hadoop官网:http://hadoop.apache.org
下面会学习Hadoop 1.x和2.x版本。
rbm后缀的包,是已经编译的包。
tar后缀的包,被编译后的压缩包。