数据资产管理系统及相应计算机设备和存储介质的制作方法

未命名 08-02 阅读:105 评论:0


1.本技术涉及电数字数据处理领域,尤其涉及一种数据资产管理系统及相应计算机设备和计算机可读存储介质。


背景技术:

2.数据资产是指由企业拥有或者控制的、能够为企业带来未来经济利益的、以物理或电子方式记录的数据资源。数据资产经过数据治理、数据资产管理后,向外提供数据共享服务以实现数据变现。
3.数据资产管理过程中会遇到类似的“数据版本”问题。例如:一、大中企业组织信息系统的主数据的业务属性每年度可能会调整与更新,例如会计科目、产品、供应商、人员等,业务流程里使用的主数据需要能适应数据版本的变更,跟相应时期的主数据定义及数据版本保持一致,数据分析的统计维度亦然;二、各企业业务系统,特别是遗留系统,对于同一个数据资产,在某些时期使用数据版本可能各不相同,但要求各系统对数据资产的操作互不影响;三、由于企业数据治理,正在使用的数据资产模型可能需要重新调整与发布,但只能重建不能修改、需要数据迁移与重新维护,变更代价高,实施效率成本大。
4.以上问题需要解决两个关键点:多租户、数据资产模型及其版本的变更。
5.多租户的要求是对于同一个数据资产,各租户可能会依据自身需要选择不同数据版本进行使用,租户间的操作互不影响。传统的多租户有两种做法。第一种是数据资产模型及其属性、数据版本统一管理,增加一个租户id属性进行区别;第二种是数据资产管理系统给每个租户分配一套独立的数据资产模型,进行最大粒度的数据隔离,租户只能操作这套授权范围的数据资产。前述第一种方式,租户id作为数据资产模型的直接属性,紧密绑定,模型设计实现可能会带来复杂性。前述第二种方式,软件数据架构虽然清晰明了,但实现结构复杂,存在冗余的、复制的数据资产存储会比较多,造成资源浪费,也不便于管理。
6.数据资产的数据版本(以下简称数据版本)包含数据资产模型版本(以下简称模型版本)与数据资产数据记录版本(以下简称记录版本)。模型版本变更会引起记录版本变更。数据资产模型及其版本的变更的传统做法是业务上尽量回避,即从数据治理业务与软件实现上强制要求,数据资产模型发布后就不能再调整修改,变更后只能重建,同时需要配合数据迁移。单用户场景下,最多允许数据资产模型可以新增、删除但不能修改业务属性,因为修改业务属性,会影响正在使用的原业务属性对应的数据列。例如:某企业信息化的科室主数据的“科室编码”属性的字段原英文名称是dptcode,依据数据资产命名规范,需要修改为新英文名称dept_code,这样就会影响原dptcode字段的在用用户的正常访问。多租户场景下,两种情况:1)各租户各自管理数据资产模型,问题跟单租户等同,同时会带来数据资产模型管理的业务复杂性、技术实现复杂性;2)统一管理数据资产模型,这也不能删除、修改业务属性,因为修改业务属性会影响到其他租户正在使用的原业务属性对应的数据列,业务属性只能得到全部租户确认不再使用后才能被删除。


技术实现要素:

