淘宝云梯分布式计算平台整体架构

以下是淘宝云梯分布式计算平台的整体架构,由数据分析网整理自网络资料,供大家学习参考。

一、系统架构

1、系统整体架构

数据流向从上到下,从各数据源、Gateway、云梯、到各应用场景。

淘宝云梯分布式计算平台整体架构插图

2、淘宝云计算介绍

主要由数据源、数据平台、数据集群三部分构成

淘宝云梯分布式计算平台整体架构插图1

二、数据同步方案

1、数据同步方案——概览

淘宝云梯分布式计算平台整体架构插图2

2、数据同步方案—— 实时同步VS非实时同步

淘宝云梯分布式计算平台整体架构插图3

3、数据同步方案—— TimeTunnel2 介绍

TimeTunnel是一个实时数据传输平台,TimeTunnel的主要功能就是实时完成海量数据的交换,因此TimeTunnel的业务逻辑主 要也就有两个:一个是发布数据,将数据发送到TimeTunnel;一个是订阅数据,从TimeTunnel读取自己关心的数据。

TimeTunnel作为一个实时数据传输平台具有以下特点:

高效性:单点1k数据可以到4万TPS高可靠性:M-S模式时保证数据不丢失
高可用性:单点故障不影响整个集群服务
顺序性:当没有故障发生时,保证所有传输都
是顺序的,或者说一次连接内的传输是顺序的。

淘宝云梯分布式计算平台整体架构插图4

4、数据同步方案—— Dbsync 介绍

dbsync是一个用于同步服务库数据到HDFS的产品,通过分析数据库服务器的log文件来提取相应的数据库动作,进而达到数据库到HADOOP的数据同步,供相关部门提取增量数据。

淘宝云梯分布式计算平台整体架构插图5

Dbsync实时同步性能

记录大小 速度
2K           4M/s
9K           10M/s

应用场景
数据量 800G
00:10分备库打开:
非实时同步完成时间0:55
实时同步完成时间0:25

5、数据同步方案—— DataX 介绍

DataX是一个在异构的数据容器之间交换数据的工具。用于在任意的数据处理系统(RDBMS/NoSql/FS)之间交换数据。

Framework+plugin,Framework处理了高速数据交换的大部分问题,插件提供对数据处理系统的访问。
运行模式 :stand-alone / on hadoop
Webui + cui 基于元数据的高效配置,例子:表A sharding为32个库,1024张表,配置时间<1 min

淘宝云梯分布式计算平台整体架构插图6

DataX部分性能数据:

淘宝云梯分布式计算平台整体架构插图7

三、调度系统

淘宝云梯分布式计算平台整体架构插图8

1、调度系统——生产率银弹

淘宝云梯分布式计算平台整体架构插图9

2、调度系统——模块/子系统

淘宝云梯分布式计算平台整体架构插图10

3、调度系统——任务触发方式

Flow control/Data Trigger

淘宝云梯分布式计算平台整体架构插图11

Time Trigger

淘宝云梯分布式计算平台整体架构插图12

4、调度系统——调度方式

淘宝云梯分布式计算平台整体架构插图13

5、调度系统——什么是Gateway?

Gateway:参与天网调度的资源
• 功能:
– 数据同步(dataX, DBSync,TimeTunnel2…)
– 数据上传/下载(hadoop fs –put/get/getmerge)
– 日志收集
– Hive sql语句提交运行
– MapReduce程序提交运行
– 集群间数据同步(hadoop distcp)

6、调度系统—— Gateway规模及规划

用于生产的Gateway约30台,由天网调度统一进行任务
分发,并行控制。
数据同步(dataX, DBSync,TimeTunnel2…)
数据上传/下载(hadoop fs –put/get/getmerge)
日志收集
Hive sql语句提交运行
MapReduce程序提交运行
集群间数据同步(hadoop distcp)

7、调度系统——gateway standardization

淘宝云梯分布式计算平台整体架构插图14

8、调度系统——Dynamic LB实现

淘宝云梯分布式计算平台整体架构插图15

9、调度系统——优先级策略(实现)

淘宝云梯分布式计算平台整体架构插图16

10、调度系统——优先级策略(意义)

淘宝云梯分布式计算平台整体架构插图17

11、调度系统——监控全景

淘宝云梯分布式计算平台整体架构插图18

四、元数据应用

淘宝云梯分布式计算平台整体架构插图19

面对上面的问题,靠经验丰富的架构师?还是靠智能的分析系统?

1、挖掘元数据金矿

淘宝云梯分布式计算平台整体架构插图20

2、基于元数据的开发平台

自动生成代码/集成开发平台
自动定位输入/自动代码
优化/自动部署/自动调度
配对分析/热点分
析/字段变更影
响/转换轨迹
元数据

3、基于元数据的分析平台——运行分析系统

淘宝云梯分布式计算平台整体架构插图21

4、基于元数据的分析平台——分析策略概览

淘宝云梯分布式计算平台整体架构插图22

5、基于元数据的分析平台——运行数据收集

淘宝云梯分布式计算平台整体架构插图23

6、基于元数据的分析平台——宏观分析策略

淘宝云梯分布式计算平台整体架构插图24

7、基于元数据的分析平台——定位系统瓶颈

每个环节的吞吐能力都是动态变化的。
在某个特定时间区间内,整个系统的吞吐能力由吞吐能力最小的一个环节决定。
如果需要发现系统的短板,需要对每个环节的吞吐曲线绘制出来。
针对系统的短板进行重点优化。
对于吞吐能力抖动比较大的环节,需要在前面设置队列进行缓冲。

瓶颈定位方法:
1 每个环节的吞吐曲线
2 两个环节之前缓冲队列的状态曲线
3 统一单位到task级别

8、基于元数据的分析平台——最值得优化的任务

淘宝云梯分布式计算平台整体架构插图25

从关键路径的角度考虑,任务A运行时间变化,对系统对影响可以用下图中阴影的面积来计算,它取决于下面
几个因素:
A 任务的当前运行时间——决定了当前位置的曲线斜率。
B 任务在几个叶子节点的关键路径上——决定了当前位置的曲线斜率。
C 其它关联任务的运行时间——决定A何时会离开某个关键路径,也就是决定了斜率的斜率。
最值得优化的任务:
以下三项评分中综合评分最高
1 运行时间长
2 同时处于多个关键路径
3 孔隙度大

出处:数据分析网整理自互联网分享资料《淘宝云梯分布式计算平台整体架构》

淘宝云梯分布式计算平台整体架构插图26

    阅读原文


    已同步到看一看

    发送中

    点赞