《云计算(第三版)》配套PPT之十九:第5章 Hadoop 2.0 主流开源云架构(五)

合集下载

《云计算(第三版)》配套PPT之五:第2章 Google云计算原理与应用(四)

《云计算(第三版)》配套PPT之五:第2章 Google云计算原理与应用(四)

MapReduce
优点:便携 缺点:效率低
Google的团队结合其自身的实际需求,借鉴搜 索引擎和并行数据库的一些技术,开发出了实 时的交互式查询系统Dremel。
5 of 64
2 . 7 海 量 数 据 的 交 互 式 分 析 工 具 D r e m e l 《云计算》第三版配套PPT课件
Dremel支持的典型应用
《云计算》第三版配套PPT课件
云 计 算 (第三版)
CLOUD COMPUTING Third Edition
第2章
Google云计算原理与应用(四)
主编:刘鹏 教授
of 64
《云计算》第三版配套PPT课件
目 录
2.1 Google文件系统GFS 2.2 分布式数据处理MapReduce 2.3 分布式锁服务Chubby 2.4 分布式结构化数据表Bigtable 2.5 分布式存储系统Megastore 2 . 6 大规模分布式系统的监控基础架构Dapper 2.7 海量数据的交互式分析工具Dremel 2.8 内存大数据分析系统PowerDrill 2.9 Google应用程序引擎
符合该模式的两条记录
11 of 64
《云计算》第三版配套PPT课件
2.7 海量数据的交互式分析工具Dremel
2.7.1 产生背景 2.7.2 数据模型 2.7.3 嵌套式的列存储 2.7.4 查询语言与执行 2.7.5 性能分析 2.7.6 小结
of 64
2 . 7 海 量 数 据 的 交 互 式 分 析 工 具 D r e m e l 《云计算》第三版配套PPT课件 数据结构的无损表示
15 of 64
2 . 7 海 量 数 据 的 交 互 式 分 析 工 具 D r e m e l 《云计算》第三版配套PPT课件

云计算课件 第5章_Hadoop_1

云计算课件 第5章_Hadoop_1

网络
cSlave0处理 汇总至本机数据
<china,2> <china,1>
计算后 得结果
<china,3>
结果存至DFS
cSlave1处理 汇总至本机数据
<cstor,1> <cstor,2>
计算后 得结果
<cstor,3>
结果存至DFS
本地计算
洗牌
汇总计算
存结果
分布式计算
16 of 37
5.1 引例 分布式计算
整个集群就像是一台机器、一片云,硬盘显示为统一 存储空间,文件接口统一。
分布式文件系统
Distributed File System,DFS
≈ Hadoop分布式文件系统 Hadoop DFS,HDFS
14 of 37
《云计算》第三版配套PPT课件
移动计算 比移动数据更划算
——来自Google论文
存储空间
cSlave0 存储真实数据
cSlave1
cSlaveN
存储真实数据
……
存储真实数据13 of来自375.1 引例 分布式存储
《云计算》第三版配套PPT课件
对内 对外
客户-服务器模式
只要保证store master正常工作,我们很容易随意添 加store slave,硬盘存储空间无限大。
统一存储空间,统一文件接口
《云计算》第三版配套PPT课件
本地计算 (Map)
洗牌 (Shuffle)
合并再计算 (Reduce)
17 of 37
5.1 引例
《云计算》第三版配套PPT课件
分布式计算
取新机器cMaster1,采用客户-服务器模式构建由机器cSlave0、cSlave1和 cMaster1组成的分布式计算集群。

《云计算(第三版)》配套PPT之十九:第5章 Hadoop 2.0 主流开源云架构(五).pptx

《云计算(第三版)》配套PPT之十九:第5章 Hadoop 2.0 主流开源云架构(五).pptx

17 of 42
《云计算》第三版配套PPT课件
2.HDFS编程基础
of 42
5.6 Hadoop 2.0编程接口
HDFS 编程
1)Hadoop统一配置文件类Configuration
《云计算》第三版配套PPT课件
Hadoop的每一个实体(Common, HDFS,Yarn)都有与其相对应的配置 文件,Configuration类是联系几个配 置文件的统一接口。
5.5 Hadoop 2.0访问接口
《云计算》第三版配套PPT课件
命令行接口
4.其他常用命令 sbin/目录下的脚本主要分为两种类型:启停服务脚本和管理服务脚本。 其中,脚本hadoop-daemon.sh可单独用于启动本机服务,方便本机调试, start/stop类脚本适用于管理整个集群,读者只要在命令行下直接使用这些脚本, 它会自动提示使用方法。
请编写一简单程序,要求实现在HDFS里新建文件myfile,并且 写入内容“china cstor cstor cstor china”。
【例2】
请编写一简单程序,要求输出HDFS里刚写入的文件myfile的内 容。
【例3】
请编写一简单代码,要求输出HDFS里文件myfile相关属性(如 文件大小、拥有者、集群副本数,最近修改时间等)。
《云计算》第三版配套PPT课件
fs包下的FSDataInputStream
io包下的缓冲流DataInputBuffer
util包下的LineReader
……
用户可以和Java流相互配合使用
21 of 42
5.6 Hadoop 2.0编程接口
5.6.1 HDFS 编程 5 .6 .2 Ya r n 编 程

