京东广告基于Apache Doris的冷热数据分层实践
内容提要
京东利用Apache Doris构建广告数据存储服务,提供实时报表和多维分析。随着数据量激增,存储资源成为瓶颈。通过冷热数据分层方案,优化存储和查询效率,降低成本。Doris 2.0支持冷数据存储于分布式系统,提升查询能力,存储成本降低约87%。
关键要点
-
京东利用Apache Doris构建广告数据存储服务,提供实时报表和多维分析。
-
数据量激增导致存储资源成为瓶颈,存储容量增加近十倍,但日查询请求量仅增长两倍。
-
通过冷热数据分层方案,优化存储和查询效率,降低成本。
-
Doris 2.0支持冷数据存储于分布式系统,存储成本降低约87%。
-
冷热分层方案分为Doris冷数据入湖和Doris冷热数据分层两种。
-
数据湖方案通过SDC将冷数据迁移至数据湖,确保线上操作稳定性。
-
数据入湖方案的劣势包括需要ETL工具、查询复杂性增加和Schema变更支持问题。
-
Doris冷热数据分层方案支持将冷数据存储于分布式存储系统,简化了存储管理。
-
在Doris 2.0升级过程中,遇到查询性能下降、分桶裁剪失效等问题,并进行了优化。
-
冷数据Schema Change操作存在退化和数据冗余问题,进行了Linked Schema Change和Light Schema Change优化。
-
实现了历史数据的自动结转和恢复工具,确保数据恢复过程的高效性和准确性。
-
通过冷热分层,存储成本大幅降低,查询能力提升超过10倍,维护工作简化。
延伸解读
冷热数据分层的必要性
随着数据量的激增,京东广告面临存储资源瓶颈。冷热数据分层方案通过将高频访问的热数据与低频访问的冷数据分开存储,显著提高了查询效率和存储利用率。这种分层策略不仅降低了存储成本,还优化了系统性能,适应了不断增长的业务需求。
Doris 2.0的优势与挑战
Apache Doris 2.0引入的冷热数据分层功能,支持将冷数据存储于分布式系统,简化了存储管理。然而,升级过程中也面临查询性能下降和资源消耗增加等挑战。需要注意的是,合理配置存储策略和优化查询性能是确保系统高效运行的关键。
数据入湖方案的复杂性
虽然数据入湖方案能够解耦冷数据查询与线上系统,但其复杂性不容忽视。需要额外的ETL工具支持数据迁移,同时在查询时需处理热数据与冷数据的联合操作,这可能导致查询性能下降。因此,在实施时需权衡其带来的便利与复杂性。
延伸问答
京东如何利用Apache Doris优化广告数据存储?
京东通过冷热数据分层方案优化广告数据存储,提升存储和查询效率,降低成本。
冷热数据分层方案的主要优势是什么?
冷热数据分层方案使存储成本降低约87%,并提升查询能力超过10倍,简化了存储管理。
Doris 2.0与1.2版本在冷热数据分层上有什么不同?
Doris 2.0支持将冷数据存储于分布式系统,简化了存储管理,而1.2版本主要基于本地磁盘。
在冷热数据分层方案中,冷数据如何处理?
冷数据通过TTL时间自动判断并迁移至相对廉价的存储介质,确保线上操作稳定性。
京东在实施冷热数据分层时遇到了哪些问题?
京东在实施过程中遇到查询性能下降、分桶裁剪失效等问题,并进行了相应的优化。
数据入湖方案的主要劣势是什么?
数据入湖方案需要ETL工具,增加了系统复杂性,并可能影响查询性能。