hhdb数据库介绍(10-12)

配置

分片规则

分片规则功能为表的水平拆分配置某种路由方式及算法。目前计算节点支持分片规则类型有:五种高级分片类型(ROUTE、RANGE、MATCH、SIMPLE_MOD、CRC32_MOD)、两种自动分片类型(AUTO_MOD、AUTO_CRC32)。其中AUTO_MOD,AUTO_CRC32类型可参考新增水平分片表章节。

功能入口: 在关系集群数据库可视化管理平台页面中选择配置->分片规则

以下为七种分片类型的详细介绍:
在这里插入图片描述
分片规则的历史变迁说明:

HASH(弃用)、CRC32_MOD(新增)、AUTO(使用AUTO_MOD代替)、 AUTO_CRC32(新增)。

MATCH

以下将以自动设置与手动设置两种方式为例,演示添加以MATCH为分片类型的分片规则。

自动设置方式添加MATCH类型的分片规则

功能演示:

第一步: 默认勾选“自动生成分片规则名”(自动生成规则:已有分片规则最大ID+1_分片类型名称),如有自定义名称需求则取消勾选

第二步: 选择“分片类型”为MATCH

第三步: 设置方式选用默认的“自动设置”

第四步: 选择分片规则需要用的数据节点

第五步: 选择默认勾选“NULL值,自动分配路由节点”和“空白串,自动分配路由节点”,即当插入的数据中分片字段值为NULL或空白串时,程序将自动选择路由数据节点

增加“开启按位数匹配”勾选项,适合一些需要使用前/中/后缀分片的场景,当勾选“是否按位数匹配”(默认不勾选)并填写匹配规则后。根据填写的情况,将自动生成对应的路由规则。计算节点对符合匹配情况的数据进行路由时,按照“左起”、“右起”对应的规则进行匹配,而不是根据原字符串全匹配路由

示例:2images-273
例如快递单号,需要按单号“YTQSXXXX4587XXX”的前四位YTQS开始匹配,那么可以设置匹配规则为左起第1位开始匹配4位数,输入值填写YTQS。如果需要从末尾倒数“4587”开始匹配,则可以设置匹配规则为右起倒数第7位开始向后匹配4位数,输入值填写4587。

开启按位数匹配规则时,其输入值的位数必须与匹配位数一致,否则预览时,会给出提示不允许进行预览保存。例如下图:匹配位数为2,输入值填写有超过2位数的值,则不允许保存。
在这里插入图片描述
第六步: 输入每个数据节点匹配的值,可用换行、英文逗号、英文空格任一方式隔开

提示:
若匹配的值中包含“英文逗号或空格”,建议将其替换成其他符号。以免与以上格式冲突,无法正常配置

第七步: 点击“预览”查看分片规则效果

第八步: 点击“保存并返回”按钮将新增分片规则保存至配置库。若需要立即生效到计算节点中还需要执行动态加载

在这里插入图片描述
在这里插入图片描述

手动设置方式添加MATCH类型的分片规则

操作步骤简述:

默认选择“自动生成分片规则名”、选择MATCH分片类型、设置“手动设置”方式、选择是否按位数匹配并填写匹配规则、点击“+”添加记录、选择数据节点与匹配的值、点击“保存并返回”、动态加载
在这里插入图片描述

注意
手动设置输入值支持输入多个,但需要用英文逗号或英文空格隔开。

RANGE

以下将以自动设置与手动设置两种方式为例,演示添加以RANGE为分片类型的分片规则。

自动设置方式添加RANGE类型的分片规则

功能演示:

第一步: 默认勾选“自动生成分片规则名”(自动生成规则:已有分片规则最大ID+1_分片类型名称),如有自定义名称需求则取消勾选

第二步: 选择“分片类型”为RANGE

第三步: 设置方式选用默认的“自动设置”

第四步: 选择分片规则需要用的数据节点

第五步: 选择默认勾选“NULL值,自动分配路由节点”,即当插入的数据中分片字段值为NULL时,程序将自动选择路由数据节点

