[转帖]Region 性能调优

region,性能 · 浏览次数 : 0

小编点评

## Summary of the provided document: **Region Performance Optimization:** * Adjusts Region size: * By changing the `region-split-size` setting. * Default is 96 MiB, can be increased for more data. * Use `region-split-size` when setting custom size. * Use bucket for parallel query optimization. * Enable bucket if supported (experimental). * `coprocessor.enable-region-bucket` set to `true` enables bucket usage. * Adjust bucket size: * `coprocessor.region-bucket-size` controls bucket size. **Other optimizations:** * Use `Hibernate Region` or `Region Merge` for performance improvements. * Set `region-split-size` to adjust region size dynamically. **Important notes:** * Use the `region-split-size` setting cautiously, as it can cause performance fluctuations. * Use the `bucket` feature for parallel queries, but use caution due to experimental status. * Setting `region-split-size` beyond 10 GiB is not recommended. **Overall, the document provides guidance on optimizing TiDB Region performance through various methods, including adjusting region size, using bucket, and setting custom configurations.**

正文

https://docs.pingcap.com/zh/tidb/v6.5/tune-region-performance

  

本文介绍了如何通过调整 Region 大小等方法对 Region 进行性能调优以及如何在大 Region 下使用 bucket 进行并发查询优化。

概述

TiKV 自动将底层数据进行分片,所有数据按照 key 的范围划分为若干个 Region。当某个 Region 的大小超过一定限制后,TiKV 会将它分裂为多个 Region。

在大量数据的场景下,可能会出现 Region 数量过多,从而带来更多的资源开销和导致性能回退的问题。在固定数据量下,Region 越大,则 Region 个数越少。从 v6.1.0 开始,TiDB 支持设置自定义的 Region 大小。Region 默认的大小约为 96 MiB,将其调大可以减少 Region 个数。

开启 Hibernate Region 或 Region Merge 也可以减少过多 Region 带来的性能开销。

使用 region-split-size 调整 Region 大小

 
警告

自定义 Region 大小是在 TiDB v6.1.0 引入的实验特性,不建议在生产环境中配置。使用此特性的风险包括:

  • 更容易发生性能抖动。
  • 查询性能回退,尤其是大范围数据查询的性能会有回退。
  • 调度变慢。

Region 的大小可以通过 coprocessor.region-split-size 进行设置。推荐的 Region 大小为 96 MiB、128 MiB、256 MiB。region-split-size 越大,性能会越容易发生抖动。不推荐将 Region 大小设置超过 1 GiB,强烈建议不超过 10 GiB。如果你使用了 TiFlash,则 Region 大小不能超过 256 MiB。如果使用 Dumpling 工具,则 Region 大小不能超过 1 GiB。Region 调大以后,使用 Dumpling 工具时,需要降低并发,否则 TiDB 会有 OOM 的风险。

使用 bucket 增加并发

 
警告

当前该功能为实验特性,不建议在生产环境中使用。

Region 调大以后,为了增加查询并发,应当设置 coprocessor.enable-region-bucket 为 true。这个配置会将每个 Region 划分为更小的区间 bucket,并且以这个更小的区间作为并发查询单位,以提高扫描数据的并发度。bucket 的大小通过 coprocessor.region-bucket-size 来控制,默认值为 96MiB

与[转帖]Region 性能调优相似的内容:

[转帖]Region 性能调优

https://docs.pingcap.com/zh/tidb/v6.5/tune-region-performance 本文介绍了如何通过调整 Region 大小等方法对 Region 进行性能调优以及如何在大 Region 下使用 bucket 进行并发查询优化。 概述 TiKV 自动将底层数

[转帖]G1收集器基本介绍(-XX:+UseG1GC)

概述G1 (Garbage-First)是一款面向服务器的垃圾收集器,主要针对配备多颗处理器及大容量内存的机器. 以极高概率满足GC 停顿时间要求的同时,还具备高吞吐量性能特征. 停顿时间要求的同时,还具备高吞吐量性能特征. G1将Java堆划分为多个大小相等的独立区域(Region),JVM最多可

[转帖]Region Merge Config

TiKV replicates a segment of data in Regions via the Raft state machine. As data writes increase, a Region Split happens when the size of the region o

[转帖]Region is unavailable的排查总结

https://tidb.net/blog/07c99ed0#4%C2%A0%20%E4%B8%80%E4%BA%9B%E5%BB%BA%E8%AE%AE 1 region访问基本流程 tidb在访问key数据时需要获取key所在region的分布信息,在tidb 侧有一个region cache存

[转帖]Split Region 使用文档

https://docs.pingcap.com/zh/tidb/stable/sql-statement-split-region 在 TiDB 中新建一个表后,默认会单独切分出 1 个 Region 来存储这个表的数据,这个默认行为由配置文件中的 split-table 控制。当这个 Regio

[转帖]TiDB-merge region相关问题

一、开启region merge # 控制 Region Merge 的 size 上限,当 Region Size 大于指定值时 PD 不会将其与相邻的 Region 合并 pd-ctl config set max-merge-region-size 20 # 控制 Region Merge 的

[转帖]openstack中region、az、host aggregate、cell 概念

https://www.cnblogs.com/xiexun/p/14491057.html 1. region 更像是一个地理上的概念,每个region有自己独立的endpoint,regions之间完全隔离,但是多个regions之间共享同一个keystone和dashboard。(注:目前op

[转帖]TIDB TIKV 数据是怎么写入与通过Region 分割的?

https://cloud.tencent.com/developer/article/1882194 国产的分布式数据库不少,TDSQL, OB, TIDB ,等等都是比较知名的产品,使用的分布式协议也不同,有使用POSTGRES-XL ,也有从外观模仿ORACLE 的,还有借鉴各家所长自己研发的

【转帖】68.记忆集(remembered set)和写屏障(write barrier)

目录 1.记忆集(`remembered set`) 1.记忆集(remembered set) 问题:G1将堆区划分成多个region,一个region不可能是独立的,它其中存储的对象可能被其他任意region(这些region可能Old区或者Eden区)中的对象所引用。这样一来,在进行YGC的时

[转帖]058、集群优化之PD

PD调度基本概念 调度流程 调度中还有这还缺来了merge,例如合并空region。 store: 基本信息,容量,剩余空间,读写流量等 region: 范围,副本分布,副本状态,数据量,读写流量等 相关调度说明 balance-leader-scheduler: 保持不同节点的leader均衡ba