《哔哩哔哩基于Iceberg的智能数据组织优化实践-杨金德-初稿.pdf》由会员分享,可在线阅读,更多相关《哔哩哔哩基于Iceberg的智能数据组织优化实践-杨金德-初稿.pdf(19页珍藏版)》请在三个皮匠报告上搜索。
1、DataFunSummitDataFunSummit#20242024哔哩哔哩基于哔哩哔哩基于IcebergIceberg的智能数的智能数据组织优化实践据组织优化实践杨金德-哔哩哔哩-高级开发工程师智能优化背景智能优化背景智能优化实践方案智能优化实践方案智能优化成果及规划智能优化成果及规划目录目录 CONTENTCONTENTDataFunSummitDataFunSummit#202420240101智能优化背景智能优化背景湖仓一体架构与现状 Iceberg表数量2K,数据总量40PB,日增100TB Trino日查询量3M,P99响应时间3sIceberg on HDFSFlinkSpar
2、kSDKTrinoAlluxio实时ETL离线ETL实时ETL交互式分析Magnus数据优化Iceberg on HDFSOLAP场景查询加速 排序 多维排序:Z-order、Hilbert Curve 索引 一般场景:BloomFilter、Bitmap、BloomRangeFilter 日志场景:TokenBloomFilter、NgramBloomFilter、TokenBitmap、NgramBitmap 预计算:聚合计算优化用户使用门槛高 利用这些丰富强大的优化手段实现查询加速,要求用户:对业务查询模式有清晰认知 具备相关基础知识 如何解决?自动分析用户查询,为Iceberg表配置合
3、理的优化手段,透明地实现查询加速DataFunSummitDataFunSummit#202420240202智能优化实践方案智能优化实践方案概览 查询模式分析 智能推荐 数据优化查询模式分析 需要分析什么类型的查询模式?以排序为例:提高字段聚集性,使得Iceberg文件级别MinMax索引可以过滤数据 过滤条件 在order by查询中可以省下局部排序的成本 order by字段及类型 过滤条件:字段 类型:等值、范围 是否能下推到Iceberg connector查询模式分析 过滤模式:过滤字段及过滤类型组合的集合 Trino在生成逻辑计划的同时分析查询过滤模式,记录在查询信息中 Magn
4、us分析模块每天读取前一天的所有查询信息,将过滤模式按表聚合后,为智能推荐模块提供决策依据智能推荐 过滤模式统计信息按字段聚合后,可以得出每个字段出现在过滤条件的百分比,作为排序字段选择依据 多维排序:如何对比不同排序策略的优劣?采样数据,应用排序结果,通过查询对比:结果较准,但成本过高 搭建估值模型对比:结果取决于模型准确度,成本低智能推荐 建立以过滤百分比为主、字段基数为辅的模型,配合经验性规则进行决策 其他涉及的统计信息:最细粒度分区大小/文件数 查询耗时 查询读取数据量智能推荐 Magnus推荐模块每周对Iceberg表生成一组推荐的配置,同时将推荐配置应用到表里数据优化 异步提交Spark任务优化数据整体设计DataFunSummitDataFunSummit#202420240303智能优化成果及规划智能优化成果及规划成果 项目上线三个月,对用户未配置任何优化的Iceberg表生效,累计优化33张表:30天总读取数据量减少147TB,与优化前相比减少28%30%的表读取数据量减少超过60%未来规划 提高推荐准确率 利用表数据分布等更详细的统计信息辅助决策 使用机器学习或者AI算法提高决策模型的准确率 支持更多查询场景和优化手段 分析查询topn字段,配置排序 分析查询聚合模式,配置预计算 应用智能优化调整用户的不合理配置感谢观看感谢观看谢谢观看