CN104216948B - 一种数据模型的差异控制方法 - Google Patents

一种数据模型的差异控制方法 Download PDF

Info

Publication number
CN104216948B
CN104216948B CN201410393303.4A CN201410393303A CN104216948B CN 104216948 B CN104216948 B CN 104216948B CN 201410393303 A CN201410393303 A CN 201410393303A CN 104216948 B CN104216948 B CN 104216948B
Authority
CN
China
Prior art keywords
difference
data
database
pdm
model
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201410393303.4A
Other languages
English (en)
Other versions
CN104216948A (zh
Inventor
程永新
符强
郭振宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai New Century Network Co., Ltd.
Original Assignee
SHANGHAI NEW CENTURY NETWORK Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SHANGHAI NEW CENTURY NETWORK Co Ltd filed Critical SHANGHAI NEW CENTURY NETWORK Co Ltd
Priority to CN201410393303.4A priority Critical patent/CN104216948B/zh
Publication of CN104216948A publication Critical patent/CN104216948A/zh
Application granted granted Critical
Publication of CN104216948B publication Critical patent/CN104216948B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/289Object oriented databases

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种数据模型的差异控制方法,包括如下步骤:a)获取不同版本数据库的PDM模型文件;b)提取所述PDM模型文件中各个基础元素的数据结构并保存在数据库中;c)从所述数据库中读取两份PDM模型文件中的所有基础元素的数据结构逐一进行差异对比;d)采用可视化图形和统计数据显示所述两份PDM模型文件对应的两个版本数据库的差异结果。本发明通过提取不同版本数据库的PDM模型文件中的各个基础元素的数据结构,采用逐一对比、可视化图形和统计数据显示两个版本数据库的差异结果,从而能够对数据模型统一收集,快捷方便地管理各种数据模型,并能准确地分辨出不同版本数据模型的差异,实现有效的差异控制。

Description

