CN103020058B - 一种多版本数据获取方法和装置 - Google Patents

一种多版本数据获取方法和装置 Download PDF

Info

Publication number
CN103020058B
CN103020058B CN201110282148.5A CN201110282148A CN103020058B CN 103020058 B CN103020058 B CN 103020058B CN 201110282148 A CN201110282148 A CN 201110282148A CN 103020058 B CN103020058 B CN 103020058B
Authority
CN
China
Prior art keywords
version
edition
data
version number
edition data
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
CN201110282148.5A
Other languages
English (en)
Other versions
CN103020058A (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.)
Alibaba Singapore Holdings Pte Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201110282148.5A priority Critical patent/CN103020058B/zh
Publication of CN103020058A publication Critical patent/CN103020058A/zh
Priority to HK13105799.7A priority patent/HK1178995A1/zh
Application granted granted Critical
Publication of CN103020058B publication Critical patent/CN103020058B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请提供了一种多版本数据获取方法和装置,所述方法包括:获取不同多版本数据分别对应的多个最新版本的版本号;所述版本号包含所述多版本数据的更新起始时间信息;从所述多个最新版本中,选择更新起始时间最早的最新版本的版本号作为统一版本号;确定所述不同多版本数据对应的统一版本;所述统一版本为,版本号与所述统一版本号相同的版本;获取所述统一版本对应的多版本数据。采用本申请提供的方法或装置,能够保证在任何时间点获取的多版本数据都具有一致性。

Description

