并行处理模型
- Process per DBMS Worker
- 使用一个进程处理一个请求
- 使用共享内存对全局数据进行共享,如buffer pool,不用将相同的page加载两次
- 单进程奔溃不会导致整个系统崩溃
- Process Pool
- 使用进程池来处理请求
- 对cpu缓存不友好
- 减少了创建销毁进程开销
- Thread per DBMS Worker
- 单进程多线程
- 线程崩溃导致进程崩溃
- 上下文切换开销很小
- 不需要管理共享内存
并行查询方式
Inter-Query:同时执行多个查询
Intra-Query:同时执行一个查询的多个operator,一般有三种,注意下main这三种不是互斥的,他们可以相互组合。
IO并行
- multi-disk 并行:使用多个冗余磁盘存储相同的数据
- database partitioning:将数据分成不相交的子集,分别存储在物理磁盘上单独管理
- 垂直分区:将数据按照列进行分区
- 水平分区:将数据按照行进行分区
未找到相关的 Issues 进行评论
请联系 @haoqinx 初始化创建