citus实战系列之入门篇
citus为何物?
citus是一款基于PostgreSQL的开源分布式数据库,自动继承了PostgreSQL强大的SQL支持能力和应用生态(不仅仅是客户端协议的兼容还包括服务端扩展和管理工具的完全兼容)。
和其他类似的基于PostgreSQL的分布式方案,比如GreenPlum,PostgreSQL-XL,PostgreSQL-XC相比,citus大的不同在于citus是一个PostgreSQL扩展而不是一个独立的代码分支。
因此,citus可以用很小的代价和更快的速度紧跟PostgreSQL的版本演进;同时又能大程度的保证数据库的稳定性和兼容性。
主要特性
- PostgreSQL兼容
- 水平扩展
- 实时并发查询
- 快速数据加载
- 实时增删改查
- 支持分布式事务
- 支持常用DDL
性能参考
为了能够直观的了解citus分片表的性能优势,下面在1个CN和8个worker组成citus集群上,
对比普通表和分片表(96分片)的性能差异。
插入1亿记录(5GB) | 348051 | 82131 |
count(*) | 348051 | 82131 |
插入1亿记录(5GB) | 10246(2并发) | 271 |
建索引 | 165582 | 2579 |
添加带缺省值的字段 | 388481 | 10522 |
删除5000w记录 | 104843 | 6106 |