《云计算(第三版)》第5章 Hadoop 2.0 主流开源云架构(二)PPT课件

《云计算(第三版)》第5章 Hadoop 2.0 主流开源云架构(二)PPT课件
在一台单机上运行,用不同的进程模仿分 布式运行中的各类节点
分布式模式
在不同的机器上部署系统
13
5.3 Hadoop 2.0部署 部署步骤
制定部署规划
测试 Hadoop
准备机器
准备机器 软件环境
部署前工作
启动 Hadoop配置 Hadoop源自部署Hadoop14
下载 Hadoop
解压 Hadoop
5.3 Hadoop 2.0部署
5.3 Hadoop 2.0部署
5.3.1 部署综述 5.3.2 传统解压包部署
5.3 Hadoop 2.0部署
部署综述
安装 方式
传统解压包方式 烦琐易错 有助于读者深入理解Hadoop Linux标准方式 简单易用 隐藏了太多细节
部署 环境
单机模式 伪分布模式
不需要与其他节点交互,不需要使用 HDFS,直接读写本地的文件系统
考虑到集群中每台机器都可能会出问题(如硬件失效),Hadoop 2.0本身从设 计上就在程序层规避了这些问题。
4
5.2 Hadoop 2.0简述
Hadoop 2.0由来
Hadoop至少应当包含分布式存储和分布式计算两个模块,下面给出Hadoop1.0 项目模块。
Hadoop Common
HDFS
8
5.2 Hadoop 2.0简述
5.2.1 Hadoop 2.0由来 5.2.2 Hadoop 2.0相关项目 5.2.3 Hadoop应用
5.2 Hadoop 2.0简述 Hadoop应用
构建大型分布式集群
数据仓库
10
数据挖掘
5.1 引例 5.2 Hadoop 2.0简述 5.3 Hadoop 2.0部署 5.4 Hadoop 2.0体系架构 5.5 Hadoop 2.0访问接口 5.6 Hadoop 2.0编程接口

云计算知识课件剖析

云计算知识课件剖析
4.VMware vCloud的实现技术 在底层,VMware开发了云操作系统vSphere,在vSphere之上,VMware又开发 了vCloud Service Director, VMware还提供了桌面虚拟化产品VMware View
《云计算》第三版配套PPT课件
12.1 主流商业云计算解决方案比较
12.1.1 应用场景 12.1.2 使用流程 12.1.3 体系结构 12.1.4 实现技术 12.1.5 核心业务
of 44
12.1 主流商业云计算解决方案比较
《云计算》第三版配套PPT课件
实现技术
1.Google App Engine的实现技术 分为GFS、MapReduce、Bigtable和Chubby四个相互独立却又紧密联系的组成 部分
成本地调试。 将程序上传到Google App Engine后运行。
6 of 44
12.1 主流商业云计算解决方案比较 使用流程
Amazon AWS的使用流程
《云计算》第三版配套PPT课件
注册亚马逊账户,填写注册信息,登录。 根据需要选择需要的服务进行注册,填写相关信息,
完成服务配置。 上传应用程序或待处理数据,有时需要按要求上传
of 44
12.1 主流商业云计算解决方案比较 体系结构
《云计算》第三版配套PPT课件
相同之处
整个云计算平台对外提供统一的Web接口。 后台实现的细节对用户透明。
主要的区别
Google的云计算服务相对简单,没有实现多个服务的单独入口。 微软的云计算不仅支持云端应用程序,还支持本地的应用程序。
11 of 44
of 44
12.1 主流商业云计算解决方案比较
《云计算》第三版配套PPT课件

《云计算与大数据概论》课件第5章 Hadoop开发平台

