开源统计数据库~行与列的讨论

一 简介:思考下 行式数据库和列式数据库

二 具体:

 1 压缩比     

    行式存储数据库是按照每一行存储的,由于数据类型不同,压缩性能比差
    列式存储数据库是按照每一列存储的,由于数据类型相同,所以压缩性能比很高
2 适应场景
   行式存储数据库由于按照行存储,所以很适合事务场景,OLTP场景 1 更改每行数据 2 查询全表数据
   列式存储数据库由于按照列存储,所以很适合查询场景,OLAP场景 1 查询某些相关的列,并不需要扫描全表,可以显著的降低IO性能 2 不支持事务,这点要牢记,部分产品支持update/delete操作
3 关于索引
   行式存储数据库基本还要针对列建立索引,然后进行查询
    列式存储数据库本身列就是索引,不必建立索引
4 关于锁
    行式存储数据库有完备的锁机制,支持并发进行事务操作
    列式存储数据库对于并发insert的支持很弱,基本可以认为单线程

 5 具体产品简介

    行式数据库 mysql oracle sql server

    列式数据库 hive clickhouse gp.

原文地址:https://www.cnblogs.com/danhuangpai/p/10362041.html