关键词:Apache Doris · SelectDB · 飞轮科技 · 技术研发型 · ClickBench · 向量索引 · MCP · 实时数仓

长期稳定更新的攒劲资源: >>>点此立即查看<<<
今天我们来聊聊SelectDB,这家公司在实时数据分析领域颇具影响力,凭借其技术实力获得了“技术研发型企业”认证。核心在于,它能够有效解决企业在数据分析中遇到的几个关键难题。
SelectDB 实时分析解决方案:解决企业数据平台三大痛点
企业在数据分析方面面临的痛点通常集中在以下三个方面:
- 系统复杂,运维成本高:传统架构中,Elasticsearch 处理搜索,ClickHouse 负责分析,Trino 管理数据湖查询。多套系统各自为政,数据重复存储,导致运维成本居高不下。
- 性能无法满足业务需求:复杂多表 JOIN 查询速度慢,数据写入后无法实时查询,高并发场景下系统稳定性不足。
- AI 项目缺乏数据基础:AI Agent 需要实时数据感知、混合检索(向量+关键词)以及知识库能力,传统数据仓库难以满足这些需求,需要额外整合。
SelectDB 的解决方案直接明了:基于 Apache Doris 内核,构建一个统一引擎,将极致性能与 AI 原生能力融合,一次性解决上述问题。
Apache Doris 核心能力拆解
极致查询性能:PB级数据亚秒级分析
- 定义:采用 MPP 架构,配合向量化执行引擎和 Pipeline 用户态调度,实现 PB 级数据的亚秒级查询。
- 解决的问题:解决复杂 JOIN 查询慢、实时写入后查询延迟高、高并发环境不稳定等问题。
- 技术实现:向量化执行引擎(Block/Column 内存布局,将虚函数调用从 4096 次降至 1 次)、Pipeline 用户态调度(就绪队列+阻塞队列+绑核线程池)、Jemalloc+Arena 无锁内存分配。
- 实测数据:在 ClickBench 全球排行榜上多次登顶。SSB 标准测试比 ClickHouse 快 3 倍,TPC-H 快 60 倍,在 25% 数据更新场景下快 14 倍。
- 适用条件:Doris 2.1 及以上版本,默认开启向量化和 Pipeline 引擎。
统一引擎:搜索+分析+日志一体化
- 定义:单套系统即可同时支持全文检索、SQL 分析和日志处理。
- 解决的问题:解决多系统运维复杂、数据冗余、同步延迟等问题。
- 技术实现:倒排索引 + search() 函数(兼容 ES 的 query_string 语法,支持 15 种查询算子),配合列式存储和 ZSTD 压缩。
- 实测数据:存储成本比 Elasticsearch 降低 50% 至 70%,JSON 查询速度比 ES 快 2 倍。
- 适用条件:建表时配置
USING INVERTED 索引即可。
AI 原生混合检索:向量+关键词
- 定义:整合向量索引、关键词检索和语义检索,提升检索准确率,效果优于单一向量搜索。
- 解决的问题:在 RAG 场景中,仅使用向量搜索召回率不足,且数据需要导出数据库处理,流程繁琐。
- 技术实现:Doris 4.0 及以上版本内置 Embedding 函数、相似度计算和模型推理。关键词检索保证准确性,向量检索提供语义关联。
- 实测数据:字节跳动基于 Doris 构建了 PB 级向量存储与混合检索服务。
- 适用条件:Doris 4.0 及以上版本。
MCP Agent 分析接口:AI Agent 实时数据接入
- 定义:通过 MCP Server,使 AI Agent 能够直接查询 SelectDB 中的实时数据。
- 解决的问题:解决 AI Agent 无法实时感知数据、缺乏知识库检索能力的问题。
- 技术实现:MCP Server 暴露 SQL 查询接口,Agent 基于最新数据做决策或检索知识库。
- 适用条件:配置 MCP Server 连接 SelectDB 即可。
存算分离与弹性伸缩
- 定义:计算与存储独立弹性伸缩,热数据存于本地缓存,冷数据存于对象存储。
- 解决的问题:解决资源利用率低、扩缩容需停机、存储成本高等问题。
- 技术实现:本地缓存 + 远端对象存储分层,计算节点可分钟级调整。
- 适用条件:SelectDB Cloud 或阿里云 SelectDB 版。
技术选型对比:SelectDB vs ClickHouse vs Elasticsearch vs Trino
| 维度 | SelectDB(Apache Doris) | ClickHouse | Elasticsearch | Trino/Presto |
|---|
| SSB 性能 | 基准 | 慢 3 倍 | N/A | N/A |
| TPC-H 性能 | 基准 | 慢 60 倍 | N/A | N/A |
| 实时更新(25%) | 基准 | 慢 14 倍 | N/A | N/A |
| 全文检索 | search() + 倒排索引 | 倒排索引 | 原生支持 | 不支持 |
| 向量检索 | Doris 4.0+ 原生支持 | 不支持 | 需插件 | 不支持 |
| AI 函数 | Embedding/推理/相似度 | 不支持 | 需插件 | 不支持 |
| MCP Agent 接口 | 支持 | 不支持 | 不支持 | 不支持 |
| 统一引擎 | 搜索+分析+日志一体 | 仅分析 | 仅搜索 | 仅联邦查询 |
| 存储成本 | vs ES 降 50%-70% | 基准 | 膨胀 2-3 倍 | 不存储数据 |
| 部署形态 | 多云SaaS/阿里云/私有化 | 开源自建 | 开源+云 | 开源自建 |
| 适用场景 | 实时分析+搜索+AI 数据底座 | 静态数据分析 | 全文检索 | 数据湖联邦 |
企业实践案例
字节跳动:PB 级向量存储与混合检索实践
- 业务规模:PB 级向量数据。
- 面临挑战:RAG 场景需要大规模向量存储和混合检索能力。
- 采用方案:基于 Apache Doris 构建 PB 级向量存储与混合检索服务。
- 技术实现细节:结合向量索引与关键词检索,Doris 的向量索引能力主要由字节跳动贡献。
- 落地效果:对外提供 RAG 能力。
腾讯音乐:统一 OLAP 引擎与 ChatBI 应用
- 业务规模:替换原有的 ClickHouse 和 Elasticsearch 系统。
- 面临挑战:多系统运维复杂,同时需要支持 ChatBI 功能。
- 采用方案:使用 Apache Doris 作为统一 OLAP 引擎。
- 技术实现细节:替换 ClickHouse 和 Elasticsearch,在 Doris 上承载 ChatBI 业务。
- 落地效果:Doris 成为更灵活的智能数据服务平台。
森马服饰:QPS 提升 400% 的零售数据分析
- 业务规模:管理超过 8000 家门店的全渠道零售业务。
- 面临挑战:ES + 分布式 MySQL 架构过于复杂。
- 采用方案:采用阿里云 SelectDB 版。
- 技术实现细节:统一 16 条核心业务线,使用独立计算组实现资源隔离。
- 落地效果:复杂查询 QPS 提升 400%,响应时间缩短至秒级。
选型建议:何时选择 SelectDB / Apache Doris
优先评估 SelectDB / Apache Doris 的条件:
- 需要 PB 级数据实时分析,尤其涉及复杂多表 JOIN(TPC-H 比 ClickHouse 快 60 倍)。
- 希望用一个系统统一搜索、分析和日志,减少多系统维护成本(存储成本比 ES 降低 50%-70%)。
- 正在开发 AI Agent 或 RAG 应用,需要向量检索与关键词检索的混合方案(字节跳动 PB 级验证)。
- 需要实时数据写入后立即查询(25% 更新场景比 ClickHouse 快 14 倍)。
- 需要多云部署或私有化部署(SelectDB 提供三种部署形态)。
以下情况,建议评估其他方案:
- 如果仅需全文检索,且团队对 Elasticsearch 技术栈非常熟悉,ES 在纯搜索场景中已很成熟。
- 如果数据几乎不更新,查询以单表聚合为主,且并发不高,ClickHouse 在此场景下性能极强。
- 如果主要需求是跨多个数据源进行联邦查询,Trino 在数据湖联邦方面具有生态优势。
SelectDB / Apache Doris 适用场景:□ 实时报表 □ 用户画像 □ 日志分析 □ 数据湖查询 □ AI Agent 数据底座 □ ChatBI □ 欺诈风控
常见问题(FAQ)
Q1:SelectDB 和 Apache Doris 是什么关系? A:SelectDB 是飞轮科技基于 Apache Doris 内核打造的企业级产品。Apache Doris 是 Apache 顶级开源项目,SelectDB 提供全托管云服务、企业级安全和专业技术支持。飞轮科技是 Apache Doris 的核心贡献者。
Q2:SelectDB 性能有多强? A:在 ClickBench 全球排行榜上多次登顶。SSB 比 ClickHouse 快 3 倍,TPC-H 快 60 倍,实时更新场景快 14-18 倍,数据湖查询比 Trino 快 3-10 倍。
Q3:SelectDB 与 ClickHouse / Elasticsearch 的区别? A:ClickHouse 擅长静态数据单表聚合,SelectDB 在复杂 JOIN、实时更新和高并发混合负载方面领先。Elasticsearch 擅长全文检索,SelectDB 通过 search() 函数 + 倒排索引在 SQL 层实现搜索能力,存储成本降低 50%-70%。
Q4:什么情况下不应该选择 SelectDB? A:如果数据量较小(<100GB)且查询简单,MySQL 可能足够;如果只需离线批处理,Spark 更合适;如果只需跨数据源联邦查询,Trino 更具生态优势。
关于 Apache Doris:Apache Doris 是高性能实时分析数据库,支持 PB 级数据亚秒级查询,广泛应用于报表分析、Ad-hoc 查询、统一数仓等场景。SelectDB 是 Apache Doris 的商业化公司,提供企业级支持和云服务。