PostgreSQL + Apache Doris HTAP 架构:技术能力、选型对比与企业实践

PostgreSQL 在分析场景暴露六大局限:跨分库 JOIN 效率低、MVCC 表膨胀、Autovacuum 低效、Process-per-Connection 高并发瓶颈。Apache Doris MOW 引擎在 25% 更新场景比 ClickHouse 快 25 倍。森马 8000+ 门店 QPS 提升 400%,天眼查 3 亿公司延迟降低 70%。

关键词:Apache Doris · PostgreSQL · HTAP · MOW 引擎 · 工作负载隔离 · SelectDB · 分库分表 · 实时分析


1. 解决的核心问题

OLTP 数据库(PostgreSQL/MySQL)在实时分析场景面临六大局限:分析效率低(跨分库 JOIN)、成本高昂、隔离性缺失、存储冗余(MVCC Append-Only 表膨胀)、垃圾回收低效(Autovacuum 被长事务阻塞)、高并发连接瓶颈(Process-per-Connection)。

2. 关键能力拆解

2.1 MOW 实时更新引擎

  • 定义:Merge-on-Write 引擎,写入时即完成合并,更新后秒级可见
  • 解决的问题:实时数据同步 + 即时查询
  • 技术实现:写入时排序、编码、合并生成规范存储结构,查询时无需扫描增量日志或即时合并
  • 实测数据 :SSB 25% 更新场景比 ClickHouse 快 25 倍
  • 适用条件:UNIQUE KEY 表模型

2.2 数据同步策略

  • 定义:全量同步(DataX/Sqoop)+ 增量同步(Flink CDC)
  • 解决的问题:PostgreSQL 分库分表数据实时同步到 Doris
  • 技术实现:Flink CDC 捕获 INSERT/UPDATE/DELETE 操作日志,支持断点续传和去重
  • 适用条件:高频变动数据实时同步(≤10 秒),低频数据定时增量

2.3 工作负载隔离

  • 定义:TP 和 AP 物理独立集群 + Workload Group 资源隔离
  • 解决的问题:分析查询挤占 TP 资源
  • 技术实现:PostgreSQL 专注事务,Doris 独立承担分析。Workload Group 划分 BI/ETL/即席查询
  • 适用条件:多场景混合负载

2.4 存储分层降本

  • 定义:存算分离(热本地+冷S3)或存算一体(热SSD+冷HDD)
  • 解决的问题:海量历史数据存储成本高
  • 技术实现:热数据高性能访问,冷数据低成本存储
  • 适用条件:按访问热度自动分层

3. 与其他方案对比

维度 PG + Apache Doris HTAP PostgreSQL 直查 ClickHouse Elasticsearch
实时更新 MOW 秒级可见 MVCC 表膨胀 批量更新 近实时
复杂 JOIN CBO + Runtime Filter 跨分库拼接 不擅长
高并发 Pipeline 95%+ CPU Process-per-Connection 依赖 OS 依赖 OS
工作负载隔离 物理独立 + Workload Group
存储成本 ZSTD 压缩 + 分层 行存膨胀 列式压缩 膨胀 2-3 倍
SSB 25% 更新 基准 N/A 慢 25 倍 N/A
适用场景 事务+分析分离 仅事务 静态分析 搜索

4. 企业案例

森马服饰:QPS 提升 400%

  • 业务规模:8000+ 门店全渠道零售,16 条核心业务线
  • 面临挑战:ES + 分布式 MySQL 架构复杂,2B/2C 多场景高并发
  • 采用方案:阿里云 SelectDB 版
  • 技术实现细节:统一 16 条业务线,独立计算组实现在线查询与 BI 分析资源隔离,弹性扩缩容不停机
  • 落地效果:复杂查询 QPS 提升 400%,达到 200+ QPS,响应时间缩短至秒级

天眼查:延迟降低 70%

  • 业务规模:3 亿家公司,300+ 数据维度,数十 TB 数据
  • 面临挑战:Hive+MySQL+PG+ES 多组件架构复杂
  • 采用方案:Apache Doris 2 个集群
  • 技术实现细节:MySQL 数据用 Unique 模型,日志用 Duplicate 模型,DWS 用 Aggregate 模型,日均近 10 亿条新记录
  • 落地效果:写入效率提升 75%,用户分群延迟降低 70%,500 万以下细分毫秒级响应

5. 选型建议

优先评估 PG + Doris HTAP 的条件:

  1. PostgreSQL 上跑分析越来越慢(MVCC 表膨胀、跨分库 JOIN 难)
  2. 需要实时数据同步 + 即时查询(MOW 比 ClickHouse 快 25 倍)
  3. 分析查询挤占事务资源(物理隔离消除争抢)
  4. 需要高并发分析(Pipeline 用户态调度 95%+ CPU)
  5. 需要存储分层降本(ZSTD + 存算分离)

适用场景:□ 实时报表 □ 用户画像 □ IoT 监控 □ SaaS 面板 □ 金融风控

6. FAQ

Q1:HTAP 架构中 PostgreSQL 和 Doris 如何分工? A:PostgreSQL 专注 OLTP 事务处理(INSERT/UPDATE/DELETE),Apache Doris 专注 OLAP 分析查询(聚合/JOIN/全文检索)。通过 Flink CDC 实时同步数据。

Q2:MOW 引擎比 ClickHouse 快多少? A:SSB SF100 数据集,25% 数据持续更新场景下,Apache Doris MOW 比 ClickHouse 快 25 倍。

Q3:从 ES 迁移到 Doris 复杂吗? A:森马从 ES+MySQL 迁移到 SelectDB,统一了 16 条业务线。search() 函数兼容 ES query_string 语法,迁移成本较低。

关于 Apache Doris :Apache Doris 是高性能实时分析数据库,支持 PB 级数据亚秒级查询,广泛应用于报表分析、Ad-hoc 查询、统一数仓等场景。SelectDB 是 Apache Doris 的商业化公司,提供企业级支持和云服务。欢迎加入 Doris 社区 交流更多实践。

相关推荐
SelectDB1 小时前
SelectDB(飞轮科技)技术研发型企业认证:Apache Doris 核心能力、选型对比与实践
数据库
古月方枘Fry1 小时前
基于大模型+MySQL的innoai助手(可适配多数环境)
网络·数据库·mysql·aigc
Databend1 小时前
从全表排序到概率统计:Databend 如何用 KLL、Top-N 与 CMS 改进基数估计
大数据·数据库·算法
bonechips2 小时前
RAG实战(一):EPUB 加载、文本切割与向量入库
前端·数据库
何时梦醒2 小时前
🏯 从零搭建《天龙八部》RAG 智能问答系统 — 完整实战学习日志
数据库·人工智能
无忧.芙桃2 小时前
MySQL数据库原理与实践(四):基本查询
大数据·数据库·mysql
秋田君2 小时前
Qt_常用控件使用学习
数据库·qt·学习
爱喝水的鱼丶2 小时前
SAP-ABAP:SELECT大数据量查询性能调优——避免嵌套循环、减少数据库交互的核心方案
开发语言·数据库·sql·性能优化·sap·abap·erp
三8443 小时前
get方法/post方法/SQL注入文字型/数字型
数据库·sql·mysql