苍穹大表治理 之 水平分表
当系统使用到一定阶段时,部分表单会累积大量数据,对应的表行数较多,影响使用效率。此时,可以将数据量大的表按照一定的规则拆分成多个结构相同的表,将数据分散到拆分出来的表中,也就是水平分表。欲知详情,请随小编往下看~
1 适用版本
该功能适用版本为金蝶云·苍穹V4.0.009及以上。
2 特性说明
苍穹水平分表主要特性如下:
1、适配苍穹领域模型:多级关联(4 级:表头-分录-子分录-扩展表),理论上不限级别;
2、分片策略:多属性分片、多种分片策略;
3、内置PK索引、自定义全局索引;
4、支持最大限度分片条件定位:=、!=、>、>=、<、<=、in、not in、between and、like、not like;
5、支持大部分SQL特征:union、union all、order by、distinct、top、sum、 count、min、max 等;
6、支持分片SQLHint:适配优化;
7、支持更新分片属性;
8、自适应并发查询;
9、在线数据迁移与管理;
10、分布式运行:缓存、锁、表缓存版本等;
11、支持多种数据库:目前支持 MySQL、Oracle、PostgreSQL;
12、辅助功能:按条件计算分片、表名映射、操作日志、数据量统计、指标采集与监控 。
3 功能速览
功能菜单路径为:【系统服务云】→【配置工具】→【水平分表】,具体包含三类功能:分片配置、分片操作日志、分片辅助(数据统计),如下图所示:
水平分表功能分类
注:苍穹分表引擎默认未开启,如需使用,需要设置参数后启用,方法为:在MC中配置分表引擎启用参数xdb.enable=true,发布后重启苍穹即可。
4 功能详情
4.1 分片配置
分片配置用于配置表单的分片属性、分片策略及策略参数。启用分表后,系统会自动进行数据迁移,即把原始的表数据拆分到分片表中。数据迁移过程中,系统会提示表单数据不可访问。
配置编辑界面:数据迁移操作,分表别名信息查询,条件的分片计算功能。其配置方式分为以下5步:
1、打开分片配置(列表),点击“新增”;
2、弹出对话框,选择需要分片的表单,并点击“确认”;
分片配置确认
3、进入分片配置主界面,依次设置:分片属性、分片策略、分片策略参数;
分片设置示例
一个或多个切分表数据所依据的列,为“分片属性”,选择的分片属性一般需要符合以下特征之一:
具有隔离性,大部分场景作为必选的过滤条件,如组织、期间;
具有时序性,数据按时序累积分布,如业务日期、期间;
具有固定性,不常更新、必录项。因数据会随着使用时间累积增长,应尽可能选择含与时序相关的属性。分片属性通常为 1 个或 2 个(组合),属性仅限为表头主表的属性,不可选扩展表属性。
列的规则即对列数据的值按一定的算法计算出分片表索引,这种规则算法叫“分片策略”。苍穹提供了五类分片策略,如下表。选择建议:映射策略和日期策略可覆盖大部分的使用场景,当分片属性为单个且为日期类型时,选用日期策略,其余选择映射策略。
分表策略详情
4、点击“启用分片”,将弹出分片任务,系统执行数据迁移;
启用分片,数据将自动迁移
5、迁移完毕,则分表完成,表单可正常使用。
4.2 日志与性能
日志与性能模块下包含:分片操作日志、分片指标采集和SQL执行探测器,这里仅对前两个常用功能进行介绍。
分片操作日志:在线数据迁移操作日志,记录每次数据迁移操作(分片、恢复),可用于查询过程中出现的异常信息,如服务节点无响应(宕机)。
分片指标采集:采集 SQL 执行指标(分片数量、分片定位条件)。
4.3 分片辅助
金蝶云·苍穹提供分片辅助功能,具体包括:
数据量统计:统计表单物理表的数据量,变化趋势图展示。
分片语句生成器:对逻辑表进行 SQL 操作,生成所涉及的分片表的SQL操作。
5 使用限制
1、不支持方言SQL (/dialect/前缀);
2、不支持SQL:avg、having、exists;
3、不支持此类update操作:update A set ... select from B...,其中 A 为非分片表, B为分片表。(若 AB 为同一表单的分片表,则允许。SQL 语句规则为:AB 使用相同分片索引)。
6 价值亮点
亮点一:满足客户在线大数据量存储性能要求
提供大数据量表水平分表解决方案,对大数据量的表单进行水平切分存储,以减少单个物理表的数据量,提高增删改查性能。
亮点二:当前最全面满足ERP行业特性需求的水平分表中间件
支持在SQL层分表,即在编写应用程序时,依旧使用原始表名(逻辑表)进行访问,对代码无入侵;支持更新分片属性;支持在线数据迁移,即可在系统运行期动态对表单进行分表;表单内 ER 关系表行数据跟随表头行自动切分等诸多企业级特性。
7 划重点
金蝶云·苍穹水平分表功能,可以满足客户在线大数据量存储性能的要求,且为目前市场上最全面,最符合ERP行业特性需求的水平分表中间件。
分片配置、分片操作日志、分片辅助(数据统计)特性分别如下:
分片配置用于配置表单的分片属性、分片策略及策略参数。启用分表后,系统会自动进行数据迁移,即把原始的表数据拆分到分片表中。数据迁移过程中,系统会提示表单数据不可访问。
分片操作日志,记录每次数据迁移操作(分片、恢复),可用于查询过程中出现的异常信息,如服务节点无响应(宕机)。
分片辅助功能,具体包括:
数据量统计:统计表单物理表的数据量,变化趋势图展示。
分片语句生成器:对逻辑表进行 SQL 操作,生成所涉及的分片表的SQL操作。
#往期推荐#
更多精彩内容,”码“上了解↓
苍穹大表治理 之 水平分表
本文2024-09-23 00:28:07发表“云苍穹知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-cangqiong-139656.html