您的浏览器禁用了JavaScript(一种计算机语言,用以实现您与网页的交互),请解除该禁用,或者联系我们。[StarRocks 2024 年度技术峰会]:1 镜舟科技&阿里云-StarRocks云原生湖仓分析技术揭秘 - 发现报告

1 镜舟科技&阿里云-StarRocks云原生湖仓分析技术揭秘

AI智能总结
查看更多
1 镜舟科技&阿里云-StarRocks云原生湖仓分析技术揭秘

杨关锁镜舟科技DLA研发工程师焦明烨阿里云研发工程师 StarRocks StarRocks Lakehouse 基本架构 StarRocks 在Iceberg的性能优化工作 03 StarRocks在 Paimon 的性能优化工作 StarRocks Lakehouse 架构 STARROCKS SUMIMIT ASIA2024 StarRocks 在 Iceberg的性能优化工作 StarRocks 查询 Iceberg 基本流程 STARROCKS SUMMIT ASIA2024 Iceberg Metadata Cache 性能痛点 ⚫➢8MB1s⚫➢●元数据文件获取和解析速度慢>解析8MB元数据文件需要1s·访问成本高>单次查询通常只涉及一个Manifest文件中包含的少量数据文件 Metadata Cache ⚫⚫·缓存解析后的元数据·支持后台增量刷新 STARROCKS SUMMIT ASIA2024 Iceberg Distributed Metadata Plan 性能痛点 ⚫Plan⚫⚫·Plan阶段耗时过长,特别是元数据文件解析速度慢·对FE节点的CPU和内存依赖过重·当表的元数据很大时,IcebergJob Planing耗时显著增加 Distributed Metadata Plan ⚫➢⚫➢➢·实现》将元数据文件的获取、解析和过滤从单个FE节点转移到多个BE执行·效果>Iceberg Job Planing性能提升数倍>FE节点的内存和CPU开销显著降低 STARROCKS SUMMIT ASIA2024 Iceberg Metadata Cache & Distrubuted Metadata Plan How metadata cache and distributed metadata planworks? ⚫FEcache⚫cache➢➢distributed manifest plan job●FE优先检查本地cache是否命中●未命中cache时,根据一定条件选择:>直接从远端拉取并解析元数据文件> 执行distributed manifest plan job 统计信息收集 等深直方图 Bucket Count = 4Data Set = {1.6, 1.9, 1.9, 2.0, 2.4, 2.6, 2.7, 2.7, 2.8, 2.9, 3.4, 3.5] ⚫⚫·统计信息为CBO优化器提供成本的计算参考·优化器基于统计信息尽可能选择最优执行计划 ⚫⚫⚫●统计信息类型:基础统计信息、直方图统计信息●收集类型:全量收集、抽样收集●收集方式:手动收集、自动收集和查询触发收集 STARROCKS SUMMIT ASIA2024 统计信息收集-查询触发收集 ⚫⚫⚫⚫·优化器查询FE缓存的统计信息,确定需要触发收集的表和列·触发信息包装成收集任务,添加到等待队列·调度线程周期地从等待队列中获取任务放入执行队列·收集任务在执行时收集并存储统计信息,清除FE缓存中对应的过期统计信息 STARROCKS SUMMIT ASIA2024 Scan Range增量投递 ⚫⚫⚫·获取所有scan range,然后全部投递下去,期间BE同步等待·一次载入所有scan range,会导致FE/BE内存压力较大●对类似limit等短路查询不友好 ⚫⚫⚫·将所有scanrange分成小块,分批投递,BE可以尽早参与执行·可以减少FE/BE内存压力·对于limit等短路查询,尽可能减少多余的scanrange开销 STARROCKS SUMMIT ASIA2024 Parquet Reader-自适应IO 合并 ⚫⚫·合并小IO,减少远端访问IOPS·根据过滤条件优化合并范围,减少读放大 Parquet Reader- Page Index 支持 ⚫● Parquet Page Index技术 STARROCKS SUMIMT ASIA2024 Parquet Reader- Page Index 支持 ⚫·PageIndex效果测试 STARROCKS SUMMIT ASIA 2024 Data Cache ⚫⚫⚫⚫⚫⚫·基于一致性哈希的分布式缓存,避免扩缩容大量缓存失效●StarRocks原生cache,无需外部依赖·BE本地缓存,减少网络开销·Block粒度数据缓存,减少读写放大·缓存有效性校验,避免读到过期数据·透明加速外表查询,性能接近内表(12%以内) Data Cache ⚫⚫⚫⚫⚫·内存+磁盘缓存:内存更加可控·内存、磁盘任意组合,支持两级或一级(全内存或全磁盘)缓存·自定义数据数据迁移策略,数据提升和沉降更加可控·高效的本地磁盘空间管理,避免小文件管理问题·支持SLRU等淘汰策略,改善缓存污染问题 STARROCKS SUMMIT ASIA2024 Data Cache-开箱即用 ⚫⚫⚫·默认开启,透明加速·用户无需修改任何参数配置·引入多种机制自动处理默认开启后各类问题 STARROCKS SUMMIT ASIA 2024 Data Cache-IO自适应 ⚫⚫𝑚𝑎𝑥(𝑇𝑙𝑜𝑐𝑎𝑙,𝑇𝑟𝑒𝑚𝑜𝑡𝑒)≤𝑇𝑠𝑡𝑎𝑟𝑟𝑜𝑐𝑘𝑠≤(𝑇𝑙𝑜𝑐𝑎𝑙+𝑇𝑟𝑒𝑚𝑜𝑡𝑒)避免磁盘性能太差或本身负载过高导致查询缓存出现负优化能够同时利用本地磁盘和网络,提高整体吞吐量:max(Tiocal, Tremote)≤Tstarrocks ≤ (Tlocal+Tremote) STARROCKS SUMMIT ASIA2024 Data Cache-缓存预热 ⚫·基本语法 CACHE SELECT <column_name> [, ...]FROM [<catalog_name>.] [<db_name>.]<table_name> [WHERE <boolean_expression>][PROPERTIES("verbose"="true")] ⚫·手动预热 mysql> cache select l_orderkey from hive_catalog.test_db.lineitem where l_shipdate='1994-10-28';I READ_CACHE_SIZE I WRITE_CACHE_SIZE I AVG_WRITE_CACHE_TIME I TOTAL_CACHE_USAGE I1 957MB1 713.5MB1 3.6ms1 97.33%1 row in set (9.07 sec) ⚫·周期预热 mysql> submit task BI schedule START('2024-02-03 07:00:00') EVERY(interval 1 day)As cache select * from hive_catalog.test_db.lineitemwhere l_shipdate='1994-10-28'; STARROCKS SUMMIT ASIA2024 Data Cache-缓存统一 物化视图 ⚫⚫⚫·基于物化视图查询改写透明加速·支持Aggregate,Join,Union等查询·构建外表物化视图,简化数据处理流程 STARROCKS SUMMIT ASIA2024 物化视图 ⚫·支持分区级别数据刷新,仅刷新数据有更改的分区 STARROCKS SUMIMIT ASIA2024 近期规划 进一步增强Data Cache能力 ••增强弹性场景下缓存能力支持缓存decompress数据 聚合函数优化 •count/min/max优化count/min/max等查询性能 改善File Reader性能 •Parquet Readerbloom filter•Parquet/ORC ReaderzonemapParquet Reader支持bloom filterParquet/ORC Reader优化zonemap过滤 STARROCKS SUMMIT ASIA 2024 StarRocks 在Paimon的性能优化工作 存算分离架构EMRServerlessStarRocks2.0存算分离架构 StarRocks+ Paimon最新进展 Plan优化 数据Scan优化 元数据缓存、分布式plan、统计信息和RF优化 支持bitmap index等;基于dv读取优化MOR表性能 功能增强 体验优化 支持写Paimon 表,服务轻量ETL场景;支持物化视图改写 接入 DLF 2.0,构建云上统一湖仓;接入外表Unified Catalog STARROCKS SUMIMIT ASIA2024 Plan优化 STARROCKS SUMIMIT ASIA2024 数据Scan优化 支持bitmap index,性能提升3倍 DeleteVector优化,性能提升7倍 STARROCKS SUMMIT ASIA 2024 功能增强 ousey, Cknonelw rfetetable.slf2.ser,test as ampaign_ic63133164061832371 002 26 自动利用物化视图查询改写透明加速 ⚫⚫•••●支持 Aggregate、Join、Union 等查询●支持改写类型:: Complete match: partial match: query delta join 支持Paimon Sink,轻量ETL STARROCKS SUMIMT ASIA2024 体验优化-Unified Catalog 单一Catalog,查询各种湖格式,包括Paimon/Hive/lceberg/Hudi/Kudu/Delta Lake... STARROCKS SUMMIT ASIA2024 StarRocks+Paimon VS Trino+Paimon13倍性能提升 喜马湖仓升级案例 StarRocks湖仓融合 ✓✓实时数仓:主键模型、聚合模型等V数据湖:Paimon性能好、维护成本低 STARROCKS SUMMIT ASIA 2024 饿了么湖仓升级案例 StarRocks数据湖分析 ✓v实时湖分析:Paimonvs Hudi,时效性提升5倍以上;StarRocks相对Trino提升3-10倍+ STARROCKS SUMIMT ASIA2024 免费试用EMR-StarRocks,30分钟体验最新能力免费试用EMR-StarRocks,30分钟体验最新能力 04兼容开源生态04兼容开源生态 02OLAP统一分析02 OLAP统一分析 01全场景高性能01全场景高性能 阿里云X镜舟 基于EMRStarRocks实现游戏实时湖仓分析 免费试用物化视图、Paimon写入查询等新能力赢取StarRocks定制T恤等活动礼品 开发者有奖活动EMR-StarRocks免费试用开发者有奖活动EMR-StarRocks免费试用 线上交流EMR-StarRocks钉群线上交流EMR-StarRocks钉群 STARROCKS SUMMIT ASIA2024 LAKEHOUSE IS ALL YOU NEED 感谢观看! Thank you!