在阿里云开发者大会上,阿里巴巴集团数据平台总监张东晖分享了 ODPS 离线处理技术,目前针对于淘宝、支付宝、天猫等拥有的海量数据,阿里使用了 ODPS 进行离线处理。
他首先提到了这个系统所面临的挑战:
- 高可用性;
- 数据量太大;
- 安全性;
- 正确性;
- 服务性;
- 低成本
现有的 ODPS 通过一个控制集群管理大集群机器,满足了扩展性的要求。在多租户方面,他解释了两个基本概念:
- 基本空间,项目的基本空间提供实体运行空间。任何的跨项目访问都是需要进行授权,同时基本空间也是计量、收费和额度管理的基本单位。
- 安全体系,IDPS 为了实现多租户的隔离做了三层的安全体系。第一层是认证体系,采用一致的 API,第二层是在数据对象上实施防控制策略,第三层在飞天的底层上的防护。
对于编程模型方面,ODPS 能够满足多种编程模型,这与平台本身的框架是正交的。对处理数据本身,他提到:
因为都是离线处理流程,针对一个处理流程可以用不同的编程模型编写,用 PD 脱数据,然后处理,最后使用 MPI 运算供最后的使用。从数据处理本身而言,支持数据流有点像带着图式的方式来支持多任务的调度,可以在同一个作业当中有参数化等等,作为调动系统的一部分这些逻辑。
他还提到对于 ODPS 的存储模型是物理存储和逻辑存储相互分开的,并在存储层面减少 IO,数据统一采用实体的形式并采用行存储方式。对于小文件采用 OTS 的小存储,元数据存储在 OTS 中,有利于高并发和规模扩展,同时在存储模型上还有一个带压缩的列存储。
针对于 ODPS 上支持的业务,他提供了一些案例分享:
- 数据魔方,包括了数据通道离线、在线完整的应用、实施访问;
- 阿里金融,是多租户隔离的最佳体现;
- MPI 的算法,飞天开放平台可以调动 MPI 的进程,目前可以处理 10Mx10M 的分解;
- 数据化运维;
评论