Apache Doris在易车 AI +实时湖仓技术架构的落地实践
导读:
易车引入 Apache Doris 取得以下核心成果:
- 替换 Druid、Kudu、ClickHouse 等近 10 种数据引擎
- 构建 Apache Doris + Paimon + Hive 湖仓架构
- 探索 Doris + AI(ChatBI、Data Agent)融合应用
- 覆盖实时多维分析、用户画像、BI 报表等核心场景
数据的爆发式增长与业务对实时性的极致追求,驱动易车技术团队在实时湖仓建设上持续探索。目前易车已基于 Apache Doris + Paimon + Hive 构建了湖仓一体化数据平台,实现架构收敛统一:**逐步替换 Druid、Kudu、HBase、MongoDB、ClickHouse 等近 10 种引擎。**广泛应用于实时多维分析、用户画像及标签体系、BI 报表(实时报表、仪表盘)等核心场景。在此基础上,团队进一步探索 Apache Doris + AI 的融合应用,为智能化业务提供实时、统一的数据底座。本文将具体讲述易车数据平台架构的演进及具体实践。
一、早期架构:多引擎混用,流批难统一

易车数据平台的数据源丰富多样,涵盖业务日志、业务数据库(RDS/自建库)、消息系统、接口数据、第三方 API 及应用程序等。
团队通过内部数据集成工具将多源数据统一接入数据平台:底层离线数仓以 Hive 为主、基于 Hudi 构建数据湖;半结构化数据则主要存储在 Elasticsearch、HBase、MongoDB 中。
在 OLAP 引擎层面,团队先后使用过 Kudu、Kylin、Druid、ClickHouse 等多种引擎,即席分析 MPP 架构方面则使用了 Impala、Spark、Presto 等计算引擎,为数据分析、实时大屏、实时指标、个性化推荐等上层应用提供服务。
然而,早期架构链路复杂,面临多重挑战:
- 开发效率低:不同业务场景需适配不同技术栈,开发人员需掌握多种引擎,上手慢、协同难。
- 运维负担重:组件林立,维护难度大,故障排查链路长且复杂。
- 流批割裂:实时与离线计算分离,无法通过一套架构同时满足,且实时性表现不足。
二、引擎选型:从 ClickHouse 到 Apache Doris
为满足快速响应、统一架构等新需求,团队决定对湖仓架构进行持续迭代与升级。在引擎选型上,ClickHouse 曾是易车选择的过渡方案,但随着业务深入,其短板愈发凸显:
- 高频小批量写入场景支持不佳;
- 数据一致性保障较弱;
- 复杂多表关联查询场景下,查询性能有限;
- 运维成本较高,生态不够丰富。
因此,团队开始评估新的 OLAP 引擎。Apache Doris 凭借以下优势成为最终选择:
- 架构简洁:Doris 仅由 FE 和 BE 两类组件构成,支持数据自动均衡分布,无需手动配置分布式表,相比 ClickHouse 极大简化了运维。
- 实时性更强:Doris 支持数据实时同步、更新与删除,且变更实时可见;ClickHouse 则多为后台异步执行,一致性较弱。
- 查询性能优越:基于 MPP 架构与 Pipeline 模型,Doris 实现了高吞吐实时写入与高并发点查的兼顾;其查询优化器针对多表关联、聚合等复杂算子深度优化,即使在大数据量下仍能保持秒级响应。
- 生态友好:Doris 原生兼容 MySQL 协议,可无缝对接各类 BI 工具,降低学习与集成成本;ClickHouse 则需使用特定 SQL 方言,学习成本较高。
综合以上考虑,团队最终选择 Apache Doris 作为核心 OLAP 引擎。在实际落地过程中,Doris 不仅在查询性能上表现稳定,其湖仓一体能力更是超出预期。
三、Apache Doris:湖仓一体,融合统一
Apache Doris 的湖仓一体能力,体现在三个维度:
- 可扩展的多源数据连接:
- Doris 定义了标准三层元数据模型:数据目录(Catalog)、数据库(Database)、数据表(Table)。无论是 Hive、Iceberg、Hudi、Paimon,还是支持 JDBC 协议的数据库系统,Doris 均能轻松连接并高效提取数据。
- 便捷的跨源联邦查询:
- Doris 支持在运行时动态创建多个数据源连接器,通过标准 SQL 即可实现对多个异构数据源的联邦查询。其联邦查询能力对标 Presto/Trino,能够在不移动现有数据的前提下,轻松完成跨平台的统一数据查询与分析,极大降低数据冗余和迁移成本。
- 高性能的数据处理
- 执行引擎:基于 MPP 架构与 Pipeline 执行模型,支持数据实时写入与高并发等值点查。
- 查询优化:针对多表关联、聚合、排序、分页等复杂 SQL 算子深度优化,内置高性能查询优化器,自动生成最优执行计划。
- 多模数据处理:原生支持 JSON、Variant 等半结构化数据类型,实现对结构化、半结构化、非结构化数据的统一分析与处理,满足多样化业务场景需求。

