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

tidb,merge,region,相关,问题 · 浏览次数 : 0

小编点评

**方法一:控制 Region Merge 的参数** ``` # PD:config set key-type raw# config set key-type txn# ``` **方法二:开启跨表 Region 的合并** ``` # enable-cross-table-merge true ``` **方法三:关闭跨表合并** ``` # enable-one-way-merge false ```

正文

一、开启region merge

# 控制 Region Merge 的 size 上限,当 Region Size 大于指定值时 PD 不会将其与相邻的 Region 合并
pd-ctl config set max-merge-region-size 20
# 控制 Region Merge 的 key 上限,当 Region key 大于指定值时 PD 不会将其与相邻的 Region 合并
pd-ctl config set max-merge-region-keys 200000
# 同时进行的 Region Merge 调度的任务,设置为 0 则关闭 Region Merge。
pd-ctl config set merge-schedule-limit 8

    二、查看空region的方法

    pd里记录的所有空region

    # pd监控中记录的region数量
    tiup ctl:v4.0.13 pd  -u http://pd_ip:pd_port region check empty-region > empty-region.json
    # wc -l empty-region.json
    

    # 通过对全量数据做对比
    tiup ctl:v4.0.13 pd -u http://pd_ip:pd_port region scan> region_all.json
    # 通过条件对比,可以发现官方对"approximate_size": 1的情况即定义为空region,approximate_size表示region的近似数据量

    # 但是pd中的记录其实是存在一定的偏差,真实的空region要通过下面的sql查看
    SELECT count(1) FROM INFORMATION_SCHEMA.TIKV_REGION_STATUS where APPROXIMATE_SIZE=1;

      三、开启了region merge后还有大量空region的原因

      创建过大量表后(包括执行 Truncate Table 操作)又清空了。此时如果开启了 split table 特性,这些空 Region 是无法合并的,此时需要调整以下参数关闭这个特性:
      TiKV: 将 split-region-on-table 设为 false,该参数不支持动态修改。

      方式一、

      # PD:
      config set key-type raw
      # config set key-type txn
      # 如果集群中不存在 TiDB 实例,key-type 的值为 "raw" 或 "txn"。此时,无论 enable-cross-table-merge 设置为何,PD 均可以跨表合并 Region。
      

      #如果集群中存在 TiDB 实例,key-type 的值应当为 "table"。此时,enable-cross-table-merge 的设置决定了 PD 是否能跨表合并 Region。如果 key-type 的值为 "raw",placement rules 不生效。

        方式二、

        # enable-cross-table-merge 用于开启跨表 Region 的合并。当设置为 false 时,PD 不会合并不同表的 Region。该选项只在键类型为 "table" 时生效。
        config set enable-cross-table-merge true
        

          小记:

          # enable-one-way-merge 用于控制是否只允许和相邻的后一个 Region 进行合并。当设置为 false 时,PD 允许与相邻的前后 Region 进行合并。设置为true只允许和相邻的后一个 Region 合并
          config set enable-one-way-merge true
          

            这是开启了跨表合并后的空region现象,还有一些点不明白的之后再补充
            在这里插入图片描述

            文章知识点与官方知识档案匹配,可进一步学习相关知识
            MySQL入门技能树内置函数锁相关66708 人正在系统学习中

            与[转帖]TiDB-merge region相关问题相似的内容:

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

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

            [转帖]TiDB 适配应用实践:MyBatis 3.5.X 在 JDK8 中性能问题的排查与优化

            https://zhuanlan.zhihu.com/p/371638037 作者介绍:PingCAP Tech Center,于旸。 最近有金融客户使用 TiDB 适配批处理场景,数据量在数亿级。对于相同数据量的处理耗时,TiDB 要 35 分钟,而某商业数据库只要 15 分钟,足足相差 20 分

            [转帖]tidb集群部署

            http://blog.itpub.net/29785807/viewspace-2789852/ 一.安装规划 1 2 3 4 5 6 使用15台服务器 5台tidb服务器:每台3个tidb实例+1个pd+1个pump 10台tikv服务器:每台4个tikv实例 drainer_servers 安

            [转帖]tidb 修改root密码

            http://blog.51yip.com/tidb/2452.html 通过 {pd-ip}:{pd-port}/dashboard 登录 TiDB Dashboard,登录用户和口令为 TiDB 数据库 root 用户和口令。如果你修改过数据库的 root 密码,则以修改后的密码为准,默认密码为

            [转帖]tidb 搭建私有镜像库

            https://docs.pingcap.com/zh/tidb/stable/tiup-mirror 在构建私有云时,通常会使用隔离的网络环境,此时无法访问 TiUP 的官方镜像。因此,TiUP 提供了构建私有镜像的方案,它主要由 mirror 指令来实现,该方案也可用于离线部署。使用私有镜像,你

            [转帖]tidb 如何对 TiDB 进行 TPC-C 测试

            https://docs.pingcap.com/zh/tidb/stable/benchmark-tidb-using-tpcc TPC-C 是一个对 OLTP(联机交易处理)系统进行测试的规范,使用一个商品销售模型对 OLTP 系统进行测试,其中包含五类事务: NewOrder – 新订单的生成

            [转帖]TiDB 环境与系统配置检查

            https://docs.pingcap.com/zh/tidb/stable/check-before-deployment 在 TiKV 部署目标机器上添加数据盘 EXT4 文件系统挂载参数 生产环境部署,建议使用 EXT4 类型文件系统的 NVME 类型的 SSD 磁盘存储 TiKV 数据文件

            [转帖]TIDB-TIDB节点磁盘已满报警

            一、背景 今日突然收到tidb节点的磁盘报警,磁盘容量已经超过了80%,但是tidb是不放数据的,磁盘怎么会满,这里就需要排查了 二、问题排查 解决步骤 1.df -h查看哪里占用磁盘比较多,然后通过du -h找到具体占用多的目录 2.最终发现tidb/tidb-deploy/tidb-4000/l

            [转帖]TiDB修改配置参数

            https://www.jianshu.com/p/2ecdb4642579 在TiDB 中,“修改配置参数”似乎是个不精准的说法,它实际包含了以下内容: 修改 TiDB 的系统变量 修改集群配置- tiup 修改集群配置- set config 在线修改集群配置 总结 TiDB的配置修改比较混乱,

            [转帖]TiDB 配置参数修改与系统变量修改步骤

            https://tidb.net/blog/bda86911 注意事项1:tidb-test 为集群名称 注意事项2:参数修改前与修改后备份.tiup目录 注意事项3:通过 tiup cluster edit-config 来修改配置参数 1、修改配置参数 tiup cluster edit-con