前言
Apache Hadoop起源于开源网络搜索引擎 Apache Nutch。概括来说, Hadoop构建了一个完整的大数据生态系统,其核心组件包括HDFS(分布式文件存储),MapReduce(分布式数据批处理计算框架), 以及Yarn(Hadoop集群资源管理系统),同时Hadoop衍生的相关项目例如Hive(数据仓库),HBase(列式数据库),Spark(基于内存的分布式数据计算框架)等也在大数据领域得到了广泛的应用。
大纲
- HDFS
- MapReduce
- Hive
-
HDFS
Hadoop Distributed File System实现了一个分布式文件存储系统,其核心原理与Google在2003年发表的关于GFS的论文类似,简单的来说就是将海量的文件分布的存储在不同的物理磁盘上,使用者不需要关心具体某部分数据被存储在哪里,而能够像在单机文件系统上一样存储读取文件。
HDFS的架构
NameNode: 维护文件系统数和整颗树上的各个节点
-
MapReduce
引用
分布式计算的框架 Map: 将任务拆封成若干个子任务,按照一定的规则进行匹配计算,生成一定的Key-Value
-
Hive
Hive是一个将sql语句翻译成map reduce命令的解释器,分为两部分
存储hive表元数据的mysql
- hdfs:数据真正存储的地方
Hbase
列簇数据库,底层依然是HDFS,Hbase不同于传统的行数据库,Hbase可以随时增加列。一个行键、列族、列修饰符、数据和时间戳组合起来叫做一个单元格(Cell)。这里的行键、列族、列修饰符和时间戳其实可以看作是定位属性(类似坐标),最终确定了一个数据。Hbase适用大数据量的实时搜索。
轻松理解Hbase面向列的存储