跳到主要内容

冷热数据分层概述

冷热数据分层(Tiered Storage) 是 Apache Doris 提供的存储优化能力,通过将访问频率较低的冷数据下沉到低成本存储介质(HDD、对象存储、HDFS),同时保留热数据在高性能存储中,从而在保证查询效率的前提下显著降低存储成本。

适用场景

  • 存储成本压力大,希望对历史数据进行降本处理
  • 数据具有明显的冷热访问特征(如近 7 天为热数据,更早数据为冷数据)
  • 已有对象存储(S3/OSS/COS 等)或 HDFS 资源可复用
  • 部署模式不同(存算一体 / 存算分离),需要差异化的冷数据存储方案

快速决策

根据部署条件与成本目标,快速选择合适的分层模式:

用户场景推荐模式关键收益
具备存算分离部署条件,追求极致弹性扩展存算分离单副本存储 + 计算/存储独立扩展
存算一体模式,希望优化本地 SSD 资源本地分层冷数据从 SSD 冷却到 HDD,节省高性能存储
存算一体模式,希望使用对象存储或 HDFS 降本远程分层冷数据单副本存储到对象存储或 HDFS,深度降本

三种分层模式详解

Doris 针对不同部署条件提供了三种冷数据分层方案,用户可以根据实际情况灵活选择。

模式对比表

下表汇总了三种模式的适用条件与核心特性,便于快速对比:

冷数据选择适用条件核心特性
存算分离用户具备部署存算分离的条件- 数据以单副本完全存储在对象存储中
- 通过本地缓存加速热数据访问
- 存储与计算资源独立扩展,显著降低存储成本
本地分层存算一体模式下,用户希望进一步优化本地存储资源- 支持将冷数据从 SSD 冷却到 HDD
- 充分利用本地存储层级特性,节省高性能存储成本
远程分层存算一体模式下,使用廉价的对象存储或 HDFS 进一步降本- 冷数据以单副本形式保存到对象存储或 HDFS 中
- 热数据继续使用本地存储
- 不能对一个表和本地分层混合使用

1. 存算分离

适用场景:用户具备部署存算分离的条件,追求弹性扩展与极致降本。

核心特性

  • 数据以单副本完全存储在对象存储中
  • 通过本地缓存加速热数据访问
  • 存储与计算资源独立扩展,显著降低存储成本

2. 本地分层

适用场景:存算一体模式下,用户希望进一步优化本地存储资源。

核心特性

  • 支持将冷数据从 SSD 冷却到 HDD
  • 充分利用本地存储层级特性,节省高性能存储成本

详细配置与使用方法请参考:本地磁盘分层存储

3. 远程分层

适用场景:存算一体模式下,使用廉价的对象存储或 HDFS 进一步降本。

核心特性

  • 冷数据以单副本形式保存到对象存储或 HDFS 中
  • 热数据继续使用本地存储
  • 不能对一个表和本地分层混合使用

详细配置与使用方法请参考:本地-远程分层存储

设计目标

通过上述三种模式,Doris 能够灵活适配用户的部署条件,实现以下目标:

  • 查询效率与存储成本的平衡:热数据保持高性能访问,冷数据享受低成本存储
  • 灵活适配多种部署形态:兼容存算一体与存算分离两种模式
  • 复用已有基础设施:支持对象存储、HDFS、本地 HDD 等多种冷存储介质

FAQ

Q1:存算分离与远程分层的本质区别是什么?

  • 存算分离:所有数据(包括热数据)都以单副本存储在对象存储中,本地仅作缓存加速。
  • 远程分层:仅冷数据下沉到对象存储/HDFS,热数据仍保留在本地存储中,属于存算一体架构下的优化方案。

Q2:本地分层和远程分层可以同时使用吗?

不可以。同一张表不能混合使用本地分层与远程分层。

Q3:如何判断我应该选择哪种模式?

  • 如果具备存算分离部署条件,优先选择存算分离
  • 如果是存算一体且仅希望优化本地磁盘成本,选择本地分层
  • 如果是存算一体且希望利用对象存储或 HDFS 降本,选择远程分层

Q4:冷数据分层会影响查询性能吗?

冷数据查询会因介质性能差异(HDD/对象存储延迟高于 SSD)而略有下降,但 Doris 通过本地缓存等机制最大限度降低性能损失。

相关文档