《云计算与大数据概论》课件第5章 Hadoop开发平台
一个案例为Hadoop做了良好的宣传:《纽约时报》使用Amazon的EC2云计 算将4TB的报纸扫描文档压缩,转换成用于Web的PDF文件,整个过程使用 100台机器运行,历时不到24小时,如果不结合Amazon的按小时付费的模 式(即允许《纽约时报》在很短的一段时间内访问大量机器)和Hadoop易 于使用的并行程序设计模型,该项目很可能不会这么快就能完成。
ZooKeeper典型的应用场景: 统一命名服务 配置管理 集群管理 共享锁(Locks) 队列管理
HBase(分布式NoSQL数据库)
HBase位于结构化存储层,是一个分布式的列存储数据库。该技术来源于Google的论 文《BigTable:一个结构化数据的分布式存储系统》。HBase是Hadoop项目的子项目, 如同BigTable利用了Google文件系统(Google File System)提供的分布式数据存储方 式一样,HBase在Hadoop之上提供了类似于BigTable的功能。 HBase不同于一般的RDBMS:其一,HBase是一个适合于存储非结构化数据的数据库; 其二,HBase使用基于列而不是基于行的模式。HBase和BigTable使用相同的数据模型, 用户将数据存储在一个表里,一个数据行拥有一个可选择的键和任意数量的列,由 于HBase表是疏松的,用户可以给行定义各种不同的列。HBase主要用于需要随机访 问、实时读写的大数据(BigData)。
MapReduce很适合处理那些需要分析整个数据集的问题(以批处理的方式),而RDBMS则适用于点查询和更新 (其中,数据集已经被索引以提供低延迟的检索和短时间的少量数据更新)。MapReduce适合数据被一次写入和 多次读取的应用,而RDBMS更适合持续更新的数据集。
MapReduce是一种线性的可伸缩的编程模型,程序员编写两个函数——Map函数和Reduce函数——每一个都定义 一个键值对集映射到另一个。这些函数无视数据的大小或者它们正使用的集群的特性,可以原封不动地应用到 小规模数据集或者大的数据集上。

3.《云计算(第三版)》配套PPT之三:第2章 Google云计算原理与应用(二)

3.《云计算(第三版)》配套PPT之三:第2章 Google云计算原理与应用(二)

4 of 56
2.3 分布式锁服务Chubby 系统的约束条件
《云计算》第三版配套PPT课件
p1:每个acceptor只接受它得到的第一个决议。
p2:一旦某个决议得到通过,之后通过的决议必须和该决议保持一致。
p2a:一旦某个决议v得到通过,之后任何acceptor再批准的决议必须是v。 p2b:一旦某个决议v得到通过,之后任何proposer再提出的决议必须是v。 p2c:如果一个编号为n的提案具有值v,那么存在一个“多数派”,要么它们中没有谁批 准过编号小于n的任何提案,要么它们进行的最近一次批准具有值v。
《云计算》第三版配套PPT课件
目 录
2.1 Google文件系统GFS 2.2 分布式数据处理MapReduce 2.3 分布式锁服务Chubby 2.4 分布式结构化数据表Bigtable 2.5 分布式存储系统Megastore 2 . 6 大规模分布式系统的监控基础架构Dapper 2.7 海量数据的交互式分析工具Dremel 2.8 内存大数据分析系统PowerDrill 2.9 Google应用程序引擎
为了保证决议的唯一性,acceptors也要满足一个约束条件:当且仅当 acceptors 没有收到编号大于n的请求时,acceptors 才批准编号为n的提案。
5 of 56
2.3 分布式锁服务Chubby 一个决议分为两个阶段
《云计算》第三版配套PPT课件
1
准备阶段
proposers选择一个提案并将它的编号设为n 将它发送给acceptors中的一个“多数派”
远程过程调用
客户端
Chubby
应用程序 程序率
客户端进程
主服务器
客户端
在客户这一端每个客户应用程序都有 一个Chubby程序库(Chubby Library),客户端的所有应用都是通 过调用这个库中的相关函数来完成的。

高级培训-20.《云计算(第三版)》配套PPT之二十:第6章 Hadoop 2.0 大家族(一)3

高级培训-20.《云计算(第三版)》配套PPT之二十:第6章 Hadoop 2.0 大家族(一)3