一种数据模型的差异控制方法
技术领域
本发明涉及一种数据模型处理方法,尤其涉及一种数据模型的差异控制方法。
背景技术
全球数据在增长迅速,而IT预算并未保持同步增长。这种残酷的现实意味着,信息领导者必须更加智慧地管理数据,随时随地关注运营效率。与此同时,存在大量的数据,并且这些数据逐年呈几何级数增长。数据模型对企业的作用就越大。需要对以不同格式保存在各个地区的类似策略数据进行建模,这样才能共享、转换策略数据,并在整个企业内通过一致的方式使用数据,并且在开发过程中,数据库结构的变更直接影响整个软件系统的生命周期及运作,如果没有良好的管理方式,将会导致软件系统无法运作,扩展困难,无法二次开发,很快失去使用价值。
现有通常做法是,通过Power Designer软件,绘制出数据模型,但无法控制不同数据模型文件的差异情况,无法控制数据模型文件和数据库的差异情况。无法有效地管理数据模型。由此可见,现有数据模型处理方法存在如下缺点:1)、无法控制不同数据模型的差异。2)、无法控制数据模型文件和数据库的差异。3)、无法集中管理数据模型。因此,有必要对现有数据模型处理方法进行改进,通过集中式模型管理方法,对模型统一收集,并快捷方便地管理各种数据模型。
发明内容
本发明所要解决的技术问题是提供一种数据模型的差异控制方法,能够对数据模型统一收集,快捷方便地管理各种数据模型,并能准确地分辨出不同版本数据模型的差异,实现有效的差异控制。
本发明为解决上述技术问题而采用的技术方案是提供一种数据模型的差异控制方法,包括如下步骤:a)获取不同版本数据库的PDM模型文件;b)提取所述PDM 模型文件中各个基础元素的数据结构并保存在数据库中;c)从所述数据库中读取两份PDM模型文件中的所有基础元素的数据结构逐一进行差异对比;d)采用可视化图形和统计数据显示所述两份PDM模型文件对应的两个版本数据库的差异结果。
上述的数据模型的差异控制方法,其中,所述步骤a)中的PDM模型文件以XML 格式储存库表数据,所述步骤b)利用JAVA读取XML格式,通过对XML定义的标签进行解释提取所述PDM模型文件中包含的各个基础元素的数据结构。
上述的数据模型的差异控制方法,其中,所述各个基础元素的数据结构包括系统名称、用户、库表、库表结构、字段数量、字段类型、字段长度、数值是否为空、主键、外键和/或索引。
上述的数据模型的差异控制方法,其中,所述步骤c)中各个基础元素的数据结构差异对比过程如下:先从数据库读取出两份PDM的所有基础元素的数据结构并用对象方式保存在集合中,跟据集合数量大小将集合拆分为多个子集合,利用多线程并行执行对各个子集合进行遍历,每个子线程实时向主线程报告运作状态及遍历结果,所有子线程操作作为一个事务处理,所述主线程等待所有子线程都执行成功并返回对比结果后再作汇总保存到数据库。
上述的数据模型的差异控制方法,其中,每个子线程在遍历过程中利用排除法先判断库表对象名称,将名称有差异的库表对象排除出集合并放到差异列表中,接着在对剩下的库表集合里面的基础元素的数据结构进行遍历找出库表结构的差异,执行成功后返回对比结果给主线程。
上述的数据模型的差异控制方法,其中,当任一子线程执行失败,结束本次差异对比。
上述的数据模型的差异控制方法,其中,所述步骤d)中的统计数据包括差异数量、差异百分比、库表差异个数、字段差异个数、主键差异个数、索引差异个数、新增库表、减少库表、新增字段、减入字段、主键差异和/或索引差异。
上述的数据模型的差异控制方法,其中,所述步骤d)通过分类对所述统计数据中的各种差异明细进行展示,并设置模糊搜索进行历史查询回溯。
本发明对比现有技术有如下的有益效果:本发明提供的数据模型的差异控制方法,通过提取不同版本数据库的PDM模型文件中的各个基础元素的数据结构,采用逐一对比、可视化图形和统计数据显示两个版本数据库的差异结果,从而能够对数据模型统一收集,快捷方便地管理各种数据模型,并能准确地分辨出不同版本数据模型的差异,实现有效的差异控制。
附图说明
图1为本发明数据模型的差异控制流程示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的描述。
图1为本发明数据模型的差异控制流程示意图。
请参见图1,本发明提供的数据模型的差异控制方法包括如下步骤:
步骤S1:获取不同版本数据库的PDM模型(物理数据模型,Physical Data Model)文件;PDM是以XML格式储存库表数据,结构非常复杂,需要理解结构内容(各标签定义的含义);读取PDM文件,解释内容是难点之一。本发明利用JAVA读取XML格式,通过对XML定义的标签进行解释、处理库表关联关系、字段类型、字段长度、主键关系、外键关系、索引关系等信息来解释各标签定义。
步骤S2:提取所述PDM模型文件中各个基础元素的数据结构并保存在数据库中;各个基础元素的数据结构包括系统名称、用户、库表、库表结构、字段数量、字段类型、字段长度、数值是否为空、主键、外键和/或索引。
步骤S3:从所述数据库中读取两份PDM模型文件中的所有基础元素的数据结构逐一进行差异对比;具体对比过程如下:先从数据库读取出两份PDM的所有基础元素的数据结构并用对象方式保存在集合中;为了加快对比过程,跟据集合数量大小将集合拆分为多个子集合,利用多线程并行执行对各个子集合进行遍历,每个子线程实时向主线程报告运作状态及遍历结果,所有子线程操作作为一个事务处理,所述主线程等待所有子线程都执行成功并返回对比结果后再作汇总保存到数据库。
为了进一步加快对比过程,每个子线程在遍历过程中利用排除法先判断库表对象名称,将名称有差异的库表对象排除出集合并放到差异列表中,接着在对剩下的库表集合里面的基础元素的数据结构进行遍历找出库表结构的差异,执行成功后返回对比结果给主线程。
为了解决在多线程模式操作下对各集合对比结果汇总问题,需要所有子线程运作状态及时报告给主线程,因为差异情况必需准确无误,所以将所有子线程操作作为一个事务处理,任意一个子线程失败就当作全部失败,主线程等待所有子线程都执行成功并返回对比结果后再作汇总保存到数据库,当任一子线程执行失败,结束本次差异对比。
步骤S4:采用可视化图形和统计数据显示所述两份PDM模型文件对应的两个版本数据库的差异结果。所述统计数据包括差异数量、差异百分比、库表差异个数、字段差异个数、主键差异个数、索引差异个数、新增库表、减少库表、新增字段、减入字段、主键差异和/或索引差异等;为了便于进行历史查询回溯,本发明通过分类对所述统计数据中的各种差异明细进行展示,并设置模糊搜索功能。
本发明提供的数据模型的差异控制方法,在处理过程中会捕捉各种异常情况,并提示用户处理,例如:PDM导入过程网络异常、PDM数据结构损坏异常、数据库连接异常、数据读取异常等。本发明收集数据模型和数据库实例配置,数据模型可以迁入迁出进行修改变更,变更后可以分布不同版本,对版本进行管理,并对不同版本模型之间进行差异对比,对数据模型和数据库实体之间进行差异对比,结合可视化图形和统计数据展示差异结果,可以准确地分辨出模型之间的差异情况,实现有效的差异控制,从而帮助客户实现软件整体架构可视化、高效率管理,为系统设计、软件开发、测试验收、运行维护等应用质量管控过程提供咨询支持,节约开发、测试、维护成本。具体优点如下:1)、只需要使用一个客户端软件(通常情况下是浏览器),收集数据模型,进行统一管理,无需在多个软件中来回切换查看相关信息,使用更方便。更高效,更直观地帮助用户识别出数据模型间的差异情况。2)、无需安装特定的软件(Power Designer),减少维护成本,减少软件授权费用。3)、可根据需要对不同版本数据模型进行对比,查看差异情况。4)、系统提供了对比回放功能,能方便查找历史的信息。5)、利用多线程并行处理,加快差异对比速度。6)、利用排除法进行对比,加快差异对比速度。7)、精确解释PDM文件内容结构,确保差异对比的准确性。
虽然本发明已以较佳实施例揭示如上,然其并非用以限定本发明,任何本领域技术人员,在不脱离本发明的精神和范围内,当可作些许的修改和完善,因此本发明的保护范围当以权利要求书所界定的为准。

Claims (4)

1.一种数据模型的差异控制方法,其特征在于,包括如下步骤:
a)获取不同版本数据库的PDM模型文件;
b)提取所述PDM模型文件中各个基础元素的数据结构并保存在数据库中;
c)从所述数据库中读取两份PDM模型文件中的所有基础元素的数据结构逐一进行差异对比;
d)采用可视化图形和统计数据显示所述两份PDM模型文件对应的两个版本数据库的差异结果;
所述步骤a)中的PDM模型文件以XML格式储存库表数据,所述步骤b)利用JAVA读取XML格式,通过对XML定义的标签进行解释提取所述PDM模型文件中包含的各个基础元素的数据结构;所述各个基础元素的数据结构包括系统名称、用户、库表、库表结构、字段数量、字段类型、字段长度、数值是否为空、主键、外键和/或索引;
所述步骤c)中各个基础元素的数据结构差异对比过程如下:先从数据库读取出两份PDM的所有基础元素的数据结构并用对象方式保存在集合中,根 据集合数量大小将集合拆分为多个子集合,利用多线程并行执行对各个子集合进行遍历,每个子线程实时向主线程报告运作状态及遍历结果,所有子线程操作作为一个事务处理,所述主线程等待所有子线程都执行成功并返回对比结果后再作汇总保存到数据库;
每个子线程在遍历过程中利用排除法先判断库表对象名称,将名称有差异的库表对象排除出集合并放到差异列表中,接着在对剩下的库表集合里面的基础元素的数据结构进行遍历找出库表结构的差异,执行成功后返回对比结果给主线程。
2.如权利要求1所述的数据模型的差异控制方法,其特征在于,当任一子线程执行失败,结束本次差异对比。
3.如权利要求1所述的数据模型的差异控制方法,其特征在于,所述步骤d)中的统计数据包括差异数量、差异百分比、库表差异个数、字段差异个数、主键差异个数、索引差异个数、新增库表、减少库表、新增字段、减入字段、主键差异和/或索引差异。
4.如权利要求3所述的数据模型的差异控制方法,其特征在于,所述步骤d)通过分类对所述统计数据中的各种差异明细进行展示,并设置模糊搜索进行历史查询回溯。
CN201410393303.4A 2014-08-12 2014-08-12 一种数据模型的差异控制方法 Active CN104216948B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410393303.4A CN104216948B (zh) 2014-08-12 2014-08-12 一种数据模型的差异控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410393303.4A CN104216948B (zh) 2014-08-12 2014-08-12 一种数据模型的差异控制方法

