您的浏览器禁用了JavaScript(一种计算机语言,用以实现您与网页的交互),请解除该禁用,或者联系我们。[-]:移动云(陶捷):海山数仓:移动云云原生OLAP数据库的技术演进与实践 - 发现报告

移动云(陶捷):海山数仓:移动云云原生OLAP数据库的技术演进与实践

信息技术2024-08-26陶捷-H***
AI智能总结
查看更多
移动云(陶捷):海山数仓:移动云云原生OLAP数据库的技术演进与实践

目录Contents 移动云分析型数据库发展历程01 海山数仓的架构和理念02 海山数仓的核心技术03 实践与展望04 Chapter01 移动云分析型数据库发展历程 移动云数据库的发展历程 移动云数据库团队十年前正式诞生,以实现数据库核心技术自主可控为目标,目前已构建完整产品和市场体系,并实现大规模商用。 由云向算,云原生数据的四级进化 移动云数据库的布局 移动云基于K8s构建云原生数据库底座,全线产品达云原生L1级 自研海山数据库系列,采用存算分离架构,并全面向Serverless演进 在中国移动算力网络战略下,大力探索算力网络数据库,积极推进相关技术以及行业标准制定 *海山数据库MySQL版和分布式版公测中,即将上线*多模数据库正处于研发阶段*算力网络数据库正处于前期调研阶段 分析型数据库——从湖到仓 第三代新架构实时数仓 第二代传统MPP数据库 第一代单机分析型数据库 近五年来以SnowFlake为代表的云原生数仓,强调与云的基础设施融合,云原生、—体化、湖仓融合是主要的发展趋势 近十年来以Clickhouse、Doris为代表的新架构实时数仓,吸收开源大数研技术架构和能力,在分析实时性、支撑数据规模上有了显著提升 上世纪90年代以Oracle、DB2为代表的单机分析型数据库 2000年代以Teradata、Greenplum、Vertica为代表的MPP架构数仓,具备支撑TB级别数据分析能力 LakeHouse 移动云产品演进: 海山数仓 海山数仓的架构和理念 海山数仓的设计理念 高性能 实时数仓引擎 极简化 数据集成生态 物化视图、向量化引擎、行列混存、CBO优化器 存算分离、Multi-Warehouse 海山数仓的架构设计 高性能数仓引擎 FE负责元数据的管理、存储和查询的解析;CN主要负责数据的存储和查询计划的执行。支持向量化引擎、CBO优化、物化视图、智能缓存等能力。 存算分离架构 计算存储独立的扩展,支持无状态计算节点,持久化存储基于对象存储,通过本地缓存加速;实现多个计算实例共享数据存储,降低存储冗余和同步开销。 。统一管控云平台 对各类数据库进行统—抽象和封装,形成算网数据库管控底座;提供适配算力网络模式的新型数据库资源供给能力。 高兼容性 支持MySQL协议,兼容SQL99/2003,支持多种外部数据源、联邦查询能力,兼容Iceberg、Hudi等开放数据湖格式。 海山数仓的应用场景 典型场景 提供统—的在线查询和离线计算的能力,简化数据架构,降低开发和运维成本。通过弹性伸缩支持更合理的资源配比,减少非高峰期的保有资源,优化成本,提高性价比 实时分析 业务报表 支持海量数据实时入库和计算,毫秒或秒级返回结果,方便自由灵活的快速构建报表 通过实时的数据统计,监测不同渠道用户的增长、活跃、留存状况,让企业快速分析出投资回报率。提高营销效果数据时效性,便于改进产品体验和优化营销方案,提高整体收益 精准营销 Chapter03 海山数仓的关键技术 云原生架构 存算一体和存算分离的支持 。公有云场景支持存算分离架构具备更好资源弹性;私有云场景支持存算—体架构,具备更健壮架构; 。多个Warehouse共享—份数据,避免集群间数据复制成本;。不同Warehouse应用在不同的业务负载。计算资源可以进行物理隔离;。具备完备的多租户权限控制(Role Based AccessControl)。 。持久化存储基于对象存储,降低约80%存储成本,容量可弹性扩展至PB级; 。本地SSD提供缓存加速能力,大部分缓存命中查询性能与存算—体持平; 计算/存储资源独立的扩展,有效提升资源利用率。 新型物化视图加速 基于外表物化视图 。加速湖仓融合场景查询,支持Hive、Hudi、Iceberg、Paimon等数据湖;。支持自动感知数据湖对应分区数据变化,实现增量更新。 支持查询透明改写 。在不修改查询语句,自动将在基表上的查询改写为在物化视图上的查询,通过物化视图的预计算结果大幅加速查询;。基于文本/基于视图等优化方法,提升复杂的嵌套视图场景透明改写匹配能力 物化视图任务管理 。任务资源隔离:支持指定独立资源组,避免影响其他常规读写任务。丰富的监控指标:实时监控物化视图的任务调度性能 自动推荐物化视图 。基于规则和基于成本的算法,对于物化视图进行辅助设计 主键模型加速实时场景 主键模型 。提供—种新型的数据模型,能够更高效的支撑数据频繁更新和实时查询场景。 技术原理 。对于默认的Merge-On-Read模式,采用Delete-and-Insert数据更新方式。在数据写入时,该模型先把更新数据的旧版本记录标记为删除,然后把更新数据作为新记录写入新文件; 。查询时,避免了数据多版本合并操作,进而能将谓词下推到存储层,大幅提升了分析性能。 提升效果 相比Merge-On-Read模式,在动态数据流下查询性能提升约9X,静态数据集提升约2.1X。相比Merge-On-Read,写入吞吐性能下降29%。 Zero-ETL提升数据集成能力 ETL的痛点 。在数据分析的场景中,通常分析型数据库本身不生产数据,数据来源于业务系统的输入。在传统数据分析应用中,ETL相关的工作量占比达到70% Zero-ETL服务 旨在实现事务处理和数据分析—体化,交易型数据库数据能够—键同步到分析型数据库,实现建仓成本的降低和入仓效率的提升 功能完备 支持MySQL整库全、增量—体同步支持动态Schema变更:增加列、删除列、新增表支持多源合并能力 卓越性价比 服务Serverless化,根据负载动态分配资源及设置并行任务数全量同步20w条/s,增量同步50000条/s同步延迟低于15s 实践与展望 实践案例:中间号业务 项目背景 移动云中间号业务深耕垂直行业语音市场,该业务将号码(A)与号码(B)通过中间号(X)灵活绑定,双向隐私通话,双方来电显示均为中间号,为滴滴、美团、阿里、腾讯、京东等超500家头部企业提供服务。中间号平台通过广州、呼和浩特两个资源池承载全国的务间号业务,采用云MySQL承载话单数据,每天基于话单数据进行运营分析查询。存量数据量约XXTB,日增数据量约X亿条。 业务痛点: 从离线数仓到实时数仓:自建数仓仅能做到T+1非实时分析,无法满足业务实时分析需求 解决方案 实时数据分析场景 通过Zero-ETL将南北方MySQL数据实时同步至移动云海山数仓产品,以实现近实时分析MySQL中的业务数据 从MySQL数据同步到数仓中查询可用约10s。 查询性能 使用异步物化视图优化技术,单表1亿条数据查询,时间最快可达到200ms(原Clickhouse查询时长1-2秒) 将云原生进行到底 从云原生到算网原生 一体化架构:HTAP Data+AI平台一体化 THANKS 感谢聆听 自主·创新·引领