一种多版本数据获取方法和装置
技术领域
本申请涉及数据处理技术领域,特别是涉及一种多版本数据获取方法和装置。
背景技术
随着数据处理技术的不断发展,数据的应用范围也越来越广泛。通常,按照一定时间间隔进行更新的数据,会采用不同的版本号对更新前和更新后的数据加以标识。多版本数据,就是指描述同一信息的数据,在不同的时间段具有不同的数值,也即具有多个不同的版本。以某网站的用户浏览量为例:2011年8月24日的浏览量(该数据可以是在2011年8月25日零时更新完成),其版本号可以以时间作为版本号,记为20110824;2011年8月25日的浏览量(该数据可以是在2011年8月26日零时更新完成),其版本号可以记为20110825。可见,该网站的用户浏览量就是多版本数据,具有两个不同的版本:20110824和20110825。
当需要获取不同的多版本数据进行分析时,往往需要保证获取的不同的多版本数据具有相同的版本,即需要保证获取的多版本数据的版本具有一致性。例如:某些情况下需要获取地区访问量数据和总访问量数据进行分析。具体的,这两个多版本数据可以分别存储在地区访问量时间分布表和总访问量分布表中。其中,地区访问量时间分布表,表示某地区的用户在24小时内对A网站的访问量的时间分布。总访问量分布表,表示的是全世界的用户在24小时内对A网站的访问量的时间分布。如果需要根据两个表中的多版本数据,计算某一时段内某地区的用户对于A网站的访问量占全世界的用户的访问量的百分比,那么必然需要获取相同版本(即相同日期更新)的地区访问量时间分布表和总访问量分布表中的数据,才能够使该计算结果符合实际情况。
为了保证获取的不同的多版本数据之间的版本具有一致性,现有技术中可以将不同的多版本数据的版本更新起始时间预先设置成相同时刻。例如对于多版本数据A和多版本数据B,将A和B的更新起始时间都设置为凌晨1点。基于上述情况,对应的现有技术中的多版本数据的获取方法,则具体为:获取这不同的多版本数据分别对应的最近更新的版本中的各种数据。
但是,由于现有技术中不同的多版本数据的数据量大小不尽相同,尽管更新起始时间是相同的,但是更新过程需要的时间可能不一样,所以更新完成时间就是不一样的。因此,经常会出现某些多版本数据已经更新完成,而另外的多版本数据还在更新的情况。这时,数据版本的一致性仍然没有办法保证。仍以多版本数据A和多版本数据B为例,多版本数据A和多版本数据B因为表示不同的信息,两者所包括的数据量大小一般情况下也是不同的,所以即便A和B两个版本的数据能够同时进行更新,两者的更新完成时间也是不一致的。
因此,现有技术中的多版本数据获取方法,就会导致获取的不同的多版本数据之间存在版本不一致的问题。而因为没有正确获取多版本数据,相应的多版本数据获取装置(如服务器)势必会接收到对于未正确获取的多版本数据多次或者重复发送的获取请求,而服务器因为在每一次接收到获取请求时都会进行响应,就会导致服务器多次响应同一个获取请求的情况,这就造成了服务器等硬件处理资源的浪费。
发明内容
本申请所要解决的技术问题是提供一种多版本数据获取方法,用以解决现有技术中进行多版本数据获取时,获取的不同的多版本数据之间存在版本不一致的问题。
本申请还提供了一种多版本数据获取装置,用以保证上述方法在实际中的实现及应用。
为了解决上述问题,本申请公开了一种多版本数据获取方法,包括:
获取不同多版本数据分别对应的多个最新版本的版本号;所述版本号包含所述多版本数据的更新起始时间信息;
从所述多个最新版本中,选择更新起始时间最早的最新版本的版本号作为统一版本号;
确定所述不同多版本数据对应的统一版本;所述统一版本为,版本号与所述统一版本号相同的版本;
获取所述统一版本对应的多版本数据。
优选的,所述确定不同多版本数据对应的统一版本,包括:
对于每个多版本数据,判断所述多版本数据对应的最新版本的版本号是否与所述统一版本号相同;
如果是,则将所述最新版本确定为所述统一版本;
否则,根据所述统一版本号,从所述多版本数据的历史版本中,确定统一版本。
优选的,所述从所述多版本数据的历史版本中,确定统一版本,包括:
从预先保存的所述多版本数据的历史版本中,查找版本号与所述统一版本号相同的版本;
将版本号与所述统一版本号相同的版本确定为统一版本。
优选的,所述多版本数据的历史版本的生成方式为:
在所述多版本数据每次更新之前,保存所述多版本数据;
将更新起始时间相同的多版本数据,采用相同的版本号进行标识。
优选的,在所述多版本数据更新完毕之后,包括:
将更新完毕后的所述多版本数据,用新的版本号进行标识。
优选的,所述获取不同多版本数据分别对应的多个最新版本的版本号,包括:
从版本控制表中获取所述多版本数据的最新版本的版本号;所述版本控制表用于保存所述多版本数据的最新版本的版本号。
优选的,还包括:
将统一版本对应的多版本数据发送至客户端进行显示。
优选的,所述多版本数据以数据表的方式存储,所述多版本数据的版本号与存储所述多版本数据的数据表的版本号相同。
本申请公开了一种多版本数据显示装置,包括:
最新版本号获取模块,用于获取不同多版本数据分别对应的多个最新版本的版本号;所述版本号包含所述多版本数据的更新起始时间信息;
统一版本号确定模块,用于从所述多个最新版本中,选择更新起始时间最早的最新版本的版本号作为统一版本号;
统一版本确定模块,用于确定所述不同多版本数据对应的统一版本;所述统一版本为,版本号与所述统一版本号相同的版本;
获取模块,用于获取所述统一版本对应的多版本数据。
优选的,所述统一版本确定模块包括:
版本号判断单元,用于判断每个所述多版本数据对应的最新版本的版本号是否与所述统一版本号相同;
第一确定单元,用于当所述版本号判断单元的结果为是时,将所述最新版本确定为所述统一版本;
第二确定单元,用于当所述版本号判断单元的结果为否时,根据所述统一版本号,从所述多版本数据的历史版本中,确定统一版本。
优选的,所述第二确定单元,包括:
版本查找子单元,用于从预先保存的所述多版本数据的历史版本中,查找版本号与所述统一版本号相同的版本。
优选的,还包括:
历史版本数据保存模块,用于保存所述多版本数据的历史版本。
优选的,所述历史版本数据保存模块包括:
数据保存单元,用于在所述多版本数据每次更新之前,保存所述多版本数据;
第一版本号标识单元,用于在所述多版本数据每次更新之前,将更新起始时间相同的多版本数据,采用相同的版本号进行标识。
优选的,所述历史版本数据保存模块还包括:
第二版本号标识单元,用于将更新完毕后的所述多版本数据,用新的版本号进行标识。
优选的,还包括:
数据发送模块,用于将统一版本对应的多版本数据发送至客户端进行显示。
与现有技术相比,本申请包括以下优点:
本申请所描述的多版本数据获取方法,通过获取不同多版本数据对应的多个最新版本的版本号,选择更新起始时间最早的最新版本的版本号作为统一版本号,对于所有多版本数据,均以更新起始时间较早的版本进行获取,从而解决了在某一时间点对不同的多版本数据进行获取时,获取的版本不一致的问题,能够保证在任何时间点获取的多版本数据都具有一致性。
由于正确获取了具有一致性的多版本数据,所以多版本数据获取装置不会接收到对于未正确获取的多版本数据多次或者重复发送的获取请求,能够避免多次响应同一个获取请求造成的硬件处理资源的浪费。
当然,实施本申请的任一产品并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请的一种多版本数据获取方法实施例1的流程图;
图2为实施例1步骤S103的流程图;
图3为本申请的多版本数据的版本号的生成方法流程图;
图4为本申请的一种多版本数据获取方法实施例2的流程图;
图5为本申请的多版本数据获取装置的结构图;
图6为本申请的获取模块503的结构图;
图7为本申请的历史版本数据保存模块504的结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请可用于众多通用或专用的计算装置环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器装置、包括以上任何装置或设备的分布式计算环境等等。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本申请的主要思想之一可以包括,通过获取不同多版本数据的最新版本的更新起始时间,选择更新起始时间最早的最新版本,对于所有多版本数据,统一以更新起始时间最早的最新版本的版本号对应的版本进行获取。因为采用更新起始时间最早的版本的版本号对应的版本,可以保证该版本号对应的所有多版本数据的版本都已经完成更新,并且版本号相同,所以可以保证在任何时间点获取的数据,都具有相同的版本。
图1为本申请的一种多版本数据获取方法实施例1的流程图。如图1所示,本方法可以包括以下步骤:
S101:获取不同多版本数据分别对应的多个最新版本的版本号;所述版本号包含所述多版本数据的更新起始时间信息。
本申请实施例中所提到的版本号,是指多版本数据每次更新完毕后,对更新完毕的多版本数据加以区分的标识。同一个多版本数据,在更新完毕之前的版本号,与更新完毕之后的版本号,是不同的。该版本号可以用数字表示,也可以用字母表示,或者用数字和字母的结合表示。因为版本号的生成时间与多版本数据的更新时间有关,并且不同时间更新完毕的多版本数据具有不同的版本号,所以,无论采用何种方式对版本号进行表示,版本号总是可以表示多版本数据的更新起始时间,也即,包含多版本数据的更新起始时间信息。
版本号表示多版本数据的更新起始时间的具体方式可以有多种。举例如下:直接采用年-月-日的数字表示形式,如将2011年9月8日更新完毕的版本的版本号表示为20110908,将2011年9月9日更新完毕的版本的版本号表示为20110909;采用数字编号表示,例如,将2011年9月8日更新完毕的版本的版本号表示为1,将2011年9月9日更新完毕的版本的版本号表示为2,依此类推;或者,采用字母表示,例如,将2011年9月8日更新完毕的版本的版本号表示为AAA,将2011年9月9日更新完毕的版本的版本号表示为AAB,依此类推;或者,采用数字与字母的结合表示,例如,将2011年9月8日更新完毕的版本的版本号表示为A1,将2011年9月9日更新完毕的版本的版本号表示为A2,依此类推。具体采用何种方式对版本号进行表示,不应理解为对本申请的限定。
步骤S101中,多版本数据对应的最新版本可以是指该多版本数据最近一次更新完毕的版本。不同的多版本数据可以是指描述不同信息的多版本数据。因为不同的多版本数据的最新版本的更新完毕时间不尽相同,所以在某个时间点,本步骤中获取到的版本号,可以是多个不同的版本号,例如20110908、20110909等等。
S102:从所述多个最新版本中,选择更新起始时间最早的最新版本的版本号作为统一版本号。
因为版本号中包含多版本数据的更新起始时间信息,所以根据所述版本号可以得到相应的多版本数据的更新起始时间。将多个最新版本的更新起始时间进行比较,可以确定更新起始时间最早的最新版本,并得到该版本对应的版本号。将该版本号作为统一版本号的目的是,对于所有多版本数据,均以版本号与统一版本号相同的版本进行获取。
具体的,在选择更新起始时间最早的最新版本的版本号时,可以根据版本号的命名规则进行判断。例如,对于直接采用年-月-日的数字表示的版本号,如20110908与20110909,可以采用比较版本号的大小的方式进行判断,版本号较小的20110908,即为更新起始时间较早的版本号;对于采用数字编号表示的版本号,也可以采用比较版本号的大小的方式进行判断,例如版本1与版本2,显然版本1的更新起始时间较早;对于表现形式中包含字母的版本号,可以将字母对应的ASCII码(AmericanStandardCodeforInformationInterchange,美国标准信息交换码)后,对其数值大小进行比较。以上只是对步骤S102中选择更新起始时间最早的最新版本的版本号的具体实现方式进行的举例说明,本领域的技术人员应还可据此想到多种实现方式。
S103:确定所述不同多版本数据对应的统一版本;所述统一版本为,版本号与所述统一版本号相同的版本。
因为版本号包含多版本数据的更新起始时间信息,所以版本号相同的多版本数据具有相同的更新起始时间。
对于某个多版本数据,其对应的最新版本的版本号,可能与统一版本号相同,那么就可以将该多版本数据的最新版本确定为统一版本;或者,该多版本数据对应的最新版本的版本号,与统一版本号不相同。多版本数据对应的最新版本的版本号,与统一版本号不相同时,只有一种可能,即该多版本数据对应的最新版本的版本号表示的更新起始时间,要晚于统一版本号所表示的更新起始时间。这意味着,在更新起始时间设置相同的情况下,版本号与统一版本号不相同的版本所对应的多版本数据,已经完成了最新一次的更新,而最新版本的版本号与统一版本号相同的多版本数据,还没有完成最新一次的更新。所以,本申请在这种情况下,对所有多版本数据,统一以更新起始时间较早的统一版本号对应的版本进行获取,以避免对不同的多版本数据进行获取时出现版本不一致的情况。
S104:获取所述统一版本对应的多版本数据。
图2为实施例1步骤S103:“确定所述不同多版本数据对应的统一版本”的流程图。如图2所示,该流程包括步骤:
S201:判断所述多版本数据对应的最新版本的版本号是否与所述统一版本号相同;
如果是,执行步骤S202;否则,执行步骤S203。
S202:将所述最新版本确定为所述统一版本;
S203:根据所述统一版本号,从所述多版本数据的历史版本中,确定统一版本。
具体的,步骤S203中可以从预先保存的所述多版本数据的历史版本中,查找版本号与所述统一版本号相同的版本,将版本号与所述统一版本号相同的版本确定为统一版本。
图3为本申请的多版本数据的版本号的生成方法流程图。如图3所示,该版本号的生成方法包括步骤:
S301:在多版本数据更新开始之前,保存所述多版本数据;将更新起始时间相同的多版本数据,采用相同的版本号进行标识。
为了保证能够完整地保存多版本数据,所以需要在多版本数据更新开始之前,对多版本数据进行保存。
对于更新起始时间相同的多版本数据,采用相同的版本号进行标识。例如,更新起始时间为2011年9月11日的多版本数据,统一采用版本号20110911进行标识。
需要说明的是,本步骤中的“在多版本数据更新开始之前”,指的是在该多版本数据2011年9月12日的更新开始之前;“将更新起始时间相同的多版本数据,采用相同的版本号进行标识”中,指的是将更新起始时间为2011年9月11日的多版本数据,统一采用版本号20110911进行标识。
S302:将更新完毕后的所述多版本数据,用新的版本号进行标识。
在上面的例子中,“将更新完毕后的所述多版本数据,用新的版本号进行标识”可以是指将2011年9月12日更新完毕后的多版本数据,用版本号20110912进行标识。
实际应用中,本申请的多版本数据方法还可以包括:将统一版本对应的多版本数据发送至客户端进行显示。
实际应用中,可以将多版本数据的最新版本号保存在一张版本控制表中。这样,步骤S101中“获取不同多版本数据对应的多个最新版本的版本号”时,就可以从该版本控制表中,获取不同多版本数据对应的最新版本号。
采用本申请的方法时,需要对多版本数据的历史版本及其对应的数据预先保存。当多版本数据的最新版本与统一版本号不同时,便可以从预先保存的所述多版本数据的历史版本中,查找版本号与所述统一版本号相同的版本。实际应用中,保存的历史版本的数量,可以根据实际需要进行设置。例如,对于更新周期为一天的多版本数据,除去最新版本,可以再保存一个历史版本。当然,也可根据具体情况,增加保存的历史版本数量。
需要说明的是,本申请中的多版本数据,可以以数据表的方式存储。一张数据表中可以存储多个多版本数据。本申请中提出的不同的多版本数据,可以是指存储在不同的数据表中的多版本数据。
综上所述,本申请实施例所描述的多版本数据获取方法,通过获取不同多版本数据对应的多个最新版本的版本号,选择更新起始时间最早的最新版本的版本号作为统一版本号,对于所有多版本数据,均以更新起始时间较早的版本进行获取,从而解决了在某一时间点对不同的多版本数据进行获取时,获取的版本不一致的问题,能够保证在任何时间点获取的多版本数据都具有一致性。
由于正确获取了具有一致性的多版本数据,所以多版本数据获取装置不会接收到对于未正确获取的多版本数据多次或者重复发送的获取请求,能够避免多次响应同一个获取请求造成的硬件处理资源的浪费。
图4为本申请的一种多版本数据获取方法实施例2的流程图。如图4所示,本方法可以包括以下步骤:
S401:从版本控制表中,获取不同多版本数据归属的多个数据表的最新版本的版本号。
本实施例中,多版本数据以数据表的方式存储。版本控制表中存储有各个数据表的最新版本的版本号。多版本数据的版本号就是存储所述多版本数据的数据表的版本号。一张数据表中可以存储多个多版本数据。假设待获取的多版本数据分别为:多版本数据A、多版本数据B、多版本数据C和多版本数据D。多版本数据A归属于数据表1,多版本数据B归属于数据表2,多版本数据C和多版本数据D归属于数据表3。那么,步骤S401中只需要获取数据表1、数据表2和数据表3的版本号即可。
S402:比较各个版本号的大小,选择数值最小的版本号作为统一版本号。
具体的,本实施例中,版本号可以采用采用年-月-日的数字表示形式。假设数据表1的最新版本号为20110911,数据表2的最新版本号为20110910,数数据表3的最新版本号为20110912,那么本步骤中将选择数值最小的20110910作为统一版本号。
S403:判断多版本数据归属的数据表的最新版本的版本号是否与所述统一版本号相同;如果是,执行步骤S404;否则,执行步骤S405。
S404:将所述最新版本确定为统一版本。
例如,将数据表2的最新版本号为20110910的最新版本,确定为统一版本。
S405:从预先保存的多版本数据的数据表的历史版本中,查找版本号与所述统一版本号相同的版本,将版本号与所述统一版本号相同的版本确定为统一版本。
例如,对于上例中的数据表1与数据表3,就可以从预先保存的多版本数据的数据表的历史版本中,查找版本号为20110910(即与所述统一版本号相同)的版本,将版本号为20110910的版本确定为统一版本。
S406:获取所述统一版本对应的多版本数据。
具体的,在上例中,就是获取版本号为20110910的数据表1、数据表2和数据表3中的多版本数据。
本实施例中,对于不同的数据表中的多版本数据,获取这些数据表的最新版本号,并比较大小,选择最小的版本号作为统一版本号,对版本号与统一版本号相同的版本对应的数据表中的多版本数据进行获取,能够保证在任何时间点,获取的多版本数据都具有一致性。
对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
与上述本申请一种多版本数据获取方法实施例1所提供的方法相对应,本申请还提供了一种多版本数据获取装置实施例。图5为本申请的多版本数据获取装置的结构图。如图5所示,该装置可以包括:
最新版本号获取模块501,用于获取不同多版本数据分别对应的多个最新版本的版本号;所述版本号包含所述多版本数据的更新起始时间信息;
版本号,是指多版本数据每次更新完毕后,对更新完毕的多版本数据加以区分的标识。同一个多版本数据,在更新完毕之前的版本号,与更新完毕之后的版本号,是不同的。该版本号可以用数字表示,也可以用字母表示,或者用数字和字母的结合表示。因为版本号的生成时间与多版本数据的更新时间有关,并且不同时间更新完毕的多版本数据具有不同的版本号,所以,无论采用何种方式对版本号进行表示,版本号总是可以表示多版本数据的更新起始时间,也即,包含多版本数据的更新起始时间信息。
统一版本号确定模块502,用于从所述多个最新版本中,选择更新起始时间最早的最新版本的版本号作为统一版本号;
统一版本确定模块503,用于确定所述不同多版本数据对应的统一版本;所述统一版本为,版本号与所述统一版本号相同的版本;
获取模块504,用于获取所述统一版本对应的多版本数据。
图6为本申请的统一版本确定模块503的结构图。如图6所示,统一版本确定模块503可以包括:
版本号判断单元601,用于判断每个所述多版本数据对应的最新版本的版本号是否与所述统一版本号相同;
第一确定单元602,用于当所述版本号判断单元的结果为是时,将所述最新版本确定为所述统一版本;
第二确定单元603,用于当所述版本号判断单元的结果为否时,根据所述统一版本号,从所述多版本数据的历史版本中,确定统一版本。
实际应用中,第二确定单元603可以包括版本查找子单元,用于从预先保存的所述多版本数据的历史版本中,查找版本号与所述统一版本号相同的版本。
实际应用中,本申请的多版本数据获取装置,还可以包括:历史版本数据保存模块505,用于保存所述多版本数据的历史版本。
图7为本申请的历史版本数据保存模块505的结构图。如图7所示,历史版本数据保存模块505可以包括:
数据保存单元701,用于在所述多版本数据每次更新之前,保存所述多版本数据;
第一版本号标识单元702,用于在所述多版本数据每次更新之前,将更新起始时间相同的多版本数据,采用相同的版本号进行标识。
历史版本数据保存模块505,还可以包括:
第二版本号标识单元703,用于将更新完毕后的所述多版本数据,用新的版本号进行标识。
实际应用中,本申请的多版本数据获取装置,还可以包括:数据发送模块506,用于将统一版本对应的多版本数据发送至客户端进行显示。
本申请实施例所描述的多版本数据获取装置,通过最新版本号获取模块获取不同多版本数据对应的多个最新版本的版本号,再通过统一版本号确定模块选择更新起始时间最早的最新版本的版本号作为统一版本号,最后通过获取模块对于所有多版本数据,均以更新起始时间较早的版本进行获取,从而解决了在某一时间点对不同的多版本数据进行获取时,获取的版本不一致的问题。
进一步的,由于正确获取了具有一致性的多版本数据,所以多版本数据获取装置不会接收到对于未正确获取的多版本数据多次或者重复发送的获取请求,能够避免多次响应同一个获取请求造成的硬件处理资源的浪费。
本实施例所述的装置可以集成到网络中的服务器上,也可以单独作为一个实体与服务器相连,另外,需要说明的是,当本申请所述的方法采用软件实现时,可以作为服务器新增的一个功能,也可以单独编写相应的程序,本申请不限定所述方法或装置的实现方式。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。
以上对本申请所提供的一种多版本数据获取方法和装置进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (13)

