你好,我是王磊,你也可以叫我 Ivan。
这一讲的关键词是 HTAP,在解释这个概念前,我们先要搞清楚它到底能解决什么问题。
有关 OLTP 和 OLAP 的概念,我们在第 1 讲就已经介绍过了。OLTP 是面向交易的处理过程,单笔交易的数据量很小,但是要在很短的时间内给出结果;而 OLAP 场景通常是基于大数据集的运算。 OLAP 和 OLTP 通过 ETL 进行衔接。为了提升 OLAP 的性能,需要在 ETL 过程中进行大量的预计算,包括数据结构的调整和业务逻辑处理。这样的好处是可以控制 OLAP 的访问延迟,提升用户体验。但是,因为要避免抽取数据对 OLTP 系统造成影响,所以必须在日终的交易低谷期才能启动 ETL 过程。这样一来, OLAP 与 OLTP 的数据延迟通常就在一天左右,习惯上大家把这种时效性表述为 T+1。其中,T 日就是指 OLTP 系统产生数据的日期,T+1 日是 OLAP 中数据可用的日期,两者间隔为 1 天。
你可能已经发现了,这个体系的主要问题就是 OLAP 系统的数据时效性,T+1 太慢了。是的,进入大数据时代后,商业决策更加注重数据的支撑,而且数据分析也不断向一线操作渗透,这都要求 OLAP 系统更快速地反映业务的变化。
两种解决思路
说到这,你应该猜到了,HTAP 要解决的就是 OLAP 的时效性问题,不过它也不是唯一的选择,这个问题有两种解决思路: