当前课程知识点:大数据平台核心技术 >  第六讲 全局数据管理与调度 >  数据就近原则计算如何容错 >  数据就近原则计算如何容错(主讲人:罗李)

返回《大数据平台核心技术》慕课在线视频课程列表

数据就近原则计算如何容错(主讲人:罗李)在线视频

数据就近原则计算如何容错(主讲人:罗李)

下一节:ODPS跨集群数据依赖(主讲人:罗李)

返回《大数据平台核心技术》慕课在线视频列表

数据就近原则计算如何容错(主讲人:罗李)课程教案、知识点、字幕

从上面的内容

我们了解了分布式文件系统

和分布式计算系统中的一些

重要的知识

有了这些知识

我们就可以来继续

看我们如何来利用这些知识

来解决实际碰到的问题

我们前面讲过

我们现在的这节课程

主要是要讨论

解决数据分散在

许多独立的集群中

无法共享 存在冗余和重复

进而引发校验

数据正确性和存储代价

等一系列的问题的方案

所以我们会来分享一些案例

来看看在实际生产中

阿里巴巴是怎么解决这些问题的

我们这里考虑一种

最极端的情况

那就是数据

不仅分布在不同的集群上

而且集群还分布在

不同的数据中心

甚至不同的地域的情况

在这样的情况下

我们通过什么样的方式

来规划集群

达到数据共享

并减少冗余和重复

高效访问的目的

在实践中

我们使用过两种

集群规划的形式

分别如下图所示

如左图

在多个数据中心之间

架设统一的分布式文件系统

和分布式计算系统

让这些数据中心里的所有机器

像一个整体一样

组成一个统一的分布式系统

让系统屏蔽掉内部

跨数据中心的物理细节

并通过智能的数据

分布策略和计算调度策略

来规避由于跨数据中心的

物理网络限制

如右图所示

其方案是分别在

每一个数据中心上

架设独立的分布式文件系统

和分布式计算系统

组成多个独立的

分布式系统组合

但在这些系统的上层

架设一个屏蔽掉下面

多系统环境的调度层

来达到跨数据中心的系统

统一提供给用户层服务的目的

接下来我为大家分享

基于上述两种规划方案

在阿里巴巴实践中的两套

跨数据中心的集群规划案例

第一个案例

是阿里巴巴的云梯集群

它使用的是上述第一种

集群规划方案

第二个案例是阿里巴巴的

ODPS集群

它使用的是上述

第二种集群规划方案

这张就是云梯

跨集群方案的架构图

从架构图中可以看出

云梯集群跨越了两个数据中心

也就是机房一和机房二

机房一和机房二的所有机器

构成了一个统一的

分布式文件系统

其中一部分文件系统的

Name space

在机房一的Master上

另外一部分的Name space

在机房二的Master上

机房二中运行的计算作业

如果需要访问数据就在机房二

那么就直接从机房二的

Master上进行访问

不需要跨越机房间的带宽

而如果机房二中的计算作业

要访问的是机房一中的数据

则有两种选择

第一是直接通过机房间的独享

网络带宽来直读

这种方式对数据的访问次数

很少的情况下是可以的

但如果对同一份数据

要跨机房的访问数据很多

就会产生多次访问的带宽叠加

代价下就会成倍地上升

也就是说

数据跟计算的距离太远

第二则是通过我们本节课程前面

介绍到的技术

让机房一中

需要被机房二中访问到的数据

将其中一个或多个副本

放置在机房二

这样 当机房二中的计算任务

需要访问机房一中的数据时

会发现这份数据

在机房二上也有副本

于是计算会发送到机房二中的

计算节点上进行计算

大大节约了数据跨机房直读的

带宽和效率

云梯集群采用的是

第一种集群规划方式

而阿里巴巴的ODPS

采用的是第二种集群规划方式

这里简单给大家介绍一下

阿里巴巴的ODPS

分布式系统情况

如图中所示

是阿里巴巴自主研发的

云计算系统的整体架构图

底下是分别叫做伏羲的

分布式计算系统

和叫做盘古的分布式文件系统

在机制上

就是提供了

多种分布式计算模型

如SQL

My preduce(音)

流失计算 内存机上等

多种计算模型的ODPS集群

这个架构相信在前面的课程中

我的同事已经给大家

详细介绍过

所以我在这里不再做

进一步的介绍

我们只来看ODPS本身

内部的整体架构

以方便我们了解

ODPS在全局数据管理上

是怎么做的

这就是ODPS系统的

整体架构图

ODPS提供多种计算模型

如分布式的SQL 05:06(音)

等等所有这些计算任务

都在这套架构中

进行调度和管理

并最终提交到

底层的伏羲调度系统

处理存储在盘古

分布式文件系统上的数据

大家可以很清楚地看到

在ODPS的下方

是多个独立的分布式集群

分布叫做Cluster1

和Cluster2等等

这些系统都是一些

独立的分布式文件系统

和分布式计算系统的组合

但他们都是为ODPS服务

这也就对应起来

我们刚才说的

两种集群规划模式的第二种

在ODPS的架构中

跟我们本节课程有关系的

就是处在中间方框最右边的

Replication worker的部分

这个组建就是用来管理ODPS中

跨集群数据分布

和管理策略的组建

在ODPS中 数据并不一定是

以最原始的分布式文件的方式

呈现给用户

而是以一种更加抽象的方式

提供数据视角

用这种方式将用户

从简单的文件操作中解放出来

只需要关心自己

业务逻辑相关的数据视图

其中最常用的两种数据视图

分别是Table

也就是06:26(音)的Table表

这种情况

通常适用于用户是SQL用户

用户运行分布式作业的方式

是通过提交SQL语句来执行

这样用户通常来说

并不关心数据的物理存储

而是以表这样的视图

来看自己的数据

在ODPS中

另外一种数据视图为Volume

也就是原始文件数据

这样用户能够通过Volume

看到自己需要处理的原始文件

并通过自己写My preduce(音)

或者其他类型的分布式作业

来对数据进行处理

大数据平台核心技术课程列表:

第一讲 大数据和ODPS

-主讲人:武永卫

--大数据处理平台概述(主讲人:武永卫)

-主讲人:程永

--大数据平台ODPS(主讲人:程永)

-QUIZ--作业

第二讲 分布式存储

-大纲

--大纲(主讲人:姚文辉)

-初步认识大数据对分布式存储系统的需求

--初步认识大数据对分布式存储系统的需求

-理解大数据对分布式存储系统的需求

--理解大数据对分布式存储系统的需求(主讲人:姚文辉)

-具体说明大数据对分布式存储系统的需求

--具体说明大数据对分布式存储系统的需求(主讲人:姚文辉)

-大规模分布式存储的挑战

--大规模分布式存储的挑战(主讲人:姚文辉)

-小概率事件-Raid卡故障

--小概率事件-Raid卡故障(主讲人:姚文辉)

-分布式存储系统举例

--分布式存储系统举例(主讲人:姚文辉)

-分布式存储系统重要功能设计要点剖析

--分布式存储系统重要功能设计要点剖析(主讲人:姚文辉)

-链式写正常流程

--链式写正常流程(主讲人:姚文辉)

-写流程的另一种常见方式:主从模式

--写流程的另一种常见方式:主从模式(主讲人:姚文辉)

-链式写异常流程

--链式写异常流程(主讲人:姚文辉)

-写异常处理的另一种方法-Seal and New

--写异常处理的另一种方法-Seal and New(主讲人:姚文辉)

-读正常流程

--读正常流程(主讲人:姚文辉)

-读流程优化-BackupRead

--读流程优化-BackupRead(主讲人:姚文辉)

-IO QoS

--IO QoS(主讲人:姚文辉)

-数据正确性:checksum

--数据正确性:checksum(主讲人:姚文辉)

-数据可靠性-Replication

--数据可靠性-Replication(主讲人:姚文辉)

-数据均衡-Rebalance

--数据均衡-Rebalance(主讲人:姚文辉)

-垃圾回收-Garbage collection

--垃圾回收-Garbage collection(主讲人:姚文辉)

-Erasure coding

--Erasure coding(主讲人:姚文辉)

-Erasure coding(3,2)写入和读取过程

--Erasure coding(3,2)写入和读取过程(主讲人:姚文辉)

-元数据管理的高可用性和可扩展性

--元数据管理的高可用性和可扩展性(主讲人:姚文辉)

-元数据管理的高可用性

--元数据管理的高可用性(主讲人:姚文辉)

-Paxos概要

--Paxos概要(主讲人:姚文辉)

-Raft

--Raft(主讲人:姚文辉)

-元数据管理的可扩展性

--元数据管理的可扩展性(主讲人:姚文辉)

-不同存储介质的特性

--不同存储介质的特性(主讲人:姚文辉)

-盘古混合存储

--盘古混合存储(主讲人:姚文辉)

-QUIZ--作业