Publications (2)

Publication Number Publication Date
CN104216948A CN104216948A (zh) 2014-12-17
CN104216948B true CN104216948B (zh) 2017-12-05

Family

ID=52098438

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410393303.4A Active CN104216948B (zh) 2014-08-12 2014-08-12 一种数据模型的差异控制方法

Country Status (1)

Country Link
CN (1) CN104216948B (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106339500A (zh) * 2016-09-09 2017-01-18 浪潮软件股份有限公司 一种异地数据库对比工具及方法
CN106777025B (zh) * 2016-12-08 2020-10-27 北京国电通网络技术有限公司 一种数据库物理模型的分析方法及系统
CN106649771B (zh) * 2016-12-27 2019-10-25 广州杰赛科技股份有限公司 数据库的数据模型更新方法和系统
CN106777337A (zh) * 2017-01-13 2017-05-31 山东浪潮商用系统有限公司 数据模型的管理方法
CN107220326B (zh) * 2017-05-23 2018-09-18 至本医疗科技(上海)有限公司 一种生物医学知识库的信息更新方法及系统
CN109002289A (zh) * 2017-06-07 2018-12-14 北京京东尚科信息技术有限公司 一种构建数据模型的方法和装置
CN108090165B (zh) * 2017-12-13 2021-12-28 美林数据技术股份有限公司 一种基于嵌入式图数据库的图谱变化差异的获取方法
CN108108962A (zh) * 2018-02-02 2018-06-01 联合建管(北京)国际工程科技有限责任公司 建筑信息模型bim版本差异的在线展示方法及装置
CN109033201A (zh) * 2018-06-29 2018-12-18 阿里巴巴集团控股有限公司 一种文件差异数据的获取方法、装置及电子设备
CN109408102B (zh) * 2018-09-04 2021-03-23 珠海格力电器股份有限公司 一种版本比对方法和装置、家电设备、网络设备
US11797579B2 (en) * 2019-12-30 2023-10-24 Google Llc Data content governance for presentation layer synchronization for a version controlled underlying data model
CN111241455B (zh) * 2020-01-22 2023-08-25 抖音视界有限公司 数据处理装置、计算机设备及存储介质
CN116149724B (zh) * 2023-04-18 2023-09-22 清华大学 系统虚拟样机版本差异分析方法、装置和计算机设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101183361A (zh) * 2006-11-13 2008-05-21 中兴通讯股份有限公司 一种关系数据库应用自动升级的方法
CN102929878A (zh) * 2011-08-09 2013-02-13 阿里巴巴集团控股有限公司 一种数据库变更管理方法及装置
CN103077006A (zh) * 2012-12-27 2013-05-01 浙江工业大学 一种基于多线程的长事务并行执行方法
CN103294724A (zh) * 2012-03-05 2013-09-11 百度在线网络技术(北京)有限公司 一种数据库结构的管理方法及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101183361A (zh) * 2006-11-13 2008-05-21 中兴通讯股份有限公司 一种关系数据库应用自动升级的方法
CN102929878A (zh) * 2011-08-09 2013-02-13 阿里巴巴集团控股有限公司 一种数据库变更管理方法及装置
CN103294724A (zh) * 2012-03-05 2013-09-11 百度在线网络技术(北京)有限公司 一种数据库结构的管理方法及系统
CN103077006A (zh) * 2012-12-27 2013-05-01 浙江工业大学 一种基于多线程的长事务并行执行方法

Also Published As

Publication number Publication date
CN104216948A (zh) 2014-12-17

Similar Documents

Publication Publication Date Title
CN104216948B (zh) 一种数据模型的差异控制方法
US11405290B1 (en) Automatic creation of related event groups for an IT service monitoring system
US12120005B1 (en) Managing event group definitions in service monitoring systems
CN106104533B (zh) 处理大型数据储存库中的数据集
De Leoni et al. A general process mining framework for correlating, predicting and clustering dynamic behavior based on event logs
Yang et al. A system architecture for manufacturing process analysis based on big data and process mining techniques
US8671084B2 (en) Updating a data warehouse schema based on changes in an observation model
US20170109657A1 (en) Machine Learning-Based Model for Identifying Executions of a Business Process
CN110050257A (zh) 可执行数据流图的差分
US20170109676A1 (en) Generation of Candidate Sequences Using Links Between Nonconsecutively Performed Steps of a Business Process
US20170109668A1 (en) Model for Linking Between Nonconsecutively Performed Steps in a Business Process
US20080163187A1 (en) Graphical representation of dependencies between changes of source code
US20170109667A1 (en) Automaton-Based Identification of Executions of a Business Process
US20170109636A1 (en) Crowd-Based Model for Identifying Executions of a Business Process
JP2012164318A5 (zh)
US20130311242A1 (en) Business Process Analytics
KR20090033274A (ko) 업무 프로세스 분석을 위한 정보 처리 방법 및 장치
CN114780370A (zh) 基于日志的数据修正方法、装置、电子设备及存储介质
CN104766240A (zh) 电子银行业务数据处理系统及方法
Hoo Meng et al. A new approach towards developing a prescriptive analytical logic model for software application error analysis
US20220253453A1 (en) Method and system for persisting data
US9836509B2 (en) Generic query templates for complex event processing and data stream systems
US20170109637A1 (en) Crowd-Based Model for Identifying Nonconsecutive Executions of a Business Process
CN102193859B (zh) 一种代码分析方法及系统
US20220284043A1 (en) Data analytical processing apparatus, data analytical processing method, and data analytical processing program

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: SHANGHAI NEW CENTURY NETWORK INFORMATION TECHNOLOG

Free format text: FORMER OWNER: SHANGHAI NEW CENTURY NETWORK CO., LTD.

Effective date: 20150123

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20150123

Address after: 200063 Shanghai, Zhongshan North Road, No. 2000, building, building No. 3, B

Applicant after: SHANGHAI XINJU NETWORK INFORMATION TECHNOLOGY CO., LTD.

Address before: 200063 Shanghai, Zhongshan North Road, No. 2000, building, building No. 3, B

Applicant before: Shanghai New Century Network Co., Ltd.

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20160226

Address after: 200063 Shanghai, Zhongshan North Road, No. 2000, building, building No. 3, B

Applicant after: Shanghai New Century Network Co., Ltd.

Address before: 200063 Shanghai, Zhongshan North Road, No. 2000, building, building No. 3, B

Applicant before: SHANGHAI XINJU NETWORK INFORMATION TECHNOLOGY CO., LTD.

GR01 Patent grant
GR01 Patent grant