《云计算与大数据》-第10章分布式数据存储与大数据挖掘_第1页
《云计算与大数据》-第10章分布式数据存储与大数据挖掘_第2页
《云计算与大数据》-第10章分布式数据存储与大数据挖掘_第3页
《云计算与大数据》-第10章分布式数据存储与大数据挖掘_第4页
《云计算与大数据》-第10章分布式数据存储与大数据挖掘_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

10.1分布式数据库HBase10.2分布式数据仓库Hive1《云计算与大数据》第二版课件重点

Hbase

概念与结构Hive体系结构难点

Hbase

结构、协同过滤10.1.1

HBase简介HBase

是Hadoop

的子项目,它是一个面向列的分布式数据库。它建立在HDFS

之上,是能提供高可靠性、高性能、列存储、可伸缩、实时读写的数据库系统。10.1分布式数据库Hbase《云计算与大数据》第二版课件·HBase

存储的数据介于映射(key/value)和关系型数据之间。能通过主键(row

key)和主键的range

来检索数据。主要用来存储非结构化和半结构化的松散数据。《云计算与大数据》第二版课件HBase的特征:-线性及模块可扩展性;-严格一致读写;一可配置的表自动分割策略;-RegionServer

自动故障恢复;一便利地备份MapReduce作业的基类;《云计算与大数据》第二版课件HBase

中表一般有如下的特点:一大:

一个表可以有上亿行,上百万列一面向列:面向列(族)的存储和权限控制,列(族)独立检索。一稀疏:对于为空(null)

的列,并不占用存储空间。《云计算与大数据》第二版课件10.1.2

Hbase体系结构HBase

的服务器体系结构遵从主从服务器架构,由HRegion

服务器

(HRegion

Server)

群和HBaseMaster服务器(HBaseMaster

Server)

构成。《云计算与大数据》第二版课件HBase

Master服务器负责管理所有的HRegion

服务器。而HBase中的所有服务器都是通过ZooKeeper

来进行协调并处理HBase

服务器运行期间可能遇到的错误。HBaseMaster

服务器本身并不存储HBase

中的任何数据,HBase逻辑上的表可能被划分成多个HRegion,

然后存储到HRegion服务器群中。《云计算与大数据》第二版课件《云计算与大数据》第二版课件HRegionServerHRegionStoreStoreFileHFileLStore