12 Apache Chukwa
分布式的数据收集与传输系统
它可以将各种各样类型的数据收集与导入Hadoop。
6
6.1 Hadoop 2.0大家族概述 组件简介
13 Apache Hama
基于HDFS的BSP并行计算框架
可用于包括图、矩阵和网络算法在内的大规模、大数据计算。
14 Apache Giraph
23
6.2 ZooKeeper
6.2.1 ZooKeeper简介 6.2.2 ZooKeeper 入门
6.2 ZooKeeper ZooKeeper部署
1.部署前提
2.部署规划
3.下载并安装ZooKeeper服务
5.配置ZooKeeper
4.初始化ZooKeeper
6.启动ZooKeeper服务
8
6.1 Hadoop 2.0大家族概述
组件分类
1 分布式存储 HDFS
2 分布式操作系统 Yarn
3 分布式处理算法 MapReduce 4 分布式锁服务 ZooKeeper
5 分布式数据库 Hbase Cassandra 6 分布式锁服务 Oozie 7 高层语言 Pig Hive Impala RHadoop
6 Apache Flume
分布式日志数据聚合与传输工具
可用于日志数据收集、处理和传输,功能类似于Chukwa,但比Chukwa更小巧
实用。
7 Apache Mahout
基于Hadoop的分布式程序库
提供了大量机器学习算法的MR实现,并提供了一系列工具,简化了从建模到测 试流程。
8 Apache Sqoop
8 机器学习库 Mahout Giraph Hama RHadoop
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《云计算》第三版配套PPT课件
fs包下的FSDataInputStream
io包下的缓冲流DataInputBuffer
util包下的LineReader
……
用户可以和Java流相互配合使用
23 of 42
5.6 Hadoop 2.0 编程接口
5 . 6 . 1 H D FS 编 程 5 . 6 . 2 Ya r n 编 程
【例1】
请编写一简单程序,要求实现在HDFS里新建文件myfile,并且 写入内容“china cstor cstor cstor china”。 请编写一简单程序,要求输出HDFS里刚写入的文件myfile的内 容。 请编写一简单代码,要求输出HDFS里文件myfile相关属性(如 文件大小、拥有者、集群副本数,最近修改时间等)。
5.5 Hadoop 2.0 访问接口 命令行接口
4.其他常用命令
《云计算》第三版配套PPT课件
sbin/目录下的脚本主要分为两种类型:启停服务脚本和管理服务脚本。
其中,脚本hadoop-daemon.sh可单独用于启动本机服务,方便本机调试, start/stop类脚本适用于管理整个集群,读者只要在命令行下直接使用这些脚本, 它会自动提示使用方法。
5.6 Hadoop 2.0 编程接口 Yarn编程 Yarn
资源管理框架 ResourceManager(RM) NodeManager(NM)
《云计算》第三版配套PPT课件
不参与 计算逻辑
逻辑实体
定义 Map型
由ApplicationMaster和Client组成的处理逻辑相同 的一类任务
MapReduce型
《云计算》第三版配套PPT课件
配置文件
hdfs-site.xml
配置参数
{node.httpaddress} { yarn.resourcemanage r.webapp.address} {mapreduce.jobhistory. webapp.address}
Yarn
yarn-site.xml
13 of 42
目 录
5.1 引例
5.2 Hadoop 2.0简述 5.3 Hadoop 2.0部署 5.4 Hadoop 2.0体系架构 5.5 Hadoop 2.0访问接口 5.6 Hadoop 2.0编程接口
5.6 Hadoop 2.0 编程接口
5 . 6 . 1 H D FS 编 程 5 . 6 . 2 Ya r n 编 程
电子工业出版社《云计算(第三版)》配套课件
云 计 算 (第三版)
CLOUD COMPUTING
Third Edition
第5章
Hadoop 2.0 主流开源云架构(五)
主编:刘鹏 教授
of 42
电子工业出版社《云计算(第三版)》配套课件
本套PPT下载地址:/list.aspx?cid=20
云计算的红宝书
书籍购买地址:/item.html?itemID=1469775685&p=-1 (包邮且有刘鹏教授亲笔签名)
微信扫描二维码 关注云计算头条
刘鹏
教授、博导、学科带头人,清华大学博士。现任中国云计算专家咨询委员会秘书长、
中国信息协会大数据分会副会长、工业与信息化部云计算研究中心专家。
FileSystem类是Hadoop访问文件系统的抽象类,它不仅可以获取HDFS文件系 统服务,也可以获取其他文件系统(比如本地文件系统)服务,为程序员访问各
类文件系统提供统一接口。
22 of 42
5.6 Hadoop 2.0 编程接口 HDFS 编程
3)HDFS常用流和文件状态类 Common还提供了一些处理HDFS文件的常用流:
28 of 42
ApplicationMaster 则负责此次任务的 处理全过程
5.6 Hadoop 2.0 编程接口 概念和流程
3)编程步骤小结
《云计算》第三版配套PPT课件
Client端
步骤1:获取ApplicationId 步骤2:提交任务 Yarn提供了三个
ApplicationMaster端
对文件内容进行操作
编写HDFS代码操作HDFS里的文件时,也是这个思路,只不过HDFS须先加载配 置文件,在进行任何操作之前,我们都要实例化配置文件
17 of 42
《云计算》第三版配套PPT课件
1.HDFS编程实例
of 42
5.6 Hadoop 2.0 编程接口 HDFS 编程
《云计算》第三版配套PPT课件
MapReduce
mapred-site.xml
在Hadoop 2.0里,MapReduce是Yarn不可缺少的模块,这里的JobHistory是一 个任务独立模块,用来查看历史任务,和MapReduce并行处理算法无关。
8 of 42
5.5 Hadoop 2.0 访问接口
5.5.1 访问接口综述 5.5.2 浏览器接口 5.5.3 命令行接口
目 录
5.1 引例
5.2 Hadoop 2.0简述 5.3 Hadoop 2.0部署 5.4 Hadoop 2.0体系架构 5.5 Hadoop 2.0访问接口 5.6 Hadoop 2.0编程接口
5.5 Hadoop 2.0 访问接口
5.5.1 访问接口综述 5.5.2 浏览器接口 5.5.3 命令行接口
MapReduceMap型
CPU密集 型任务
25 of 42
5.6 Hadoop 2.0 编程接口 概念和流程
《云计算》第三版配套PPT课件
资源管理框架
RM负责资源分配
NodeManager 负责管理本地资源
计算框架
Client负责提交任务
RM启动任务对应的 ApplicationMaster
26 of 42
Client
1.HDFS 以tar包方式部署时,其执行方式是HADOOP_HOME/bin/hdfs,当以 完全模式部署时,使用HDFS用户执行hdfs即可
2.Yarn 以tar包方式部署时,其执行方式是HADOOP_HOME/bin/yarn,当以 完全模式部署时,使用Yarn用户执行yarn即可
每一条命令都包含若干条子命令 Yarn的Shell命令也主要分为用户命令和管理员命令
RM会选定一个Container来启动ApplicationMaster。 调用ApplicationMasterProtocol#Register Application-Master向RM完成注册
ApplicationMaster会通过心跳包与RM保持通信 ApplicationMaster须向RM注销自己
《云计算》第三版配套PPT课件
DistributedShell是Yarn自带的一个应用程序编程实例,相当于Yarn编程中的 “Hello World”,它的功能是并行执行用户提交的Shell命令或Shell脚本。 从Hadoop官方网站下载Hadoop-2.2.0-src.tar.gz(Hadoop源码包)并解压 后,依次进入Hadoop-yarn-project\Hadoop-yarn\Hadoop-yarnapplications,下面就是Yarn自带的两个Yarn编程实例。
主持完成科研项目25项,发表论文80余篇,出版专业书籍15本。获部级科技进步 二等奖4项、三等奖4项。主编了国内第一本云计算教材《云计算》和第一本云计算编程 书籍《实战Hadoop》。创办了知名的中国云计算()和中国大数据
()网站。
曾率队夺得2002 PennySort国际计算机排序比赛冠军,两次夺得全国高校科技比 赛最高奖,并三次夺得清华大学科技比赛最高奖。 荣获“全军十大学习成才标兵”(排名第一)、南京“十大杰出青年”、江苏省 “333高层次人才培养工程”中青年科学技术带头人、清华大学“学术新秀”等称号。
步骤1:注册 步骤2:申请资源 步骤3:启动Container 步骤4:重复步骤2、3,直至任务完成 步骤5:注销
Application-Master实现:
DistributedShell unmanaged-am-launcher MapReduce
29 of 42
5.6 Hadoop 2.0 编程接口 实例分析
5.6 Hadoop 2.0 编程接口
《云计算》第三版配套PPT课件
HDFS
Yarn
Hadoop
16 of 42
5.6 Hadoop 2.0 编程接口 HDFS 编程
《云计算》第三版配套PPT课件
使用File类方法对文件句柄 使用Java处理文件 新建File类 进行相关操作
针对这个File新建各种流
《云计算》第三版配套PPT课件
Client提交任务时,通过调用ApplicationClientProtocol#getNewApplication 从RM获取一个ApplicationId,然后再通过 ApplicationClientProtocol#submitApplication提交任务。
5.6 Hadoop 2.0 编程接口 概念和流程
1)编程时使用的协议 (1)ApplicationClientProtocol
《云计算》第三版配套PPT课件
Client<-->ResourceManager。 Client通知RM启动任务(如要求RM启动ApplicationMaster),获取任务状态 或终止任务时使用的协议。 (2)ApplicationMasterProtocol ApplicationMaster<-->ResourceManager。 ApplicationMaster向RM注册/注销申请资源时用到的协议。
Hadoop 2.0每个模块访问方式可分为:
浏览器接口
相关文档
最新文档