7.为了克服现有技术中存在的不足,本发明提供一种数据资产管理系统及相应计算机设备和存储介质,其简化数据资产模型以及版本的维护,可实现数据资产模型的统一管理并解决了业务属性不能修改、删除的问题,可适用于多租户场景。
8.在本发明的第一方面,提供一种数据资产管理系统,包括:
9.数据资产元元模型,其属性至少包括数据资产编码、数据资产模型版本号、属性名;其中,数据资产包括数据资产模型与数据资产实例,数据资产模型包括所述数据资产元元模型及数据资产元数据,数据资产元数据依据数据资产元元模型的属性进行定义;
10.数据资产实例模型,其中数据资产实例依据所述数据资产元数据进行动态生成;
11.租户与数据资产及其版本的关系模型,其属性至少包括租户id、数据资产编码和数据资产模型版本号;
12.维护模块,用于所述数据资产及其数据版本的维护,所述维护包括新增、修改和/或删除;
13.分配模块,用于向所述租户与数据资产及其版本的关系模型新增、修改和/或删除相应数据记录;
14.发布模块,用于发布所述维护模块得到的数据资产模型;
15.通知模块,用于根据所述维护模块得到的数据资产模型以及所述租户与数据资产及其版本的关系模型将数据资产的变化通知到相应租户。
16.在本发明的第二方面,提供一种计算机设备,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其中所述处理器执行所述计算机程序时实现根据本发明的第一方面的系统的功能。
17.根据本发明的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现根据本发明的第一方面的系统的功能。
18.按照本发明,通过基于数据资产元元模型、数据资产实例模型和租户与数据资产及其版本的关系模型对数据资产及其数据版本的维护以及向租户与数据资产及其版本的关系模型新增、修改和/或删除相应数据记录,然后发布维护所得的数据资产模型,及根据维护所得的数据资产模型以及租户与数据资产及其版本的关系模型将数据资产的变化通知到相应租户,使能提供数据资产模型以及版本管理在多租户场景使用的解决方案,有区别于传统的实现方案,解决了数据资产模型的业务属性不能修改、删除的问题,结合行式与列式存储的特点,简化了数据资产模型、数据资产实例及其与租户的关系的逻辑与物理设计,简化了数据资产以及版本的维护操作流程,并方便租户检索查询某个版本的数据资产模型及其数据,大大提高了生产效率。
19.结合附图阅读本发明实施方式的详细描述后,本发明的其它特点和优点将变得更加清楚。
附图说明
20.图1为根据本发明系统的一实施例的框图;
21.图2为数据资产模型、数据版本、租户之间的关系示意图;
22.图3为数据资产模型以及数据的存储模式示意图。
23.为清晰起见,这些附图均为示意性及简化的图,它们只给出了对于理解本发明所必要的细节,而省略其他细节。
具体实施方式
24.下面参照附图对本发明的实施方式和实施例进行详细说明。
25.通过下面给出的详细描述,本发明的适用范围将显而易见。然而,应当理解,在详细描述和具体例子表明本发明优选实施例的同时,它们仅为说明目的给出。
26.图1示出了根据本发明的数据资产管理系统的一优选实施例的框图。该实施例的数据资产管理系统包括维护模块100、分配模块200、发布模块300和通知模块400。
27.维护模块100用于数据资产及其数据版本的维护,维护包括数据资产模型的新增、修改、删除等。数据资产由数据资产模型与数据资产实例决定。数据资产的数据版本(也称为数据版本)包含数据资产模型版本(也称为模型版本)与数据资产数据记录版本(也称为记录版本)。本技术只讨论模型版本。应注意,模型版本变化了,记录版本也默认会随之变化,在此不特别描述记录版本的变化。数据资产模型包括数据资产元元模型及数据资产元数据,数据资产模型统一进行定义与管理,数据资产元数据依据数据资产元元模型的属性进行定义。
28.数据资产实例依据数据资产元元模型里的数据资产元数据进行创建与动态管理。
29.在一实施例中,数据资产元元模型的属性至少包含:资产编码、资产业务编码、资产中文名、模型版本号(即数据资产模型版本号)、属性名、属性中文名、数据类型、数据长度、数据精度、依赖属性名、是否停止等。数据资产元元模型的唯一键是资产编码+模型版本号+属性名。其中,每个数据资产的资产编码是全局唯一的,命名规范是四位字符组成,第1位是26个大写字母,第2-3位是26个大写字母与10个0到9的数字;模型版本号是系统内部定义的版本号,整数型,从1开始,它不是业务意义的版本号;数据类型抽象为字符、数字、日期三种类型,数字包括整数、双精度型。日期格式为yyyy-mm-dd hh24:mi:ss,依据数据长度确定具体的日期类型;“依赖属性名”标示当前属性基于哪一原有属性进行修改,其参照自身模型的“属性名”;“是否停止”标识该数据资产的属性是否可用。数据资产元元模型例如定义如下:
[0030][0031]
根据上面的数据资产元元模型,例如“科室”数据资产的元数据定义如下:
[0032][0033]
数据资产元元模型的数据记录包括全部数据资产的元数据以其全部版本的定义,每条数据记录是某个模型版本的数据资产元数据的一个属性定义,数据资产的模型版本变更是全部属性的全量变更,即在一个版本上新增、修改、删除某个或某些属性,都会形成一个新的模型版本,新增该版本的全部元数据(含变化)属性的数据记录。例如:当新增加一个属性,新版本复制上一版本的元数据定义并新增一个属性;当删除一个原有属性时,新版本复制上一版本的元数据定义,但不含原有属性;当修改一个原有属性时,新版本复制上一版本的元数据定义,对相应的原有属性的信息进行修改,同时在“依赖属性名”填原有属性名。
[0034]
数据资产实例模型的属性都是动态生成的,其属性由数据资产元元模型的元数据属性集决定,属性的命名规范是:资产编码+属性名。
[0035][0036]
依据数据资产元元模型的资产编码且模型版本号=1的数据记录,即模型版本号为1的元数据定义,可以对应建立数据资产实例的初始版本。各数据资产实例开始包括初始版本的全部属性,之后数据资产元元模型里该数据资产的模型版本递增变化引起的属性行变化,都会导致数据资产实例的属性列的动态更新,相关属性列的数据也会随之变化。例如:当版本2新增一个属性a(属性名为a),则动态地在数据资产实例新增属性:属性名为a;当版本3删除一个原有属性b(属性名为b),数据资产实例的属性不发生变化;当版本4修改原有属性c(属性名为c)为新属性名c1,则动态地在数据资产实例新增属性c1(属性名为c1),同时把原有属性c列的数据同步复制到新属性c1列。新增、修改动作是事务性的。
[0037]
租户与数据资产模型的关系决定其拥有那些数据资产及其版本。租户的属性至少有租户id(全局唯一,数据类型为整数)。租户与数据资产及其版本的关系模型例如如下:
[0038]
属性名称数据类型数据宽度备注资产编码字符型50 模型版本号整数型8 租户id整数型8 [0039]
图2示出了数据资产模型、数据版本、租户之间的关系示意图。租户要操作某个版本的数据资产,通过访问数据资产元元模型的该数据资产的资产编码与模型版本号得到其元数据定义,然后到对应的数据资产实例里,查询对应的该版本的元数据属性列得到数据集。
[0040]
数据资产元元模型、租户与数据资产及其版本的关系模型的物理模型设计可采用行式存储以及传统数据库表设计,数据资产实例模型可采用列式存储以及分表存储设计。传统数据库设计通常需尽量避免数据冗余。分表或列式存储可以冗余,以空间换时间,提高存储效率。列式存储比行式存储更利于实例属性列的动态扩展、方便数据压缩、存储效率更高,同时,租户按照数据资产的版本号进行数据查询时,列式存储能快速检索到该版本的属性集列,从而提高数据查询效率。
[0041]
数据资产模型以及数据的总体存储设计,可依据数据资产数量以及数据记录的规模,通过存储管理实现单表、合并表、单表分片、合并表分片等多种存储方式相结合的模式,实施时按需选择:
[0042]-对数据记录少的数据资产实例可以采用单表存储,每个数据资产实例是一个物理表存储;
[0043]-对数据记录很大的数据资产实例可以采用单分片存储,以版本号为键进行(分布式)分片存储;
[0044]-考虑数据资产数量大,可以合并表存储,即把多个数据资产实例组成一个合并的数据资产。在合并表的基础上,还可以分片存储,以资产编码为键。
[0045]
图示出了数据资产模型以及数据的存储模式示意图,其中,a001是单表存储,b001是单片分片存储,c001、d001是合并表存储,e001、f001、g001是合并表分片存储。
[0046]
分配模块200用于在某个数据资产已经有数据版本与数据资产实例的情形下,向租户与数据资产及其版本的关系模型新增、修改和/或删除相应数据记录,实现数据资产及其版本号向租户的分配。
[0047]
发布模块300用于发布维护所得的数据资产模型。发布例如采取切换编辑状态的方式,以表明该数据资产模型可以使用。
[0048]
通知模块400用于根据维护所得的数据资产模型以及租户与数据资产及其版本的关系模型将数据资产的变化通知到相应租户。通知一般依赖于通知平台或引擎,可采取例如邮件、短信等方式。通知告诉租户其使用的资产的数据属性发生变化,租户可决定是否重新获取新的数据资产。
[0049]
具体地,一般情况下,数据资产管理人员的主要业务操作流程至少包括新增、修改、删除数据资产模型,其中新增、修改数据资产模型是事务性操作。
[0050]
新增数据资产模型流程:数据资产元元模型初次新增某个数据资产元数据定义且保存,新增该数据资产元数据的全部属性并将模型版本号赋值为1,模型版本号为1即为初始版本,依据新增的全部属性,创建该数据资产实例并新增属性列。然后,发布初始版本,通知租户有该新的数据资产。
[0051]
修改数据资产模型流程:前提是某个数据资产已经有数据版本与数据资产实例:
[0052]-当在数据资产元元模型新增新属性时,数据资产元元模型新增上一版本的属性集以及所述新属性,模型版本号加1,在该数据资产实例新增与所述新属性对应的属性列,然后发布该新的模型版本号,最后依据租户与数据资产及其版本的关系,通知租户该数据资产的版本变更;
[0053]-当在数据资产元元模型修改原有属性且保存,数据资产元元模型新增上一版本的属性集以及修改对应的原有属性,模型版本号加1,在该数据资产实例新增修改的属性列,然后把原属性列的内容复制到新增的属性列,然后发布该数据资产版本,最后依据租户与数据资产及其版本的关系,通知租户该数据资产的版本变更;
[0054]-当在数据资产元元模型删除原有属性时,数据资产元元模型新增上一版本的属性集但不含删除的原有属性,模型版本号加1,然后发布该新的模型版本号,最后依据租户与数据资产及其版本的关系,通知租户该数据资产的版本变更。
[0055]
删除数据资产模型流程是逻辑删除:前提是某个数据资产已经有数据版本与数据资产实例,删除操作已经得到审批:
[0056]-当删除数据资产元元模型某个数据资产时,则该数据资产模型的全部版本及其实例不可用,修改该数据资产全部元数据的“是否停止”属性值为“是”,然后依据租户与数据资产及其版本的关系,通知租户该数据资产的版本变更;
[0057]-当删除数据资产元元模型一数据资产的某个版本时,则修改数据资产该版本的元数据的“是否停止”属性值为“是”,该版本的模型及其实例不可用,然后依据租户与数据资产及其版本的关系,通知租户该数据资产的版本变更。
[0058]
租户的主要操作业务流程是查询数据资产模型以及数据。在实施例中,数据资产管理系统还包括查询模块,用于租户根据租户与数据资产及其版本的关系模型,查询相应的数据资产元数据和/或数据资产的数据记录。租户对历史版本数据记录的查询不受模型或版本变更的影响。例如,租户甲一直使用数据资产a的版本1(包含属性a,b,c),目前数据
版本已迭代更新(包含属性a,b1,c,d),即新增属性d,修改b的属性名为b1,最新的元数据属性列是a,b,c,d,b1,但租户甲仍然可以查询版本1(包含属性a,b,c)的数据记录。
[0059]
查询数据资产元数据流程:依据租户与数据资产及其版本的关系模型,租户查询到授权的数据资产编码与版本号,依据数据资产编码与版本号从数据资产元元模型查询该版本的数据资产属性。
[0060]
查询数据资产的数据记录流程:依据租户与数据资产及其版本的关系模型,租户查询到授权的数据资产编码与版本号,依据数据资产编码与版本号从数据资产元元模型查询该版本的数据资产属性集,然后到该数据资产实例,依据数据资产属性集,查询相应的属性列的数据。
[0061]
采用本发明的数据资产管理系统,数据资产管理人员可依据数据资产规范性与标准化管理制度,对数据资产模型及其数据版本统一维护,例如新增、修改、删除等,将数据资产模型及其数据版本分配到相应租户,模型或版本变更及时通知租户。数据资产管理人员与租户可以对数据资产数据记录进行维护,历史版本的数据记录只能查询不能修改,以保持数据的完整性,从而克服数据资产模型的业务属性不可进行修改或删除的缺陷。
[0062]
数据资产模型及其版本的主要操作流程可以api服务方式,软件实现不限,一般是以rest api或webservice方式。
[0063]
在另一实施例中,本发明提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现结合图1所示所述的系统实施例或其它相应系统实施例的功能,在此不再赘述。
[0064]
在另一实施例中,本发明提供一种计算机设备,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其中所述处理器执行所述计算机程序时实现结合图1所示所述的系统实施例或其它相应系统实施例的功能,在此不再赘述。
[0065]
在此所述的多个不同实施方式或者其特定特征、结构或特性可在本发明的一个或多个实施方式中适当组合。另外,在某些情形下,只要适当,流程图中和/或流水处理描述的步骤顺序可修改,并不必须精确按照所描述的顺序执行。另外,本发明的多个不同方面可使用软件、硬件、固件或者其组合和/或执行所述功能的其它计算机实施的模块或装置进行实施。本发明的软件实施可包括保存在计算机可读介质中并由一个或多个处理器执行的可执行代码。计算机可读介质可包括计算机硬盘驱动器、rom、ram、闪存、便携计算机存储介质如cd-rom、dvd-rom、闪盘驱动器和/或具有通用串行总线(usb)接口的其它装置,和/或任何其它适当的有形或非短暂计算机可读介质或可执行代码可保存于其上并由处理器执行的计算机存储器。本发明可结合任何适当的操作系统使用。
[0066]
除非明确指出,在此所用的单数形式“一”、“该”均包括复数含义(即具有“至少一”的意思)。应当进一步理解,说明书中使用的术语“具有”、“包括”和/或“包含”表明存在所述的特征、步骤、操作、元件和/或部件,但不排除存在或增加一个或多个其他特征、步骤、操作、元件、部件和/或其组合。如在此所用的术语“和/或”包括一个或多个列举的相关项目的任何及所有组合。
[0067]
前面说明了本发明的一些优选实施例,但是应当强调的是,本发明不局限于这些实施例,而是可以本发明主题范围内的其它方式实现。本领域技术人员可以在本发明技术构思的启发和不脱离本发明内容的基础上对本发明做出各种变型和修改,这些变型或修改
仍落入本发明的保护范围之内。

