五、Apache Hadoop
Hadoop 是 Apache 旗下的一个用 java 语言实现开源软件框架,是一个开发
和运行处理大规模数据的软件平台。允许使用简单的编程模型在大量计算机集群
上对大型数据集进行分布式处理。
1. Hadoop2.0的核心组件
狭义上hadoop指的是java开发的一款大数据处理软件,更准确的描述是大数据处理平台软件。
- HDFS(分布式文件系统):解决海量数据存储
- YARN(作业调度和集群资源管理的框架):集群资源管理和任务调度
- MAPREDUCE(分布式运算编程框架):解决海量数据计算
2. Hadoop 生态圈
广义上hadoop指的是hadoop生态圈
- HDFS:分布式文件系统
- MAPREDUCE:分布式运算程序开发框架
- HIVE:基于 HADOOP 的分布式数据仓库,提供基于 SQL 的查询数据操作
- HBASE:基于 HADOOP 的分布式海量数据库
- ZOOKEEPER:分布式协调服务基础组件
- Mahout:基于 mapreduce/spark/flink 等分布式运算框架的机器学习算法库
- Oozie:工作流调度框架
- Sqoop:数据导入导出工具(比如用于 mysql 和 HDFS 之间)
- Flume:日志数据采集框架
- Impala:基于 Hadoop 的实时分析
3. Hadoop发展简史
Google三篇论文
4. Hadoop特性优点
- 扩容能力(Scalable)
- 成本低(Economical)
- 高效率(Efficient)
- 可靠性(Rellable)
5. Hadoop国内外应用