大数据与分布式计算 ppt课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
从一个驱动器上读取所有的数据需要很长的时间,写甚至更慢。 如何解决? 磁盘损坏数据丢失怎么办? 如果需要存储计算1000T数据怎么办?
3
常用RAID技术
4
RAID类型 RAID0 RAID1 RAID10 RAID5 RAID6
访问速度 很快 很慢 中等 较快 较快
数据可靠性 很低 很高 很高 较高 较(RAID5)高
磁盘利用率 100% 50% 50% (N-1)/N (N-2)/N
5
HDFS系统架构
6
7
什么是HDFS?
• Hadoop Distributed File System – Hadoop Distributed File System (HDFS) is the primary storage system used by Hadoop applications. HDFS creates multiple replicas of data blocks and distributes them on compute nodes throughout a cluster to enable reliable, extremely rapid computations.
• DataNode在本地文件系统存储文件块数据, 以及块数据的校验和
• 可以创建、删除、移动或重命名文件,当文 件创建、写入和关闭之后不能修改文件内容。
15
分而治之(Divide and Conquer)
16
分而治之(Divide and Conquer)
17
分而治之(Divide and Conquer)
21
MapReduce
它由称为map和reduce的两部分用户程序组成, 然后利用框架在计算机集群上面根据需 求运行多个程序实例来处理各个子任务, 然后再对结果进行归并。
22
23
WordCount
24
25
26
27
28
29
30
MapReduce
31
• 物理上
MapReduce
32
12
设计目标
假设: 节点失效是常态 理想: 1. 任何一个节点失效,不影响 HDFS服务 2. HDFS可以自动完成副本的复 制
13
HDFS主要组件的功能
NameNode • 存储元数据
•元数据保存在内存中 • 保存文件,block ,datanode 之间的映射关系
DataNode
• 存储文件内容 •文件内容保存在磁盘 •维护了block id到datanode本 地文件的映射关系
MapReduce
33
34
35
Hive
36
37
38
39
• SQL – Sub-queries in from clause – Equi-joins • Inner • Left, Right, full Outer – Multi-table Insert – Multi-group-by
41
Hive QL – Join
INSERT OVERWRITE TABLE pv_users SELECT pv.pageid, u.age FROM page_view pv JOIN user u ON (pv.userid = u.userid);
42
Hive QL – Join in Map Reduce
page_view
key value
key value
pageid userid time
111 <1,1>
111 <1,1>
1 111 9:08:01 2 111 9:08:13
111 <1,2>
111 <1,2>
1 222 9:08:14
222 <1,1>
Map user
Shuffle Sort
14
文件
• 文件切分成块(默认大小64M),以块为单 位,每个块有多个副本存Hale Waihona Puke Baidu在不同的机器上, 副本数可在文件生成时指定(默认3)
• NameNode是主节点,存储文件的元数据如 文件名,文件目录结构,文件属性(生成时 间,副本数,文件权限),以及每个文件的块 列表以及块所在的DataNode等等
18
MapReduce
19
MapReduce:大规模数据处理
• 处理海量数据(>1TB) • 上百/上千CPU实现并行处理 • 简单地实现以上目的 • 移动计算比移动数据更划算
分而治之(Divide and Conquer)
20
MapReduce特性
• 自动实现分布式并行计算 • 容错 • 提供状态监控工具 • 模型抽象简洁,程序员易用
40
• Extensibility – Pluggable Map-reduce scripts – Pluggable User Defined Functions – Pluggable User Defined Types • Complex object types: List of Maps – Pluggable Data Formats • Apache Log Format • Columnar Storage Format
大数据与分布式计算
1
HDFS
Hadoop Distributed File System
2
1990年,一个普通的硬盘驱动器可存储1370 MB的数据并拥有4.4 MB/s的传输 速度 ,所以,只需五分钟的时间就可以读取整个磁盘的数据。
20年过去了,1 TB级别的磁盘驱动器是很正常的,但是数据传输的速度却在 100 MB/s左右。所以它需要花两个半小时以上的时间读取整个驱动器的 数据。
8
HDFS设计目标
• HDFS以流式数据访问模式存储超大文件,运 行于商用硬件集群上。
9
• 超大文件 • 流式数据访问
– 一次写入多次读取 • 商用硬件
10
不适合HDFS的场景
• 低延迟的数据访问 • 大量小文件
– 超过NameNode的处理能力 • 多用户任意写入修改文件
11
• HDFS为了做到可靠性(reliability)创建了多份数据块 (data blocks)的复制(replicas),并将它们放置在服务 器群的计算节点中(compute nodes),MapReduce就可以在它 们所在的节点上处理这些数据了。
111 <2,25> Reduce
userid age gender
3
常用RAID技术
4
RAID类型 RAID0 RAID1 RAID10 RAID5 RAID6
访问速度 很快 很慢 中等 较快 较快
数据可靠性 很低 很高 很高 较高 较(RAID5)高
磁盘利用率 100% 50% 50% (N-1)/N (N-2)/N
5
HDFS系统架构
6
7
什么是HDFS?
• Hadoop Distributed File System – Hadoop Distributed File System (HDFS) is the primary storage system used by Hadoop applications. HDFS creates multiple replicas of data blocks and distributes them on compute nodes throughout a cluster to enable reliable, extremely rapid computations.
• DataNode在本地文件系统存储文件块数据, 以及块数据的校验和
• 可以创建、删除、移动或重命名文件,当文 件创建、写入和关闭之后不能修改文件内容。
15
分而治之(Divide and Conquer)
16
分而治之(Divide and Conquer)
17
分而治之(Divide and Conquer)
21
MapReduce
它由称为map和reduce的两部分用户程序组成, 然后利用框架在计算机集群上面根据需 求运行多个程序实例来处理各个子任务, 然后再对结果进行归并。
22
23
WordCount
24
25
26
27
28
29
30
MapReduce
31
• 物理上
MapReduce
32
12
设计目标
假设: 节点失效是常态 理想: 1. 任何一个节点失效,不影响 HDFS服务 2. HDFS可以自动完成副本的复 制
13
HDFS主要组件的功能
NameNode • 存储元数据
•元数据保存在内存中 • 保存文件,block ,datanode 之间的映射关系
DataNode
• 存储文件内容 •文件内容保存在磁盘 •维护了block id到datanode本 地文件的映射关系
MapReduce
33
34
35
Hive
36
37
38
39
• SQL – Sub-queries in from clause – Equi-joins • Inner • Left, Right, full Outer – Multi-table Insert – Multi-group-by
41
Hive QL – Join
INSERT OVERWRITE TABLE pv_users SELECT pv.pageid, u.age FROM page_view pv JOIN user u ON (pv.userid = u.userid);
42
Hive QL – Join in Map Reduce
page_view
key value
key value
pageid userid time
111 <1,1>
111 <1,1>
1 111 9:08:01 2 111 9:08:13
111 <1,2>
111 <1,2>
1 222 9:08:14
222 <1,1>
Map user
Shuffle Sort
14
文件
• 文件切分成块(默认大小64M),以块为单 位,每个块有多个副本存Hale Waihona Puke Baidu在不同的机器上, 副本数可在文件生成时指定(默认3)
• NameNode是主节点,存储文件的元数据如 文件名,文件目录结构,文件属性(生成时 间,副本数,文件权限),以及每个文件的块 列表以及块所在的DataNode等等
18
MapReduce
19
MapReduce:大规模数据处理
• 处理海量数据(>1TB) • 上百/上千CPU实现并行处理 • 简单地实现以上目的 • 移动计算比移动数据更划算
分而治之(Divide and Conquer)
20
MapReduce特性
• 自动实现分布式并行计算 • 容错 • 提供状态监控工具 • 模型抽象简洁,程序员易用
40
• Extensibility – Pluggable Map-reduce scripts – Pluggable User Defined Functions – Pluggable User Defined Types • Complex object types: List of Maps – Pluggable Data Formats • Apache Log Format • Columnar Storage Format
大数据与分布式计算
1
HDFS
Hadoop Distributed File System
2
1990年,一个普通的硬盘驱动器可存储1370 MB的数据并拥有4.4 MB/s的传输 速度 ,所以,只需五分钟的时间就可以读取整个磁盘的数据。
20年过去了,1 TB级别的磁盘驱动器是很正常的,但是数据传输的速度却在 100 MB/s左右。所以它需要花两个半小时以上的时间读取整个驱动器的 数据。
8
HDFS设计目标
• HDFS以流式数据访问模式存储超大文件,运 行于商用硬件集群上。
9
• 超大文件 • 流式数据访问
– 一次写入多次读取 • 商用硬件
10
不适合HDFS的场景
• 低延迟的数据访问 • 大量小文件
– 超过NameNode的处理能力 • 多用户任意写入修改文件
11
• HDFS为了做到可靠性(reliability)创建了多份数据块 (data blocks)的复制(replicas),并将它们放置在服务 器群的计算节点中(compute nodes),MapReduce就可以在它 们所在的节点上处理这些数据了。
111 <2,25> Reduce
userid age gender