CN114610740B - 医疗数据平台的数据版本管理方法及装置 - Google Patents
医疗数据平台的数据版本管理方法及装置 Download PDFInfo
- Publication number
- CN114610740B CN114610740B CN202210511877.1A CN202210511877A CN114610740B CN 114610740 B CN114610740 B CN 114610740B CN 202210511877 A CN202210511877 A CN 202210511877A CN 114610740 B CN114610740 B CN 114610740B
- Authority
- CN
- China
- Prior art keywords
- version
- data
- validity period
- update
- specified
- 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
Links
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/23—Updating
-
- 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/219—Managing data history or versioning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (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
本申请公开了一种医疗数据平台的数据版本管理方法及装置,该方法响应于管理客户端对指定版本数据的更新请求,从目标实体数据集获取指定版本数据,在会话缓存中保存指定版本数据的副本,接收管理客户端对指定版本数据的更新版本数据,更新版本数据包括更新有效期;在确定目标实体数据集中的指定版本数据相比副本没有发生变更时,获取指定实体数据的可用版本数据中的最低版本和最高版本,根据更新有效期与最低版本或最高版本的有效期的关系将更新版本数据保存为指定实体数据的另一可用版本数据。本申请可以实现对基础数据的各版本数据的细粒度的定制化访问,解决多业务***更新基础数据的版本冲突问题。
Description
技术领域
本申请涉及数据处理和通信技术领域,具体而言,涉及一种医疗数据平台的数据版本管理方法及装置。
背景技术
通常,各医疗机构业务***会配置和使用基础字典数据,这些基础数据大部分存储于各医疗机构业务***侧,形成一个个信息孤岛,不利于各医疗机构业务***之间互联互通。为了解决这个问题,一种解决方案是采用独立于各医疗机构的主数据管理平台来统一管理各医疗机构业务***所使用的基础字典数据。但是,由于各医疗机构业务***的构建时期不一,所使用的基础字典数据的构建标准也不尽相同;同时,各医疗机构业务***在并发访问和更新主数据管理平台中的基础字典数据时,极易发生同一数据之间的版本冲突,这些都对各业务***之间的***集成和主数据管理带来了极大的挑战。
发明内容
为了解决上述问题,本申请提出一种医疗数据平台的数据版本管理方法及装置,以实现各业务***对基础数据的定制化访问,避免多业务***更新和访问基础数据时的版本冲突问题。
第一方面,本申请提出一种医疗数据平台的数据版本管理方法,包括:
接收管理客户端发送的第一更新请求,所述第一更新请求用于对目标实体数据集中指定实体数据的指定版本数据进行修改,其中所述目标实体数据集包括至少一条实体数据,每条实体数据包括至少一条可用版本数据,每条可用版本数据包括有效期,每条实体数据的全部可用版本数据的有效期构成连续期间;
响应于所述第一更新请求,从所述目标实体数据集获取所述指定版本数据,在会话缓存中保存所述指定版本数据的副本,并向所述管理客户端返回所述指定版本数据,接收所述管理客户端发送的对所述指定版本数据的更新版本数据,所述更新版本数据包括更新有效期;
在确定所述目标实体数据集中的所述指定版本数据相比所述副本没有发生变更时,获取所述指定实体数据的可用版本数据中的最低版本和最高版本,根据所述更新有效期与所述最低版本的有效期是否形成左交叉或左相离的关系,或者所述更新有效期与所述最高版本的有效期是否形成右交叉或右相离的关系将所述更新版本数据保存为所述指定实体数据的另一可用版本数据,其中所述有效期和更新有效期均包括由起始日期和结束日期组成的二元组,在所述更新有效期与所述最低版本的有效期形成左交叉或左相离时,将所述更新有效期与所述最低版本的有效期重置为连续期间,在所述更新有效期与所述最高版本的有效期形成右交叉或右相离时,将所述更新有效期与所述最高版本的有效期重置为连续期间。
在可选的实施方式中,所述方法包括:
经由数据服务接口接收第三方业务***发送的第二更新请求,所述第二更新请求用于对所述目标实体数据集中的指定实体数据进行版本新增;
响应于所述第二更新请求,从所述第二更新请求读取与所述指定实体数据关联的更新版本数据,其中所述更新版本数据包括更新有效期;
在所述更新版本数据满足预定的版本发布条件时,获取所述指定实体数据的可用版本数据中的最低版本和最高版本,根据所述更新有效期与所述最低版本或最高版本的有效期的关系将所述更新版本数据保存为所述指定实体数据的另一可用版本数据,其中在所述更新有效期与所述最低版本或最高版本的有效期不构成连续期间时,将所述更新有效期与所述最低版本或最高版本的有效期重置为连续期间。
在可选的实施方式中,所述方法还包括:
经由数据服务接口接收第三方业务***发送的至少一个第三更新请求,所述第三更新请求用于对所述目标实体数据集中的指定实体数据进行版本新增;
响应于所述至少一个第三更新请求,从所述至少一个第三更新请求依次读取与所述指定实体数据关联的至少一个临时版本数据,将所述至少一个临时版本数据写入所述指定实体数据的候选版本数据列表;
从所述候选版本数据列表中确定一条临时版本数据作为更新版本数据,其中所述更新版本数据包括更新有效期;
在所述更新版本数据满足预定的版本发布条件时,获取所述指定实体数据的可用版本数据中的最低版本和最高版本,根据所述更新有效期与所述最低版本或最高版本的有效期的关系将所述更新版本数据保存为所述指定实体数据的另一可用版本数据,其中在所述更新有效期与所述最低版本或最高版本的有效期不构成连续期间时,将所述更新有效期与所述最低版本或最高版本的有效期重置为连续期间。
在可选的实施方式中,所述在所述更新有效期与所述最低版本的有效期形成左交叉或左相离时,将所述更新有效期与所述最低版本的有效期重置为连续期间包括:
在所述最低版本的起始日期不为空时,将所述更新有效期的结束日期更新为所述最低版本的起始日期,在所述最低版本的起始日期为空时,将所述最低版本的起始日期更新为所述更新有效期的结束日期;
所述在所述更新有效期与所述最高版本的有效期形成右交叉或右相离时,将所述更新有效期与所述最高版本的有效期重置为连续期间包括:在所述最高版本的结束日期不为空时,则将所述更新有效期的起始日期更新为所述最高版本的结束日期,在所述最高版本的结束日期为空时,则将所述最高版本的结束日期更新为所述更新有效期的起始日期。
在可选的实施方式中,所述方法还包括:
经由订阅服务接口接收第三方业务***对所述目标实体数据集中指定实体数据的订阅请求;
响应于所述订阅请求,当所述指定实体数据的可用版本数据中的最高版本发生变更时,向所述第三方业务***推送所述指定实体数据的最高版本。
在可选的实施方式中,所述目标实体数据集包括至少一个可用数据集版本,每个可用数据集版本包括至少一条实体数据,每个可用数据集版本的有效期为该可用数据集版本中实体数据的可用版本数据的有效期的并集,所述目标实体数据集的全部可用数据集版本的有效期构成连续期间,所述方法还包括:
检测到所述目标实体数据集的可用数据集版本发生变更,将第三方业务***对所述目标实体数据集的订阅自动切换到所述目标实体数据集的最高可用数据集版本;
响应于所述订阅请求,向所述第三方业务***推送所述目标实体数据集的最高可用数据集版本中指定实体数据的最高版本。
在可选的实施方式中,所述方法还包括:
所述向所述第三方业务***推送所述目标实体数据集的最高可用数据集版本中指定实体数据的最高版本包括:
获取订阅所述目标实体数据集的第三方业务***的接口地址;
根据所述接口地址,向所述第三方业务***推送所述目标实体数据集的最高可用数据集版本中指定实体数据的最高版本。
在可选的实施方式中,所述方法还包括:
经由查询服务接口接收第三方业务***对所述目标实体数据集中指定实体数据的查询请求,所述查询请求携带有所述指定实体数据的指定有效期;
响应于所述查询请求,从所述目标实体数据集中获取所述指定实体数据的至少一个目标可用版本数据,并向所述第三方业务***返回所述至少一个目标可用版本数据,其中所述至少一个目标可用版本数据的有效期在所述指定有效期的范围之内。
第二方面,本申请提出一种医疗数据平台的数据版本管理装置,包括:
请求接收模块,用于接收管理客户端发送的第一更新请求,所述第一更新请求用于对目标实体数据集中指定实体数据的指定版本数据进行修改,其中所述目标实体数据集包括至少一条实体数据,每条实体数据包括至少一条可用版本数据,每条可用版本数据包括有效期,每条实体数据的全部可用版本数据的有效期构成连续期间;
数据服务模块,用于响应于所述第一更新请求,从所述目标实体数据集获取所述指定版本数据,在会话缓存中保存所述指定版本数据的副本,并向所述管理客户端返回所述指定版本数据,接收所述管理客户端发送的对所述指定版本数据的更新版本数据,所述更新版本数据包括更新有效期;
数据保存模块,用于在确定所述目标实体数据集中的所述指定版本数据相比所述副本没有发生变更时,获取所述指定实体数据的可用版本数据中的最低版本和最高版本,根据所述更新有效期与所述最低版本的有效期是否形成左交叉或左相离的关系,或者所述更新有效期与所述最高版本的有效期是否形成右交叉或右相离的关系将所述更新版本数据保存为所述指定实体数据的另一可用版本数据,其中所述有效期和更新有效期均包括由起始日期和结束日期组成的二元组,在所述更新有效期与所述最低版本的有效期形成左交叉或左相离时,将所述更新有效期与所述最低版本的有效期重置为连续期间,在所述更新有效期与所述最高版本的有效期形成右交叉或右相离时,将所述更新有效期与所述最高版本的有效期重置为连续期间。
第三方面,本申请还提出一种服务器,包括:
一个或多个处理器;
存储器,用于存储一个或多个计算机程序;其中,所述计算机程序被所述一个或多个处理器执行以实现如前述任一实施方式所述的数据版本管理方法的步骤。
本申请实施例至少可以达到如下有益效果:通过对多版本实体数据的更新处理,一方面保证了实体数据的版本修改的数据一致性和可靠性;另一方面,通过实体数据的版本有效期属性,实现各业务***对基础数据的各版本数据的更细粒度的定制化访问,解决多业务***使用和更新基础数据的版本冲突问题。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍。应当理解,以下附图仅示出了本申请的某些实施例,而不应被看作是对本申请范围的限制。
图1是本申请实施例涉及的医疗数据平台的处理***100的结构示意图;
图2是根据本申请一实施例的医疗数据平台的数据版本管理方法的流程示意图;
图3A-3C是根据本申请一实施例的医疗数据平台的数据版本管理方法的原理示意图;
图4是根据本申请另一实施例的医疗数据平台的数据版本管理方法的部分流程示意图;
图5是根据本申请另一实施例的医疗数据平台的数据版本管理方法的部分流程示意图;
图6是根据本申请另一实施例的医疗数据平台的数据版本管理方法的部分流程示意图;
图7是根据本申请另一实施例的医疗数据平台的数据版本管理方法的部分流程示意图;
图8是根据本申请一实施例的医疗数据平台的数据版本管理装置的结构示意图;
图9是根据本申请另一实施例的医疗数据平台的数据版本管理装置的部分结构示意图;
图10是根据本申请另一实施例的医疗数据平台的数据版本管理装置的部分结构示意图;
图11是根据本申请另一实施例的医疗数据平台的数据版本管理装置的部分结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请实施例的附图,对本申请实施例中的技术方案进行清楚、完整地描述。然而应当理解,所描述的实施例仅仅是本申请的部分示例性实施例,而不是全部实施例,因此以下对本申请实施例的详细描述并非旨在限制要求保护的本申请的范围。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书中的术语“第一”、“第二”等仅是用于区别描述类似的对象,而不是用于描述特定的顺序或先后次序,也不能理解为指示或暗示相对重要性。
如前所述,在采用独立于各医疗机构的主数据管理平台来统一管理各医疗机构业务***所使用的基础字典数据的情形下,由于各医疗机构业务***的构建时期不一,所使用的基础字典数据的构建标准也不尽相同;同时,各医疗机构业务***在并发访问和更新主数据管理平台中的基础字典数据时,极易发生同一数据之间的版本冲突。为此,本申请提出一种医疗数据平台的数据版本管理方法及其装置,以实现各业务***对基础数据的定制化访问,解决多业务***使用和更新基础数据的版本冲突问题。
图1是本申请实施例涉及的医疗数据平台的处理***100的结构示意图。***100可以包括主数据服务器110、一个或多个管理客户端120(120-1,120-2,…,120-N)、一个或多个第三方业务***130(130-1,130-2,…,130-M),N为大于等于1的整数,M为大于等于1的整数。其中,主数据服务器110通过网络140分别与一个或多个管理客户端120、一个或多个第三方业务***130连接。
在一些实施方式中,主数据服务器110可以是单个服务器,也可以是多个服务器组成的服务器集群。主数据服务器110可以基于云计算平台实现,作为示例,这种云计算平台可以包括私有云、公有云、混合云等多种类型或者它们的任意组合。主数据服务器110可以包括一个或多个处理器。处理器可以处理与管理客户端120和第三方业务***130的数据读写访问请求有关的逻辑,以执行本申请中描述的一个或多个功能。主数据服务器110还可以包括为实现本申请描述的一个或多个功能所需要的数据存储器,这种数据存储器可以用于部署存储各业务***所使用的基础实体数据的关系型数据库或非关系型数据库。基础实体数据可以包括至少一个实体数据集,每个实体数据集可以包括至少一条实体数据,每条实体数据可以包括一个或多个实体数据属性。在一些实施方式中,根据大数据存储的需要,***100也可以包括与主数据服务器110通过网络耦合的数据存储服务器或者存储阵列等专门的数据存储器件(图中未示出),用于存储各业务***使用的基础实体数据。
在一些实施方式中,管理客户端120是数据维护人员用于维护主数据服务器110中的基础实体数据的客户端。数据维护人员经由管理客户端120,可以对主数据服务器110中的基础实体数据进行管理操作,包括但不限于对基础实体数据的添加、删除、修改、审核等操作,还可以包括对各第三方业务***进行针对目标实体数据集或者目标实体数据集中的指定实体数据的访问授权,管理第三方业务***对目标实体数据的查询、写入和订阅的权限。在一些实施方式中,管理客户端120可以包括移动设备、平板计算机、便携式计算机或个人台式计算机等或其任意组合。在一些实施方式中,移动设备可以包括智能手机、个人数字助理(PDA)等。
在一些实施方式中,第三方业务***130是访问主数据服务器110中的基础实体数据的各医疗机构信息***。第三方业务***130可以在授权范围内对主数据服务器110中的基础实体数据进行查询、写入和订阅操作。在一些实施方式中,第三方业务***130可以通过应用编程接口(API)实现与主数据服务器110的数据访问交互,实现对主数据服务器110中的基础实体数据进行查询、写入和订阅操作。
在一些实施方式中,网络140可以包括因特网、广域网、城域网、企业虚拟专用网等多种网络连接方式。网络140还可以包括任何类型的无线网路或有线网络或者其组合。在一些实施例中,网络140还可以包括一个或多个有线或无线网络接入点。管理客户端120、第三方业务***130、主数据服务器110可以通过网络接入点连接到网络140以实现数据和/或信息的传输和交互。
图2是根据本申请一实施例的医疗数据平台的数据版本管理方法的流程示意图。如图1所示,本申请实施例的医疗数据平台的数据版本管理方法,实现于主数据服务器110中,包括以下步骤:
步骤S201,接收管理客户端120发送的第一更新请求,所述第一更新请求用于对目标实体数据集中指定实体数据的指定版本数据进行修改,其中所述目标实体数据集包括至少一条实体数据,每条实体数据包括至少一条可用版本数据,每条可用版本数据包括有效期,每条实体数据的全部可用版本数据的有效期构成连续期间。
本实施例中,主数据服务器110中存储有各业务***所使用的基础实体数据的数据库。在一个实施方式中,该基础实体数据的数据库可以包括一个或多个实体数据集,每个实体数据集包括一条或多条实体数据,每条实体数据包括一条或多条版本数据。实体数据的版本数据还可以包括可用版本数据和更新版本数据。可用版本数据是主数据服务器110对各业务***正式发布使用的版本数据,具有正式的版本号;更新版本数据是管理客户端120或第三方业务***130分别对目标实体数据进行更新的更新版本数据,属于还没正式发布的版本数据,没有正式的版本号。以医疗机构科室信息的实体数据集为例,一种示例性的实体数据集的数据结构如图3A所示。
如图3A所示,该科室信息的实体数据集包括多条实体数据的元素,每条实体数据包括数据ID、实体编码、实体名称、实体标识、有效期、版本号等多个属性。当前状态下,该实体数据集中包括了两条实体数据,即实体名称分别为“口腔科”和“皮肤科”的两条实体数据。其中,实体名称为“口腔科”的实体数据包括了两条可用版本数据,各版本数据以统一的实体标识相关联。版本数据的有效期属性可以实现为由起始日期和结束日期组成的二元组,该二元组中,起始日期和结束日期为日期类型字段,可以视情况取空值。实体数据的多个可用版本数据的有效期构成了连续期间,该连续期间指的是全部可用版本数据的有效期的起始和结束日期首尾衔接,没有交叉或重叠。例如,版本号为1的版本数据具有有效期为{,20201201},表明该版本号为1的版本数据没有起始日期,即在结束日期20201201之前(不包含结束日期20201201当日)一直有效;版本号为2的版本数据具有有效期为{20201201,20211130},表明该版本号为2的版本数据在起始日期20201201和结束日期20211130的期间(包含起始日期20201201当日,不包含结束日期20211130当日)一直有效。
步骤S202,响应于所述第一更新请求,从所述目标实体数据集获取所述指定版本数据,在会话缓存中保存所述指定版本数据的副本,并向所述管理客户端返回所述指定版本数据,并接收所述管理客户端120发送的对所述指定版本数据的更新版本数据,所述更新版本数据包括更新有效期。
本实施例中,管理客户端120的用户可以从目标实体数据集中选择实体名称为“口腔科”的指定实体数据,从该实体数据的多个版本数据中选择了一条指定版本数据进行修改更新,例如,用户可能选择了图3A中版本号为1的版本数据在客户端进行编辑更新操作。主数据服务器110会首先在服务器的会话缓存中保存该指定版本数据的副本。在一个实施方式中,会话缓存可以采用内存或者高速缓冲存储器,可以直接以字典数据对象Dictionary<string,Object>的方式在内存或者高速缓冲存储器中存储该指定版本数据的各字段标识和对象。随后,主数据服务器110将该指定版本数据返回给管理客户端,以提供给管理员用户在编辑界面进行数据编辑操作。
本实施例中,主数据服务器110接收到用户通过管理客户端120对所述指定版本数据进行编辑后的更新版本数据。例如,用户将图3A中版本号为1的版本数据在客户端进行编辑操作,将之修改为实体名称为“口腔外科”,有效期为{20210801,}的版本数据,此时主数据服务器110还不会将之保存到数据库。主数据服务器110会先确定所述目标实体数据集当前存储的所述指定版本数据相比会话缓存中保存的所述指定版本数据的副本是否发生了变更。如果发生了变更,即表明数据库中存储的原始指定版本数据可能已被其他用户修改或者在客户端和主数据服务器之间的数据请求交互中数据发生了异常,无法保证当前版本数据修改的数据可靠性。此时,主数据服务器110可以选择放弃保存用户对所述指定版本数据的更新版本数据,不将之写入目标实体数据集并作为可用版本数据。
步骤S203,在确定所述目标实体数据集存储的所述指定版本数据相比所述副本没有发生变更时,获取所述指定实体数据的可用版本数据中的最低版本和最高版本,根据所述更新有效期与所述最低版本或最高版本的有效期的关系将所述更新版本数据保存为所述指定实体数据的另一可用版本数据,其中在所述更新有效期与所述最低版本或最高版本的有效期不构成连续期间时,将所述更新有效期与所述最低版本或最高版本的有效期重置为连续期间。
本实施例中,当主数据服务器110确定所述目标实体数据集存储的所述指定版本数据相比所述副本没有发生变更时,会首先从目标实体数据集中获取当前目标实体数据的全部可用版本数据中的最低版本和最高版本,最低版本即图3A中所示的版本号为1、有效期为{,20201201}的可用版本数据,最高版本即图3A中所示的版本号为2、有效期为{20201201,20211130}的可用版本数据。获取目标实体数据的全部可用版本数据中的最低版本和最高版本是为了将版本数据写入目标实体数据集时,能确保实体数据的多个可用版本数据之间有效期是有效衔接,不发生数据属性之间的冲突。
本实施例中,主数据服务器110在获取所述指定实体数据的最低版本和最高版本之后,需要根据版本校验规则将所述更新版本数据保存为所述指定实体数据的另一可用版本数据。在一个实施方式中,如图3B所示,由于当前实体数据的最高版本的版本号为2、有效期为{20201201,20211130},更新版本数据的有效期为{20210801,},即更新版本数据的有效期与最高版本的有效期形成了右交叉(或者称为右重叠)的关系,即更新版本数据的有效期的起始日期和最高版本的有效期的结束日期存在交叉,没有形成连续期间,这会导致目标实体数据的多个版本数据之间存在有效期的冲突,从而在第三方业务***访问指定实体数据的指定有效期的版本数据时,可能发生数据的命中异常,也无法满足对多业务***用户使用基础实体数据的细粒度的定制化需求。因此,本实施例在判断所述更新版本数据的更新有效期和最高版本的有效期之间不构成连续期间时,将所述更新有效期和最高版本的有效期重置为连续期间。如图3C所示,在更新版本数据的有效期与最高版本的有效期形成了右交叉的关系的情形下,一种可选的方案是将更新版本数据的有效期的起始日期更新为版本号为2的最高版本的有效期中的结束日期,即更新版本数据的有效期设置为{20211130,},同时将更新版本数据的版本号在最高版本号2的基础上顺序加1,即版本号设置为3,发布为正式的可用版本数据,从而结束当前指定版本数据的更新会话。
在一个实施方式中,如果最高版本的有效期中的结束日期为空值,例如假设最高版本的有效期为{20201201,},更新版本数据的有效期为{20210801,},则上述示例中的策略可以修改为将最高版本的有效期中的结束日期更新为所述更新版本数据的有效期的起始日期,即将版本号为2的最高版本的有效期重置为{20201201,20210801},以确保所述更新版本数据的更新有效期和最高版本的有效期形成连续期间。
在另一实施方式中,在更新版本数据的有效期与最高版本的有效期形成了右相离(或者称为右间隔)的关系时,假设更新版本数据的有效期为{20211231,},即更新版本数据的有效期与最高版本的有效期形成了右相离的关系,即更新版本数据的有效期的起始日期和最高版本的有效期的结束日期存在间隔期间,没有形成连续期间。此时,仍然可以采用上述的有效期更新策略,即将更新版本数据的有效期的起始日期更新为版本号为2的最高版本的有效期中的结束日期,即更新版本数据的有效期设置为{20211130,},同时将更新版本数据的版本号在最高版本号2的基础上顺序加1,即版本号设置为3,发布为正式的可用版本数据。
在另一实施方式中,在更新版本数据的有效期与最低版本的有效期形成了左交叉(或者称为左重叠)的关系时,假设更新版本数据的有效期为{,20200801},最低版本的有效期为{20200601,20201201},即更新版本数据的有效期与最低版本的有效期形成了左交叉的关系,即更新版本数据的有效期的结束日期和最低版本的有效期的起始日期存在交叉,没有形成连续期间。此时,可以将更新版本数据的有效期的结束日期更新为最低版本的有效期中的起始日期,即更新版本数据的有效期设置为{,20200601},同时将更新版本数据的版本号在最低版本号1的基础上顺序减1,即版本号设置为0,发布为正式的可用版本数据。
在一个实施方式中,如果最低版本的有效期中的起始日期为空值,例如如图3B所示,假设最低版本的有效期为{,20201201},更新版本数据的有效期为{,20200801},则上述示例中的策略可以修改为将最低版本的有效期中的起始日期更新为所述更新版本数据的有效期的结束日期,即将版本号为1的最低版本的有效期重置为{20200801,20201201},以确保所述更新版本数据的更新有效期和最低版本的有效期形成连续期间。
在另一实施方式中,在更新版本数据的有效期与最低版本的有效期形成了左相离(或者成为左间隔)的关系时,假设更新版本数据的有效期为{,20200801},最低版本的有效期为{20201001,20201201},即更新版本数据的有效期与最低版本的有效期形成了左相离的关系,即更新版本数据的有效期的结束日期和最低版本的有效期的起始日期存在间隔期间,没有形成连续期间。此时,可以将更新版本数据的有效期的结束日期更新为最低版本的有效期中的起始日期,即更新版本数据的有效期设置为{,20201001},同时将更新版本数据的版本号在最低版本号1的基础上顺序减1,即版本号设置为0,发布为正式的可用版本数据。
本实施例通过对多版本实体数据的更新处理,一方面保证了实体数据的版本修改的数据一致性和可靠性;另一方面,通过实体数据的多版本之间连续的有效期属性更新,实现各业务***对基础数据的各版本数据的细粒度的定制化访问,解决多业务***访问和更新基础数据的版本冲突问题。
在上述实施例基础上,图4是根据本申请另一实施例的医疗数据平台的数据版本管理方法的流程示意图。如图4所示,本实施例的医疗数据平台的数据版本管理方法,实现于主数据服务器110中,还包括以下步骤:
步骤S401,经由数据服务接口接收第三方业务***130发送的第二更新请求,所述第二更新请求用于对所述目标实体数据集中的指定实体数据进行版本新增。
本实施例中,数据服务接口是主数据服务器110以应用编程接口(API)的方式授权给相关的第三方业务***对目标实体数据进行版本数据更新写入的服务接口。第三方业务***130可以通过数据服务接口向主数据服务器110提交对目标实体数据的版本更新请求。在一个实施方式中,数据服务接口还具有验证第三方业务***130的版本更新请求的有效性和合法性的功能。
步骤S402,响应于所述第二更新请求,从所述第二更新请求读取与所述指定实体数据关联的更新版本数据,其中所述更新版本数据包括更新有效期。
在一个实施方式中,第三方业务***130经由数据服务接口发送的版本更新请求中可以携带有指定实体数据的实体编码、更新版本数据以及第三方业务***的***标识等参数。主数据服务器110在接收到该更新请求之后,从所述更新请求中读取与所述指定实体数据关联的更新版本数据。主数据服务器110从更新请求中读取到所述指定实体数据的更新版本数据,随后主数据服务器110可以基于从版本更新请求中携带的实体编码从当前实体数据集中查询获得该实体数据的实体标识后将所述更新版本数据临时保存。
步骤S403,在所述更新版本数据满足预定的版本发布条件时,获取所述指定实体数据的可用版本数据中的最低版本和最高版本,根据所述更新有效期与所述最低版本或最高版本的有效期的关系将所述更新版本数据保存为所述指定实体数据的另一可用版本数据,其中在所述更新有效期与所述最低版本或最高版本的有效期不构成连续期间时,将所述更新有效期与所述最低版本或最高版本的有效期重置为连续期间。
本实施例中,主数据服务器110会确定所述更新版本数据是否满足预定的版本发布条件,如果所述更新版本数据满足预定的版本发布条件时,则获取所述指定实体数据的可用版本数据中的最低版本和最高版本,根据所述更新有效期与所述最低版本或最高版本的有效期的关系将所述更新版本数据保存为所述指定实体数据的另一可用版本数据。在一些实施方式中,主数据服务器110确定所述更新版本数据是否满足预定的版本发布条件,可以包括判断更新版本数据的有效期与该实体数据的可用版本数据的有效期之间是否存在无法克服的逻辑冲突,例如更新版本数据的有效期与最低版本或最高版本的有效期之间形成了包含关系,或者更新版本数据的有效期介于最低版本和最高版本的有效期之间等。在一些实施方式中,也可以由数据管理员通过管理客户端120审核确定所述更新版本数据是否满足预定的版本发布条件。
本实施例中,在所述更新有效期与所述最低版本或最高版本的有效期不构成连续期间时,将所述更新有效期与所述最低版本或最高版本的有效期重置为连续期间同样适用前述实施例的更新策略,即在更新版本数据的有效期与最高版本的有效期形成右交叉或右相离、更新版本数据的有效期与最低版本的有效期形成左交叉或左相离时,同样适用前述实施例描述的策略,在此不再赘述。
在上述任一实施例基础上,图5是根据本申请另一实施例的医疗数据平台的数据版本管理方法的流程示意图。如图5所示,本实施例的医疗数据平台的数据版本管理方法,实现于主数据服务器110中,还包括以下步骤:
步骤S501,经由数据服务接口接收第三方业务***130发送的至少一个第三更新请求,所述第三更新请求用于对所述目标实体数据集中的指定实体数据进行版本新增。
步骤S502,响应于所述至少一个第三更新请求,从所述至少一个第三更新请求依次读取与所述指定实体数据关联的至少一个临时版本数据,将所述至少一个临时版本数据写入所述指定实体数据的候选版本数据列表。
步骤S503,从所述候选版本数据列表中确定一条临时版本数据作为更新版本数据,其中所述更新版本数据包括更新有效期。
步骤S504,在所述更新版本数据满足预定的版本发布条件时,获取所述指定实体数据的可用版本数据中的最低版本和最高版本,根据所述更新有效期与所述最低版本或最高版本的有效期的关系将所述更新版本数据保存为所述指定实体数据的另一可用版本数据,其中在所述更新有效期与所述最低版本或最高版本的有效期不构成连续期间时,将所述更新有效期与所述最低版本或最高版本的有效期重置为连续期间。
本实施例中,在所述更新有效期与所述最低版本或最高版本的有效期不构成连续期间时,将所述更新有效期与所述最低版本或最高版本的有效期重置为连续期间同样适用前述实施例的更新策略,在此不再赘述。
通过以上实施例,第三方业务***也可以发起对目标实体数据集中指定实体数据的版本更新,并且与数据管理员通过管理客户端对基础数据的版本更新协同和互补,实现对实体数据的版本数据的统一更新和访问,在保证各业务***共享基础实体数据的版本基础上,有利于实现对实体数据的多版本的细粒度的定制化访问,解决多业务***使用基础数据的版本冲突问题。
在上述任一实施例基础上,图6是根据本申请另一实施例的医疗数据平台的数据版本管理方法的流程示意图。如图6所示,本实施例的医疗数据平台的数据版本管理方法,实现于主数据服务器110中,还包括以下步骤:
步骤S601,经由查询服务接口接收第三方业务***对所述目标实体数据集中指定实体数据的查询请求,所述查询请求携带有所述指定实体数据的指定有效期;
步骤S602,响应于所述查询请求,从所述目标实体数据集中获取所述指定实体数据的至少一个目标可用版本数据,并向所述第三方业务***返回所述至少一个目标可用版本数据,其中所述至少一个目标可用版本数据的有效期在所述指定有效期的范围之内。
在一些实施方式中,步骤S602中,从所述目标实体数据集中获取所述指定实体数据的至少一个目标可用版本数据可以包括:
从所述目标实体数据集中获取所述指定实体数据的指定可用版本数据,其中所述指定可用版本数据是有效期在所述指定有效期的范围之内的最高版本。
在一些实施方式中,第三方业务***130接收到所述至少一个目标可用版本数据之后,可以缓存在本地服务器,所述本地服务器可以包括存储所述目标可用版本数据的本地数据库。第三方业务***130可以直接使用基于本地数据库中的实体数据的可用版本,而无需实时访问主数据服务器110,从而可以提高业务***运行性能和用户端响应速度。
通过以上实施例,可以实现第三方业务***对目标实体数据集中指定实体数据的细粒度查询,实现第三方业务***对实体数据的指定版本的实时性访问,实现各业务***对基础数据的各版本数据的细粒度的定制化访问,解决多业务***使用基础数据的版本冲突问题。
在上述任一实施例基础上,图7是根据本申请另一实施例的医疗数据平台的数据版本管理方法的流程示意图。如图7所示,本实施例的医疗数据平台的数据版本管理方法,实现于主数据服务器110中,还包括以下步骤:
步骤S701,经由订阅服务接口接收第三方业务***130对所述目标实体数据集中指定实体数据的订阅请求;
步骤S702,响应于所述订阅请求,当所述指定实体数据的可用版本数据中的最高版本发生变更时,向所述第三方业务***推送所述指定实体数据的最高版本。
在一些实施方式中,主数据服务器110可以预先对各第三方业务***的查询、写入和订阅权限进行配置,以授权指定的第三方业务***获得对指定实体数据集或者对该指定实体数据集中指定实体数据进行查询、写入和订阅。在一些实施方式中,所述配置的一种实现方式是预先配置各第三方业务***的服务端地址与指定实体数据集之间的权限映射关系。
在一些实施方式中,第三方业务***130接收到所述指定实体数据的最高版本之后,可以缓存在本地服务器,所述本地服务器可以包括存储所述指定实体数据的最高版本的本地数据库。第三方业务***130可以直接使用基于本地数据库中的实体数据的最高版本数据,而无需实时访问主数据服务器110,从而可以提高业务***运行性能和用户端响应速度。
在一些实施方式中,主数据服务器110中的实体数据集也可以具有多个可用数据集版本,每个可用数据集版本包括至少一条实体数据,每条实体数据包括至少一条可用版本数据,每个可用数据集版本的有效期为该可用数据集版本中实体数据的可用版本数据的有效期的并集,并且所述目标实体数据集的全部可用数据集版本的有效期也构成连续期间。从而,该实体数据集的多版本数据可以从实体数据和实体数据集的两个版本维度实现更加灵活的定制化访问。
如图7所示,所述方法还可以进一步包括:
步骤S703,检测到所述目标实体数据集的可用数据集版本发生变更,将第三方业务***对所述目标实体数据集的订阅自动切换到所述目标实体数据集的最高可用数据集版本;
步骤S704,响应于所述订阅请求,向所述第三方业务***推送所述目标实体数据集的最高可用数据集版本中指定实体数据的最高版本。
在一些实施方式中,主数据服务器在接收到第三方业务***130针对目标实体数据集的订阅请求之后,可以保存第三方业务***130的服务器接口地址与目标实体数据集之间的映射关系,所述向所述第三方业务***推送所述目标实体数据集的最高可用数据集版本中指定实体数据的最高版本可以包括:
获取订阅所述目标实体数据集的第三方业务***的服务器接口地址;根据所述服务器接口地址,向所述第三方业务***推送所述目标实体数据集的最高可用数据集版本中指定实体数据的最高版本。
通过以上实施例,可以实现目标实体数据集的数据集版本发生变更时,不用通知第三方业务***重新配置对目标实体数据集的最高数据集版本的订阅权限,***可以自动切换第三方业务***对目标实体数据集的数据集版本的订阅关系,并实现指定实体数据的最高版本数据的自动推送,提高第三方业务***使用基础数据的便利性,并且可以实现第三方业务***对实体数据的最新版本的实时数据同步,从而进一步实现各业务***对基础数据的各版本数据的细粒度的定制化访问,解决多业务***使用基础数据的版本冲突问题。
图8是根据本申请一实施例的医疗数据平台的数据版本管理装置的结构示意图。如图8所示,本申请实施例的医疗数据平台的数据版本管理装置包括以下模块:
请求接收模块810,用于接收管理客户端120发送的第一更新请求,所述第一更新请求用于对目标实体数据集中指定实体数据的指定版本数据进行修改,其中所述目标实体数据集包括至少一条实体数据,每条实体数据包括至少一条可用版本数据,每条可用版本数据包括有效期,每条实体数据的全部可用版本数据的有效期构成连续期间;
数据服务模块820,用于响应于所述第一更新请求,从所述目标实体数据集获取所述指定版本数据,在会话缓存中保存所述指定版本数据的副本,并向所述管理客户端120返回所述指定版本数据,接收所述管理客户端120发送的对所述指定版本数据的更新版本数据,所述更新版本数据包括更新有效期;
数据保存模块830,用于在确定所述目标实体数据集存储的所述指定版本数据相比所述副本没有发生变更时,获取所述指定实体数据的可用版本数据中的最低版本和最高版本,根据所述更新有效期与所述最低版本或最高版本的有效期的关系将所述更新版本数据保存为所述指定实体数据的另一可用版本数据,其中在所述更新有效期与所述最低版本或最高版本的有效期不构成连续期间时,将所述更新有效期与所述最低版本或最高版本的有效期设置为连续期间。
进一步地,如图9所示,本申请实施例的医疗数据平台的数据版本管理装置中,请求接收模块810还可以包括第一接收子单元811,数据服务模块820还可以包括第一服务子单元821。
其中,第一接收子单元811,用于经由数据服务接口接收第三方业务***130发送的第二更新请求,所述第二更新请求用于对所述目标实体数据集中的指定实体数据进行版本新增。
第一服务子单元821,用于响应于所述第二更新请求,从所述第二更新请求读取与所述指定实体数据关联的更新版本数据,其中所述更新版本数据包括更新有效期。
所述数据保存模块830,还用于在所述更新版本数据满足预定的版本发布条件时,获取所述指定实体数据的可用版本数据中的最低版本和最高版本,根据所述更新有效期与所述最低版本或最高版本的有效期的关系将所述更新版本数据保存为所述指定实体数据的另一可用版本数据,其中在所述更新有效期与所述最低版本或最高版本的有效期不构成连续期间时,将所述更新有效期与所述最低版本或最高版本的有效期重置为连续期间。
进一步地,如图9所示,本申请实施例的医疗数据平台的数据版本管理装置中,请求接收模块810还可以包括第二接收子单元812,数据服务模块820还可以包括第二服务子单元822和数据选择子单元823。
其中,第二接收子单元812,用于经由数据服务接口接收第三方业务***130发送的至少一个第三更新请求,所述第三更新请求用于对所述目标实体数据集中的指定实体数据进行版本新增。
第二服务子单元822,用于响应于所述至少一个第三更新请求,从所述至少一个第三更新请求依次读取与所述指定实体数据关联的至少一个临时版本数据,将所述至少一个临时版本数据写入所述指定实体数据的候选版本数据列表。
数据选择子单元823,用于从所述候选版本数据列表中确定一条临时版本数据作为更新版本数据,其中所述更新版本数据包括更新有效期。
所述数据保存模块830,还用于在所述更新版本数据满足预定的版本发布条件时,获取所述指定实体数据的可用版本数据中的最低版本和最高版本,根据所述更新有效期与所述最低版本或最高版本的有效期的关系将所述更新版本数据保存为所述指定实体数据的另一可用版本数据,其中在所述更新有效期与所述最低版本或最高版本的有效期不构成连续期间时,将所述更新有效期与所述最低版本或最高版本的有效期重置为连续期间。
在一些实施方式中,数据保存模块830还可以用于:
判断所述更新有效期与所述最低版本的有效期是否形成左交叉或左相离;如是,则在所述最低版本的起始日期不为空时,将所述更新有效期的结束日期更新为所述最低版本的起始日期,在所述最低版本的起始日期为空时,将所述最低版本的起始日期更新为所述更新有效期的结束日期;否则,
判断所述更新有效期与所述最高版本的有效期是否形成右交叉或右相离;如是,则在所述最高版本的结束日期不为空时,则将所述更新有效期的起始日期更新为所述最高版本的结束日期,在所述最高版本的结束日期为空时,则将所述最高版本的结束日期更新为所述更新有效期的起始日期。
进一步地,如图10所示,本申请实施例的医疗数据平台的数据版本管理装置还可以包括:
查询接收模块910,用于经由查询服务接口接收第三方业务***对所述目标实体数据集中指定实体数据的查询请求,所述查询请求携带有所述指定实体数据的指定有效期;
查询处理模块920,用于响应于所述查询请求,从所述目标实体数据集中获取所述指定实体数据的至少一个目标可用版本数据,并向所述第三方业务***返回所述至少一个目标可用版本数据,其中所述至少一个目标可用版本数据的有效期在所述指定有效期的范围之内。
在一些实施方式中,所述查询处理模块920,还用于从所述目标实体数据集中获取所述指定实体数据的指定可用版本数据,其中所述指定可用版本数据是有效期在所述指定有效期的范围之内的最高版本。
进一步地,如图11所示,本申请实施例的医疗数据平台的数据版本管理装置还可以包括:
订阅接收模块1010,用于经由订阅服务接口接收第三方业务***130对所述目标实体数据集中指定实体数据的订阅请求;
订阅处理模块1020,用于响应于所述订阅请求,当所述指定实体数据的可用版本数据中的最高版本发生变更时,向所述第三方业务***推送所述指定实体数据的最高版本。
在一些实施方式中,所述目标实体数据集包括至少一个可用数据集版本,每个可用数据集版本包括至少一条实体数据,每个可用数据集版本的有效期为该可用数据集版本中实体数据的可用版本数据的有效期的并集,所述目标实体数据集的全部可用数据集版本的有效期构成连续期间。所述装置还可以进一步包括:
订阅切换模块1030,用于检测到所述目标实体数据集的可用数据集版本发生变更,将第三方业务***对所述目标实体数据集的订阅自动切换到所述目标实体数据集的最高可用数据集版本;
所述订阅处理模块1020,还用于响应于所述订阅请求,向所述第三方业务***推送所述目标实体数据集的最高可用数据集版本中指定实体数据的最高版本。
需要说明的是,本领域技术人员可以理解,本申请的方法实施例所描述的不同实施方式及其说明解释和所达到的技术效果,同样适用于本申请的装置实施例中,在此不再赘述。
本申请实施例可以用于主数据管理平台,实现对多版本的基础实体据的细粒度的更新和定制化访问,避免多业务***使用和更新基础实体数据的版本冲突问题。本申请可以通过软件、硬件或软硬件结合的方式实施。当实现为计算机软件程序时,该计算机软件程序可以安装于移动终端、计算机、服务器等各种电子设备中被一个或多个处理器执行以实现相应功能。
进一步地,本申请实施例还可以包括一种服务器,该服务器包括:一个或多个处理器;存储器,用于存储一个或多个计算机程序;其中,所述计算机程序被所述一个或多个处理器执行以实现如前述任一实施例描述的方法步骤。
进一步地,本申请实施例还可以包括一种计算机可读介质,该计算机可读介质存储有程序指令,在这样的实施例中,当该计算机可读存储介质被装载在计算设备中时,该程序指令可以被一个或多个处理器执行以执行本申请任一实施例中描述的方法步骤。
进一步地,本申请的实施例还可以包括一种计算机程序产品,包括承载程序指令的计算机可读介质,在这样的实施例中,该程序指令可以被一个或多个处理器执行以执行本申请任一实施例中描述的方法步骤。
以上描述了本申请示例性的实施例,应当理解,上述示例性的实施例不是限制性的,而是说明性的,本申请的保护范围不限于此。应理解,本领域技术人员在不脱离本申请的精神和范围的情况下,可以对本申请实施例进行修改和变型,这些修改和变型理应在本申请的保护范围之内。
Claims (10)
1.一种医疗数据平台的数据版本管理方法,其特征在于,包括:
接收管理客户端发送的第一更新请求,所述第一更新请求用于对目标实体数据集中指定实体数据的指定版本数据进行修改,其中所述目标实体数据集包括至少一条实体数据,每条实体数据包括至少一条可用版本数据,每条可用版本数据包括有效期,每条实体数据的全部可用版本数据的有效期构成连续期间;
响应于所述第一更新请求,从所述目标实体数据集获取所述指定版本数据,在会话缓存中保存所述指定版本数据的副本,并向所述管理客户端返回所述指定版本数据,接收所述管理客户端发送的对所述指定版本数据的更新版本数据,所述更新版本数据包括更新有效期;
在确定所述目标实体数据集中的所述指定版本数据相比所述副本没有发生变更时,获取所述指定实体数据的可用版本数据中的最低版本和最高版本,根据所述更新有效期与所述最低版本的有效期是否形成左交叉或左相离的关系,或者所述更新有效期与所述最高版本的有效期是否形成右交叉或右相离的关系将所述更新版本数据保存为所述指定实体数据的另一可用版本数据,其中所述有效期和更新有效期均包括由起始日期和结束日期组成的二元组,在所述更新有效期与所述最低版本的有效期形成左交叉或左相离时,将所述更新有效期与所述最低版本的有效期重置为连续期间,在所述更新有效期与所述最高版本的有效期形成右交叉或右相离时,将所述更新有效期与所述最高版本的有效期重置为连续期间。
2.根据权利要求1所述的数据版本管理方法,其特征在于,所述方法包括:
经由数据服务接口接收第三方业务***发送的第二更新请求,所述第二更新请求用于对所述目标实体数据集中的指定实体数据进行版本新增;
响应于所述第二更新请求,从所述第二更新请求读取与所述指定实体数据关联的更新版本数据,其中所述更新版本数据包括更新有效期;
在所述更新版本数据满足预定的版本发布条件时,获取所述指定实体数据的可用版本数据中的最低版本和最高版本,根据所述更新有效期与所述最低版本或最高版本的有效期的关系将所述更新版本数据保存为所述指定实体数据的另一可用版本数据,其中在所述更新有效期与所述最低版本或最高版本的有效期不构成连续期间时,将所述更新有效期与所述最低版本或最高版本的有效期重置为连续期间。
3.根据权利要求1所述的数据版本管理方法,其特征在于,所述方法还包括:
经由数据服务接口接收第三方业务***发送的至少一个第三更新请求,所述第三更新请求用于对所述目标实体数据集中的指定实体数据进行版本新增;
响应于所述至少一个第三更新请求,从所述至少一个第三更新请求依次读取与所述指定实体数据关联的至少一个临时版本数据,将所述至少一个临时版本数据写入所述指定实体数据的候选版本数据列表;
从所述候选版本数据列表中确定一条临时版本数据作为更新版本数据,其中所述更新版本数据包括更新有效期;
在所述更新版本数据满足预定的版本发布条件时,获取所述指定实体数据的可用版本数据中的最低版本和最高版本,根据所述更新有效期与所述最低版本或最高版本的有效期的关系将所述更新版本数据保存为所述指定实体数据的另一可用版本数据,其中在所述更新有效期与所述最低版本或最高版本的有效期不构成连续期间时,将所述更新有效期与所述最低版本或最高版本的有效期重置为连续期间。
4.根据权利要求1-3任一项所述的数据版本管理方法,其特征在于,所述在所述更新有效期与所述最低版本的有效期形成左交叉或左相离时,将所述更新有效期与所述最低版本的有效期重置为连续期间包括:
在所述最低版本的起始日期不为空时,将所述更新有效期的结束日期更新为所述最低版本的起始日期,在所述最低版本的起始日期为空时,将所述最低版本的起始日期更新为所述更新有效期的结束日期;
所述在所述更新有效期与所述最高版本的有效期形成右交叉或右相离时,将所述更新有效期与所述最高版本的有效期重置为连续期间包括:在所述最高版本的结束日期不为空时,则将所述更新有效期的起始日期更新为所述最高版本的结束日期,在所述最高版本的结束日期为空时,则将所述最高版本的结束日期更新为所述更新有效期的起始日期。
5.根据权利要求4所述的数据版本管理方法,其特征在于,所述方法还包括:
经由订阅服务接口接收第三方业务***对所述目标实体数据集中指定实体数据的订阅请求;
响应于所述订阅请求,当所述指定实体数据的可用版本数据中的最高版本发生变更时,向所述第三方业务***推送所述指定实体数据的最高版本。
6.根据权利要求5所述的数据版本管理方法,其特征在于,所述目标实体数据集包括至少一个可用数据集版本,每个可用数据集版本包括至少一条实体数据,每个可用数据集版本的有效期为该可用数据集版本中实体数据的可用版本数据的有效期的并集,所述目标实体数据集的全部可用数据集版本的有效期构成连续期间,所述方法还包括:
检测到所述目标实体数据集的可用数据集版本发生变更,将第三方业务***对所述目标实体数据集的订阅自动切换到所述目标实体数据集的最高可用数据集版本;
响应于所述订阅请求,向所述第三方业务***推送所述目标实体数据集的最高可用数据集版本中指定实体数据的最高版本。
7.根据权利要求6所述的数据版本管理方法,其特征在于,所述方法还包括:
所述向所述第三方业务***推送所述目标实体数据集的最高可用数据集版本中指定实体数据的最高版本包括:
获取订阅所述目标实体数据集的第三方业务***的服务器接口地址;
根据所述服务器接口地址,向所述第三方业务***推送所述目标实体数据集的最高可用数据集版本中指定实体数据的最高版本。
8.根据权利要求7所述的数据版本管理方法,其特征在于,所述方法还包括:
经由查询服务接口接收第三方业务***对所述目标实体数据集中指定实体数据的查询请求,所述查询请求携带有所述指定实体数据的指定有效期;
响应于所述查询请求,从所述目标实体数据集中获取所述指定实体数据的至少一个目标可用版本数据,并向所述第三方业务***返回所述至少一个目标可用版本数据,其中所述至少一个目标可用版本数据的有效期在所述指定有效期的范围之内。
9.一种医疗数据平台的数据版本管理装置,其特征在于,包括:
请求接收模块,用于接收管理客户端发送的第一更新请求,所述第一更新请求用于对目标实体数据集中指定实体数据的指定版本数据进行修改,其中所述目标实体数据集包括至少一条实体数据,每条实体数据包括至少一条可用版本数据,每条可用版本数据包括有效期,每条实体数据的全部可用版本数据的有效期构成连续期间;
数据服务模块,用于响应于所述第一更新请求,从所述目标实体数据集获取所述指定版本数据,在会话缓存中保存所述指定版本数据的副本,并向所述管理客户端返回所述指定版本数据,接收所述管理客户端发送的对所述指定版本数据的更新版本数据,所述更新版本数据包括更新有效期;
数据保存模块,用于在确定所述目标实体数据集中的所述指定版本数据相比所述副本没有发生变更时,获取所述指定实体数据的可用版本数据中的最低版本和最高版本,根据所述更新有效期与所述最低版本的有效期是否形成左交叉或左相离的关系,或者所述更新有效期与所述最高版本的有效期是否形成右交叉或右相离的关系将所述更新版本数据保存为所述指定实体数据的另一可用版本数据,其中所述有效期和更新有效期均包括由起始日期和结束日期组成的二元组,在所述更新有效期与所述最低版本的有效期形成左交叉或左相离时,将所述更新有效期与所述最低版本的有效期重置为连续期间,在所述更新有效期与所述最高版本的有效期形成右交叉或右相离时,将所述更新有效期与所述最高版本的有效期重置为连续期间。
10.一种服务器,包括:
一个或多个处理器;
存储器,用于存储一个或多个计算机程序;其中,所述计算机程序被所述一个或多个处理器执行以实现如权利要求1-8任一项所述的数据版本管理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210511877.1A CN114610740B (zh) | 2022-05-12 | 2022-05-12 | 医疗数据平台的数据版本管理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210511877.1A CN114610740B (zh) | 2022-05-12 | 2022-05-12 | 医疗数据平台的数据版本管理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114610740A CN114610740A (zh) | 2022-06-10 |
CN114610740B true CN114610740B (zh) | 2022-08-16 |
Family
ID=81870623
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210511877.1A Active CN114610740B (zh) | 2022-05-12 | 2022-05-12 | 医疗数据平台的数据版本管理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114610740B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115454490A (zh) * | 2022-09-09 | 2022-12-09 | 中国人民财产保险股份有限公司 | 服务访问方法、装置、***及电子设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021087892A1 (zh) * | 2019-11-07 | 2021-05-14 | Oppo广东移动通信有限公司 | 资源的订阅方法、设备及存储介质 |
CN113660168A (zh) * | 2021-10-19 | 2021-11-16 | 上海柯林布瑞信息技术有限公司 | 一种多中心研究数据的处理方法、装置和服务器 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2015216608B2 (en) * | 2014-02-11 | 2019-05-23 | Wix.Com Ltd. | System for synchronization of changes in edited websites and interactive applications |
US10572469B2 (en) * | 2016-05-31 | 2020-02-25 | Oracle International Corporation | Versioning and non-disruptive servicing of in-memory units in a database |
US10545995B2 (en) * | 2017-05-22 | 2020-01-28 | Sap Se | Validating query results during asynchronous database replication |
US10713124B2 (en) * | 2017-11-21 | 2020-07-14 | Rubrik, Inc. | Database snapshot and backup management with recoverable chains |
CN109582329A (zh) * | 2018-09-29 | 2019-04-05 | 阿里巴巴集团控股有限公司 | 数据管理及订阅方法、装置、***、电子设备及存储介质 |
CN111294337B (zh) * | 2020-01-15 | 2024-07-23 | 平安科技(深圳)有限公司 | 一种基于令牌的鉴权方法及装置 |
-
2022
- 2022-05-12 CN CN202210511877.1A patent/CN114610740B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021087892A1 (zh) * | 2019-11-07 | 2021-05-14 | Oppo广东移动通信有限公司 | 资源的订阅方法、设备及存储介质 |
CN113660168A (zh) * | 2021-10-19 | 2021-11-16 | 上海柯林布瑞信息技术有限公司 | 一种多中心研究数据的处理方法、装置和服务器 |
Non-Patent Citations (2)
Title |
---|
Privacy-enhanced Remote Data Integrity Checking with Updatable Timestamp;Wu T;《Information Sciences》;20201231;第572卷(第2期);全文 * |
英版电子海图及电子航海图书数据维护和更新;李翔;《航海技术》;20211231;第60-64页 * |
Also Published As
Publication number | Publication date |
---|---|
CN114610740A (zh) | 2022-06-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3811596B1 (en) | Hierarchical namespace with strong consistency and horizontal scalability | |
US10484456B2 (en) | Sharing a content item | |
US9436694B2 (en) | Cooperative resource management | |
US10097659B1 (en) | High performance geographically distributed data storage, retrieval and update | |
US8862644B2 (en) | Data distribution system | |
US8788760B2 (en) | Adaptive caching of data | |
CN112084258A (zh) | 一种数据同步方法和装置 | |
US8661055B2 (en) | File server system and storage control method | |
Chun et al. | Mobius: unified messaging and data serving for mobile apps | |
CN109947668A (zh) | 存储数据的方法和装置 | |
CN103180842A (zh) | 云计算***和用于该云计算***的数据同步方法 | |
WO2019245765A1 (en) | Hierarchical namespace service with distributed name resolution caching and synchronization | |
WO2019184775A1 (zh) | 管理数据的存储方法、设备及存储介质 | |
US8417679B1 (en) | Fast storage writes | |
CN110825704A (zh) | 一种读数据方法、写数据方法及服务器 | |
CN112685499A (zh) | 一种工作业务流的流程数据同步方法、装置及设备 | |
Mealha et al. | Data replication on the cloud/edge | |
CN114610740B (zh) | 医疗数据平台的数据版本管理方法及装置 | |
CN109684270A (zh) | 数据库归档方法、装置、***、设备及可读存储介质 | |
Shraer et al. | Cloudkit: Structured storage for mobile applications | |
US11429311B1 (en) | Method and system for managing requests in a distributed system | |
US20180300369A1 (en) | Secure query interface | |
US9734185B2 (en) | Mechanism for communication in a distributed database | |
US8447729B1 (en) | Techniques for performing indication management | |
US10015248B1 (en) | Syncronizing changes to stored data among multiple client devices |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |