说明:收录90万 73个行业的国家标准 支持批量下载
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202210871859.4 (22)申请日 2022.07.22 (71)申请人 四川新网银行股份有限公司 地址 610094 四川省成 都市成都高新区吉 泰三路8号1栋1单 元26楼1-8号 (72)发明人 夏龙 胡挺 何鎏 杨嘉  (74)专利代理 机构 成都智言知识产权代理有限 公司 51282 专利代理师 李勇 (51)Int.Cl. G06F 16/23(2019.01) G06F 16/901(2019.01) G06F 16/906(2019.01) G06F 40/186(2020.01) (54)发明名称 一种基于特征识别的数据库冗余表变更方 法 (57)摘要 本发明公开了一种基于特征识别的数据库 冗余表变更方法, 属于数据库应用管理技术领 域。 包括: 1)数据清洗; 2)字段分类, 得到枚举字 段集和待确认字段集; 3)字段集分类; 4)生成结 构树, 将每个枚举字段或者枚举字段集、 待确认 字段依次取出作为树节点, 每个树节 点存储一个 键值对; 5)将结构树的每个节点转换为键值对, 输出yaml配置文件; 6)人工对yaml配置文件进行 技术修改; 7)读取yaml配置文件, 将数据结构还 原为树结构, 最终输出变更的冗余数据库脚本。 本发明在不重构数据库的条件下, 减少人工配置 冗余表的次数, 大大降低了项目配置上线的风险 和冗余字段的干扰, 提升了冗余数据表的变更效 率。 权利要求书2页 说明书5页 附图2页 CN 115185970 A 2022.10.14 CN 115185970 A 1.一种基于特 征识别的数据库冗余表变更 方法, 其特 征在于, 包括以下步骤: 步骤1: 将冗余表非上线相关数据进行 过滤; 步骤2: 字段分类: 根据数据库的现有数据对冗余表进行字段分类, 得到枚举字段集和 待确认字段集; 步骤3: 将待确认字段集中的字段进行组合, 遍历待确认字段集所有组合, 判定字段组 合后的得到字段集是否为枚举字段集, 如果是, 则将该字段集中的字段从待确认字段集中 移除, 直到待确认字段为空或者只剩下一个字段; 步骤4: 生成一棵结构树, 将每个枚举字段或者枚举字段集、 待确认字段依次取出作为 树节点, 每个树节 点存储一个键值对, 其键名为字段名, 数值为该字段或者字段集的取值集 合; 步骤5: 将结构树的每个节点转换为键值对, 最后输出为yaml配置文件, 此配置文件为 最小非冗余数据结构; 步骤6: 人工使用环 节, 对yaml配置文件进行正常业 务、 技术修改; 步骤7: 读取yaml配置文件, 将步骤5中的数据结构还原为树结构, 最终统计数据条目, 将自增值完成赋值, 最终输出变更的冗余数据库脚本 。 2.根据权利要求1所述的一种基于特征识别的数据库冗余表变更方法, 其特征在于, 步 骤1的具体步骤为: 步骤1.1: 数据和结构的读取: 通过开源工具库tableSaw进行数据读取, 通过建立连接 方式将数据库现有的结构和数据载入成可整理的二维数组结构; 步骤1.2: 数据清洗: 一般是 过滤字段, 将与统计意 义、 配置性无关的字段去除。 3.根据权利要求1所述的一种基于特征识别的数据库冗余表变更方法, 其特征在于, 步 骤2根据数据库的现有 数据对冗余表进 行字段分类具体为: 对于字段A, 如果将字段A和字段 A以外的所有字段集 μ作为键值对, 如果对于字段A 不同的键, 对应的字段集 μ总是相同, 则字 段A视为枚举字段; 当所有字段都执行了分类操作, 或者待确认字段集只有唯一字段, 结束 分类步骤, 并跳过步骤3 。 4.根据权利要求1所述的一种基于特征识别的数据库冗余表变更方法, 其特征在于, 步 骤3具体为: 将待确认字段集中的字段按照笛卡尔集组合进行配对, 对每一种组合进行遍 历, 判定字段组合后的得到字段集是否为枚举字段集, 如果是, 则将该字段集中的字段从待 确认字段集中移除, 当所有字段集完成分类, 或者待确认字段集只有唯一字段, 视为组合, 结束步骤3 。 5.根据权利要求1所述的一种基于特征识别的数据库冗余表变更方法, 其特征在于, 步 骤4中的结构树采用树或者链表的数据结构, 数 的节点顺序按照枚举字段、 枚举字段集、 待 确认字段依次排列, 每个节点有一个键值对, 其中键名为该字段或者字段集的名称, 数值为 该字段或字段集的对应键名字段的相应的数据组合。 6.根据权利要求1所述的一种基于特征识别的数据库冗余表变更方法, 其特征在于, 步 骤5具体为: 将树结构转换成键值对, 其中根节点的键名为表名, 数值为数组, 数组中包括数 的所有节点的键值对, 利用snakeyaml功能库进行持久化,输出成yaml模板文件。 7.根据权利要求1所述的一种基于特征识别的数据库冗余表变更方法, 其特征在于, 步 骤6中对yaml配置文件进 行正常业务、 技术修改具体包括: 指 定主键字段、 主键值、 批量修改权 利 要 求 书 1/2 页 2 CN 115185970 A 2字段、 批量组合字段、 批量 新增数据并生成回退脚本 。 8.根据权利要求1所述的一种基于特征识别的数据库冗余表变更方法, 其特征在于, 步 骤7中输出脚本具体为: 通过递归遍历每个节点的键值对, 将键值对进行拼接; 遍历到第一 个树节点的第一个键值对, 再递归遍历第二个节 点的第一个键值对 …遍历最后一个节点的 第一个键值对, 生成一条脚本, 接下来遍历最后一个节点的第二个键值对, 输出第二条脚 本。 遍历完最后一个字段的键值对后, 回到倒数第二个节点的第二个字段, 再遍历倒数第一 个节点; 按照此顺序输出 所有节点的组合。权 利 要 求 书 2/2 页 3 CN 115185970 A 3

PDF文档 专利 一种基于特征识别的数据库冗余表变更方法

文档预览
中文文档 10 页 50 下载 1000 浏览 0 评论 0 收藏 3.0分
温馨提示:本文档共10页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 一种基于特征识别的数据库冗余表变更方法 第 1 页 专利 一种基于特征识别的数据库冗余表变更方法 第 2 页 专利 一种基于特征识别的数据库冗余表变更方法 第 3 页
下载文档到电脑,方便使用
本文档由 SC 于 2024-02-07 12:43:11上传分享
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。