大数据概述
大数据(Big Data):无法用现有的软件工具提取、存储、处理的海量复杂的数据结合
特点:4V
Volume:数据量大,数据体量巨大 TB->PB
Variety:数据类型繁多
Value:价值密度低。价值密度高低与数据总量的大小成反比
Velocity:处理数据的速度快
Hadoop(Doug Cutting)
-
定义:由Apache基金会所开发的分布式系统基础架构(受到Map/Reduce和Google File System(GFS)的启发)
-
核心架构:
-
MapReduce编程模式
MapReduce 框架把一个应用程序分解为许多并行计算指令
-
Map:切分大的数据
-
Reduce:合并Map计算的结果
-
-
HDFS分布式文件系统
为大量数据提供存储服务,拆分文件为块(128MB)
-
特点:
-
多节点存放
-
高吞吐量
-
高容错性
-
-
-
Hbase
-
定义:由Apache开源KV数据库,建立于HDFS上,高可靠、高性能、列存储、可伸缩、实时读写的数据库系统
介于NoSQL和RDBMS之间
仅能通过主键row key和主键的range检索数据、仅支持单行事务
主要用于存储非结构化和半结构化的松散数据
-
依靠横向扩展,通过增加廉价服务器增加计算和存储能力
-
Hbase表
-
特点
-
数据量大
-
面向列族的存储和权限控制,列单独检索
-
表的设计稀疏,对于NULL的列不占存储空间
-
-
Hive
-
定义:Hive数据仓库提供对存储在分布式的数据的查询和管理,建立于Hadoop上
-
功能:
-
对数据进行提取/转化/加载ETL
-
存储、查询和分析存储在HDFS(HBASE)的大规模数据的机制
-
将SQL转化为MapReduce在Hadoop上运行进行数据统计处理
-
-
缺点:
-
Hive不支持事务
-
对表无法修改
-
查询速度慢
-