您的浏览器禁用了JavaScript(一种计算机语言,用以实现您与网页的交互),请解除该禁用,或者联系我们。 [DataFunSummit2023:OLAP引擎架构峰会]:OLAP 在火山 EMR 的实践 - 发现报告

OLAP 在火山 EMR 的实践

报告封面

演讲人:琚克俭-火山引擎-研发工程师 • •EMROLAP云原生 •EMROLAP客户案例分析 •EMROLAP未来规划 !"#$%&'()*+,- !"#$%&'%() %*+,-. /0,12.134 5678&9:;< 使用EMR产品,延续开源架构技术栈,并协同开源大数据生态与火山生态 基于EMR云原生存算分离架构解决客户计算和存储耦合导致的资源闲置与成本问题 基于EMR StarRocks或Doris,提供十万级QPS的查询分析和Serving能力 解决客户被私有架构或开源魔改产品Lockin、无法二次技术创新的难题(如迁移MC) 我们提供 我们提供 我们提供 我们提供 -成熟稳定的社区版本:加持了内部实践优化,搬迁IDCCDH/HDP及他云类EMR产品-火山生态集成:EMR+DataLeap+DataSail-迁移工具与最佳实践方案 -存算分离:先进的存算分离架构,自研透明加速层-冷热分层:冷热温分层存储,节约存储成本-统一元数据:全托管的HMS服务,构建数据湖多引擎集中化的元数据层 -开源优化:内部大规模实践,开源内核深度优化-数据湖仓:支持对Hudi、Iceberg、Hive查询分析-异构迁移:提供ADB、Holo、Impala、Kylin等迁移工具与最佳实践 -100%开源兼容:所有优化都以不改变开源兼容度为前提,确保业务可迁出-开放环境:通过引导操作或登陆ECS安装第三方包-技术共建:基于开源社区,与客户业务需求共建共 •EMR产品概述 • •EMROLAP客户案例分析 •EMROLAP未来规划 OLAP云原生:企业级运维(半托管+全托管) 一站式云托管,帮助用户轻松构建云上企业级大数据平台,降低运维门槛,助力企业快速形成大数据分析能力。 集群管理 服务管理 n服务组件各项指标呈现n支持多种服务个性化操作 引导操作 节点管理 日志中心 用户权限 支持多种伸缩场景 n弹性扩展:根据业务需求自动调整其弹性计算资源,满足业务需求高峰增长n弹性收缩:在业务需求下降时自动缩减ECS实例以节约成本n停机不收费:保证数据可恢复的前提下,能够做好成本管理nStateless集群:集群释放后,集群配置信息保存模版,用于快速恢复 灵活极致弹性: ü高可用:保证业务无中断,性能不受影响ü自动平衡:数据自均衡ü灵活扩容:支持水平扩容和垂直扩容支持升配和降配ü削峰填谷:基于时间和负载的弹性伸缩方式ü节点异构:多种节点组支持异构服务器 OLAP云原生:成本管理 1.支持StarRocks/Doris与Hadoop/Spark混合部署 独立部署 Master混合部署 n资源隔离性高,稳定性有更好保证n资源利用率降低n成本难控制,Master节点资源存在部分浪费 n只混布Master资源既保证资源利用率,又保证计算资源隔离性,保证生产稳定n成本降低 OLAP云原生:成本管理 2.支持StarRocks/Doris智能的冷热数据管理 OLAP云原生:面向查询的智能分析 面向业务人员,提供作业视角的管理;支持通过任何方式提交的任务的管理;支持多集群和已释放集群的作业管理。 作业列表 诊断分析 n图表查看历史作业的统计信息n帮助用户任务治理、成本优化 n跨引擎、集群的作业总览n支持查看历史集群、历史作业 用户作业 作业详情 •EMR产品概述 •EMROLAP云原生 • •EMROLAP未来规划 字节跳动内部实践:OLAP部分应用场景 1k+物理节点8w+物理核1.5PB+物理内存 5k+单集群峰值QPS1k+单集群表数量 抖音直播某活动榜单计算 •Doris内数仓,周期调度执行SQL,替换原有复杂的常驻Flink实时任务,可维护性变高•从FlinkTask到DorisSQL减少计算成本,原2-10Core/Task到Doris中后Query资源共享 •离线和增量做实时关联查询•单表超1TB数据 某智能驾驶云Doris监控 •IOT场景,数据实时采集分析•数据链路从Kafka->Flink->Doris 客户案例:某新广告客户(实时场景) 客户背景 n使用开源的Greenplum,存放近3个月的数据,用于在线报表查询。n在线和离线数据存储在不同地方,读取离线数据需要先读取到在线存储中。 核心痛点 产品方案 |DataSail:全量增量一体数据同步|Doris:向量化查询应对多表Join、聚合分析|ES:高频更新与索引查询 nEMR Doris统一对外提供查询nEMR OpenSearch保证数据高QPS的实时更新能力n通过Datasail实时同步MySQL CDC和Kafka数据到Doris和OpenSearch ES连接器优化--catalog建表优化 DorisonES能够综合OLAP的分析优势和ES的更新能力及全文索引能力,提供更加完善的分析解决方案 nCatalog方式只需要定义源端资源,即可实现对源表使用 nES实时高QPS更新能力n实现ES多索引关联查询nDoris、StarRocks与ES外表实现更复杂的全文索引过滤 ES连接器优化-下推优化 资源隔离(读写分离) 用户需求:轻量ETL+OLAP查询能够在统一在一个系统(主要是读写分离),但资源隔离(尤其是MEM的使用)是个比较大的问题 针对用户设置内存使用 数据迁移:MySQLLoad本地文件导入 用户需求:大量历史周期性的mysqljbdcsql导入任务+临时性的人群信息导入 特性说明 #client_local.csv导入到testdb.t1表中LOAD DATALOCALINFILE 'client_local.csv'INTO TABLEtestdb.t1COLUMNS TERMINATED BY '\t'LINES TERMINATED BY '\n' nMySQLLoad是标准的MySQL语法,通过SQL方式导入文件 nLOAD语法常用各个引擎之间的数据同步:1、TP系统例如MySQL或者PG,将表中数据导出为文本格式2、再通过LOAD语法导入其他引擎之中n支持MySQLLoad语法,实现无缝对接从TP到AP的数据传输 其他最佳实践示例 实际上线效果 客户案例–某互联网旅游行业用户(离线场景) 客户背景 n大数据系统支撑报表系统和经营平台,用于旅游客户的运营活动分析。n历史架构是Hadoop+Presto+Kylin的大数据体系 当前挑战 n数据规模增速高于业务增速,急迫的降本压力nPresto与Hadoop混布,稳定性差nPresto本身的性能问题和JVMGC内存使用n多套大数据系统,维护成本高 新架构 n利用HDFS+TOS,实现数据冷热分层存储nStarRocks支撑实时报表统计nSparkMlLib,提升用户画像的执行效率 Kylin升级StarRocks架构 Kylin场景痛点 nKylin预计算的资源使用量和延迟比较大n一份CUBE数据存储放大n需要维护多个系统(包含计算,HBase,调度等) StarRocks优势 nMysql协议兼容,与BI工具的适配性好n性能好:无物化视图的情况已经比kylin的场景要好,在创建物化视图之后性能更优n存储成本低:默认存储压缩,存储成本减少近10xn与Hive数据兼容:InPlace数据查询 湖仓架构升级–StarrocksLakeHouse nDynamicLoadCatalog:Trino需要重启服务,添加Hive/ES/JDBC/… n数据湖联邦分析:异构数据源查询 成本控制-Task节点 关键特性 nStateless:提供无状态的CN(Compute Node)节点n伸缩策略:基于负载和时间的弹性策略n智能识别:根据Profile,智能识别负载,动态调整CN实例个数n极致弹性:提供CN支持秒级别快速伸缩n资源利用:满足业务需求时提高资源利用率 主要场景: n无存储资源依赖,数据湖联邦查询nHive数据原地加速 •EMR产品概述 •EMROLAP云原生 •EMROLAP客户案例分析 • OLAP后续规划 n实时引擎 目前StarRocks+Doris都是面向读优化的设计,在高频TPS的写入场景上由于version+compact的影响,性能会有所损耗,主要会投入: ü行列混存üWAL+MemTable的写入 n云原生升级 存算一体的架构限制了极致弹性的能力,也限制了云上成本的控制自由度。 üCN节点的优化,目前只支持外表数据利用CN节点,未来希望能够支持读写BE存储节点ü存算分离使用 n离线引擎 ü湖仓一体(实现一套存储,一套元数据,两套计算引擎,轻量化ETL) 感谢观看