增加“自动为最大/最小边界值分配路由节点”勾选项(默认不勾选),若勾选将自动按用户填写的值范围生成最大最小值边界。例如:填写1--100, 且勾选“自动为最大/最小边界值分配路由节点”,则小于1,大于100 的边界数据会自动进行分片,无需担心边界值出现无法路由的情况

在这里插入图片描述
第六步: 输入值范围即分片字段值的范围(只允许输入整数)

第七步: 默认选用生成的步长(步长计算公式:值范围中较大的减去较小的再对选择的数据节点个数整除),若需要自定义步长则修改默认生成数值即可

第八步: 点击“预览”按钮查看分片效果

第九步: 点击“保存并返回”按钮,将分片规则保存至配置库中,若需要立即生效到计算节点中还需要执行动态加载
在这里插入图片描述
在这里插入图片描述

手动设置方式添加RANGE类型的分片规则

操作步骤简述:

默认选择“自动生成分片规则名”、选择RANGE分片类型、设置“手动设置”方式、选择数据节点与匹配的值范围(值范围用英文冒号表示如 10:20)、点击“+”添加记录、点击“保存并返回”
在这里插入图片描述

注意
手动设置输入值支持输入多个,但需要用英文逗号或英文空格隔开。值范围也可以输入大于、小于以区分最大最小值边界。

ROUTE

以下将以自动设置与手动设置两种方式为例,演示添加以ROUTE为分片类型的分片规则。

自动设置方式添加ROUTE类型的分片规则

功能演示:

第一步: 默认勾选“自动生成分片规则名”(自动生成规则:已有分片规则最大ID+1_分片类型名称),如有自定义名称需求则取消勾选。

第二步: 选择“分片类型”为ROUTE。

第三步: 设置方式选用默认的“自动设置”。

第四步: 选择分片规则需要用的数据节点。

第五步: 选择默认勾选“NULL值,自动分配路由节点”,即当插入的数据中分片字段值为NULL时,程序将自动选择路由数据节点。

同MATCH分片规则一样,同样可选择“是否按位数匹配”(默认不勾选),填写匹配规则。根据填写的情况,将自动生成对应的路由规则。此处ROUTE适合一些数值类的需要使用前/中/后缀分片的场景。计算节点对符合匹配情况的数据进行路由时,按照“左起”、“右起”对应的规则进行匹配,而不是根据原字符串全匹配路由。

第六步: 输入值范围即分片字段值的范围(只允许输入整数)。

第七步: 默认选用生成的步长1,若需要自定义步长则修改默认生成数值即可

第八步: 点击“预览”按钮查看分片效果。

第九步: 点击“保存并返回”按钮,将分片规则保存至配置库中,若需要立即生效到计算节点中还需要执行动态加载。
在这里插入图片描述
在这里插入图片描述

手动设置方式添加ROUTE类型的分片规则

操作步骤简述:

默认选择“自动生成分片规则名”、选择ROUTE分片类型、设置“手动设置”方式、选择是否按位数匹配并填写匹配规则、选择数据节点与匹配的值、点击“+”添加记录、点击“保存并返回”

在这里插入图片描述

SIMPLE_MOD

以下将以自动设置与手动设置两种方式为例,演示添加以SIMPLE_MOD为分片类型的分片规则。

自动设置方式添加SIMPLE_MOD类型的分片规则

功能演示:

第一步: 默认勾选“自动生成分片规则名”(自动生成规则:已有分片规则最大ID+1_分片类型名称),如有自定义名称需求则取消勾选

第二步: 选择“分片类型”为SIMPLE_MOD

第三步: 设置方式选用默认的“自动设置”

第四步: 选择分片规则需要用的数据节点

第五步: 选择默认勾选“NULL值,自动分配路由节点”,即当插入的数据中分片字段值为NULL时,程序将自动选择路由数据节点

第六步: 输入模值(只允许输入正整数),模值为分片字段值与输入的模值做取余运算的参数,最终根据所得余数选择路由到对应的数据节点

第七步: 点击“预览”按钮查看分片效果

第八步: 点击“保存并返回”按钮,将分片规则保存至配置库中,若需要立即生效到计算节点中还需要执行动态加载
在这里插入图片描述
在这里插入图片描述

手动设置方式添加SIMPLE_MOD类型的分片规则

