RDS MySQL 8.0 Statement queue

【7】Statement Queue

背景

MySQL 的 server 层和引擎层在 statement 并发执行过程中,有很多串行化的点,在 DML 语句中,事务锁冲突比较常见,InnoDB 中事务锁的最细粒度是行级锁,如果语句针对相同行进行并发操作,会导致冲突比较严重,系统吞吐量会随着并发的增加而递减。
AliSQL 设计了针对语句的排队机制,相同的行或者不同的语句进行分桶排队,尽可能的把具有相同冲突可能的在一个桶内排队,减少 conflict 的开销。 

语法

变量

系统提供了两个变量来定义 CCL queue 的 bucket 数量和大小。

1. ccl_queue_bucket_count

表示:一共有多少个bucket, 默认值:4,取值范围:[1, 64]

2. ccl_queue_bucket_size

表示:一个 bucket 允

猜你喜欢

转载自yq.aliyun.com/articles/719354