HTAP的发展之路

在这里插入图片描述
OLTP 与 OLAP
OLTP 是 Online Transaction Processing 的简称;OLAP 是 OnLine Analytical Processing 的简称。

OLTP 的查询一般只会访问少量的记录,且大多时候都会利用索引。比如最常见的基于主键的 CRUD 操作。

OLAP 的查询一般需要 Scan 大量数据,大多时候只访问部分列,聚合的需求(Sum,Count,Max,Min 等)会多于明细的需求(查询原始的明细数据)。

《Designing-Data-Intensive-Applications》一书指出的 OLTP 和 OLAP 的主要区别如下:
在这里插入图片描述
在 CMU-CS 15-415的课程中对 OLAP 和 OLTP 这样介绍:
在这里插入图片描述
在这里插入图片描述
HTAP
HTAP 是 Hybrid Transactional/Analytical Processing 的简称。
在这里插入图片描述
行存储的优缺点
在这里插入图片描述
行存在学术论文中一般简称为 NSM(N-ary Storage Mode)。

行存的优点如下:
适合快速的点插入,点更新和点删除
对于需要访问全部列的查询十分友好

行存的缺点如下:
对需要读取大量数据并访问部分列的场景不友好
所以行存适用于 OLTP 场景。

列存储的优缺点
在这里插入图片描述
列存在学术论文中一般简称为 DSM(Decomposition Storage Model)。

列存的优点如下:
只读取部分列时,可以减少 IO
更好的编码和压缩(由于每列的数据类型相同)
更易于实现向量化执行

列存的缺点如下:
不适合随机的插入,删除,更新。(多列之间存在拆分和合并的开销)
所以列存适用于 OLAP 场景。

参考:
https://blog.bcmeng.com/post/oltp-olap-htap.html
https://blog.bcmeng.com/post/tidb-application-htap.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值