1.一种多版本数据获取方法,其特征在于,包括:
获取不同多版本数据分别对应的多个最新版本的版本号;所述版本号包含所述多版本数据的更新起始时间信息;
从所述多个最新版本中,选择更新起始时间最早的最新版本的版本号作为统一版本号;
确定所述不同多版本数据对应的统一版本;所述确定不同多版本数据对应的统一版本,包括:对于每个多版本数据,判断所述多版本数据对应的最新版本的版本号是否与所述统一版本号相同;如果是,则将所述最新版本确定为所述统一版本;否则,根据所述统一版本号,从所述多版本数据的历史版本中,确定统一版本;
获取所述统一版本对应的数据表中的多版本数据。
2.根据权利要求1所述的方法,其特征在于,所述从所述多版本数据的历史版本中,确定统一版本,包括:
从预先保存的所述多版本数据的历史版本中,查找版本号与所述统一版本号相同的版本;
将版本号与所述统一版本号相同的版本确定为统一版本。
3.根据权利要求2所述的方法,其特征在于,所述多版本数据的历史版本的生成方式为:
在所述多版本数据每次更新之前,保存所述多版本数据;
将更新起始时间相同的多版本数据,采用相同的版本号进行标识。
4.根据权利要求3所述的方法,其特征在于,在所述多版本数据更新完毕之后,包括:
将更新完毕后的所述多版本数据,用新的版本号进行标识。
5.根据权利要求1所述的方法,所述获取不同多版本数据分别对应的多个最新版本的版本号,包括:
从版本控制表中获取所述多版本数据的最新版本的版本号;所述版本控制表用于保存所述多版本数据的最新版本的版本号。
6.根据权利要求1-5任一项所述的方法,其特征在于,还包括:
将统一版本对应的多版本数据发送至客户端进行显示。
7.根据权利要求1-5任一项所述的方法,其特征在于,所述多版本数据以数据表的方式存储,所述多版本数据的版本号与存储所述多版本数据的数据表的版本号相同。
8.一种多版本数据获取装置,其特征在于,包括:
最新版本号获取模块,用于获取不同多版本数据分别对应的多个最新版本的版本号;所述版本号包含所述多版本数据的更新起始时间信息;
统一版本号确定模块,用于从所述多个最新版本中,选择更新起始时间最早的最新版本的版本号作为统一版本号;
统一版本确定模块,用于确定所述不同多版本数据对应的统一版本;所述统一版本确定模块包括:
版本号判断单元,用于判断每个所述多版本数据对应的最新版本的版本号是否与所述统一版本号相同;第一确定单元,用于当所述版本号判断单元的结果为是时,将所述最新版本确定为所述统一版本;第二确定单元,用于当所述版本号判断单元的结果为否时,根据所述统一版本号,从所述多版本数据的历史版本中,确定统一版本;
获取模块,用于获取所述统一版本对应的数据表中的多版本数据。
9.根据权利要求8所述的装置,其特征在于,所述第二确定单元,包括:
版本查找子单元,用于从预先保存的所述多版本数据的历史版本中,查找版本号与所述统一版本号相同的版本。
10.根据权利要求9所述的装置,其特征在于,还包括:
历史版本数据保存模块,用于保存所述多版本数据的历史版本。
11.根据权利要求10所述的装置,其特征在于,所述历史版本数据保存模块包括:
数据保存单元,用于在所述多版本数据每次更新之前,保存所述多版本数据;
第一版本号标识单元,用于在所述多版本数据每次更新之前,将更新起始时间相同的多版本数据,采用相同的版本号进行标识。
12.根据权利要求10所述的装置,其特征在于,所述历史版本数据保存模块还包括:
第二版本号标识单元,用于将更新完毕后的所述多版本数据,用新的版本号进行标识。
13.根据权利要求8-12任一项所述的装置,其特征在于,还包括:
数据发送模块,用于将统一版本对应的多版本数据发送至客户端进行显示。
CN201110282148.5A 2011-09-21 2011-09-21 一种多版本数据获取方法和装置 Active CN103020058B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201110282148.5A CN103020058B (zh) 2011-09-21 2011-09-21 一种多版本数据获取方法和装置
HK13105799.7A HK1178995A1 (zh) 2011-09-21 2013-05-16 種多版本數據獲取方法和裝置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110282148.5A CN103020058B (zh) 2011-09-21 2011-09-21 一种多版本数据获取方法和装置

Publications (2)

Publication Number Publication Date
CN103020058A CN103020058A (zh) 2013-04-03
CN103020058B true CN103020058B (zh) 2016-07-06

Family

ID=47968674

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110282148.5A Active CN103020058B (zh) 2011-09-21 2011-09-21 一种多版本数据获取方法和装置

Country Status (2)

Country Link
CN (1) CN103020058B (zh)
HK (1) HK1178995A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103605523A (zh) * 2013-11-25 2014-02-26 上海爱数软件有限公司 一种文件内容历史版本自动生成与存储方法
CN105099988B (zh) * 2014-04-24 2018-11-27 阿里巴巴集团控股有限公司 用于支持灰度发布的方法、访问方法以及装置和系统
CN108153777B (zh) * 2016-12-05 2022-02-22 北京国双科技有限公司 数据访问信息的获取方法及装置
CN106815289B (zh) * 2016-12-07 2020-06-23 中国银联股份有限公司 一种交易处理系统中的数据存储方法及装置
CN109491962B (zh) * 2018-11-06 2022-02-22 深圳市迅雷网络技术有限公司 一种文件目录树管理方法及相关装置
CN112182005A (zh) * 2020-10-10 2021-01-05 中国银联股份有限公司 一种流水号生成方法及装置
CN112685061A (zh) * 2020-12-28 2021-04-20 北京达佳互联信息技术有限公司 访问方法及装置
CN113704518A (zh) * 2021-08-09 2021-11-26 国电南瑞科技股份有限公司 适用于网络的分布式图形版本管理系统及方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1904879A (zh) * 2005-07-27 2007-01-31 国际商业机器公司 面向变化的电子表格应用
CN101154234A (zh) * 2006-09-26 2008-04-02 国际商业机器公司 用于管理数据版本的系统和方法
CN101753609A (zh) * 2008-12-15 2010-06-23 中国移动通信集团公司 分布式系统版本控制方法、节点及系统
CN101964820A (zh) * 2010-10-08 2011-02-02 中兴通讯股份有限公司 一种保持数据一致性的方法及系统
CN102110121A (zh) * 2009-12-24 2011-06-29 阿里巴巴集团控股有限公司 一种数据处理方法及其系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9135268B2 (en) * 2009-12-30 2015-09-15 Symantec Corporation Locating the latest version of replicated data files

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1904879A (zh) * 2005-07-27 2007-01-31 国际商业机器公司 面向变化的电子表格应用
CN101154234A (zh) * 2006-09-26 2008-04-02 国际商业机器公司 用于管理数据版本的系统和方法
CN101753609A (zh) * 2008-12-15 2010-06-23 中国移动通信集团公司 分布式系统版本控制方法、节点及系统
CN102110121A (zh) * 2009-12-24 2011-06-29 阿里巴巴集团控股有限公司 一种数据处理方法及其系统
CN101964820A (zh) * 2010-10-08 2011-02-02 中兴通讯股份有限公司 一种保持数据一致性的方法及系统

