苍穹大表治理 之 水平分表

当系统使用到一定阶段时,部分表单会累积大量数据,对应的表行数较多,影响使用效率。此时,可以将数据量大的表按照一定的规则拆分成多个结构相同的表,将数据分散到拆分出来的表中,也就是水平分表。欲知详情,请随小编往下看~
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执行探测器,这里仅对前两个常用功能进行介绍。
分片操作日志:在线数据迁移操作日志,记录每次数据迁移操作(分片、恢复),可
苍穹大表治理 之 水平分表
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。



