CN114328746A - 数据管理方法及装置 - Google Patents
数据管理方法及装置 Download PDFInfo
- Publication number
- CN114328746A CN114328746A CN202111669885.0A CN202111669885A CN114328746A CN 114328746 A CN114328746 A CN 114328746A CN 202111669885 A CN202111669885 A CN 202111669885A CN 114328746 A CN114328746 A CN 114328746A
- Authority
- CN
- China
- Prior art keywords
- version
- data
- historical
- target
- request
- 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
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供一种数据管理方法及装置,该方法可以包括:确定与待管理的目标数据所对应的目标数据对象,并将所述目标数据保存为所述目标数据对象的本体数据,所述本体数据随所述目标数据的修改进行更新;获取针对所述目标数据对象的版本发布请求,并根据所述版本发布请求发布对应于所述目标数据对象的历史版本,以将所述目标数据对象的当前本体数据保存为所述历史版本的版本数据;获取针对任一历史版本的管理请求,并根据所述管理请求对所述任一历史版本的版本数据进行管理。通过本申请的技术方案,可以对不断迭代修改的数据的历史版本进行保存,并对任一历史版本的数据进行单独的数据更改。
Description
技术领域
本申请涉及计算机技术领域,特别是数据管理方法及装置。
背景技术
随着计算机技术的不断发展和信息化程度的不断提高,数据量迅速增长,业务数据不断变化。而为了方便对业务数据进行追溯、分析、数据回滚等工作,针对不断迭代修改的数据,通常需要对其变更历史进行记录。相关技术中,需要在数据每做一次修改时都对其进行重新保存,并在每次重新保存时生成一个历史版本的数据以便进行维护,所需维护历史版本较多且无法根据需要单独对某一历史版本的数据进行修改。
发明内容
有鉴于此,本申请提供数据管理方法及装置,用以对数据进行管理。
具体的,本申请通过如下技术方案实现:
根据本申请的第一方面,提出了一种数据管理方法,应用于对象管理数据库,所述对象管理数据库用于对至少一个数据对象进行管理,包括:
确定与待管理的目标数据所对应的目标数据对象,并将所述目标数据保存为所述目标数据对象的本体数据,所述本体数据随所述目标数据的修改进行更新;
获取针对所述目标数据对象的版本发布请求,并根据所述版本发布请求发布对应于所述目标数据对象的历史版本,以将所述目标数据对象的当前本体数据保存为所述历史版本的版本数据;其中,所述当前本体数据为所述目标数据对象在获取所述版本发布请求的时间点所保存的本体数据;
获取针对任一历史版本的管理请求,并根据所述管理请求对所述任一历史版本的版本数据进行管理。
根据本申请的第二方面,提出了一种数据管理装置,应用于对象管理数据库,所述对象管理数据库用于对至少一个数据对象进行管理,包括:
数据保存单元,用于确定与待管理的目标数据所对应的目标数据对象,并将所述目标数据保存为所述目标数据对象的本体数据,所述本体数据随所述目标数据的修改进行更新;
版本发布单元,用于获取针对所述目标数据对象的版本发布请求,并根据所述版本发布请求发布对应于所述目标数据对象的历史版本,以将所述目标数据对象的当前本体数据保存为所述历史版本的版本数据;其中,所述当前本体数据为所述目标数据对象在获取所述版本发布请求的时间点所保存的本体数据;
数据管理单元,用于获取针对任一历史版本的管理请求,并根据所述管理请求对所述任一历史版本的版本数据进行管理。
根据本申请的第三方面,提供一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器通过运行所述可执行指令以实现如上述第一方面的实施例中所述的方法。
根据本申请实施例的第四方面,提供一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现如上述第一方面的实施例中所述方法的步骤。
由以上本申请提供的技术方案可见,本申请通过在对象管理数据库中建立与业务数据相对于的数据对象来对业务数据进行管理,除了存储实时更新的业务数据本身外,还可以根据用户需要在业务数据的更新过程中生成并存储数据对象的版本数据,以对业务数据的历史版本进行维护,并且可以通过该对象管理数据库对数据的各历史版本进行分别管理。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1是根据本申请一示例性实施例示出的一种数据管理方法的流程图;
图2是应用本申请实施例的数据管理系统的架构示意图;
图3是根据本申请一示例性实施例示出的一种数据管理方法的多方交互流程图;
图4是根据本申请一示例性实施例示出的一种数据管理电子设备示意图;
图5是根据本申请一示例性实施例示出的一种数据管理装置的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
接下来对本申请实施例进行详细说明。
图1为根据本申请一示例性实施例示出的一种数据管理方法的流程图。如图1所示,该方法应用于对象管理数据库,所述对象管理数据库用于对至少一个数据对象进行管理,可以包括如下步骤:
步骤102:确定与待管理的目标数据所对应的目标数据对象,并将所述目标数据保存为所述目标数据对象的本体数据,所述本体数据随所述目标数据的修改进行更新。
在本申请中,对象管理数据库是一种可以用于大规模管理具有可解析标识符的数字对象的对象管理平台,可以对数据对象所对应的具体数据内容进行存储和管理。举例而言,对象管理数据库可以为Cordra数据库,Cordra数据库可以介入其所管理的数据对象的生命周期中的各个阶段来进行验证或其他附加操作,支持通过主动发布的方式来生成数据对象的新版本,并能够对版本数据做出和当前数据相同的增删改查操作。
在一实施例中,在将待管理的目标数据保存至对象管理数据库之前,用户可以通过在对象管理数据库中定义数据对象的属性值,以将该数据对象确定为对应于待管理目标数据的目标数据对象。由于在对象管理数据库中每个数字对象可以用唯一的标识符进行表示,因此在确定对应于目标数据的目标数据对象后,可以为该目标数据对象设置dataID,以将该dataID作为该目标数据对象的对象标识符。
在一实施例中,对象管理数据库可以接收用户发送的本体创建请求,以对目标数据进行保存,将其作为目标数据对象所对应的本体数据。应当理解的是,本申请中目标数据对象所对应的本体数据并非一成不变,随着待管理的目标数据的迭代更新,目标数据对象所对应的本体数据也会进行相应的修改。例如,在目标数据对象更新后,用户可以根据目标数据所对应的目标数据对象的对象标识符向对象管理数据库发送对应的更新请求,以使得目标数据对象可以根据更新请求对目标数据对象的本体数据进行相应修改,并对修改后的本体数据进行重新保存。
步骤104:获取针对所述目标数据对象的版本发布请求,并根据所述版本发布请求发布对应于所述目标数据对象的历史版本,以将所述目标数据对象的当前本体数据保存为所述历史版本的版本数据;其中,所述当前本体数据为所述目标数据对象在获取所述版本发布请求的时间点所保存的本体数据。
在一实施例中,用户可以根据需要在任一时刻向对象管理数据库发送包含对应于目标数据对象的对象标识符的版本发布请求,对象管理数据库在接收到版本发布请求后可以根据其中所包含的对象标识符确定目标数据对象,以对当前目标数据对象所保存的本体数据进行版本发布。即对象管理数据库在接收到版本发布请求后可以将目标数据对象当前所保存的本体数据备份存储为一对应历史版本。举例而言,对象管理数据库中的目标数据对象存储有初始本体数据,则根据接收到的版本发布请求可以将初始本体数据保存为第一历史版本;若在此之后,本体数据随待管理的目标数据更新为了修改后的本体数据,此时若再接收到的版本发布请求则会将修改后的本体数据保存为第二历史版本。通过发布历史版本,使得对象管理数据库中除了存储对应于迭代更新的目标数据的本体数据外,还可以根据用户需要存储有该本体数据的多个历史版本。
在一实施例中,当对象管理数据库发布对应于目标数据对象的历史版本时,可以分别为历史版本设置对应的版本标识符,使得每个历史版本可以用唯一的标识符进行表示。其中,版本标识符可以是由历史版本所对应的目标数据对象的对象标识符以及该历史版本所对应的版本号组合得到。举例而言,若目标数据对象的对象标识符为dataID,则在发布历史版本后,可以为历史版本设置对应的版本ID,具体的,第一历史版本的版本ID可以为dataID/1,第二历史版本的版本ID可以为dataID/2。通过为各个历史版本设置各自对应的版本标识符,使得各历史版本的标识符全网唯一,对象管理数据库根据该版本标识符即可唯一确定并获取对应的历史版本。同时,由于版本标识符是根据历史版本所对应的目标数据对象的对象标识符构建而成的,因此根据对象标识符除了确定其所对应的目标数据对象的本体数据外,还可以确定由该对象标识符所构建的版本标识符,从而相应确定目标数据对象所对应的各个历史版本,通过版本标识符和对象标识符即可维护本体数据与版本数据之间的迭代关系。
步骤106:获取针对任一历史版本的管理请求,并根据所述管理请求对所述任一历史版本的版本数据进行管理。
在本申请中,对象管理数据库可以支持对其所保存的各个历史版本的版本数据进行分别管理,其中管理操作可以包括增加、修改、删除、查询和回滚。应当理解的是,这里的增加操作即为上述的历史版本发布操作。
在一实施例中,对象管理数据库在接收到修改请求后,可以先根据修改请求中所包含的指示参数,例如版本标识符,进行查询确定其所要修改的目标历史版本并获取该目标历史版本中所保存的版本数据,在根据修改请求对该版本数据修改完成后,再在该目标历史版本中将修改后的版本数据进行重新存储。
在一实施例中,对象管理数据库在接收到删除请求后,可以根据删除请求中所包含的指示参数,例如版本标识符,进行查询以确定其所要删除的目标历史版本,移出该目标历史版本中所保存的版本数据。
在一实施例中,对象管理数据库在接收到针对不同历史版本的版本数据之间的回滚请求后,可以根据回滚请求中所包含的指示参数,例如版本标识符,进行查询确定要进行数据回滚的目标历史版本以及其所要回滚至的对象历史版本,获取对象历史版本的版本数据并对目标历史版本的版本数据进行修改,以将目标历史版本所保存的版本数据更新为该对象历史版本的版本数据。
进一步的,区块链是一种由若干台计算设备共同参与“记账”,共同维护一份完整的分布式数据库的新兴技术。由于区块链技术基于共识机制、签名验证等基本特性,可以保证区块链网络上的数据安全、透明且不可篡改,且区块链中的每一次数据的变动都能够触发生成一个可信的变动记录。因此本申请中的对象管理数据库中所维护的数据还可以通过区块链技术进行上链保存。
在一实施例中,数据对象管理数据库可以与区块链系统相关联,在区块链系统中编写有对应于对象管理数据库中管理操作的操作代码,例如可以在区块链平台的平台代码中设置预定义接口,使得对象管理数据库在进行对应的管理操作是可以自动调用相应的预定义接口,从而可以将对象管理数据库中的历史版本的版本数据上链存储于区块链中,并在对对象管理数据库中的版本数据进行管理时也能够相应的在区块链中对上链存储的版本数据进行管理。
在一实施例中,预定义接口可以包括保存接口,保存接口用于将对象管理数据库中所存储的数据进行上链保存。当对象管理数据库中发布目标数据对象的历史版本时,可以将该历史版本的版本标识符作为key值,并将该历史版本的版本数据作为value值,建立该历史版本的key-value键值对。对象管理数据库可以自动调用区块链系统中预设的保存接口,以将该key-value键值上链存储于区块链中。
在一实施例中,对象管理数据库在如前所述根据修改请求对版本数据进行修改后,还可以自动调用区块链系统中预设的保存接口,将被修改的历史版本的版本标识符作为key值,并将该历史版本修改后重新保存的版本数据作为新的value值,建立该历史版本的新key-value键值对,并自动将该新的key-value键值上链存储于区块链中。
在一实施例中,区块链系统中的预定义接口还可以包括删除接口和查询接口,查询接口用于查询区块链所存储的key-value键值对以根据key值获取对应的value值,删除接口用于根据key值删除对应的value值。对象管理数据库在如前所述根据删除请求删除历史版本所对应的版本数据后,可以自动调用区块链中的查询接口获取所要删除的目标历史版本的目标key值所对应的value值,再调用区块链系统中预定义的删除接口,将对应于该目标key值的value值删除。
在一实施例中,由于区块链系统会对其中所存储数据的每一次变动进行记录,因此即便对象管理数据库中并未对目标数据对象的历史版本的版本数据的修改进行记录,也可以根据区块链中的相关记录对历史版本的版本数据进行回滚。具体的,当对象管理数据库接收到回滚请求时,可以根据该回滚请求中所包含的目标版本标识符确定目标历史版本,并获取所述任一历史版本所对应的版本标识符的目标key值,调用所述区块链系统中预设的数据历史变更记录接口,以获取所述区块链中对应于该目标key值的数据更新记录,该数据更新记录包含了目标key值所对应的value值的所有修改;根据接收到的回滚请求和获取到的各数据更新记录可以将key值当前所对应的value值进行反向逆推,得到所要回滚至的目标回滚数据,以将该目标历史版本所保存的版本数据修改为目标回滚数据。同样的,在数据修改后,可以将该目标历史版本所对应的版本标识符作为key值,将目标回滚数据作为value值,建立目标历史版本的新key-value键值对;调用区块链系统中预定义的保存接口,以将该目标历史版本的新key-value键值对存储至区块链中。应当理解的是,这里的回滚操作不再仅限于将某一历史版本的版本数据回滚至另一历史版本的版本数据,其还可以在某一历史版本的版本数据被修改后能够将该历史版本的当前版本数据回滚至其修改前的版本数据。
由以上本申请提供的技术方案可见,本申请通过在对象管理数据库中建立与目标数据相对于的数据对象来对业务数据进行管理,除了存储实时更新的业务数据本身外,还可以根据用户需要在业务数据的更新过程中生成并存储数据对象的不同历史版本的版本数据,并且可以通过该对象管理数据库对各历史版本进行分别管理。进一步的,本申请通过结合区块链技术,将对象管理数据库中各历史版本的版本数据以及各自所进行过的操作都进行上链存储,使得这些数据和操作都被存储维护且对公可信。
图2为应用本申请实施例的数据管理系统的系统架构示意图。如图2所示,该数据管理系统可以包括客户端201、对象管理数据库202和区块链系统203。对象管理数据库202可以接收客户端201发送的待管理的目标数据、版本发布请求以及管理请求,对象管理数据库202中可以定义有对应于待管理目标数据的目标数据对象,并基于目标数据对象将目标数据对象保存为本体数据。对象管理数据库202在接收到客户端201发送的版本发布请求时,可以发布对应的历史版本以保存数据对象当前所记录的本体数据,并同时将其所保存的历史版本的版本数据上传至区块链系统203中,以有区块链系统203对版本数据进行上链保存。而当对象管理数据库202在接收到客户端201发送的管理请求是,可以根据管理请求对其所要管理的历史版本中的版本数据进行对应管理,同时将其所进行的管理操作也对应上传至区块链系统203中,使得区块链系统203可以对对象管理数据库202中版本数据的每一次变更进行记录。
在本申请的技术方案中,通过在对象管理数据库中建立与目标数据相对于的数据对象来对业务数据进行管理,使得目标数据的历史版本可以被存储维护且被分别管理;并通过结合区块链技术,将对象管理数据库中各历史版本的版本数据以及各自所进行过的操作都进行上链存储,使得这些数据和操作都被存储维护且对公可信下面结合图3进行详细说明。其中,图3根据本申请一示例性实施例示出的一种数据管理方法的多方交互流程图。如图3所示,客户端201、对象管理数据库202和区块链系统203的交互过程包括以下步骤:
步骤301,在对象管理数据库202中定义对应于待管理目标数据的目标数据对象。
当需要对某一目标业务数据进行管理是,可以在对象管理数据库202中定义一对应于该业务数据的目标数据对象,并对该目标数据对象设置对象标识符dataID。
步骤302,对象管理数据库202接收客户端201的创建请求。
步骤303,对象管理数据库202将待管理的目标数据保存为目标数据对象的第一本体数据。
客户端201可以向对象管理数据库202发送创建请求,以使得在目标数据对象中保存对应于目标业务数据的本体数据,该本体数据可以随着目标业务数据的修改而实时的进行相应修改。
步骤304,对象管理数据库202接收客户端202发送的版本发布请求。
步骤305,对象管理数据库202根据目标数据对象当前的第一本体数据发布第一历史版本。
若对象管理数据库202在接收到版本发布请求时,其目标数据对象所保存的本体数据为第一本体数据,则根据该将该第一本体数据存储为第一历史版本,并未该第一历史版本设置版本标识符dataID/1。
步骤306,对象管理数据库202根据第一历史版本的版本标识符和版本数据建立第一key-value值,并将其上传至区块链系统203保存。
对象管理数据库202可以将第一历史版本所对应的版本标识符dataID/1作为key值,将其保存的版本数据(即第一本体数据)作为value值,建立第一key-value键值对,并自动调用区块链系统203中所预定义的保存接口将该第一key-value键值对上链保存至区块链系统203中。
步骤307,对象管理数据库202根据待管理的目标数据的修改,修改第一本体数据并将其重新保存为第二本体数据。
若目标业务数据进行了迭代更新,则对象管理数据库202中目标数据对象可以将更新后的目标业务数据重新保存为第二本体数据。
步骤308,对象管理数据库202接收客户端202发送的版本发布请求。
步骤309,对象管理数据库202根据目标数据对象当前的第二本体数据发布第二历史版本。
若对象管理数据库202在接收到版本发布请求时,其目标数据对象所保存的本体数据为第二本体数据,则根据该将该第一本体数据存储为第一历史版本,并未该第一历史版本设置版本标识符dataID/2。
步骤310,对象管理数据库202根据第二历史版本的版本标识符和版本数据建立第二key-value值,并将其上传至区块链系统203保存。
对象管理数据库202可以将第二历史版本所对应的版本标识符dataID/2作为key值,将其保存的版本数据(即第二本体数据)作为value值,建立第二key-value键值对,并自动调用区块链系统203中所预定义的保存接口将该第二key-value键值对上链保存至区块链系统203中。
步骤311,对象管理数据库202接收客户端201发送的针对第一历史版本的修改请求。
若用户需要对第一历史版本进行修改,则可以通过客户端201向对象管理数据库202发送修改请求,该修改请求中包括第一历史版本所对应的版本标识符dataID/1。
步骤312,对象管理数据库202根据修改请求修改第一历史版本所保存的版本数据。
对象管理数据库202在接收到该修改请求后,可以根据版本标识符dataID/1确定需要对第一历史版本进行修改,并根据修改请求中的具体内容修改第一历史版本所保存的版本数据。
步骤313,对象管理数据库202根据修改后的版本数据建立新的key-value键值对,并将其上传至区块链系统,以对区块链系统中所保存的第一历史版本所对应的key-value键值对进行修改。
对象管理数据库202可以将修改后的第一历史版本所对应的版本标识符dataID/2作为key值,将其保存的修改后的版本数据作为value值,建立新的第一key-value键值对,并自动调用区块链系统203中所预定义的保存接口将该新的第一key-value键值对上链保存至区块链系统203中。
与上述方法实施例相对应,本说明书还提供了一种装置的实施例。
图4是根据本申请一示例性实施例示出的一种数据管理电子设备的结构示意图。参考图4,在硬件层面,该电子设备包括处理器402、内部总线404、网络接口406、内存408以及非易失性存储器410,当然还可能包括其他业务所需要的硬件。处理器402从非易失性存储器410中读取对应的计算机程序到内存408中然后运行。当然,除了软件实现方式之外,本申请并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
图5是根据本申请一示例性实施例示出的一种数据管理装置的框图。参照图5,该装置包括数据保存单元502、版本发布单元504和数据管理单元506,其中:
数据保存单元502,被配置为确定与待管理的目标数据所对应的目标数据对象,并将所述目标数据保存为所述目标数据对象的本体数据,所述本体数据随所述目标数据的修改进行更新。
版本发布单元504,被配置为用于获取针对所述目标数据对象的版本发布请求,并根据所述版本发布请求发布对应于所述目标数据对象的历史版本,以将所述目标数据对象的当前本体数据保存为所述历史版本的版本数据;其中,所述当前本体数据为所述目标数据对象在获取所述版本发布请求的时间点所保存的本体数据。
可选的,所述目标数据对象设置有对应的对象标识符,各历史版本分别设置有对应的版本标识符,所述管理请求中包含对应于所述任一版本数据的目标版本标识符。
可选的,所述任一历史版本所对应的版本标识符由所述任一版本数据所对应的目标数据对象的对象标识符与所述任一历史版本所对应的版本号组合得到。
数据管理单元506,被配置为用于获取针对任一历史版本的管理请求,并根据所述管理请求对所述任一历史版本的版本数据进行管理。
可选的,所述数据对象管理数据库与区块链系统相连接,上述装置还包括:
键值对建立单元508,被配置为将各历史版本所对应的版本标识符作为key,版本数据作为value,建立各历史版本的key-value键值对。
上链单元510,被配置为调用所述区块链系统中预设的保存接口,将所述各历史版本的key-value键值对存储至区块链中。
可选的,所述管理请求包括修改请求,所述根据所述管理请求对所述任一历史版本的版本数据进行管理包括:根据所述修改请求中所包含的目标版本标识符确定所述任一历史版本,并获取所述任一历史版本中所保存的版本数据;根据所述修改请求对所述版本数据进行修改,并重新存储修改后的所述版本数据;将所述任一历史版本所对应的版本标识符作为key,所述修改后的所述版本数据作为value,建立所述任一历史版本的新key-value键值对;调用所述保存接口,以将所述任一历史版本的新key-value键值对存储至区块链中。
可选的,所述管理请求包括删除请求,所述根据所述管理请求对所述任一历史版本的版本数据进行管理包括:根据所述删除请求中所包含的目标版本标识符确定所述任一历史版本,并获取所述任一历史版本所对应的版本标识符的目标key值;移除所述任一历史版本中所保存的版本数据;调用所述区块链系统中预设的删除接口,以在所述区块链中将对应于所述目标key值的value值删除。
可选的,所述管理请求包括回滚请求,所述根据所述管理请求对所述任一历史版本的版本数据进行管理包括:根据所述回滚请求中所包含的目标版本标识符确定所述任一历史版本,并获取所述任一历史版本所对应的版本标识符的目标key值;调用所述区块链系统中预设的数据历史变更记录接口,以获取所述区块链中对应于所述目标key值的数据更新记录;根据所述回滚请求和所述数据更新记录确定目标回滚数据,并将所述任一历史版本所保存的版本数据修改为所述目标回滚数据;将所述任一历史版本所对应的版本标识符作为key,所述目标回滚数据作为value,建立所述任一历史版本的新key-value键值对;调用所述保存接口,以将所述任一历史版本的新key-value键值对存储至区块链中。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器,上述指令可由数据管理装置的处理器执行以实现如上述实施例中任一所述的方法,比如该方法可以包括:
确定与待管理的目标数据所对应的目标数据对象,并将所述目标数据保存为所述目标数据对象的本体数据,所述本体数据随所述目标数据的修改进行更新;获取针对所述目标数据对象的版本发布请求,并根据所述版本发布请求发布对应于所述目标数据对象的历史版本,以将所述目标数据对象的当前本体数据保存为所述历史版本的版本数据;其中,所述当前本体数据为所述目标数据对象在获取所述版本发布请求的时间点所保存的本体数据;获取针对任一历史版本的管理请求,并根据所述管理请求对所述任一历史版本的版本数据进行管理。
其中,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等,本申请并不对此进行限制。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (10)
1.一种数据管理方法,其特征在于,应用于对象管理数据库,所述对象管理数据库用于对至少一个数据对象进行管理,所述方法包括:
确定与待管理的目标数据所对应的目标数据对象,并将所述目标数据保存为所述目标数据对象的本体数据,所述本体数据随所述目标数据的修改进行更新;
获取针对所述目标数据对象的版本发布请求,并根据所述版本发布请求发布对应于所述目标数据对象的历史版本,以将所述目标数据对象的当前本体数据保存为所述历史版本的版本数据;其中,所述当前本体数据为所述目标数据对象在获取所述版本发布请求的时间点所保存的本体数据;
获取针对任一历史版本的管理请求,并根据所述管理请求对所述任一历史版本的版本数据进行管理。
2.根据权利要求1所述方法,其特征在于,所述目标数据对象设置有对应的对象标识符,各历史版本分别设置有对应的版本标识符,所述管理请求中包含对应于所述任一版本数据的目标版本标识符。
3.根据权利要求2所述方法,其特征在于,所述任一历史版本所对应的版本标识符由所述任一版本数据所对应的目标数据对象的对象标识符与所述任一历史版本所对应的版本号组合得到。
4.根据权利要求2所述方法,其特征在于,所述数据对象管理数据库与区块链系统相关联,所述方法还包括:
将各历史版本所对应的版本标识符作为key,版本数据作为value,建立各历史版本的key-value键值对;
调用所述区块链系统中预设的保存接口,将所述各历史版本的key-value键值对存储至区块链中。
5.根据权利要求4所述方法,其特征在于,所述管理请求包括修改请求,所述根据所述管理请求对所述任一历史版本的版本数据进行管理包括:
根据所述修改请求中所包含的目标版本标识符确定所述任一历史版本,并获取所述任一历史版本中所保存的版本数据;
根据所述修改请求对所述版本数据进行修改,并重新存储修改后的所述版本数据;
将所述任一历史版本所对应的版本标识符作为key,所述修改后的所述版本数据作为value,建立所述任一历史版本的新key-value键值对;
调用所述保存接口,以将所述任一历史版本的新key-value键值对存储至区块链中。
6.根据权利要求4所述方法,其特征在于,所述管理请求包括删除请求,所述根据所述管理请求对所述任一历史版本的版本数据进行管理包括:
根据所述删除请求中所包含的目标版本标识符确定所述任一历史版本,并获取所述任一历史版本所对应的版本标识符的目标key值;
移除所述任一历史版本中所保存的版本数据;
调用所述区块链系统中预设的删除接口,以在所述区块链中将对应于所述目标key值的value值删除。
7.根据权利要求4所述方法,其特征在于,所述管理请求包括回滚请求,所述根据所述管理请求对所述任一历史版本的版本数据进行管理包括:
根据所述回滚请求中所包含的目标版本标识符确定所述任一历史版本,并获取所述任一历史版本所对应的版本标识符的目标key值;
调用所述区块链系统中预设的数据历史变更记录接口,以获取所述区块链中对应于所述目标key值的数据更新记录;
根据所述回滚请求和所述数据更新记录确定目标回滚数据,并将所述任一历史版本所保存的版本数据修改为所述目标回滚数据;
将所述任一历史版本所对应的版本标识符作为key,所述目标回滚数据作为value,建立所述任一历史版本的新key-value键值对;
调用所述保存接口,以将所述任一历史版本的新key-value键值对存储至区块链中。
8.一种数据管理装置,其特征在于,应用于对象管理数据库,所述对象管理数据库用于对至少一个数据对象进行管理,所述装置包括:
数据保存单元,用于确定与待管理的目标数据所对应的目标数据对象,并将所述目标数据保存为所述目标数据对象的本体数据,所述本体数据随所述目标数据的修改进行更新;
版本发布单元,用于获取针对所述目标数据对象的版本发布请求,并根据所述版本发布请求发布对应于所述目标数据对象的历史版本,以将所述目标数据对象的当前本体数据保存为所述历史版本的版本数据;其中,所述当前本体数据为所述目标数据对象在获取所述版本发布请求的时间点所保存的本体数据;
数据管理单元,用于获取针对任一历史版本的管理请求,并根据所述管理请求对所述任一历史版本的版本数据进行管理。
9.一种电子设备,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器通过运行所述可执行指令以实现如权利要求1-7中任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,该指令被处理器执行时实现如权利要求1-7中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111669885.0A CN114328746A (zh) | 2021-12-31 | 2021-12-31 | 数据管理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111669885.0A CN114328746A (zh) | 2021-12-31 | 2021-12-31 | 数据管理方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114328746A true CN114328746A (zh) | 2022-04-12 |
Family
ID=81021248
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111669885.0A Pending CN114328746A (zh) | 2021-12-31 | 2021-12-31 | 数据管理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114328746A (zh) |
-
2021
- 2021-12-31 CN CN202111669885.0A patent/CN114328746A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102779185B (zh) | 一种高可用分布式全文索引方法 | |
CN106484906B (zh) | 一种分布式对象存储系统闪回方法及装置 | |
US20200210381A1 (en) | Optimized content object storage service for large scale content | |
US11210181B2 (en) | System and method for implementing data manipulation language (DML) on Hadoop | |
CN109298835B (zh) | 区块链的数据归档处理方法、装置、设备及存储介质 | |
CN111917834A (zh) | 一种数据同步方法、装置、存储介质及计算机设备 | |
CN114416703A (zh) | 数据完整性自动监控方法、装置、设备及介质 | |
CN111753141B (zh) | 一种数据管理方法及相关设备 | |
US10127270B1 (en) | Transaction processing using a key-value store | |
CN105843809B (zh) | 数据处理方法和装置 | |
CN111831744B (zh) | Dapp的链上数据检索系统、方法及介质 | |
US10942912B1 (en) | Chain logging using key-value data storage | |
US10747438B1 (en) | Reporting using archived data | |
US12061585B2 (en) | Systems and methods of modeling and querying dynamic temporal graph on massive parallel graph processing and storage engine | |
CN114328746A (zh) | 数据管理方法及装置 | |
CN113986942B (zh) | 一种基于人机对话的消息队列管理方法及装置 | |
JP5943753B2 (ja) | 仮想マシン管理システム、仮想マシン管理方法およびプログラム | |
CN115203260A (zh) | 一种异常数据确定方法、装置、电子设备及存储介质 | |
CN108614838B (zh) | 一种用户群索引处理方法、装置及系统 | |
CN114356945A (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN114490865A (zh) | 数据库同步方法、装置、设备及计算机存储介质 | |
US10747461B1 (en) | Updating objects for archived objects | |
US11860863B1 (en) | Data redaction in a journal-based database | |
CN113609130B (zh) | 获取网关接入数据的方法、装置、电子设备及存储介质 | |
CN111563091B (zh) | 非往返式的批量更新MongoDB的方法及系统 |
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 |