第三讲 资源管理与任务调度

-阿里云飞天分布式调度

--阿里云飞天分布式调度(主讲人:陶阳宇)

-任务调度

--任务调度(主讲人:陶阳宇)

-资源调度

--资源调度(主讲人:陶阳宇)

-容错机制

--容错机制(主讲人:陶阳宇)

-规模挑战

--规模挑战 (主讲人:陶阳宇)

-安全域性能隔离

--安全域性能隔离(主讲人:陶阳宇)

-分布式调度的发展方向

--分布式调度的发展方向(主讲人:陶阳宇)

-QUIZ--作业

第四讲 分布式编程模型的设计与演化

-数据格式和抽象

--数据格式和抽象(主讲人:吴威)

-分布式编程模型

--分布式编程模型(主讲人:吴威)

-MapReuduce编程模型

--MapReuduce编程模型(主讲人:吴威)

-关系型数据编程模型

--关系型数据编程模型(主讲人:吴威)

-分布式图计算模型

--分布式图计算模型(主讲人:吴威)

-分布式编程未来展望

--分布式编程未来展望(主讲人:吴威)

-QUIZ--作业

实践1:通过两阶段提交协议完成数据上传

-分布式事务

--分布式事务 (主讲人:冯骁)

-分布式一致性算法

--分布式一致性算法(主讲人:冯骁)

-两阶段提交与三阶段提交

--两阶段提交与三阶段提交(主讲人:冯骁)

-实践--介绍

--实践--介绍(主讲人:冯骁)

第五讲 离线分布式关系型计算

-关系型计算基本原理_1

--离线分布式关系型计算_1(主讲人:王鹏飞)

-关系型计算基本原理_2

--关系型计算基本原理_2(主讲人:王鹏飞)

-分布式环境中的连接计算和聚合计算

--分布式环境中的连接计算和聚合计算(主讲人:王鹏飞)

-其他计算和物理优化

--其他计算和物理优化(主讲人:王鹏飞)

-QUIZ--作业

第六讲 全局数据管理与调度

-提纲

--提纲(主讲人:罗李)

-课程背景介绍

--课程背景介绍(主讲人:罗李)

-前序知识

--前序知识(主讲人:罗李)

-分布式节点距离计算法则

--分布式节点距离计算法则(主讲人:罗李)

-数据分布策略

--数据分布策略(主讲人:罗李)

-分布式计算调度

--分布式计算调度(主讲人:罗李)

-数据就近原则计算如何容错

--数据就近原则计算如何容错(主讲人:罗李)

-ODPS跨集群数据依赖

--ODPS跨集群数据依赖(主讲人:罗李)

-QUIZ--作业

实践2:编写MR完成Group By+Join操作

-主讲人:谢德军

--实践2:编写MR完成Group By+Join操作(主讲人:谢德军)

第七讲 流式计算的系统设计与实现

-增量计算和流式计算

--流式计算的系统设计与实现(主讲人:强琦)

-与批量计算的区别

--与批量计算的区别(主讲人:强琦)

-业界典型系统技术概要分析

--业界典型系统技术概要分析(主讲人:强琦)

-核心技术

--核心技术(主讲人:强琦)

-消息机制

--消息机制(主讲人:强琦)

-有状态计算、并行DAG、抢占式调度和资源隔离、Failover机制

--有状态计算、并行DAG、抢占式调度和资源隔离、Failover机制(主讲人:强琦)

-StreamSQL

--StreamSQL(主讲人:强琦)

-QUIZ--作业

第八讲 内存计算

-软硬件趋势、分布式计算简史与内存计算

--软硬件趋势、分布式计算简史与内存计算(主讲人:强琦)

-分布式计算

--分布式计算(主讲人:强琦)

-内存计算

--内存计算(主讲人:强琦)

-统一的计算框架

--统一的计算框架(主讲人:强琦)

-业界经典系统技术分析-spark&flink

--业界经典系统技术分析-spark&flink(主讲人:强琦)

-QUIZ--作业

第九讲 大规模数据的分布式机器学习平台

-主讲人:褚葳

--大规模数据的分布式机器学习平台(主讲人:褚葳)

-QUIZ--作业

实践3:实现MapReduce编程运行时库

-分布式环境下的新问题

--分布式环境下的新问题(主讲人:徐冬)

-工程实现范例

--工程实现范例(主讲人:徐冬)

-课程设计相关问题

--课程设计相关问题(主讲人:徐冬)

数据就近原则计算如何容错(主讲人:罗李)笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。