操作步骤简述:

默认选择“自动生成分片规则名”、选择SIMPLE_MOD分片类型、设置“手动设置”方式、设置模值、选择数据节点与匹配的值、点击“+”添加记录、点击“保存并返回”
在这里插入图片描述

注意
手动设置输入值支持输入多个,但需要用英文逗号或英文空格隔开

CRC32_MOD

以下将以自动设置与手动设置两种方式为例,演示添加以CRC32_MOD为分片类型的分片规则。

自动设置方式添加CRC32_MOD类型的分片规则

功能演示:

第一步: 默认勾选“自动生成分片规则名”(自动生成规则:已有分片规则最大ID+1_分片类型名称),如有自定义名称需求则取消勾选

第二步: 选择“分片类型”为CRC32_MOD

第三步: 设置方式选用默认的“自动设置”

第四步: 选择分片规则需要用的数据节点

第五步: 选择默认勾选“NULL值,自动分配路由节点”,即当插入的数据中分片字段值为NULL时,程序将自动选择路由数据节点

第六步: 输入模值(只允许输入正整数),模值为分片字段值与输入的模值做取余运算的参数,最终根据所得余数选择路由到对应的数据节点

第七步: 点击“预览”按钮查看分片效果

第八步: 点击“保存并返回”按钮,将分片规则保存至配置库中,若需要立即生效到计算节点中还需要执行动态加载

在这里插入图片描述
在这里插入图片描述

手动设置方式添加CRC32_MOD类型的分片规则

操作步骤简述:

默认选择“自动生成分片规则名”、选择CRC32_MOD分片类型、设置“手动设置”方式、设置模值、选择数据节点与匹配的值、点击“+”添加记录、点击“保存并返回”。
在这里插入图片描述

注意
手动设置输入值支持输入多个,但需要用英文逗号或英文空格隔开

编辑分片规则

功能入口: 在关系集群数据库可视化管理平台页面中选择“配置”->“分片规则”->“编辑分片规则”

功能操作: 在编辑分片规则页面,更改分片规则名称、分片类型、设置方式等信息,点击“保存并返回”,则分片规则配置信息编辑完成。
在这里插入图片描述
修改注意事项:

  • 分片规则名称不允许重复

  • 分片规则名称不允许为空

  • 关联表结构已创建的表的分片规则修改:

  • AUTO(历史版本)、HASH(历史版本),SIMPLE_MOD类型不允许做任何修改;
  • RANGE、ROUTE、MATCH类型允许新增分片函数参数(如新增节点需要手动在该节点创建表),但不允许修改原有的分片函数参数。
  • 父子表:父表一旦定义,则分片规则不允许做任何修改。

删除分片规则

功能入口: 在关系集群数据库可视化管理平台页面中选择配置->分片规则->在分片规则页面点击“删除”

功能说明: 点击“删除”按钮弹出框提示:“确认要删除吗?” 点击“确认”,则分片规则配置信息删除。
在这里插入图片描述

注意
已经被表引用的分片规则不可删除

复制分片规则

功能入口: 在关系集群数据库可视化管理平台页面中选择“配置”->“分片规则”->“复制”

功能说明: 在分片规则页面,点击“复制”按钮,弹出新分片规则名称输入框,输入新规则名称点击“确认”,则复制分片规则成功。
在这里插入图片描述
复制注意事项:

  • 新分片规则名称不允许为空

  • 新分片规则名称不允许重复

特殊说明

当分片字段为字符串类型且分片类型为AUTO或HASH时,计算节点对字符串大小写路由结果不同,即分片字段为字符串类型时对大小写敏感。SQL中使用分片字段时需保持与数据存入时的大小写一致才能查询出对应数据,故AUTO、HASH分片类型在已弃用。新版本建议用CRC32_MOD\AUTO_CRC32等分片类型代替HASH\AUTO分片类型。从平稳过渡角度出发,新版本容许采用HASH\AUTO分片类型的分片表,当历史数据含有AUTO、HASH相关分片方式时,页面会给出如下提示,使用时需注意。
在这里插入图片描述

posted @   恒辉信达  阅读(8)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示