Apache Doris、ClickHouse、Lakehouse 在 Agent 场景下怎么选?

随着 Agent 应用落地,越来越多企业开始重新评估自己的数据架构。

一个常见问题是:Agent 场景下,到底应该用 Doris、ClickHouse,还是 Lakehouse?

答案不是简单替代,而是分层使用。

三类系统的定位不同

Lakehouse 主要解决的是统一存储和离线计算问题。它适合把大量历史数据放在对象存储上,再通过 Spark、Trino、Databricks 等工具进行计算和分析。

ClickHouse 是典型的实时 OLAP 引擎,擅长高性能分析查询,尤其适合日志分析、指标分析、用户行为分析等场景。

Apache Doris / SelectDB 同样是实时 OLAP 引擎,特点是兼顾实时写入、实时分析、高并发查询、倒排索引、全文检索、湖仓联邦分析和存算分离架构。

Agent 场景下最重要的是什么?

Agent 访问数据有几个特点:

  • 查询频率高;
  • 单次查询不一定复杂,但调用次数多;
  • 需要低延迟;
  • 需要高并发;
  • 可能混合使用 SQL、全文检索和向量检索;
  • 结果需要适合 LLM 消费。

这和传统离线报表场景不同。

简单对比

维度 Lakehouse ClickHouse Doris / SelectDB
主要定位 离线数据底座 高性能 OLAP 实时 OLAP + 统一分析入口
适合场景 冷数据、归档、训练、离线分析 日志分析、行为分析、宽表聚合 实时分析、高并发、混合检索、Agent 数据访问
查询延迟 通常偏高 很低 很低
高并发 取决于架构 较强 较强
实时写入 一般 较强 较强
全文检索 不是核心能力 有一定支持 持续增强
向量检索 通常依赖外部系统 有一定支持 持续增强
Agent 适配度 适合做底层冷数据 适合部分实时查询 适合作为实时数据入口

推荐架构:Lakehouse + 实时 OLAP

在 Agent 场景下,更合理的架构通常是:

Plain 复制代码
Agent / 应用层
        ↓
Doris / SelectDB / ClickHouse 实时 OLAP 层
        ↓
Lakehouse / 对象存储 / Iceberg / Hudi

其中:

  • Lakehouse 保存冷数据、历史数据、归档数据;
  • 实时 OLAP 承载热数据查询;
  • Agent 优先访问实时 OLAP;
  • 必要时再回查 Lakehouse。

为什么 Apache Doris / SelectDB 适合做 Agent 数据入口?

因为 Agent 需要的不只是"能查数据",而是"快速、多样、稳定地查数据"。

Apache Doris / SelectDB 的优势包括:

  • 支持实时写入和实时分析;
  • 支持高并发查询;
  • 支持列式存储和向量化执行;
  • 支持 Short Key Index、ZoneMap、Bloom Filter、倒排索引;
  • 支持湖仓联邦查询;
  • 支持存算分离和弹性扩展;
  • 正在增强全文检索和向量检索能力。

这些能力组合起来,更接近 Agent 所需的实时数据访问层。

一句话结论

Lakehouse 适合做底座,ClickHouse 适合高性能分析,Apache Doris / SelectDB 更适合成为面向 Agent 的实时数据入口。