谁说大象不能跳舞
Hadoop——轻松应对海量数据存储与分析
海量数据:
量,大,数据多,数据量到达PB,ZB级别,条目数达到上几十亿条百亿条
1KB (Kilobyte 千字节)=1024B,
1MB (Megabyte 兆字节 简称“兆”)=1024KB,
1GB (Gigabyte 吉字节 又称“千兆”)=1024MB,
1TB (Terabyte 万亿字节 太字节)=1024GB,其中1024=2^10 ( 2 的10次方),
1PB(Petabyte 千万亿字节 拍字节)=1024TB,
1EB(Exabyte 百亿亿字节 艾字节)=1024PB,
1ZB (Zettabyte 十万亿亿字节 泽字节)= 1024 EB,
1YB (Yottabyte 一亿亿亿字节 尧字节)= 1024 ZB,
1BB (Brontobyte 一千亿亿亿字节)= 1024 YB.
存储:
分布式,集群的概念,管理(主节点,从节点),HDFS(Hadoop Distributed FileSystem)
分析:
分布式,并行,离线计算框架,管理(主节点,从节点),MapReduce
Apache Hadoop logo
起源
Apache lucene:开源的高性能性能全文检索工具包
Apache Nutch:开源的Web搜索引擎
Google三大论文:MapRedure/GFS/BigTable
Apache Hadoop:大规模数据处理
HDFS->GFS开源文件系统
Google MapReduce->Hadoop MapReduce开源的分布式并行结算框架
BigTable->HBase 开源的分布式数据库
大数据,云计算
大数据:
数据量大,数据有价格,分析挖掘
云计算:
云计算由三层构成:IAAS,PAAS,SAAS
IAAS:基础设施即服务,典型实现有Amazon EC2,OpenStack,CloudStack,Rackspace等
OpenStack可以构建公司的私有云平台
PAAS:平台即服务,典型实现有Google AppEngine,Apache Hadoop
SAAS:软件即服务,典型实现有:Google Apps
Hadoop——Big Data Platform
数据存储
HDFS
-Distributed across “nodes” 分布式节点
-Natively redundant 本地化
Name node tracks location 名称节点跟踪位置
数据处理
Map Reduce
-Splits a task across processors,”near” line data & assembles 任务分割机器处理
-self-Heading,High Brandwidth clustered Storage 自身的处理,高
Apache Hadoop特点
扩展性(Scalable)
成本低
高效率(Flexible)
可靠性
Apache Hadoop能解决哪些问题
诉求
速度,深度,固定资产
问题
磁盘IO成为一种瓶颈,而非CPU资源
网络带宽是一种稀缺资源
硬件故障成为影响稳定的一大因素
Hadoop发展历史
经典版本: 0.20.2 -> 1.0.0(第一个1.0.0正式版本) ->1.0.3或者1.0.4非常好
2.x版本:
2,2,0, 2.3.0, 2.4.0正式版本,用于实际
ETL :
提取 -> 转换 -> 加载
从数据库中获取数据,并进行一系列的数据清理和清洗筛选,将合格的数据进行转换成一定的格式数据进行存储,将格式化的数据存储到HDFS文件系统上,以供计算框架进行数据分析和挖掘。
格式化数据:
1-TSV格式 :每行数据的每列之间以【制表符\t】 进行分割
2-CVS格式:每行数据的每列之间以【逗号】进行分割
Sqoop:
将关系型数据库中的数据与HDFS(HDFS文件,HBase中标,Hive)上的数据进行相互导入导出
Flume:
收集各个应用系统和框架的日志,并将其放到HDFS分布式文件系统的相应制定的目录下。
对于分布式系统和框架的架构来说,一般分为两部分,
第一部分:管理层,用于管理应用层的
第二部分:应用层(工作的)
HDFS,分布式文件系统
NameNode(元数据服务器):属于管理层,用于管理数据的存储
Secondary NameNode(辅助元数据服务器):也属于管理层,辅助NameNode进行管理
DataNodes(块存储)属于应用层,用于进行数据的存储,被NameNode进行管理,要定时的向NameNode进行工作汇报,执行NameNode分配分发的任务。
MapReduce分布式的并行计算机架
JobTracker(任务调度员) 属于管理层,管理集群资源和对任务进行资源调度,监控任务的执行。
TaskTracker(任务执行)属于应用层,执行JobTracker分配分发的任务,并向JobTracker汇报工作情况。
HDFS框架的讲解
NameNode. 存储文件的元数据
1) 文件名称
2) 文件的目录结构
3) 文件的属性(权限,副本数,生成的时间)
4) 文件 ——>(对应) Block块——>(存储在)DataNodes上
MapReduce框架讲解和MapReduce思想原理讲解
Apache Hadoop 安装部署模式
单机(本地)模式(Standalone Mode)
伪分布模式(Pseudo-Distributed Mode)
全分布模式(Fully Distributed Mode)