(MemStoreStoreFileHFileStoreMemStoreStoreFileHFileLMemStoreStoreFileHFileLMemStoreStoreFileHFileHRegionserver广HRegionStoreDFSClient

DFSClientStoreFileHFileHadoopHbaseHMasterClientHLogHLog1、

HRegion当表的大小超过设置值时,HBase会自动将表划分到不同的区域,每个区域包含所有行的一个子集。从物理上来说,一

张表是被拆分成了多块,每一块就是一个HRegion,用表名+开始/结束主键来区分每一个HRegion

个HRegion会保存一个表中某段连续的数据。10《云计算与大数据》第二版课件2、HRegion

服务器HRegion

服务器主要负责响应用户I/O

请求,向HDFS文件系统中读写数据,是HBase

中最核心的模块。所有的数据库数据一般是保存在Hadoop

分布式文件系统上

面的,用户通过一系列HRegion

服务器来获取这些数据,一台机器上面一般只运行一个HRegion

服务器。11《云计算与大数据》第二版课件2、HRegion

服务器·HRegion

服务器包含两部分:

HLog

部分和HRegion部分。其中HLog

存储数据日志。HRegion

部分由很多的HRegion组成,存储的是实际的数据。12《云计算与大数据》第二版课件每一个HRegion

又由许多Store

组成,每一个Store

存储实际上是一个列族(ColumnFamily)

下的数据。此外,在每一个Store

中包含一块MemStore

。MemStore

驻留在内存中,数据到来时首先更新到MemStore

中,当达到阈值之后再更新到对应的StoreFile

(

名HFile)中。每一个HStore

集合包含了多个HStoreFile,HStoreFile

负责的是实际的数据存储,为HBase中最小的存储单元。13《云计算与大数据》第二版课件3、HBase

Master服务器·

台HRegion服务器都会和HMaster服务器通信,HMaster的主要任务就是要告诉每台HRegion服务器它要维护哪些HRegion。·

当一台新的HRegion

服务器登录到HMaster

服务器时,HMaster会告诉它先等待分配数据。而当一台HRegion死机时,HMaster会把它负责的HRegion标记为未分配,然

后再把它们分配到其他HRegion

服务器中。14《云计算与大数据》第二版课件HBase通过Zookeeper

来保证系统中总有一个Master在运行。HMaster

在功能上主要负责Table和HRegion的管理工作。15《云计算与大数据》第二版课件4、ZooKeeperZooKeeper

存储的是HBase中Root

表和Meta

表的位置。此

,ZooKeeper

还负责监控各个机器的状态。当某台机器发生故障时,

ZooKeeper

会第一个感知,并通知HBase

Master进行相应的处理。当HBase

Master发生故障时,Zookeeper

负责HBaseMaster的恢复工作。16《云计算与大数据》第二版课件10.1.3

Hbase数据模型1、物理模型·HBase是一个类似GoogleBigtable的分布式数据库,它是一个稀疏的长期存储的(存储在硬盘上)、多维度的、排序的映射表,这张表的索引是行关键字、列关键字和时间戳,HBase中的数据都是字符串,没有类型。17《云计算与大数据》第二版课件·

用户在表格中存储数据,每一行都有一个可排序的

主键和任意多的列。由于是稀疏存储,同一张里面

的每一行数据都可以有截然不同的列。·

列名字的格式是"<family>:<qualifier>",

都是由字符串组成的,每一张表有一个列族集合,这个集合是固定不变的,只能通过改变表结构来改变。但是qulifier值相对于每一行来说都是可以改变的。18《云计算与大数据》第二版课件2、概念视图可以将一个表想象成一个大的映射关系,通过行健、行健+时间戳或行键+列(列族:列修饰符),就可以定位特定数据,HBase是稀疏存储数据的,因此某些列可

以是空白的。19《云计算与大数据》第二版课件Row

KeyTime

StampColumn

Family:c1Column

Family:c2列值列值r1t7c1:1value1-1/1t6c1:2value1-1/2t5c1:3value1-1/3t4c2:1value1-2/1t3c2:2value1-2/2r2t2c1:1value2-1/1t1c2:1value2-1/1《云计算与大数据》第二版课件203、物理视图虽然从概念视图来看每个表格是由很多行组成的,但是在物理存储上面,它是按照列来保存的。Row

KeyTime

StampColumn

Family

c1列值r1t7c1:1value1-1/1t6c1:2value1-1/2t5c1:3value1-1/3Row

KeyTime

StampColumn

Family

c2列值r1t4c2:1value1-2/1t3c2:2value1-2/2《云计算与大数据》第二版课件21●单机模式●伪分布式●完全分布式10.1.4

Hbase的基本操作HBase三种部署模式《云计算与大数据》第二版课件22Hive

是建立在Hadoop

上的数据仓库基础构架。它提供了一系列的工具,可以用来进行数据提取转化加载(ETL),

这是一种可以存储、查询和分析存储在

Hadoop

中的大规模数据的机制。10.2分布式数据仓库Hive10.2.1

Hive简介《云计算与大数据》第二版课件23Hive的设计特点如下:一支持不同的存储类型。一可将元数据保存在关系数据库中,减少了在查询过程中执行语义检查的时间。-可以直接使用存储在Hadoop

文件系统中的数据。-

内置大量用户函数UDF来操作时间、字符串和其他的数据挖掘工具。一

采用类SQL

的查询方式,可将SQL

查询转换为

MapReduce

的job在Hadoop

集群上执行。《云计算与大数据》第二版课件2410.2.2

Hive体系结构命令行接口JDBC/ODBC

网络接口Thift

Server《云计算与大数据》第二版课件JobTrackerNameNodeDataNode&TaskTrackerHadoop元数据○Hive驱动

(编译器

,优化器

,执

)25《云计算与大数据》第二版课件2

Client用户接口类型命令行接口网络接口326(2)元数据存储Hive

将元数据存储在数据库中,如MySQL、Derby。Hive中的元数据包括表的名字、表的列和分区及其属性,表的属性(是否为外部表等),表的数据所在目录等。《云计算与大数据》第二版课件27(3)解释器、编译器、优化器、执行器解释器、编译器、优化器完成HQL查询语句从词法分析、语法分析、编译、优化以及查询计划的生成。生成的查询计划存储在HDFS

中,并在随后由MapReduce调用执行。《云计算与大数据》第二版课件28(4)HadoopHive

的数据存储在HDFS中,大部分的查询由MapReduce

完成

(包含*

如select*from

tbl

会生成

MapReduce

任务)。《云计算与大数据》第二版课件2910.2.3

Hive数据类型Hive的数据存储模型《云计算与大数据》第二版课件外部表(ExternalTable)分区(Partition)桶(Bucket)表(Table)30(1)在Hive中每一个Table都有一个相应的目录存储数据。例如,

一个表ahpu,

它在HDFS

中的路径为:/wh/ahpu,

其中

,wh

在hive-site.xml

中由${hive.metastore.wareh

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论