当前课程知识点:大数据平台核心技术 > 第六讲 全局数据管理与调度 > ODPS跨集群数据依赖 > ODPS跨集群数据依赖(主讲人:罗李)
明白了ODPS中数据视图以后
以Table为例
我们来看ODPS中存在的数据
互相依赖的问题
对于一些SQL作业
可能它需要读到
不同表里的数据
而这些表的数据
又不属于同样的业务部门
将这些表进行关联计算
能够挖掘出一些
更加有价值的商业数据
也因此这些表之间
就产生了关系
我们称之为数据表之间的
血缘关系
对于这种场景
如果这些表刚好又分布在
不同的物理集群
或者不同的数据中心
于是就产生了数据的
跨集群依赖问题
大家看右图中所示
Job2的select的语句
是要读取P2表的t1
这个partition中的数据
并写到P1表的t1
这个partition中
而由于P2表
在CER这个数据中心
而P1表却在C1这个数据中心
导致Job2这个SQL作业
需要跨集群地读取P2的数据
并写回到C1集群
这就是最简单的跨集群
数据依赖的例子
如果这种跨集群数据
依赖的数据量非常大
势必会对两个数据中心
之间的带宽
造成很大的压力
进而拖慢很多
跨集群读取作业的计算速度
如果对同一个表的数据
进行反复地读取
那么造成的网络流量
就会成倍地增加
有没有一种降低网络带宽
消耗的同时
又能满足跨集群数据
依赖需求的解决方案呢
ODPS中引入了跨集群复制系统
也就是刚刚提到的
ODPS架构中
最右边的Replication worker
所做的工作
我们称之为ODPS的
Replication system
其运行的本质就是
当发现某一份数据
被跨集群的其他数据依赖
并且依赖程度非常高的时候
Replication system
会发现这种依赖
并在这份数据
被跨集群使用之前
将这份数据跨集群地
拷贝到其依赖的其他集群上
并设置这份数据
在其他集群上的生命周期
也就是这份数据
被拷贝到其他集群后
存在多长时间后
将这份冗余删除
通过这种智能的方式
就解决了数据被跨集群依赖
同时又被多次跨集群读取
造成了网络带宽
过度消耗的问题
也因为生命周期的引入
也不会对数据造成过多的副本
而造成存储空间的浪费
ODPS Replication system
就是用来做上述这种
动态跨集群的复制
和生命周期回收的系统
其内部系统结构
如下图所示
从架构图中大家可以看到
下面不管有多少独立的集群
Replication system
都能够在他们之间
自动地进行数据的拷贝
Replication worker
能够智能地扫描所有的表
和Volume
当发现其中一些表
或者Volume中的部分数据
被跨集群的
其他数据依赖的时候
就会发起一个
Replication task
每一个Replication task
就会提交一系列的
Replication job到cluster中
进行这些数据
从源集群到目的集群的拷贝
同时在每一次扫描中
当发现一些
已经跨集群拷贝的数据
超过了其生命周期
则表示这份数据
已经不再被其他
集群的数据依赖
这个时候就回收这部分数据
也就是讲这些已经跨集群
拷贝到其他集群的数据
进行删除
以回收存储空间
通过以上的内容
我们了解了
在分布式系统中
当集群跨越多数据中心
多集群的环境下
如何从全局上
对数据进行分布 管理
和计算调度的知识
并分享了在阿里巴巴
是通过什么样的
集群规划形式
来进行全局数据
管理和调度的
但是这些工作
并不是没有进步的空间
因为在实践中
仍然面临着非常多的挑战
比如如何进一步
减少数据的冗余
节省存储空间
如何更加智能地
在集群间进行任务的分配
和数据的分布
另外在跨地域之间
带宽非常有限的情况下
如何更好地节省带宽
如何在跨地域带宽间的
高延迟04:36(音)下
更高效地运行作业等等
同时由于业务发展
很可能现在的跨地域
会变成将来的跨国家
跨州 跨海
这样的场景下
我们将面临更加严峻的挑战
也期待大家能够加入我们
跟我们一起解决世界级的难题
-主讲人:武永卫
-主讲人:程永
-QUIZ--作业
-大纲
-初步认识大数据对分布式存储系统的需求
-理解大数据对分布式存储系统的需求
-具体说明大数据对分布式存储系统的需求
-大规模分布式存储的挑战
-小概率事件-Raid卡故障
-分布式存储系统举例
-分布式存储系统重要功能设计要点剖析
-链式写正常流程
-写流程的另一种常见方式:主从模式
-链式写异常流程
-写异常处理的另一种方法-Seal and New
--写异常处理的另一种方法-Seal and New(主讲人:姚文辉)
-读正常流程
-读流程优化-BackupRead
-IO QoS
-数据正确性:checksum
-数据可靠性-Replication
-数据均衡-Rebalance
-垃圾回收-Garbage collection
--垃圾回收-Garbage collection(主讲人:姚文辉)
-Erasure coding
-Erasure coding(3,2)写入和读取过程
--Erasure coding(3,2)写入和读取过程(主讲人:姚文辉)
-元数据管理的高可用性和可扩展性
-元数据管理的高可用性
-Paxos概要
-Raft
-元数据管理的可扩展性
-不同存储介质的特性
-盘古混合存储
-QUIZ--作业
-阿里云飞天分布式调度
-任务调度
-资源调度
-容错机制
-规模挑战
-安全域性能隔离
-分布式调度的发展方向
-QUIZ--作业
-数据格式和抽象
-分布式编程模型
-MapReuduce编程模型
-关系型数据编程模型
-分布式图计算模型
-分布式编程未来展望
-QUIZ--作业
-分布式事务
-分布式一致性算法
-两阶段提交与三阶段提交
-实践--介绍
-关系型计算基本原理_1
-关系型计算基本原理_2
-分布式环境中的连接计算和聚合计算
-其他计算和物理优化
-QUIZ--作业
-提纲
-课程背景介绍
-前序知识
-分布式节点距离计算法则
-数据分布策略
-分布式计算调度
-数据就近原则计算如何容错
-ODPS跨集群数据依赖
-QUIZ--作业
-主讲人:谢德军
--实践2:编写MR完成Group By+Join操作(主讲人:谢德军)
-增量计算和流式计算
-与批量计算的区别
-业界典型系统技术概要分析
-核心技术
-消息机制
-有状态计算、并行DAG、抢占式调度和资源隔离、Failover机制
--有状态计算、并行DAG、抢占式调度和资源隔离、Failover机制(主讲人:强琦)
-StreamSQL
-QUIZ--作业
-软硬件趋势、分布式计算简史与内存计算
-分布式计算
-内存计算
-统一的计算框架
-业界经典系统技术分析-spark&flink
--业界经典系统技术分析-spark&flink(主讲人:强琦)
-QUIZ--作业
-主讲人:褚葳
-QUIZ--作业
-分布式环境下的新问题
-工程实现范例
-课程设计相关问题