四、架构升级:存储、计算、查询统一
引入 Apache Doris 后,构建了全新的湖仓一体融合架构,整体设计如下图所示:

- 数据接入:实时数据链路中,业务数据库数据通过 Kafka、Flink CDC 实时写入 Doris;离线数据仍同步至 Hive 数仓,完成分层建模。
- 实时处理:在 Doris 内部完成实时分层建设后,通过 Catalog 方式统一挂载 Hive、Hudi、Paimon 等外部数据源,实现离线数据查询与实时数据计算的无缝融合。
- 统一查询入口:Doris 作为统一的查询引擎,可屏蔽底层异构存储与计算引擎的差异,向上支撑各类业务场景,大幅简化上层应用对接。
升级前后架构对比如下,可看到整体收益明显:

- 组件统一,运维成本大幅降低: 此前,团队需同时维护 ClickHouse、Druid、Impala、Kylin、Kudu 等多种引擎,组件繁多且分散。统一至 Apache Doris 后,引擎数量锐减,技术栈得以收敛,运维负担显著减轻。
- 架构简化,接入与开发效率提升: Doris 原生兼容 MySQL 协议与标准 SQL,极大降低了业务侧的接入门槛与学习成本。同时,团队基于 Doris 实现了统一的元数据服务与权限控制,避免了多套系统间的权限割裂,整体架构链路更简洁。
- 融合统一,存储与计算一体化: 在存储层面,Apache Doris 既可承载离线数据存储,也可承载实时增量数据存储,实现存储一体化;在计算层面,Apache Doris 可统一承载实时数据分析与离线数据分析任务,实现流数据与批数据的统一分析。
五、智能分析:AI + Lakehouse 的探索与实践
在 AI 技术迅猛发展的当下,Apache Doris 积极推动 Data + AI 的深度融合与创新,这与易车在 AI 业务领域的探索方向高度契合。在构建湖仓一体架构的基础上,易车数据团队进一步探索了 Doris + AI 的融合应用,将 Doris 打造为面向智能化场景的数据底座,赋能上层 AI 应用与智能代理。
易车对数据引擎在 AI 场景下的应用有着迫切需求,而 Apache Doris 4.0 版本 引入了向量检索、混合检索以及 AI 原生函数,使得结构化分析与语义检索能够在同一系统中完成。并提供了面向 Agent 的 MCP 交互能力,能够有效支撑易车在 AI 业务中的实践。

- 能力底座:为 AI 提供统一数据入口
Apache Doris 天然支持多源联邦查询,可无缝对接 MySQL、Hive、PostgreSQL、Hudi 等异构数据源。这意味着,上层 AI 应用无需关心数据实际存储在何处,只需通过 Doris 即可统一访问数仓内的离线历史数据、实时增量数据以及业务库中的维度信息。这种能力为 AI 模型训练、特征工程、实时推理等场景提供了高效、统一的数据供给通道。
- Doris MCP:开放数据能力,赋能智能代理
Apache Doris 开源了 Doris MCP 工具,为 AI 代理与数据平台的交互提供了标准化接口。团队基于 Doris MCP 及内部二次开发,构建了一套面向智能代理的数据服务层,支持通过 MCP 执行 SQL 查询、获取库表 Schema、列举表列表、检索字段信息等操作。这些能力被封装成可复用的 API,使得上层 AI 应用能够以自然语言或结构化方式快速获取所需数据上下文,极大降低了智能代理接入数据平台的复杂度。
- 场景实践:AI 应用落地探索
易车基于 Apache Doris,已在多个智能化场景中落地应用,具体包括:
- 智能化运维与管理: 支撑数据治理、资产管理、自动化运维等 Agent,实现数据任务的智能调度与异常自愈;
- 交互式智能分析: 赋能内部 Data Agent 及智能助手 ChatBI,支持自然语言问答、业务指标查询等交互式分析场景;
- 语义理解与知识服务: 为问答系统、知识库等应用提供底层支持,并基于 Doris 实现知识向量的实时更新与混合检索,构建统一的语义记忆层。
Doris 社区目前还在 AI 侧发力,未来易车数据团队也会持续跟进与参与 Doris MCP 的建设。此外,Apache Doris 4.0 版本已支持混合检索分析、AI 原生函数等。易车数据团队也将在此版本上进一步探索。
六、结束语
从多引擎混用到统一架构,从离线分析到实时智能,易车数据平台在 Apache Doris 的加持下,完成了从"支撑业务"到"驱动业务"的跨越。未来,随着存算分离架构的落地和 AI 能力的深度融合,我们将持续打造更高效、更智能的数据基础设施,为业务创新提供源源不断的数据动力。
当前易车数据平台主要运行在 Doris 2.0 版本之上,下一步将全面升级至存算分离架构。 通过存算解耦与冷热分层,进一步降低存储成本、提升查询效率,为业务增长释放更多资源。
- 点赞
- 收藏
- 关注作者
评论(0)