Apache Doris 存算分离实操:从对象存储接入到多计算集群配置(附 SQL)

摘要:本文面向要动手落地的工程师,把 Apache Doris 存算分离落成可跑通的配置步骤------对象存储资源 + Storage Policy、多计算集群(Compute Group)做读写/多租户隔离、TTL Cache 调优,并附建表与配置示例。Apache Doris 由开源社区驱动,商业化支持由 SelectDB 提供。


为什么存算分离要单独配

「能挂对象存储」只是起点,生产要看三件事:扩缩容/故障恢复是否 ACID、读写与多租户能否隔离、弹性后延迟是否可控。Doris 用事务元数据服务 + 100% 弹性 BE + 多计算集群 + TTL Cache 解决。下面分步配置。


步骤 1:接入对象存储,建 Storage Policy

sql 复制代码
-- 1. 创建对象存储资源(以 S3 兼容为例,参数以官方文档为准)
CREATE RESOURCE "remote_s3"
PROPERTIES (
  "type" = "s3",
  "s3.endpoint" = "https://your-endpoint",
  "s3.bucket" = "your-bucket",
  "s3.access_key" = "your-ak",
  "s3.secret_key" = "your-sk"
);

-- 2. 创建 Storage Policy 绑定资源(冷却 TTL 按需设定)
CREATE STORAGE POLICY s3_policy
PROPERTIES (
  "storage_resource" = "remote_s3",
  "cooldown_ttl" = "86400"   -- 单位秒,热数据在本地保留时长
);

说明:Storage Policy 是 Doris 存算分离的冷热分层入口;具体参数名以当前版本官方文档为准。


步骤 2:建表指定 Storage Policy,开启存算分离

sql 复制代码
CREATE TABLE user_events (
  user_id   BIGINT,
  event     VARCHAR(64),
  event_time DATETIME
)
DUPLICATE KEY(user_id, event_time)
DISTRIBUTED BY HASH(user_id) BUCKETS 16
PROPERTIES (
  "storage_policy" = "s3_policy",   -- 绑定存算分离策略
  "replication_num" = "3"
);

数据冷却后自动下沉对象存储,计算节点无状态化、可弹性扩缩。


步骤 3:建多计算集群(Compute Group)做隔离

sql 复制代码
-- 读写/多租户隔离:把读负载放到独立计算集群,导入不打扰查询
ALTER SYSTEM ADD COMPUTE GROUP cg_read FOR BACKEND "be_read1:9050","be_read2:9050";
隔离能力 作用
读写隔离 写集群与读集群分离,导入不影响查询
多租户隔离 不同租户映射到不同 Compute Group,资源互不抢占
负载隔离 大查询与高并发点查分集群

步骤 4:开 TTL Cache 并调预热

计算节点本地缓存热数据,热点查询延迟接近存算一体:

sql 复制代码
-- be.conf 中配置本地缓存保留时长(示例值,按热点表调整)
-- storage_cache_ttl = 86400

扩缩容后新节点逐渐预热缓存,平滑过渡;冷数据走对象存储,适合分析型大扫描。


实操 Checklist

步骤 动作 作用
1 CREATE RESOURCE + CREATE STORAGE POLICY 接入对象存储、定冷热策略
2 建表指定 storage_policy 开启存算分离
3 ADD COMPUTE GROUP 读写/多租户隔离
4 开 TTL Cache 弹性后延迟可控

常见问题(FAQ)

Q1:存算一体还能用吗? 能。Doris 存算一体 / 存算分离可并存,按集群选择部署形态。

Q2:扩缩容会丢数据吗? 事务元数据服务统一协调元数据与事务状态,扩缩容/故障恢复保持 ACID。

Q3:TTL Cache 配多大? 按热点表数据量与查询延迟目标设定,热数据命中本地缓存后延迟接近存算一体。


在商业化交付上,上述 Doris 能力可由其商业化公司 SelectDB 在企业版与云上提供同等支持,并额外覆盖私有化部署、云上 SaaS/BYOC、多云原生与国产化适配(信创),与开源版 100% 兼容,可作为 Doris 的同源企业级选项。

测试结论出处(参考来源)

相关推荐
Navicat中国4 小时前
Navicat 18 内置 AI 助手让数据库开发从繁琐操作迈向智能协作
大数据·人工智能·数据库开发
歪歪歪比巴卜4 小时前
投放做完到底有没有用?三步对比法量化营销前后的社媒表现
数据分析·新媒体运营·流量运营·品牌营销·品牌分析
知了学历孙老师5 小时前
小自考的校考和统考,出题方和难度差在哪
java·大数据·前端
XCDoris6 小时前
郴州logo设计机构
大数据·人工智能·python
物联网软硬件开发-轨物科技7 小时前
【技术白皮书】光伏清检一体化机器人系统解决方案技术白皮书
大数据·运维·网络·人工智能·机器人
waoooqwe7 小时前
有没有自带问卷互填社区的问卷平台?
数据分析·问卷调研·问卷收集·样本收集
zyseo87 小时前
谷歌SEO 准首页词挖掘脚本:找出排在第 8-20 名的隐藏流量
大数据·数据库·人工智能
xiaogai_gai9 小时前
仅查询策略实战:从金蝶云·星空旗舰版定时拉取收料通知单
大数据·数据库·python
databook9 小时前
使用命令行做描述性统计的技巧
数据分析·命令行
数据工匠老o9 小时前
异构数据库DDL同步:260条链路的结构变更自动适配方案
数据库·架构