CN111897886A - 模型管理方法、装置、电子设备和存储介质 - Google Patents
模型管理方法、装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN111897886A CN111897886A CN202010783586.9A CN202010783586A CN111897886A CN 111897886 A CN111897886 A CN 111897886A CN 202010783586 A CN202010783586 A CN 202010783586A CN 111897886 A CN111897886 A CN 111897886A
- Authority
- CN
- China
- Prior art keywords
- model
- line
- online
- check code
- key check
- 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.)
- Pending
Links
- 238000007726 management method Methods 0.000 title abstract description 106
- 238000004519 manufacturing process Methods 0.000 claims abstract description 86
- 238000000034 method Methods 0.000 claims abstract description 41
- 238000012545 processing Methods 0.000 claims description 28
- 239000012634 fragment Substances 0.000 claims description 10
- 230000002441 reversible effect Effects 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 6
- 238000012163 sequencing technique Methods 0.000 claims description 6
- 238000011084 recovery Methods 0.000 abstract description 7
- 238000012423 maintenance Methods 0.000 abstract description 4
- 238000012544 monitoring process Methods 0.000 abstract description 4
- 230000001105 regulatory effect Effects 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 13
- 238000011161 development Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 238000012217 deletion Methods 0.000 description 6
- 230000037430 deletion Effects 0.000 description 6
- 238000013461 design Methods 0.000 description 6
- 238000012986 modification Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 6
- 238000004422 calculation algorithm Methods 0.000 description 5
- 230000001360 synchronised effect Effects 0.000 description 4
- 125000004122 cyclic group Chemical group 0.000 description 3
- 238000013467 fragmentation Methods 0.000 description 3
- 238000006062 fragmentation reaction Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000012550 audit Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000002354 daily effect Effects 0.000 description 1
- 238000013499 data model Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000004445 quantitative analysis Methods 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 230000003442 weekly effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/283—Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/211—Schema design and management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
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)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请提供一种模型管理方法、装置、电子设备和存储介质。该方法包括:获取生产线上的线上模型和模型管理系统中的线下模型;对线上模型和线下模型进行对比;若线下模型与线上模型不一致,则对所述生产线的线上模型和/或所述模型管理系统的线下模型进行修改,得到新的线上模型数据和/或新的线下模型数据,使得生产线上与模型管理系统中的模型一致。此方法通过对线上模型与线下模型的监控和及时调控,保障数据仓库线上模型与线下模型的正确性和一致性,在需要数据恢复时,便于进行数据恢复等维护操作。
Description
技术领域
本申请涉及数据处理技术,尤其涉及一种模型管理方法、装置、电子设备和存储介质。
背景技术
数据仓库(Data Warehouse,DWH或DW)是保存企业生产或研发过程中产生的数据的集合。数据仓库通常用于记录企业从过去某一时点到当前为止各个阶段的信息数据。利用数据仓库,管理者可以通过记录的数据,对企业的发展历程和未来趋势做出定量分析和预测。
数据仓库从设计、开发,到落地实际的产线环境的过程,周期长、参与人员众多。并且在上线到产线环境后,随着企业业务发展,还可能会对数据仓库中的数据进行增删修改。频繁操作可能会造成线上模型与线下模型的不一致。
但目前,相关技术中并没有有效地维护线上模型与线下模型一致性的方式。线上模型与线下模型不一致,会对数据恢复等维护操作造成困难。
发明内容
本申请提供一种模型管理方法、装置、电子设备和存储介质,通过对线上模型与线下模型的监控和及时调控,保障数据仓库线上模型与线下模型的正确性和一致性。
第一方面,本申请提供一种模型管理方法,包括:获取生产线上的线上模型和模型管理系统中的线下模型;对线上模型和线下模型进行对比;若线下模型与线上模型不一致,则对所述生产线的线上模型和/或所述模型管理系统的线下模型进行修改,得到新的线上模型数据和/或新的线下模型数据,使得生产线上与模型管理系统中的模型一致。
可选的,所述若线下模型与线上模型不一致,则对所述生产线的线上模型和/或所述模型管理系统的线下模型进行修改,使得生产线上与模型管理系统中的模型一致,包括:若线下模型中的第一部分模型不存在于线上模型中,则通过上线操作,将所述第一部分模型增加至线上模型中,得到新的线上模型。
可选的,所述若线下模型与线上模型不一致,则对所述生产线的线上模型和/或所述模型管理系统的线下模型进行修改,得到新的线上模型数据和/或新的线下模型数据,使得生产线上与模型管理系统中的模型一致,包括:若线下模型中的第一部分模型不存在于线上模型中,则删除线下模型中的第一部分模型,得到新的线下模型;通过上线操作,将新的线下模型同步至生产线上。
可选的,所述若线下模型与线上模型不一致,则对所述生产线的线上模型和/或所述模型管理系统的线下模型进行修改,使得生产线上与模型管理系统中的模型一致,包括:若线上模型中的第二部分模型不存在于线下模型中,则通过反向工程,将所述第二部分模型增加至线下模型中,得到新的线下模型。
可选的,所述对线上模型和线下模型进行对比,包括:根据线下模型的业务主键字段、非主键字段,确定线下模型业务主键校验码、线下模型非主键校验码;根据线上模型的业务主键字段、非主键字段,确定线上模型业务主键校验码、线上模型非主键校验码;根据所述线下模型业务主键校验码、所述线下模型非主键校验码、所述线上模型业务主键校验码、所述线上模型非主键校验码,对线上模型和线下模型进行对比。
可选的,所述根据所述线下模型业务主键校验码、所述线下模型非主键校验码、所述线上模型业务主键校验码、所述线上模型非主键校验码,对线上模型和线下模型进行对比,包括:根据所述线下模型业务主键校验码、所述线上模型业务主键校验码,对线上模型和线下模型进行排序,使得线下模型业务主键校验码与线上模型业务主键校验码相同的线上模型和线下模型相邻排列;比较相邻的线上模型线上模型业务主键校验码、线上模型非主键校验码与线下模型的线下模型业务主键校验码、所述线下模型非主键校验码是否相同;若相邻的线上模型线上模型业务主键校验码、线上模型非主键校验码与线下模型的线下模型业务主键校验码、所述线下模型非主键校验码相同,则确定线上模型与线上模型一致。
可选的,所述比较相邻的线上模型线上模型业务主键校验码、线上模型非主键校验码与线下模型的线下模型业务主键校验码、所述线下模型非主键校验码是否相同,包括:将线上模型和线下模型进行分片;并行比较各个分片中的相邻的线上模型线上模型业务主键校验码、线上模型非主键校验码与线下模型的线下模型业务主键校验码、所述线下模型非主键校验码是否相同。
第二方面,本申请提供一种模型管理装置,包括:获取模块,用于获取生产线上的线上模型和模型管理系统中的线下模型;处理模块,用于对线上模型和线下模型进行对比;在线下模型与线上模型不一致时,对所述生产线的线上模型和/或所述模型管理系统的线下模型进行修改,得到新的线上模型数据和/或新的线下模型数据,使得生产线上与模型管理系统中的模型一致。
可选的,所述处理模块在线下模型与线上模型不一致,对所述生产线的线上模型和/或所述模型管理系统的线下模型进行修改,得到新的线上模型数据和/或新的线下模型数据时,具体用于:若线下模型中的第一部分模型不存在于线上模型中,则通过上线操作,将所述第一部分模型增加至线上模型中,得到新的线上模型。
可选的,所述处理模块在线下模型与线上模型不一致,对所述生产线的线上模型和/或所述模型管理系统的线下模型进行修改,得到新的线上模型数据和/或新的线下模型数据时,具体用于:若线下模型中的第一部分模型不存在于线上模型中,则删除线下模型中的第一部分模型,得到新的线下模型;通过上线操作,将新的线下模型同步至生产线上。
可选的,所述处理模块在线下模型与线上模型不一致,对所述生产线的线上模型和/或所述模型管理系统的线下模型进行修改时,具体用于:若线上模型中的第二部分模型不存在于线下模型中,则通过反向工程,将所述第二部分模型增加至线下模型中,得到新的线下模型。
可选的,所述处理模块在对线上模型和线下模型进行对比时,具体用于:根据线下模型的业务主键字段、非主键字段,确定线下模型业务主键校验码、线下模型非主键校验码;根据线上模型的业务主键字段、非主键字段,确定线上模型业务主键校验码、线上模型非主键校验码;根据所述线下模型业务主键校验码、所述线下模型非主键校验码、所述线上模型业务主键校验码、所述线上模型非主键校验码,对线上模型和线下模型进行对比。
可选的,所述处理模块在根据所述线下模型业务主键校验码、所述线下模型非主键校验码、所述线上模型业务主键校验码、所述线上模型非主键校验码,对线上模型和线下模型进行对比时,具体用于:根据所述线下模型业务主键校验码、所述线上模型业务主键校验码,对线上模型和线下模型进行排序,使得线下模型业务主键校验码与线上模型业务主键校验码相同的线上模型和线下模型相邻排列;比较相邻的线上模型线上模型业务主键校验码、线上模型非主键校验码与线下模型的线下模型业务主键校验码、所述线下模型非主键校验码是否相同;若相邻的线上模型线上模型业务主键校验码、线上模型非主键校验码与线下模型的线下模型业务主键校验码、所述线下模型非主键校验码相同,则确定线上模型与线上模型一致。
可选的,所述处理模块在比较相邻的线上模型线上模型业务主键校验码、线上模型非主键校验码与线下模型的线下模型业务主键校验码、所述线下模型非主键校验码是否相同时,具体用于:将线上模型和线下模型进行分片;并行比较各个分片中的相邻的线上模型线上模型业务主键校验码、线上模型非主键校验码与线下模型的线下模型业务主键校验码、所述线下模型非主键校验码是否相同。
第三方面,本申请提供一种电子设备,包括:存储器,用于存储程序指令;处理器,用于调用并执行所述存储器中的程序指令,执行第一方面所述的方法。
第四方面,本申请提供一种数据仓库模型管理系统,包括:服务器、生产线设备、模型管理设备。其中,所述服务器用于执行上述实施例中的模型管理方法;所述生产线设备用于存储线上模型;所述模型管理设备用于存储线下模型。
第五方面,本申请提供一种数据仓库模型管理系统,包括:服务器、生产线设备。其中,所述服务器用于执行上述实施例中的模型管理方法,还用于存储线下模型;所述生产线设备用于存储线上模型。
第六方面,本申请提供一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时,实现如上任一项所述的方法。
第七方面,本申请提供一种程序产品,所述程序产品包括计算机程序,所述计算机程序存储在可读存储介质中,电子设备的处理器可以从所述可读存储介质读取所述计算机程序,所述处理器执行所述计算机程序使得电子设备实施如第一方面所述的方法。
本申请提供了一种模型管理方法、装置、电子设备和存储介质。该方法包括:获取生产线上的线上模型和模型管理系统中的线下模型;对线上模型和线下模型进行对比;若线下模型与线上模型不一致,则对所述生产线的线上模型和/或所述模型管理系统的线下模型进行修改,得到新的线上模型数据和/或新的线下模型数据,使得生产线上与模型管理系统中的模型一致。此方法通过对线上模型与线下模型的监控和及时调控,保障数据仓库线上模型与线下模型的正确性和一致性,在需要数据恢复时,便于进行数据恢复等维护操作。
附图说明
为了更清楚地说明本申请或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请提供的一种应用场景的示意图;
图2为本申请一实施例提供的一种模型管理方法的流程图;
图3为本申请一实施例提供的一种A4集合的示意图;
图4为本申请一实施例提供的一种模型管理装置的结构示意图;
图5为本申请一实施例提供的一种电子设备的结构示意图;
图6为本申请一实施例提供的一种数据仓库模型管理系统的结构示意图;
图7为本申请一实施例提供的一种数据仓库模型管理系统的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请中的附图,对本申请中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
企业在发展过程中,会产生大量的数据。其中可能涉及到员工信息数据、产品信息数据、客户信息数据等等诸多类别的数据。随着时间推移,许多数据都在更新。但是历史产生的数据,往往可能对企业的管理和发展有着极为重要的指导意义。对这些数据的统计和管理对企业来说十分重要。
目前,较为常用的数据管理方式是,利用数据仓库(Data Warehouse,DWH或DW)对企业生产或研发过程中产生的数据进行保存,以期对决策和管理过程进行数据上的指导。数据仓库对数据的存储一般以模型为单位,一个数据仓库中可能包含十几个甚至数十个模型。每个模型对一类相关数据进行专门的存储。也有一些说法称模型为“表”,本申请中“模型”一称也仅用于表征数据仓库中的存储单元。
数据仓库从设计、开发,到落地实际的产线环境的过程,周期长、参与人员众多。并且在上线到产线环境后,随着企业业务发展,还可能会对数据仓库中的数据进行增删修改。频繁操作可能会造成线上模型与线下模型的不一致,以至于模型的正确性无法保证,并且追溯困难。但目前,相关技术中并没有有效地维护线上模型与线下模型一致性的方式。线上模型与线下模型不一致,会对模型的维护造成困难。
其中,线上模型和线下模型一致,可以是指,线上模型中的各个模型与线下模型中的各个模型分别相同。一般,工作人员对数据仓库的修改会是以模型为单位的。因此,只需要确保模型的数量和内容的相同,即可认为线上模型与线下模型相同。模型内容相同与否具体的可以依据各模型的各关键字段的一致定判断。
因此,本申请提出一种模型管理方法、装置、电子设备和存储介质。以期利用本申请的方案实现对线上模型和线下模型进行管理,以保障线上模型和线下模型的一致性。
图1为本申请提供的一种应用场景的示意图。如图1所示,A公司可以利用终端设备101对数据仓库的线下模型进行存储。利用服务器102中的模型管理系统对公司的数据仓库进行管理,通过模型管理系统对线下模型、线上模型进行增删修改等操作。在每个检测周期对线上模型与线下模型的一致性进行管理。例如每天的晚上9点钟,从生产线上获取到线上模型与终端设备101中的线下模型进行比较,线上模型与线下模型不一致时,分析不一致的原因并进行相应的调整。具体的实现方式可以参考以下各实施例。
图2为本申请一实施例提供的一种模型管理方法的流程图,如图2所示,本实施例的方法可以包括:
S201、获取生产线上的线上模型和模型管理系统中的线下模型。
本实施例的方法的执行主体可以是模型管理系统所在的终端设备,也可以是不同于模型管理系统所在的终端设备的设备。
本实施例的方法的执行主体与模型管理系统所在的是同一设备时,可以从设备本地获取线下模型。
本实施例的方法的执行主体与模型管理系统所在的不是同一设备时,则需要从模型管理系统所在的设备获取线下模型。
对于线上模型的采集,需要进行全量采集。
线上模型和线下模型的获取可以为周期性获取,周期与本实施例的方法被设备执行的周期一致。例如,可以为每天,或每周等等。
线上模型和线下模型的获取也可以为指令触发获取,触发指令与本实施例的方法被设备执行的触发指令一致。例如,在设备获取到用户的某一点击动作后,开始执行本实施例的方法中的此步骤S201。
S202、对线上模型和线下模型进行对比。
S203、若线下模型与线上模型不一致,则对生产线的线上模型和/或模型管理系统的线下模型进行修改,得到新的线上模型数据和/或新的线下模型数据,使得生产线上与模型管理系统中的模型一致。
对线上模型和线下模型进行对比,如果发现线上模型与线下模型不一致,则需要根据实际情况进行修改,使线上模型与线下模型一致。
对线上模型或线下模型进行修改,其中一种可能的方式为,对通过S201获取得到的线上模型或线下模型进行修改,再将修改后的线上模型或线下模型更新到生产线上或模型管理系统中。另一种可能的方式为,根据对比结果生成修改方式对应的指令,分别发送到生产线设备和模型管理系统设备,由生产线设备和模型管理系统设备分别对线上模型和线下模型进行对应的修改。
本实施例提供的模型管理方法包括:获取生产线上的线上模型和模型管理系统中的线下模型;对线上模型和线下模型进行对比;若线下模型与线上模型不一致,则对生产线的线上模型和/或模型管理系统的线下模型进行修改,得到新的线上模型数据和/或新的线下模型数据,使得生产线上与模型管理系统中的模型一致。此方法通过对线上模型与线下模型的监控和及时调控,可以保障数据仓库线上模型与线下模型的正确性和一致性,在需要数据恢复时,便于进行数据恢复等维护操作。
上述的S203的一种实施方式中,若线下模型与线上模型不一致,则对生产线的线上模型和/或模型管理系统的线下模型进行修改,使得生产线上与模型管理系统中的模型一致,包括:若线下模型中的第一部分模型不存在于线上模型中,则通过上线操作,将第一部分模型增加至线上模型中,得到新的线上模型。
线上模型与线下模型不一致的情况,可能为线下模型中的模型多于线上模型中的模型。这种情况下必定有一部分模型存在在线下模型中但不存在在线上模型中,本申请中称之为“第一部分模型”。一般,这种情况可能是因为在线下模型中新增了第一部分模型,但尚未同步到线上模型中。也可能是因为线上模型中丢失了第一部分模型。还可能是有工作人员通过模型管理系统以外的途径对线上模型中的第一部分模型进行了人为删除。
为避免造成永久性的数据删除,在这种情况下可以首先获取用户操作指令,用户操作指令用于指示模型不一致的原因。
当用户操作指令指示模型不一致时是因为在线下模型中新增了第一部分模型,但尚未同步到线上模型中,则将第一部分模型增加至线上模型中,以确保线上模型与线下模型的一致。
当用户指令指示第一部分模型确实是人为删除的本应删除的模型,则删除线下模型中的第一部分模型,得到新的线下模型;通过上线操作,将新的线下模型同步至生产线上。
需要说明的是,对第一部分模型的删除可以通过模型管理系统进行,上线操作也可通过模型管理系统进行。这样可以确保模型管理系统中的线下模型的准确性。
这种先恢复再删除的方式可以避免因为线上模型的数据丢失而误删线下模型数据,引起数据彻底不能恢复的情况。
上述的S203的一种实施方式中,若线下模型与线上模型不一致,则对生产线的线上模型和/或模型管理系统的线下模型进行修改,使得生产线上与模型管理系统中的模型一致,包括:若线上模型中的第二部分模型不存在于线下模型中,则通过反向工程,将第二部分模型增加至线下模型中,得到新的线下模型。
线上模型与线下模型不一致的情况,也可能为线上模型中的模型多于线下模型中的模型。这种情况下必定有一部分模型存在在线上模型中但不存在在线下模型中,本申请中称之为“第二部分模型”。一般,这种情况可能是因为有工作人员通过模型管理系统以外的途径向线上模型中增加了第二部分模型。也可能是线下模型中原有的第二部分模型丢失。还可能是有工作人员对线下中的第二部分模型进行了认为删除,但由于某种原因未将此删除操作同步至线上模型。
在这种情况下,可以先确定第二部分模型是否为人为删除的本应删除的模型。在确定第二部分模型确实是人为删除的本应删除的模型后,直接通过上线操作,将线下模型同步至生产线上。如果确定第二部分模型确实不是人为删除的本应删除的模型,则通过反向工程将第二部分模型增加至线下模型中。“反向工程”是本领域内对于将线上模型同步到线下模型的操作的一种说法。
在一些实施例中,线上模型与线下模型不一致的情况,可能既有一部分模型存在在线上模型中但不存在在线下模型中,也有一部分模型存在在线下模型中但不存在在线上模型中。即同时存在第一部分模型和第二部分模型。在这种情况下,可以将第一部分模型和第二部分模型分别按照上述实施例的方式进行处理。
在一些实施例中,上述的S202中对线上模型和线下模型进行对比的方式,包括:根据线下模型的业务主键字段、非主键字段,确定线下模型业务主键校验码、线下模型非主键校验码;根据线上模型的业务主键字段、非主键字段,确定线上模型业务主键校验码、线上模型非主键校验码;根据线下模型业务主键校验码、线下模型非主键校验码、线上模型业务主键校验码、线上模型非主键校验码,对线上模型和线下模型进行对比。
本申请中所提及的各字段,其实质为数据库中各模型的属性。其中,业务主键字段指的是用以表征数据库中各模型的性质等可区别于其它模型的主键字段。类似于“身份证号”对于个人身份的绝对代表性,业务主键字段具有唯一性,两个不同的模型的业务主键字段必定不同。非主键字段指的是用以表征数据库中各模型的主要内容的主键字段。非业务主键字段并不一定是唯一的,两个不同的模型有可能存在某些相同的非主键字段。例如,某一模型用于存储员工信息,其业务主键字段可能为“员工基本信息”相关的字段内容。而非主键字段可能包括“姓名”“年龄”“工龄”“工资”等相关的字段内容。在另一个用于存储企业资金流向的模型中,也可能存在以上这些非主键字段中的“姓名”“工资”等相关的字段内容。
因业务主键字段、非主键字段的组合可以很好地代表各个模型,因此在本实施例中可以根据业务主键字段、非主键字段对线上模型和线下模型进行对比。具体的对比方式可以对业务主键字段和非主键字段分别计算校验码,对业务主键字段校验码和非业务主键校验码分别进行对比。
其中,校验码可以为循环冗余校验(Cyclic Redundancy Check,CRC)校验码。CRC是一种根据网络数据包或计算机文件等数据产生简短固定位数校验码的一种信道编码技术,主要用来检测或校验数据传输或者保存后可能出现的错误。它是利用除法及余数的原理来作错误侦测的。
在一些实施例中,上述的根据线下模型业务主键校验码、线下模型非主键校验码、线上模型业务主键校验码、线上模型非主键校验码,对线上模型和线下模型进行对比,包括:根据线下模型业务主键校验码、线上模型业务主键校验码,对线上模型和线下模型进行排序,使得线下模型业务主键校验码与线上模型业务主键校验码相同的线上模型和线下模型相邻排列;比较相邻的线上模型线上模型业务主键校验码、线上模型非主键校验码与线下模型的线下模型业务主键校验码、线下模型非主键校验码是否相同;若相邻的线上模型线上模型业务主键校验码、线上模型非主键校验码与线下模型的线下模型业务主键校验码、线下模型非主键校验码相同,则确定线上模型与线上模型一致。
在具体的比较过程中,可以首先对线下模型和线上模型进行排序。排序的方式可以采用归并排序算法。排序的原则是业务主键校验码相同的线上模型和线下模型相邻排列,这种排序方式的优点在于,如果某个线下模型业务主键校验码没有对应的相同的线上模型业务主键校验码,或某个线上模型业务主键校验码没有对应的相同的线下模型业务主键校验码,则可以直观地确定第一部分模型和第二部分模型。
在排序后,再进行进一步的比较。可以将业务主键校验码相同的线上模型和线下模型单独进行比较,确定其各自的非主键校验码是否相同。若非主键校验码也相同,则此线上模型与此线下模型可以确定为一致的模型。
在一些实施例中,上述的比较相邻的线上模型线上模型业务主键校验码、线上模型非主键校验码与线下模型的线下模型业务主键校验码、线下模型非主键校验码是否相同,包括:将线上模型和线下模型进行分片;并行比较各个分片中的相邻的线上模型线上模型业务主键校验码、线上模型非主键校验码与线下模型的线下模型业务主键校验码、线下模型非主键校验码是否相同。
在设备执行本申请的方法实现的过程中,可以将其以软件程序的形式运行。实际上,在程序运行过程中可以并行进行多个处理操作。在本实施例的方法中,可以将线上模型和线下模型进行分片,即将所有排序完的线上模型和线下模型划分成为多个分片。然后同步对多个分片中的模型进行并行比较,可以进一步减少模型比较花费的时间,提高处理效率。
在一个实施例中,基于本申请的方法搭建一种数据模型管理软件系统,在此系统中包括有模型管理模块、元数据采集模块、稽核模块和处理模块。
其中,模型管理模块实现对设计阶段模型(即线下模型)的存储和管理功能。设计人员可以通过模型管理模块对线下模型(即设计状态模型,以下简称A1)进行全生命周期操作,包括模型设计、模型创建、模型修改、模型删除等。还可以通过模型管理模块中的模型审批上线操作将针对模型的创建、修改、删除等操作转化为脚本推送到产线环境(即上线操作)。
元数据采集模块对产线环境上的线上模型(即生成状态模型,以下简称A2)进行定时全量采集,采集周期可以自定义。
稽核模块则定时对A1与A2进行对比。采用对称数组合并求差异算法来实现差异查找。
处理模块根据稽核模块查找后确定的差异,针对性地对A1或A2进行处理。
以下为对上述的对称数组合并求差异算法的描述:
(1)分别对A1集合和A2集合中的元素(各模型)打标签,为A1集合元素增加“A”标签,为A2集合元素增加“B”标签;
(2)将A1集合与A2集合合并形成A3集合;
(3)对A3集合中所有元素的业务主键字段及非主键字段分别形成32位的CRC校验码;
(4)采用归并排序算法对A3集合中的所有元素按照“业务主键CRC+标签”进行排序,形成A4有序集合;图3为本申请一实施例提供的一种A4集合的示意图;
A4集合具有两个性质:
a.业务主键CRC相同的数据行相邻;
b.业务主键CRC相同的数据一定标签不同;
具体集合结构如图3所示:
(5)对A4集合做数据分片,数据分片量为启动的并行处理线程数量;分片规则是业务主键CRC相同的元素放在一个分片中;
(6)多线程分别处理分片数据,逐条遍历分片数据,判断相邻两条数据的CRC是否相等以及标签对应值。
此算法最终可能得到以下四种结果:
a.A1集合中,除新设计尚未上线产线环境的模型外,A1中的元素多于A2中的元素,即A2集合中缺少部分模型;
对于此结果,可以利用模型管理模块的模型上线流程进行模型上线操作,实现线上模型的复原;
b.A2集合中的元素多于A1集合中的元素,即A1集合中缺少了部分模型;
对于此结果,可以利用模型管理模块的模型反向工程功能,将A2集合中多的模型由脚本结构转化为ER图的实体机构,恢复至A1集合中;
c.A2集合与A1集合对比,发生变化,既有多的模型也有少的模型;
对于此结果,将正常的A2集合与A1集合在显示界面中对比展示,由人工干预处理,以将此结果转化为b或a对应的结果的处理;
d.A1集合与A2集合一致;
对于此结果,无需处理。
图4为本申请一实施例提供的一种模型管理装置的结构示意图,如图4所示,本实施例的模型管理装置400可以包括:获取模块401和处理模块402。
获取模块401,用于获取生产线上的线上模型和模型管理系统中的线下模型。
处理模块402,用于对线上模型和线下模型进行对比;若线下模型与线上模型不一致,则对生产线的线上模型和/或模型管理系统的线下模型进行修改,得到新的线上模型数据和/或新的线下模型数据,使得生产线上与模型管理系统中的模型一致。
可选的,处理模块402在线下模型与线上模型不一致,对生产线的线上模型和/或模型管理系统的线下模型进行修改,得到新的线上模型数据和/或新的线下模型数据时,具体用于:若线下模型中的第一部分模型不存在于线上模型中,则通过上线操作,将第一部分模型增加至线上模型中,得到新的线上模型。
可选的,处理模块402在线下模型与线上模型不一致,对生产线的线上模型和/或模型管理系统的线下模型进行修改,得到新的线上模型数据和/或新的线下模型数据时,具体用于:若线下模型中的第一部分模型不存在于线上模型中,则删除线下模型中的第一部分模型,得到新的线下模型;通过上线操作,将新的线下模型同步至生产线上。
可选的,处理模块402在线下模型与线上模型不一致,对生产线的线上模型和/或模型管理系统的线下模型进行修改时,具体用于:若线上模型中的第二部分模型不存在于线下模型中,则通过反向工程,将第二部分模型增加至线下模型中,得到新的线下模型。
可选的,处理模块402在对线上模型和线下模型进行对比时,具体用于:根据线下模型的业务主键字段、非主键字段,确定线下模型业务主键校验码、线下模型非主键校验码;根据线上模型的业务主键字段、非主键字段,确定线上模型业务主键校验码、线上模型非主键校验码;根据线下模型业务主键校验码、线下模型非主键校验码、线上模型业务主键校验码、线上模型非主键校验码,对线上模型和线下模型进行对比。
可选的,处理模块402在根据线下模型业务主键校验码、线下模型非主键校验码、线上模型业务主键校验码、线上模型非主键校验码,对线上模型和线下模型进行对比时,具体用于:根据线下模型业务主键校验码、线上模型业务主键校验码,对线上模型和线下模型进行排序,使得线下模型业务主键校验码与线上模型业务主键校验码相同的线上模型和线下模型相邻排列;比较相邻的线上模型线上模型业务主键校验码、线上模型非主键校验码与线下模型的线下模型业务主键校验码、线下模型非主键校验码是否相同;若相邻的线上模型线上模型业务主键校验码、线上模型非主键校验码与线下模型的线下模型业务主键校验码、线下模型非主键校验码相同,则确定线上模型与线上模型一致。
可选的,处理模块402在比较相邻的线上模型线上模型业务主键校验码、线上模型非主键校验码与线下模型的线下模型业务主键校验码、线下模型非主键校验码是否相同时,具体用于:将线上模型和线下模型进行分片;并行比较各个分片中的相邻的线上模型线上模型业务主键校验码、线上模型非主键校验码与线下模型的线下模型业务主键校验码、线下模型非主键校验码是否相同。
本实施例的装置,可以用于执行上述任一实施例的方法,其实现原理和技术效果类似,此处不再赘述。
图5为本申请一实施例提供的一种电子设备的结构示意图,如图5所示,本实施例的电子设备500可以包括:
存储器501,用于存储程序指令。
处理器502,用于调用并执行存储器501中的程序指令,执行:获取生产线上的线上模型和模型管理系统中的线下模型;对线上模型和线下模型进行对比;若线下模型与线上模型不一致,则对生产线的线上模型和/或模型管理系统的线下模型进行修改,得到新的线上模型数据和/或新的线下模型数据,使得生产线上与模型管理系统中的模型一致。
可选的,处理器502在线下模型与线上模型不一致,对生产线的线上模型和/或模型管理系统的线下模型进行修改,得到新的线上模型数据和/或新的线下模型数据时,具体用于:若线下模型中的第一部分模型不存在于线上模型中,则通过上线操作,将第一部分模型增加至线上模型中,得到新的线上模型。
可选的,处理器502在线下模型与线上模型不一致,对生产线的线上模型和/或模型管理系统的线下模型进行修改,得到新的线上模型数据和/或新的线下模型数据时,具体用于:若线下模型中的第一部分模型不存在于线上模型中,则删除线下模型中的第一部分模型,得到新的线下模型;通过上线操作,将新的线下模型同步至生产线上。
可选的,处理器502在线下模型与线上模型不一致,对生产线的线上模型和/或模型管理系统的线下模型进行修改时,具体用于:若线上模型中的第二部分模型不存在于线下模型中,则通过反向工程,将第二部分模型增加至线下模型中,得到新的线下模型。
可选的,处理器502在对线上模型和线下模型进行对比时,具体用于:根据线下模型的业务主键字段、非主键字段,确定线下模型业务主键校验码、线下模型非主键校验码;根据线上模型的业务主键字段、非主键字段,确定线上模型业务主键校验码、线上模型非主键校验码;根据线下模型业务主键校验码、线下模型非主键校验码、线上模型业务主键校验码、线上模型非主键校验码,对线上模型和线下模型进行对比。
可选的,处理器502在根据线下模型业务主键校验码、线下模型非主键校验码、线上模型业务主键校验码、线上模型非主键校验码,对线上模型和线下模型进行对比时,具体用于:根据线下模型业务主键校验码、线上模型业务主键校验码,对线上模型和线下模型进行排序,使得线下模型业务主键校验码与线上模型业务主键校验码相同的线上模型和线下模型相邻排列;比较相邻的线上模型线上模型业务主键校验码、线上模型非主键校验码与线下模型的线下模型业务主键校验码、线下模型非主键校验码是否相同;若相邻的线上模型线上模型业务主键校验码、线上模型非主键校验码与线下模型的线下模型业务主键校验码、线下模型非主键校验码相同,则确定线上模型与线上模型一致。
可选的,处理器502在比较相邻的线上模型线上模型业务主键校验码、线上模型非主键校验码与线下模型的线下模型业务主键校验码、线下模型非主键校验码是否相同时,具体用于:将线上模型和线下模型进行分片;并行比较各个分片中的相邻的线上模型线上模型业务主键校验码、线上模型非主键校验码与线下模型的线下模型业务主键校验码、线下模型非主键校验码是否相同。
本实施例的电子设备,可以用于执行上述任一实施例的方法,其实现原理和技术效果类似,此处不再赘述。
图6为本申请一实施例提供的一种数据仓库模型管理系统的结构示意图,如图6所示,本申请的数据仓库模型管理系统600包括:服务器601、生产线设备602、模型管理设备603。
其中,服务器601用于执行上述实施例中的模型管理方法;生产线设备602存储线上模型;模型管理设备603用于搭载模型管理软件系统,存储线下模型。
图7为本申请一实施例提供的一种数据仓库模型管理系统的结构示意图,如图7所示,本申请的数据仓库模型管理系统700包括:服务器701、生产线设备702。
其中,服务器601用于执行上述实施例中的模型管理方法,同时还用于搭载模型管理软件系统,存储线下模型;生产线设备602存储线上模型。
本申请还提供了一种计算机可读存储介质,存储介质存储有计算机程序,计算机程序被处理器执行时,实现如上任一实施例的方法。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (10)
1.一种模型管理方法,其特征在于,包括:
获取生产线上的线上模型和模型管理系统中的线下模型;
对线上模型和线下模型进行对比;
若线下模型与线上模型不一致,则对所述生产线的线上模型和/或所述模型管理系统的线下模型进行修改,得到新的线上模型和/或新的线下模型,使得生产线上与模型管理系统中的模型一致。
2.根据权利要求1所述的方法,其特征在于,所述若线下模型与线上模型不一致,则对所述生产线的线上模型和/或所述模型管理系统的线下模型进行修改,得到新的线上模型数据和/或新的线下模型数据,使得生产线上与模型管理系统中的模型一致,包括:
若线下模型中的第一部分模型不存在于线上模型中,则通过上线操作,将所述第一部分模型增加至线上模型中,得到新的线上模型。
3.根据权利要求1所述的方法,其特征在于,所述若线下模型与线上模型不一致,则对所述生产线的线上模型和/或所述模型管理系统的线下模型进行修改,得到新的线上模型数据和/或新的线下模型数据,使得生产线上与模型管理系统中的模型一致,包括:
若线下模型中的第一部分模型不存在于线上模型中,则删除线下模型中的第一部分模型,得到新的线下模型;
通过上线操作,将新的线下模型同步至生产线上。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述若线下模型与线上模型不一致,则对所述生产线的线上模型和/或所述模型管理系统的线下模型进行修改,得到新的线上模型数据和/或新的线下模型数据,使得生产线上与模型管理系统中的模型一致,包括:
若线上模型中的第二部分模型不存在于线下模型中,则通过反向工程,将所述第二部分模型增加至线下模型中,得到新的线下模型。
5.根据权利要求1-3任一项所述的方法,其特征在于,所述对线上模型和线下模型进行对比,包括:
根据线下模型的业务主键字段、非主键字段,确定线下模型业务主键校验码、线下模型非主键校验码;
根据线上模型的业务主键字段、非主键字段,确定线上模型业务主键校验码、线上模型非主键校验码;
根据所述线下模型业务主键校验码、所述线下模型非主键校验码、所述线上模型业务主键校验码、所述线上模型非主键校验码,对线上模型和线下模型进行对比。
6.根据权利要求5所述的方法,其特征在于,所述根据所述线下模型业务主键校验码、所述线下模型非主键校验码、所述线上模型业务主键校验码、所述线上模型非主键校验码,对线上模型和线下模型进行对比,包括:
根据所述线下模型业务主键校验码、所述线上模型业务主键校验码,对线上模型和线下模型进行排序,使得线下模型业务主键校验码与线上模型业务主键校验码相同的线上模型和线下模型相邻排列;
比较相邻的线上模型线上模型业务主键校验码、线上模型非主键校验码与线下模型的线下模型业务主键校验码、所述线下模型非主键校验码是否相同;
若相邻的线上模型线上模型业务主键校验码、线上模型非主键校验码与线下模型的线下模型业务主键校验码、所述线下模型非主键校验码相同,则确定线上模型与线上模型一致。
7.根据权利要求6所述的方法,其特征在于,所述比较相邻的线上模型线上模型业务主键校验码、线上模型非主键校验码与线下模型的线下模型业务主键校验码、所述线下模型非主键校验码是否相同,包括:
将线上模型和线下模型进行分片;
并行比较各个分片中的相邻的线上模型线上模型业务主键校验码、线上模型非主键校验码与线下模型的线下模型业务主键校验码、所述线下模型非主键校验码是否相同。
8.一种模型管理装置,其特征在于,包括:
获取模块,用于获取生产线上的线上模型和模型管理系统中的线下模型;
处理模块,用于对线上模型和线下模型进行对比;若线下模型与线上模型不一致,则对所述生产线的线上模型和/或所述模型管理系统的线下模型进行修改,得到新的线上模型数据和/或新的线下模型数据,使得生产线上与模型管理系统中的模型一致。
9.一种电子设备,其特征在于,包括:
存储器,用于存储程序指令;
处理器,用于调用并执行所述存储器中的程序指令,执行如权利要求1-7中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时,实现如权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010783586.9A CN111897886A (zh) | 2020-08-06 | 2020-08-06 | 模型管理方法、装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010783586.9A CN111897886A (zh) | 2020-08-06 | 2020-08-06 | 模型管理方法、装置、电子设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111897886A true CN111897886A (zh) | 2020-11-06 |
Family
ID=73245871
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010783586.9A Pending CN111897886A (zh) | 2020-08-06 | 2020-08-06 | 模型管理方法、装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111897886A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1728714A (zh) * | 2004-07-27 | 2006-02-01 | 邓里文 | 一种用于IPv4网络和IPv6网络互通的方法 |
CN1937536A (zh) * | 2006-10-31 | 2007-03-28 | 华为技术有限公司 | 网管拓扑数据同步刷新的方法及系统 |
CN106973090A (zh) * | 2017-03-20 | 2017-07-21 | 努比亚技术有限公司 | 一种终端、服务器和联系人同步方法 |
CN108769212A (zh) * | 2018-05-31 | 2018-11-06 | 康键信息技术(深圳)有限公司 | 数据同步方法、装置、计算机设备和存储介质 |
CN109656914A (zh) * | 2018-11-07 | 2019-04-19 | 上海前隆信息科技有限公司 | 线上线下混合的风控建模训练和生产发布方法及系统 |
-
2020
- 2020-08-06 CN CN202010783586.9A patent/CN111897886A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1728714A (zh) * | 2004-07-27 | 2006-02-01 | 邓里文 | 一种用于IPv4网络和IPv6网络互通的方法 |
CN1937536A (zh) * | 2006-10-31 | 2007-03-28 | 华为技术有限公司 | 网管拓扑数据同步刷新的方法及系统 |
CN106973090A (zh) * | 2017-03-20 | 2017-07-21 | 努比亚技术有限公司 | 一种终端、服务器和联系人同步方法 |
CN108769212A (zh) * | 2018-05-31 | 2018-11-06 | 康键信息技术(深圳)有限公司 | 数据同步方法、装置、计算机设备和存储介质 |
CN109656914A (zh) * | 2018-11-07 | 2019-04-19 | 上海前隆信息科技有限公司 | 线上线下混合的风控建模训练和生产发布方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113326247B (zh) | 云端数据的迁移方法、装置及电子设备 | |
US20180060415A1 (en) | Language tag management on international data storage | |
CN106354817B (zh) | 一种日志的处理方法及装置 | |
CN112052138A (zh) | 业务数据质量检测方法、装置、计算机设备及存储介质 | |
US11379466B2 (en) | Data accuracy using natural language processing | |
US11954123B2 (en) | Data processing method and device for data integration, computing device and medium | |
CN114723543B (zh) | 一种跨境电商的财务档案大数据管理系统及方法 | |
CN111291051B (zh) | 运价数据处理方法及装置、存储介质及电子设备 | |
US20170076296A1 (en) | Prioritizing and planning issues in automation | |
CN111324597B (zh) | 一种主数据管理方法和系统 | |
CN112559641B (zh) | 拉链表的处理方法及装置、可读存储介质、电子设备 | |
CN111897886A (zh) | 模型管理方法、装置、电子设备和存储介质 | |
CN116069628A (zh) | 一种智能处置的软件自动化回归测试方法、系统及设备 | |
CN113419957A (zh) | 基于规则的大数据离线批处理性能容量扫描方法及装置 | |
JP6695847B2 (ja) | ソフトウェア部品管理システム、計算機 | |
CN112347095B (zh) | 数据表的处理方法、装置和服务器 | |
EP3282404A1 (en) | System and method for analyzing and prioritizing issues for automation | |
CN113342861B (zh) | 业务场景下数据治理方法及装置 | |
US11816112B1 (en) | Systems and methods for automated process discovery | |
CN116303417A (zh) | 一种重建数据库索引的方法及电子设备 | |
CN110020234B (zh) | 确定宽带网络接入点信息的方法和装置 | |
CN112288329A (zh) | 一种操作行为记录的风险预估方法及装置 | |
CN115510827A (zh) | 基于行数据类型标签的数据处理方法、装置、设备和介质 | |
CN112783773A (zh) | 软件自动化测试方法及装置 | |
CN115913919A (zh) | 一种故障处理方法、案例库构建方法及相关设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20201106 |