Also Published As

Publication number Publication date
CN103020058A (zh) 2013-04-03
HK1178995A1 (zh) 2013-09-19

Similar Documents

Publication Publication Date Title
CN103020058B (zh) 一种多版本数据获取方法和装置
CN103678494B (zh) 客户端同步服务端数据的方法及装置
US10346159B2 (en) Systems and methods for software scanning tool
CN103078945B (zh) 对浏览器崩溃数据进行处理的方法与系统
US20110289055A1 (en) Linked Databases
CN101876983A (zh) 数据库分区方法与系统
EP2990965B1 (en) Versatile data model
CN105653537A (zh) 一种数据库应用系统的分页查询方法和装置
US10540334B1 (en) Code generator platform for data transformation
US9922100B2 (en) Systems and methods for facilitating the development of an application that accesses data
CN105808653A (zh) 一种基于用户标签系统的数据处理方法及装置
US20140236895A1 (en) File link migration for decommisioning a storage server
US20140280368A1 (en) View variants in database schema mapping
CN112115153A (zh) 数据处理方法、装置、设备及存储介质
CN105912641A (zh) 一种本地应用程序的图标更新方法及装置
US9342606B2 (en) Intelligent software installation
CN114416868B (zh) 一种数据同步方法、装置、设备及存储介质
CN105550342B (zh) 一种全透明的分布式数据库的数据处理方法
CN107704585A (zh) 一种查询hdfs数据方法及系统
US20140108367A1 (en) Client apparatus and database server for resumable transaction and method thereof
CN103809915B (zh) 一种磁盘文件的读写方法和装置
US9177008B1 (en) Positioned updates in a distributed shared-nothing data store
CN105868384A (zh) 一种更新共享数据的方法、装置及系统
US9230011B1 (en) Index-based querying of archived data sets
CN102682038A (zh) 一种数据库变更方法以及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1178995

Country of ref document: HK

C14 Grant of patent or utility model
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1178995

Country of ref document: HK

TR01 Transfer of patent right

Effective date of registration: 20240305

Address after: # 01-21, Lai Zan Da Building 1, 51 Belarusian Road, Singapore

Patentee after: Alibaba Singapore Holdings Ltd.

Country or region after: Singapore

Address before: Cayman Islands Grand Cayman capital building, a four storey No. 847 mailbox

Patentee before: ALIBABA GROUP HOLDING Ltd.

Country or region before: Cayman Islands

TR01 Transfer of patent right