OceanBase 的并发简述笔记

复制代码
                     OceanBase的并发简述笔记

一、并发说明

OceanBase的并发分为并发DDL、并发DML。并分为分区并行与分区内并行。

一个CPU 可以运行多个线程(时间片段)。

(租户)min_cpu*(集群)px_workers_per_cpu_quota = 租户可拥有的线程数

二、数据分发与数据重分布

数据分发:

Partition-Wise Join(以分区的方式进行JOIN):要求分区表且分区方式相同,物理分布一样,并且JOIN的连接条件为分区键时。可以简单理解为表组。

Partial Partition-Wise Join(以部分分区的方式进行JOIN):一个分区表,一个非分区表或者分区表。 但是它们两个表的连接键或分区键相同的情况下,会以该分区表的分区分布为基准,重新分布另一个表的数据。 另一个名字:Partition重分布(PKEY JOIN)。

数据重分布:

分布式执行的Hint:PQ_DISTRIBUTE,结合ORDERED、LEADING、USE_NL、USE_HASH和USE_MERGE等。

HASH-HASH:

Random:Union all场景

PARTITION:关联表中的其中一个表的分区数几乎等于查询服务器的数据量时。

BROADCAST:关联表中的其中一个表够小,且小表行数乘以查询服务器的数量远小于另一个表时,采用广播的方式。

NONE:

抽象简单理解DFO: data flow operator 可以理解为每一个数据执行片段,在并发执行中表示可以并行执行的操作。

多个DFO组成一个DFOs == 》DFOs树。

相关推荐
Lv117700813 分钟前
Visual Studio中的多态
ide·笔记·c#·visual studio
HollowKnightZ16 分钟前
论文阅读笔记:Class-Incremental Learning: A Survey
论文阅读·笔记
AA陈超1 小时前
枚举类 `ETriggerEvent`
开发语言·c++·笔记·学习·ue5
代码游侠1 小时前
学习笔记——IPC(进程间通信)
linux·运维·网络·笔记·学习·算法
apcipot_rain2 小时前
汇编语言程序设计 从0到1实战笔记
笔记
周小码2 小时前
我用一个周末,写了一个“反内卷“的极简笔记工具
笔记
惜.己2 小时前
前端笔记(三)
前端·笔记
charlie1145141912 小时前
如何把 Win32 窗口“置顶”(Windows + C++)
开发语言·c++·windows·笔记·学习·软件工程
北岛寒沫3 小时前
北京大学国家发展研究院 经济学辅修 经济学原理课程笔记(第八课 外部性)
经验分享·笔记
雍凉明月夜4 小时前
c++ 精学笔记记录Ⅲ
c++·笔记·学习