真正的 HTAP 对用户和开发者意味着什么?

关于作者: 杨传辉,OceanBase CTO。2010年作为创始成员之一加入 OceanBase 团队,主导了 OceanBase 历次架构设计和技术研发,从无到有实现 OceanBase 在蚂蚁集团全面落地。同时,他也主导了两次 OceanBase TPC-C 测试并打破世界纪录,著有《大规模分布式存储系统:原理与实践》。目前,杨传辉带领 OceanBase 技术团队致力于打造更加开放、灵活、高效、易用的下一代企业级分布式数据库。


Gartner 2016 年首次提出 HTAP(Hybrid Transaction / Analytical Processing,混合事务分析处理)并给出明确的定义:即同时支持 OLTP 和 OLAP 场景,需要创新的计算存储框架,在一份数据上保证事务的同时支持实时分析,省去费时的 ETL 过程。在我看来,HTAP 代表了一种技术理想,但是落地的时候难免会遇到各种问题,包括:


  • HTAP 对用户意味着什么?一个 OLTP 和 OLAP “无所不能”的系统真的是用户想要的吗?
  • 基于一份数据的假设,HTAP 到底牺牲 OLTP,还是牺牲 OLAP,或者是二者可以兼得?
  • HTAP 系统需要用到什么技术?到底是更加适合 OLTP 的行存,还是更加适合 OLAP 的列存?如何避免 OLTP 和 OLAP 两类业务互相干扰?


从用户角度谈 HTAP