演讲人:刘一鸣 | 阿里云计算平台自研大数据产品负责人
演讲主题:阿里云 ODPS 一体化大数据智能计算平台新能力解读
活动:2022 云栖大会 - 一体化大数据智能峰会
阿里巴巴做大数据已有 13 年历史。在阿里云成立的最初,技术同学就有一个梦想:希望计算力不再受到硬件资源的限制,可以充分利用云计算带来的弹性和规模优势,解决海量数据的加工处理难题。因此有了最初的 Design for Scale,之后数据开始为更多的使用者服务,为更多的场景方案服务,技术同学没有停止脚步,并进一步 Design for Speed,Design for Simplicity,Design for Scenario。我们相信好的技术应该足够简单、易用、能够深入到业务场景中创造价值。
过去几十年,大数据技术的发展有几条主脉络:
- MPP 技术在性能和功能方面拥有着深厚的技术积淀,很多技术原理被广泛吸收在各类创新的数据引擎中,其中也包括阿里云的实时数仓引擎 Hologres;
- 开源大数据技术伴随着分布式基础框架技术的改进而快速发展,让我们更容易开发出可扩展且健壮的分布式程序,阿里积极参与其中,特别是深度参与了 Flink 项目的开发和演进,不断拓展着流式计算的边界;
- 大数据技术与云原生相结合,本质性降低了大数据应用技术的门槛,诞生了 BigQuery、Snowflake 等一大批优秀的云上数据分析引擎;阿里云也采用了相似的思路,从内部孵化出 Serverless 的大数据引擎 ODPS。
ODPS 再出发:一体化架构满足多样化计算需求
ODPS 最初的全称是 Open Data Processing Service,寓意是希望这个处理引擎是开放的,支持多种类,多场景的数据应用,我们沿着云原生这条路,迭代出数据中台等多种应用场景,并提出了湖仓一体、离线实时一体等多项战略演进方向。
多年前我们注意到,业务需求在快速演进,在 Scale 之外,我们看到了越来越多 Speed 的需求,有大数据交互式、高性能的需求,有更灵活的全频谱、全场景的中台类需求,在需求多元化的背景下,单一计算引擎已经无法满足用户复杂的应用场景。因此在技术创新上,演化出擅长大规模批量计算的 MaxCompute 引擎,擅长流式数据加工的实时计算 Flink 引擎,以及擅长交互式分析的实时数仓 Hologres 等多引擎格局。这些引擎与统一的大数据开发治理平台 DataWorks 组合在一起,构成了今天全新升级的阿里自研大数据品牌 ODPS,即 Open Data Platform and Service。ODPS 从 Processing 升级为 Platform,表达了我们对未来扩展的预期。诚然,技术创新有时不可避免会有使用门槛的上升和运维难度的提高。但正如 IDC 报告中对未来的展望:大数据技术在将来必定会普惠化且深入各行业去推动数字化转型。因此,大数据技术必须要自我升级甚至革命,从单点的极致创新,向融合化的操作体验和一体化的系统架构演进,进一步降低平台开发门槛,减少运维成本,从而提升数据应用的效率。
ODPS 扎根于阿里集团内部多年以来的大规模复杂应用场景的历练,取得了不少优秀的成绩,如每天 EB 级数据处理规模、连续 6 年获得国际权威数据类评测机构 TPCx-BB 性能冠军、多项专利和软著等。这些规模和记录不停推动着大数据技术的前沿边界。ODPS 的一体化是基于公共的存储底座 Pangu 和跨引擎的开发平台 DataWorks,通过这些基础服务的共享实现数据更灵活的获取,引擎按需使用。阿里的大数据平台不是闭环的系统。我们深信,只有开放、和合作伙伴在一起、和各类开放技术标准在一起,技术才会最有价值地发挥出来。
ODPS 一体化的体现是全方位的:
- 存储层:多引擎共享存储底座 Pangu,支持存算分离架构,实现计算存储资源的灵活扩展;
- 调度层:基于统一的容器调度技术,实现资源的按需弹性以及混合部署,降低总体运维成本;
- 多引擎:支持跨系统引擎直读,在一份数据的基础上,同时支持 MaxCompute 和 Hologres 多引擎交叉访问,支持联邦查询;
- 元数据:支持统一元数据管理,给用户统一的资产和元数据视图;
- 开发侧:统一基于 DataWorks 实践数仓开发;
- 企业级能力:支持多项企业级安全管理和细粒度跨引擎授权等。
MaxCompute 引擎新功能发布
本次峰会,我们发布新的产品能力:MaxCompute 直读 Hologres 数据,横坐标是表的数据量,纵坐标是查询数据的延迟。随着表的数据量越大,加速的效果明显,具备几倍到几十倍的加速效果。同时因为是存储直读,也不再消耗 Hologres 侧的网络和 CPU 资源,体验提升明显。
云计算本质是对 IT 资源管理的革命,追求极致的弹性和敏捷。本次峰会,我们也带来了 MaxCompute 弹性 CU 能力。在过去预留 CU 的基础上,客户可以设置不同的弹性策略,选择指定时间段的弹性规格。一方面降低使用成本,避免过去为了高峰期的执行效率,预留较多 CU,在低峰期浪费资源的情况,通过弹性实现削峰填谷。同时,弹性 CU 也能很好帮助企业实现提效效果,使用更低的资源成本投入在核心作业上,实现关键业务的准时产出。
在湖仓一体的场景中,ODPS 的创新体现在两个方面,一个是支持更广泛的 External Schema,除了已有的 Hive、OSS 等数据源,这次进一步支持了 MySQL、PG 等多种外部数据源的元数据映射,实现更广泛、更灵活的联邦查询场景,支持湖与仓、仓与库之间的无缝打通;另一个是对非结构化文件的细粒度权限管理,引入 Volume 抽象,支持目录结构定义,这些文件资源可以被用于 UDF、MR 等自定义场景。
本次峰会,MaxCompute 在灵活性、普适性方面也带来了更多新 Feature。包括支持可配置的高吞吐流式写入服务,可以实现更高的吞吐能力。支持 Schema Evolution,用户可以灵活修改表的数据结构,支持增加、删除列。不久我们将会发布 ACID 2.0 能力,支持完善的主键去重写入能力,也就是 Upsert,同时也支持查询加速机制,为 BI 查询提供更稳定的交互式体验。
物化视图是数仓领域常见的性能优化手段之一,在大数据体系还不多见。MaxCompute 将发布智能物化视图能力,将多项作业作为智能引擎的输入条件,引擎通过计算公共子查询的方法,为用户推荐物化视图建议,被选中的物化视图可以配置数据刷新策略,实现数据定时更新。智能物化视图一个很重要的能力是查询改写,业务方无需感知物化视图的定义,查询会自动选择计算成本最低的物化视图,利用空间换时间,避免了重复计算,极大降低了运行时计算量。
Hologres 引擎新功能发布
Hologres 这次为大家带来了 JSON 的列式存储,我们认为 Schemaless 会是未来数据处理的重要范式,这样数据可以更灵活地存储和解析。列式存储的关键特征是,将树形结构的不规则 JSON 体,自动解析转存为列式存储,具备列式存储的高效压缩、快速过滤和灵活索引的特性。在读取时,无需解析整个 JSON 体,只需访问所需叶子节点,从而实现查询效率数十倍的提升,为埋点数据的灵活采集和分析提供了新解法。
Hologres 定位在数据服务层,即加工后的数据供给给消费端,包括报表、大屏、各类 API、在线应用等,对服务的 QPS、延时、稳定要求很高。Hologres 提供基于共享存储的一主多从部署模式,多个物理上独立的计算实例共享同一份数据存储,实现全局一份存储,无数据孤岛,实例之间数据实时一致。同时,通过资源隔离,实现了读写分离、OLAP 服务与在线点查分离,内表查询与外表查询分离等多种场景,让服务的稳定性有了本质的提升。
最后,向大家汇报一个好消息。在上周的 TPC-H 30TB 性能测试中,Hologres 创造了新的世界纪录,超过原有记录 23%。创造记录并没有某项神秘的黑科技,而是数百名技术同学多年的专注和积累,将向量化、异步化、云原生、行列共存,计算存储协同优化等方法落实到工程实践中,榨取计算系统的每一点计算潜力。或许大家会有这样的疑问:我真的需要性能这么强的数据仓库吗?事实上,通过对性能的极致追求,我们将有机会用更少的硬件资源,解决用户的更大规模问题,从而实现最佳的性价比,帮助我们的用户实现提效降本。
更多关于大数据+ AI 相关消息:https://www.aliyun.com/product/bigdata/apsarabigdata?gzh_allj1116