Hadoop框架
2023-10-26 15:52:35 0 举报
AI智能生成
Hadoop框架学习整理
作者其他创作
大纲/内容
时间
20231025-20231031
Hadoop生态
Hadoop数据框架,提供海量数据存储和处理
HDFS
MapReduce
Yarn
课堂重点
MapReduce
一种理念(编程模型),大规模数据集的并行运算(“分而治之”的思想)
Map映射:任务的分解
Reduce归集:结果的汇总
机器角色
JobTracker:一个集群只有一个,用于调度工作
TaskTrack:用于执行工作
Zookeeper
分布式应用程序协调服务
Hbase
数据库系统(高可靠性、高性能、列存储、可伸缩、实时读写),主要存储非结构化和半结构化的松散数据
基于列——仅通过rowkey和行键序列来检索数据
行式数据库与列式数据库的区别
行式数据库(mysql)
数据是按行存储的
没有索引的查询会消耗大量的IO资源
建立索引和视图需要耗费大量的时间和系统资源
面对高并发的查询,数据库必须被大量膨胀才能满足性能需求
列式数据库(hbase)
数据按列存储—每一列单独存放
数据即是索引,无须另建索引
只访问查询所涉及到的列(与行数据库不同)--节省IO开支
可以高效压缩
查询的并发处理性能高
表特点:数据大、面向列、稀疏(空列不占用存储空间)
Hbase的特性:
(1)强读写一致,但是不是“最终一致性”的数据存储,这使得它非常适合高速的计算聚合
(2)自动分片,通过Region分散在集群中,当行数增长的时候,Region也会自动的切分和再分配
(3)自动的故障转移
(4)Hadoop/HDFS集成,和HDFS开箱即用,不用太麻烦的衔接
(5)丰富的“简洁,高效”API,Thrift/REST API,Java API
(6)块缓存,布隆过滤器,可以高效的列查询优化
(7)操作管理,Hbase提供了内置的web界面来操作,还可以监控JMX指标
(1)强读写一致,但是不是“最终一致性”的数据存储,这使得它非常适合高速的计算聚合
(2)自动分片,通过Region分散在集群中,当行数增长的时候,Region也会自动的切分和再分配
(3)自动的故障转移
(4)Hadoop/HDFS集成,和HDFS开箱即用,不用太麻烦的衔接
(5)丰富的“简洁,高效”API,Thrift/REST API,Java API
(6)块缓存,布隆过滤器,可以高效的列查询优化
(7)操作管理,Hbase提供了内置的web界面来操作,还可以监控JMX指标
表结构
逻辑结构
通过RowKey获取指定行(由一个或者多个列簇Column Family组成),每个列簇有一个或者多个列修饰符Column Qualifier(列),每个列有一个或多个版本
物理结构
table水平划分为多个region,region按照column family划分为store。存储时,不同version通过timestamp区分
Hbase的应用
1.统计结果、报表数据
运营情况、运力情况
通常配合Phoenix进行SQL查询
数据量小,查询灵活性高,延时要求一般
2.原始事实类数据
订单、司机、乘客、GPS和日志等
在线和离线数据供给
数据量大、延时要求高,实时写入
3.生产中间和结果数据
模型训练数据
数据量大、批量查询对吞吐量要求高
线上系统的备份数据
历史数据、查询频率不高、延时要求高
HIve 蜜蜂头小象
数据仓库基础设施(在硬件上存储和处理)
语句基本类似SQL
并非为联机事务处理而设计,不提供事实的查询和基于行级的数据更新操作,最佳适用场合是大数据集的批处理工作。
0 条评论
下一页