Download presentation
Presentation is loading. Please wait.
1
Hadoop 2.0 大家族(二) 云计算 (第三版) 第 6 章 CLOUD COMPUTING Third Edition
电子工业出版社《云计算(第三版)》配套课件 云计算 (第三版) CLOUD COMPUTING Third Edition 第 6 章 Hadoop 2.0 大家族(二) 主编:刘鹏 教授
2
云计算的红宝书 微信扫描二维码 关注云计算头条 电子工业出版社《云计算(第三版)》配套课件
本套PPT下载地址: 云计算的红宝书 书籍购买地址: (包邮且有刘鹏教授亲笔签名) 微信扫描二维码 关注云计算头条
3
刘 鹏 教授、博导、学科带头人,清华大学博士。现任中国云计算专家咨询委员会秘书长、中国信息协会大数据分会副会长、工业与信息化部云计算研究中心专家。 主持完成科研项目25项,发表论文80余篇,出版专业书籍15本。获部级科技进步二等奖4项、三等奖4项。主编了国内第一本云计算教材《云计算》和第一本云计算编程书籍《实战Hadoop》。创办了知名的中国云计算(chinacloud.cn)和中国大数据(thebigdata.cn)网站。 曾率队夺得2002 PennySort国际计算机排序比赛冠军,两次夺得全国高校科技比赛最高奖,并三次夺得清华大学科技比赛最高奖。 荣获“全军十大学习成才标兵”(排名第一)、南京“十大杰出青年”、江苏省“333高层次人才培养工程”中青年科学技术带头人、清华大学“学术新秀”等称号。
4
6.1 Hadoop 2.0大家族概述 6.2 ZooKeeper 6.3 Hbase 6.4 Pig 6.5 Hive 6.6 Oozie 6.7 Flume 6.8 Mahout 6.9 小结
5
6.3 Hbase 谷歌发表论文BigTable Powerset开启了Hbase项目 Powerset将Hbase交给Apache托管
2006 2008 2010 Hbase是基于Hadoop的开源分布式数据库,它以Google的BigTable为原型,设计并实现了具有 高可靠性 高性能 列存储 可伸缩 实时读写 的分布式数据库系统。 HBase适合于存储非结构化数据 Hbase是基于列的而不是基于行的模式 Hbase在Hadoop之上提供了类似于BigTable的能力
6
6.3 Hbase Hbase简介 Hbase入门
7
“表” “表” 6.3 Hbase Hbase数据模型 数据库一般以 Hbase也以 的形式存储结构化数据 的形式存储数据 数据的逻辑模型
用户对数据的组织形式 数据的物理模型 Hbase里数据在HDFS上的具体存储形式
8
Hbase数据模型 时间戳 列族 逻辑模型 概念 元素 行和列确定的存储单元
9
6.3 Hbase Hbase数据模型 表中仅有一行数据,行的唯一标识为com.cnn.www,对这行数据的每一次逻辑修改都有一个时间戳关联对应。 表中共有四列:contents:html,anchor:cnnsi.com,anchor:my.look.ca,mime:type,每一列以前缀的方式给出其所属的列族。 行健 时间戳 列族contents 列族anchor 列族mime "com.cnn.www" t9 anchor:cnnsi.com= "CNN" t8 anchor:my.look.ca= "CNN.com" t6 contents:html="<html>…" mime:type="text/html" t5
10
6.3 Hbase Hbase数据模型 行键是数据行在表中的唯一标识,并作为检索记录的主键。 在Hbase中访问表 中的行有三种方式
通过单个 行健访问 给定行健的 范围访问 全表扫描 Hbase提供了两个版本的回收方式: 1 对每个数据单元,只存储指定个数的最新版本 2 保存最近一段时间内的版本(如七天),客户端可以按需查询 元素由行健、列(<列族>:<限定符>)和时间戳唯一确定,元素中的数据以字节码的形式存储,没有类型之分。
11
Hbase数据模型 物理模型 概念模型中的一个行进行分割 并按照列族存储 表中的空值是不被存储的
如果没有指名时间戳,则返回指定列的最新数据值 可以随时向表中的任何一个列添加新列,而不需要事先声明
12
6.3 Hbase Hbase数据模型 行健 时间戳 列族contents "com.cnn.www" t6
contents:html="<html>…" t5 t3 列族anchor t9 anchor:cnnsi.com= "CNN" t8 anchor:my.look.ca= "CNN.com" 列族mime mime:type="text/html"
13
从节点服务称为HRegionServer
Hbase采用master/slave架构 主节点运行的服务称为HMaster 从节点服务称为HRegionServer 底层采用HDFS存储数据
14
Hbase架构 client HMaster
15
6.3 Hbase Hbase架构 1)Client Client端使用Hbase的RPC机制与HMaster和HRegionServer进行通信 2)ZooKeeper 存储了ROOT表的地址、HMaster的地址和HRegionServer地址 3)HMaster Hbase主节点,将Region分配给HRegionServer,协调HRegionServer的负载并维护集群状态 4)HRegionServer HRegionServer主要负责响应用户I/O请求,向HDFS文件系统中读写数据
16
6.3 Hbase Hbase简介 Hbase入门
17
1 2 3 4 5 6 6.3 Hbase Hbase部署 部署前提 Hbase 部署规划 部署Hbase HDFS里新建Hbase存储目录
启动 Hbase集群
18
6.3 Hbase Hbase接口 Hbase提供了诸多访问接口,下面简单罗列各种访问接口。
Native Java API 最常规和高效的访问方式,适合Hadoop MapReduce Job并行批处理Hbase表数据。 Hbase Shell Hbase的命令行工具,最简单的接口,适合管理、测试时使用。 Thrift Gateway 利用Thrift序列化技术,支持C++,PHP,Python等多种语言,适合其他异构系统在线访问Hbase表数据。
19
6.3 Hbase Hbase接口 Hbase提供了诸多访问接口,下面简单罗列各种访问接口。 REST Gateway
支持REST 风格的HTTP API访问Hbase,解除了语言限制。 Pig 可以使用Pig Latin流式编程语言操作Hbase中的数据,和Hive类似,本质上最终也是编译成MR Job来处理Hbase表数据,适合做数据统计。 Hive 同Pig类似,用户可以使用类SQL的HiveQL语言处理Hbase表中数据,当然最终本质依旧是HDFS与MR操作。
20
6.3 Hbase Hbase接口 【例6-3】按要求完成问题:
①假定MySQL里有member表,要求使用Hbase的Shell接口,在Hbase中新建并存储此表。 ②简述Hbase是否适合存储问题①中的结构化数据,并简单叙述Hbase与关系型数据库的区别。 身份ID 姓名 性别 年龄 教育 职业 收入 201401 aa 21 e0 p3 m 201402 bb 1 22 e1 p2 l 201403 cc 23 e2 p1
21
6.3 Hbase Hbase接口 【例6-3】解: 下面将姓名、性别、年龄这三个字段抽象为个人属性(personalAttr),教育、职业、收入抽象为社会属性(socialAttr),personalAttr列族包含name、gender和age三个限定符;同理socialAttr下包含edu、prof、inco三个限定符。 Key行键 Value列键 列族personalAttr 列族socialAttr 身份ID 姓名 性别 年龄 教育 职业 收入 201401 aa 21 e0 p3 M 201402 bb 1 22 e1 p2 L 201403 cc 23 e2 P1
22
6.3 Hbase Hbase接口 按上述思路,iClient上依次执行如下命令:
~]# hbase shell #进入Hbase命令行 hbase(main):001:0> list #查看所有表 hbase(main):002:0> create 'member','id','personalAttr','socialAttr' #创建member表 hbase(main):003:0> list hbase(main):004:0> scan 'member' #查看member内容 hbase(main):005:0> put 'member','201401','personalAttr:name','aa' #向member表中插入数据 hbase(main):006:0> put 'member','201401','personalAttr:gender','0' hbase(main):007:0> put 'member','201401','personalAttr:age','21' hbase(main):008:0> put 'member','201401','socialAttr:edu','e0' hbase(main):009:0> put 'member','201401','socialAttr:job','p3' hbase(main):010:0> put 'member','201401','socialAttr:imcome','m' hbase(main):011:0> scan 'member' hbase(main):012:0> disable 'member' #废弃member表 hbase(main):013:0> drop 'member' #删除member表 hbase(main):014:0> quit
23
6.3 Hbase Hbase接口 1 2 3 4 5 下面简单罗列Hbase和关系型数据库的区别:
Hbase数据操作只有很简单的插入、查询、删除、修改、清空等操作,不能实现表与表关联操作,而关系型数据库有大量此类SQL语句和函数; 3 Hbase基于列式存储,每个列族都由几个文件保存,不同列族的文件是分离的,关系型数据库基于表格设计和行模式保存; 4 Hbase修改和删除数据实现上是插入带有特殊标记的新记录,而关系型数据库是数据内容的替换和修改; 5 Hbase为分布式而设计,可通过增加机器实现性能和数据增长,而关系型数据库很难做到这一点。
24
6.1 Hadoop 2.0大家族概述 6.2 ZooKeeper 6.3 Hbase 6.4 Pig 6.5 Hive 6.6 Oozie 6.7 Flume 6.8 Mahout 6.9 小结
25
6.4 Pig Pig简介 Pig入门
26
6.4 Pig Pig基本框架 Pig相当于一个Hadoop的客户端,它先连接到Hadoop集群,之后才能在集群上进行各种操作。Pig的基本框架如下图所示。 Pig Latin MapReduce Cluster
27
1 2 6.4 Pig Pig语法 1)Pig Latin数据类型 基本数据类型
和大部分程序语言类似,Pig的基本数据类型为int、long、float、double、chararray和bytearray。 复杂数据类型 2 字符串或基本类型与字符串的组合,主要包含以下四种。 Filed Tuple Bag Map
28
6.4 Pig Pig语法 2)Pig Latin运算符
Pig Latin提供了算术、比较、关系等运算符,这些运算符的含义和用法与其他语言(C,Java)相差不大。 算术 运算符 加(+) 减(-) 乘(*) 除(/) 取余 (%) 三目运算符(?:) 比较 运算符 等于(==) 不等(!=)
29
6.4 Pig Pig语法 3)Pig Latin函数 Pig Latin是由一系列函数(命令)构成的数据处理流,这些函数或是内置或是用户自定义,下表是最常用的几个命令。 操作名称 功能 LOAD 载入待处理数据 FOREACH 逐行处理Tuple FILTER 过滤不满足条件的Tuple DUMP 将结果打印到屏幕 STORE 将结果保存到文件
30
6.4 Pig Pig简介 Pig入门
31
6.4 Pig Pig入门 1.Pig部署 2.Pig访问接口
由于Pig只相当于Hadoop的一个客户端,用户所写的Pig Latin经翻译器翻译后再提交集群执行,故只要在客户机上部署Pig即可 Pig提供了类Shell方式的访问接口,用户在Linux Shell下输入Pig,然后回车即可进入Pig命令行接口(即grunt)。
32
本章未完待续
33
百度排名首位的大数据资料和交流中心
34
百度排名首位的云计算资料和交流中心
35
终生免费的智能硬件大数据托管平台 扫一扫,进入万物云
36
终生免费的环境大数据共享平台 扫一扫,进入环境云
37
高校Hadoop教学科研 一揽子解决方案 云创大数据 给您一步到位的解决方案!
了解详情 云计算、大数据时代,社会亟需相关人才!而高校缺平台、缺人才、缺经验!怎么办? 云创大数据 给您一步到位的解决方案! 建设一个Hadoop实验平台 一套开源的Hadoop一体机和开发环境,详细的指导书籍和实验设计。 培养一支云计算师资队伍 来自云计算高手的系列培训, 早在2010年就培训了全国第一批云计算师资力量。 营造一个大数据科研环境 为科研提供技术支持,与大数据应用相结合,让科研迈上新台阶。
38
知名微信公众号推荐 学习云计算必须关注的公众号 刘鹏看未来 云计算头条 中国大数据 云创大数据 眼光决定成败,与刘鹏教授看未来。
微信号:lpoutlook 微信号: chinacloudnj 眼光决定成败,与刘鹏教授看未来。 刘鹏,清华博士,《云计算》作者。 资源丰富、分析深入、更新及时的云计算知识共享平台。 中国大数据 云创大数据 微信号: cStor_cn 微信号: cstorbigdata 国内大数据龙头企业。提供领先的云存储、云数据库、云视频、云传输产品和解决方案。 分享大数据技术,剖析大数据案例,讨论大数据话题。
39
运用云计算,精彩你生活 优秀免费云计算应用推荐 支持安卓和苹果 支持安卓和苹果 暂时仅有安卓版本
40
谢谢观看 云计算 (第三版) 第 6 章 CLOUD COMPUTING Third Edition 主编:刘鹏 教授
电子工业出版社《云计算(第三版)》配套课件 云计算 (第三版) CLOUD COMPUTING Third Edition 第 6 章 谢谢观看 主编:刘鹏 教授
Similar presentations