技术特征:
1.一种数据资产管理系统,其特征在于,所述系统包括:数据资产元元模型,其属性至少包括数据资产编码、数据资产模型版本号、属性名;其中,数据资产包括数据资产模型与数据资产实例,数据资产模型包括所述数据资产元元模型及数据资产元数据,所述数据资产元数据依据所述数据资产元元模型的属性进行定义;数据资产实例模型,其中所述数据资产实例依据所述数据资产元数据进行动态生成;租户与数据资产及其版本的关系模型,其属性至少包括租户id、数据资产编码和数据资产模型版本号;维护模块,用于所述数据资产及其数据版本的维护,所述维护包括新增、修改和/或删除;分配模块,用于向所述租户与数据资产及其版本的关系模型新增、修改和/或删除相应数据记录;发布模块,用于发布所述维护模块得到的数据资产模型;通知模块,用于根据所述维护模块得到的数据资产模型以及所述租户与数据资产及其版本的关系模型将数据资产的变化通知到相应租户。2.根据权利要求1所述的系统,其特征在于,所述维护模块用于:响应于数据资产元元模型新增一数据资产元数据定义,新增该数据资产元数据的全部属性并将数据资产模型版本号赋值为1;依据新增的全部属性,创建相应的数据资产实例并新增属性列。3.根据权利要求1所述的系统,其特征在于,所述维护模块用于:响应于数据资产元元模型新增新属性,数据资产元元模型新增上一版本的属性集以及所述新属性,数据资产模型版本号加1;相应数据资产实例新增与所述新属性对应的属性列。4.根据权利要求3所述的系统,其特征在于,所述维护模块还用于:响应于数据资产元元模型修改原有属性,数据资产元元模型新增上一版本的属性集以及修改对应的原有属性,数据资产模型版本号加1;数据资产实例新增修改的属性列;将原属性列的内容复制到新增的属性列。5.根据权利要求3或4所述的系统,其特征在于,所述维护模块还用于:响应于数据资产元元模型删除原有属性,数据资产元元模型新增上一版本的属性集但不含删除的原有属性,数据资产模型版本号加1。6.根据权利要求1所述的系统,其特征在于,其特征在于,数据资产元元模型的属性还包括用于标示数据资产的属性是否可用的是否停止属性,所述维护模块用于:响应于删除数据资产,将相应数据资产的相应元数据的是否停止属性赋值为是。7.根据权利要求1所述的系统,其特征在于,所述系统还包括:查询模块,用于租户根据所述租户与数据资产及其版本的关系模型,查询相应的数据资产元数据和/或数据资产的数据记录。8.根据权利要求1所述的系统,其特征在于,所述数据资产元元模型和所述租户与数据资产及其版本的关系模型的物理模型设计采用行式存储,所述数据资产实例模型采用列式存储。
9.一种计算机设备,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其中所述处理器执行所述计算机程序时实现根据权利要求1-8任一所述的系统的功能。10.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现根据权利要求1-8任一所述的系统的功能。

技术总结
本申请公开了数据资产管理系统及相应计算机设备和存储介质,其中所述系统包括数据资产元元模型、数据资产实例模型、租户与数据资产及其版本的关系模型并用于数据资产及其数据版本的维护、向所述租户与数据资产及其版本的关系模型新增、修改和/或删除相应数据记录、发布维护所得的数据资产模型、根据维护所得的数据资产模型以及所述租户与数据资产及其版本的关系模型将数据资产的变化通知到相应租户。本发明简化了数据资产模型以及版本的维护,可实现多租户场景下数据资产模型的业务属性的可修改性、可删除性。可删除性。可删除性。


技术研发人员:龙乐乐
受保护的技术使用者:望海康信(北京)科技股份公司
技术研发日:2023.03.29
技术公布日:2023/7/31
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