小米数据场景中ApacheDoris的应用与优化
需积分: 5 105 浏览量
更新于2024-06-20
收藏 5.12MB PPTX 举报
"ApacheDoris在小米数据场景的落地实践"
Apache Doris 是一款开源的、高性能的、在线分析处理(OLAP)的数据仓库系统,它在小米的数据场景中扮演了重要的角色。这篇介绍主要由小米的OLAP引擎研发工程师魏祚分享,他同时也是Apache Doris的PMC成员。在小米的应用实践中,Apache Doris 显示出了其优越性,特别是在实时数据分析和查询性能上。
在小米的应用场景中,Apache Doris 替代了原有的基于SparkSQL的复杂架构,简化了运维流程,降低了成本。例如,在小米的增长分析平台上,之前的架构依赖多个组件,导致运维复杂且SparkSQL的查询延迟较高。而采用Apache Doris后,查询性能显著提升,不再依赖外部系统,同时提供了对标准SQL的全面支持,使得用户使用更为便捷。此外,Apache Doris 社区的活跃性也是小米选择它的重要原因,这有利于后期的维护和升级。
在性能对比方面,通过对一个日均数据量约为10亿的业务进行测试,Doris在事件分析、留存分析和漏斗分析等场景下,相比于SparkSQL+Kudu+HDFS方案,查询时间平均降低了85%(事件分析)和50%(留存和漏斗分析),显示出强大的查询效率。
在数据导入和查询方面,Apache Doris 的设计确保了单个文件内部数据的有序性,但不及时的Compaction(合并操作)会导致版本累积,增加元数据压力,影响查询性能,并可能消耗过多资源引发OOM。因此,小米在运维层面进行了Compaction的调优,包括引导用户设置合理的分区和分桶、降低导入频率、避免频繁删除操作,以及根据业务集群的不同配置不同的Compaction参数。同时,小米还实施了版本积压报警系统,动态调整Compaction参数,并支持手动触发特定数据分片的Compaction任务,以提升特定部分的处理优先级。
此外,小米还面临并解决了Flink重复导入的问题,这是Apache Doris在小米应用过程中另一个优化点。虽然具体的解决方案没有详尽描述,但可以推断小米团队已经找到了有效防止或管理这类问题的方法,以确保数据导入的准确性和系统的稳定性。
Apache Doris 在小米的数据场景中展现了其高效、灵活和易运维的特点,通过不断的优化和调整,小米成功地利用Doris提升了数据分析的速度和质量,降低了运维成本,同时也为未来的技术扩展和维护打下了坚实的基础。
2023-06-05 上传
douluo998
- 粉丝: 2132
- 资源: 5357
最新资源
- 探索数据转换实验平台在设备装置中的应用
- 使用git-log-to-tikz.py将Git日志转换为TIKZ图形
- 小栗子源码2.9.3版本发布
- 使用Tinder-Hack-Client实现Tinder API交互
- Android Studio新模板:个性化Material Design导航抽屉
- React API分页模块:数据获取与页面管理
- C语言实现顺序表的动态分配方法
- 光催化分解水产氢固溶体催化剂制备技术揭秘
- VS2013环境下tinyxml库的32位与64位编译指南
- 网易云歌词情感分析系统实现与架构
- React应用展示GitHub用户详细信息及项目分析
- LayUI2.1.6帮助文档API功能详解
- 全栈开发实现的chatgpt应用可打包小程序/H5/App
- C++实现顺序表的动态内存分配技术
- Java制作水果格斗游戏:策略与随机性的结合
- 基于若依框架的后台管理系统开发实例解析