一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种存储数据的方法、装置及系统与流程

2022-02-25 18:16:29 来源:中国专利 TAG:


1.本技术实施例涉及信息技术领域,尤其涉及一种存储数据的方法、装置及系统。


背景技术:

2.随着互联网技术及存储技术的发展,分布式数据服务系统得到广泛应用。分布式数据服务系统由分布式部署的多个服务器(也可以称为节点)组成。用户通过客户机与节点通信,将数据写入到节点中,以及读取复制组中各节点的数据。
3.在分布式数据服务系统中,可用性是衡量分布式数据服务系统可靠性的重要指标,可用性为数据可以访问成功的概率,决定了系统可以访问成功时容忍的故障节点的数量。为了避免部分节点故障导致整个系统不可用,通常采用复制协议把数据复制到多个节点,可以将该多个节点称为复制组。这样,即使复制组中部分节点故障,剩余节点仍可以继续提供服务,保证了系统的高可用性。
4.当前常用的复制协议包括主复制协议和无主复制协议。其中,主复制协议方案是在复制组中选取主节点,将复制组中其他节点作为从节点,写入数据时先将数据写入到主节点,主节点依次将数据发送到从节点写入,写入成功的从节点向主节点发送写入成功响应,主节点统计写入成功的节点数量,当该数量大于第一阈值时认为写入成功。无主复制协议系统的复制组中包括的节点功能相同,写入数据时,用户通过客户机将数据发送给复制组中的节点写入,写入成功的节点向客户机发送写入成功响应,客户机统计写入成功的节点数量,当该数量大于第一阈值时认为写入成功。
5.上述复制协议存储数据时,复制组中所有节点都用于存储用户输入的数据,为了保证用户数据的完整存储,需要配置大容量的服务器作为复制组中的节点,这样虽然提高了分布式数据服务系统的可用性,但是大容量服务器设备成本高,也就导致分布式数据服务系统的存储成本高。当系统可用性要求很高时,复制组中的节点数量也会很大,系统的存储成本也将巨大。


技术实现要素:

6.本技术提供一种存储数据的方法、装置及系统,在保证分布式数据服务系统可用性的前提下,降低了分布式数据服务系统的存储成本。
7.为了达到上述目的,本技术采用如下技术方案:
8.第一方面,提供一种存储数据的方法,应用于包括一个或多个持久服务器及一个或多个临时服务器的复制组;持久服务器用于长期存储数据,临时服务器用于临时存储数据,复制组用于采用复制协议向其包含的服务器写入相同数据;该方法可以包括:每个持久服务器分别执行更新操作,将自身的存储数据中满足第一条件的存储数据,更新为该复制组中所有服务器内存储的满足第一条件的数据的并集;每个临时服务器分别确定其自身的存储数据中满足第二条件的数据已存储于该复制组中的持久服务器后,每个临时服务器分别执行删除操作,删除满足第二条件的数据。
9.通过本技术提供的存储数据的方法,在复制组中配置用于长期存储数据的持久服务器和临时存储数据的临时服务器,在数据写入成功后或者周期性的,对持久服务器进行数据同步,使持久服务器中的数据包括其所属复制组中所有服务器的存储数据,然后删除临时服务器中的数据。这样,复制组中的临时服务器仅用于暂时存储数据,可以配置小容量的服务器作为临时服务器,在保证系统可用性的前提下,降低了设备成本。即使系统可用性需求进一步增加,通过增加临时服务器的数量来保证系统可用性需求,也不会大幅增加设备成本。
10.其中,可以根据实际需求配置第一条件和第二条件,本技术实施例对此不予具体限定。
11.结合第一方面,在一种可能的实现方式中,第一条件可以包括:前n次写入的数据,n大于或等于1;或者,当前时刻之前第一预设时长内写入的数据。在该可能的实现方式中,持久服务器可以在不同的第一条件下更新数据,提高了更新操作的灵活性及存储数据的灵活性。
12.结合第一方面和上述一种可能的实现方式中,在另一种可能的实现方式中,在一种可能的实现方式中,第二条件可以包括:前m次写入的数据,m大于或等于1;或者,当前时刻之前第二预设时长内写入的数据。在该可能的实现方式中,临时服务器可以在不同的第二条件下删除数据,提高了删除操作的灵活性及存储数据的灵活性。
13.结合第一方面及上述任一种可能的实现方式,在另一种可能的实现方式中,复制组采用主复制协议,对于第一持久服务器,第一持久服务为复制组中任一持久服务器,第一持久服务器为从节点,第一持久服务器执行更新操作,将自身的存储数据中满足第一条件的存储数据,更新为复制组中所有服务器内存储的满足第一条件的数据的并集,包括:若主节点正常通信,第一持久服务器执行更新操作,将自身的存储数据中满足第一条件的存储数据,更新为复制组中主节点内存储的满足第一条件的数据;或者,若主节点故障,第一持久服务器执行更新操作,将复制组中所有服务器内存储的满足第一条件的数据中,第一持久服务器未存储的数据写入;或者,若主节点故障,且新选取的主节点为第一持久服务器,第一持久服务器执行更新操作,将复制组中所有服务器内存储的满足第一条件的数据中,第一持久服务器未存储的数据写入;第一持久服务器向复制组中的其他持久服务器发送更新完成指令;更新完成指令用于指示主节点完成更新操作;或者,若主节点故障,且新选取的主节点为第一持久服务器之外的持久服务器,第一持久服务器在新选取的主节点执行更新操作后,将自身的存储数据中满足第一条件的存储数据,更新为新选取的主节点内存储的满足第一条件的数据。在该可能的实现方式中,具体说明了对于主复制协议不同情况下,持久服务器更新数据的方法,针对不同情形采用不同更新方法,提高了存储数据的可靠性。
14.结合第一方面及上述任一种可能的实现方式,在另一种可能的实现方式中,复制组中服务器的数量可以由系统可用度确定,复制组中持久服务器的数量可以由系统持久度确定。在该可能的实现方式中,复制组中持久服务器的数量和临时服务器的数量由系统的可用度指标和持久度指标确定,保证了在降低了设备成本的同时不影响存储的可靠性。
15.结合第一方面及上述任一种可能的实现方式,在另一种可能的实现方式中,持久服务器可以在写入操作后,执行更新操作;或者,持久服务器周期性的执行更新操作。在该可能的实现方式中,配置了持久服务器执行更新操作的不同方式,提高了存储数据的灵活
性。
16.结合第一方面及上述任一种可能的实现方式,在另一种可能的实现方式中,若复制组中持久服务器故障时,该方法还可以包括:向复制组添加新的持久服务器;新的持久服务器写入复制组中所有服务器内存储的数据的并集。在该可能的实现方式中,说明了持久服务器故障时的处理方法,提高了存储数据的可靠性。
17.第二方面,提供一种存储数据的装置,可以部署于复制组中的持久服务器,复制组用于采用复制协议向其包含的服务器写入相同数据,持久服务器用于长期存储数据;该装置可以包括:存储单元、写入单元和更新单元。其中:
18.存储单元,用于存储写入持久服务器的数据。
19.写入单元,用于将写入持久服务器的数据写入持久服务器的存储单元。
20.更新单元,用于执行更新操作,将存储单元中的存储数据中满足第一条件的存储数据,更新为复制组中所有服务器内存储的满足第一条件的数据的并集。
21.通过本技术提供的存储数据的装置,在复制组中配置用于长期存储数据的持久服务器和临时存储数据的临时服务器,在数据写入成功后或者周期性的,对持久服务器进行数据同步,使持久服务器中的数据包括其所属复制组中所有服务器的存储数据,然后删除临时服务器中的数据。这样,复制组中的临时服务器仅用于暂时存储数据,可以配置小容量的服务器作为临时服务器,在保证系统可用性的前提下,降低了设备成本。即使系统可用性需求进一步增加,通过增加临时服务器的数量来保证系统可用性需求,也不会大幅增加设备成本。
22.结合第二方面,在一种可能的实现方式中,第一条件可以包括:前n次写入的数据,n大于或等于1;或者,当前时刻之前第一预设时长内写入的数据。
23.第三方面,提供另一种存储数据的装置,其特征在于,该装置部署于复制组中的临时服务器,复制组还可以包括一个或多个持久服务器,持久服务器用于长期存储数据,临时服务器用于临时存储数据,该复制组用于采用复制协议向其包含的服务器写入相同数据;该装置可以包括:存储单元、写入单元和处理单元。其中:
24.存储单元,用于存储写入临时服务器的数据。
25.写入单元,用于将写入临时服务器的数据写入临时服务器的存储单元。
26.处理单元,用于确定存储单元的存储数据中满足第二条件的数据已存储于复制组中的持久服务器后,执行删除操作,删除满足第二条件的数据。
27.通过本技术提供的存储数据的装置,在复制组中配置用于长期存储数据的持久服务器和临时存储数据的临时服务器,在数据写入成功后或者周期性的,对持久服务器进行数据同步,使持久服务器中的数据包括其所属复制组中所有服务器的存储数据,然后删除临时服务器中的数据。这样,复制组中的临时服务器仅用于暂时存储数据,可以配置小容量的服务器作为临时服务器,在保证系统可用性的前提下,降低了设备成本。即使系统可用性需求进一步增加,通过增加临时服务器的数量来保证系统可用性需求,也不会大幅增加设备成本。
28.结合第三方面,在一种可能的实现方式中,第二条件可以包括:前m次写入的数据,m大于或等于1;或者,当前时刻之前第二预设时长内写入的数据。
29.第四方面,提供一种存储数据的系统,该系统可以包括复制组,复制组包括一个或
多个持久服务器及一个或多个临时服务器;持久服务器用于长期存储数据,临时服务器用于临时存储数据,复制组用于采用复制协议向其包含的服务器写入相同数据;其中:
30.持久服务器用于:执行更新操作,将自身的存储数据中满足第一条件的存储数据,更新为复制组中所有服务器内存储的满足第一条件的数据的并集。
31.临时服务器用于:确定其自身的存储数据中满足第二条件的数据已存储于复制组中的持久服务器后,每个临时服务器分别执行删除操作,删除满足第二条件的数据。
32.通过本技术提供的存储数据的系统,在复制组中配置用于长期存储数据的持久服务器和临时存储数据的临时服务器,在数据写入成功后或者周期性的,对持久服务器进行数据同步,使持久服务器中的数据包括其所属复制组中所有服务器的存储数据,然后删除临时服务器中的数据。这样,复制组中的临时服务器仅用于暂时存储数据,可以配置小容量的服务器作为临时服务器,在保证系统可用性的前提下,降低了设备成本。即使系统可用性需求进一步增加,通过增加临时服务器的数量来保证系统可用性需求,也不会大幅增加设备成本。
33.第五方面,提供一种服务器,该服务器可以包括处理器和存储器,存储器和处理器耦合,存储器与处理器连接,存储器用于存储计算机程序,当处理器执行计算机程序时,服务器执行第一方面或第一方面任一种可能的实现方式中持久服务器的动作。
34.第六方面,提供一种服务器,该拍服务器可以包括处理器和存储器,存储器和处理器耦合,存储器与处理器连接,存储器用于存储计算机程序,当处理器执行计算机程序时,服务器执行第一方面或第一方面任一种可能的实现方式中临时服务器的动作。
35.第七方面,本技术实施例提供了一种芯片系统,该芯片系统包括处理器,还可以包括存储器,用于实现上述方法中持久服务器的功能。该芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。
36.第八方面,本技术实施例提供了一种芯片系统,该芯片系统包括处理器,还可以包括存储器,用于实现上述方法中临时服务器的功能。该芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。
37.第九方面,本技术实施例中还提供一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行上述任一方面或任意一种可能的实现方式中的存储数据的方法中持久服务器或临时服务器的功能。
38.第十方面,本技术实施例中还提供一种计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一方面或任意一种可能的实现方式中的存储数据的方法中持久服务器或临时服务器的功能。
39.需要说明的是,上述各个方面中的任意一个方面的各种可能的实现方式,在方案不矛盾的前提下,均可以进行组合。
附图说明
40.图1为现有技术提供的一种分布式数据服务系统的结构示意图;
41.图2为本技术实施例提供的一种分布式数据服务系统的结构示意图;
42.图3为本技术实施例提供的一种服务器的结构示意图;
43.图4为本技术实施例提供的一种存储数据的方法的流程示意图;
44.图5为本技术实施例提供的另一种存储数据的方法的流程示意图;
45.图6为本技术实施例提供的另一种分布式数据服务系统的结构示意图;
46.图7为本技术实施例提供的一种存储数据的装置的结构示意图;
47.图8为本技术实施例提供的另一种服务器的结构示意图;
48.图9为本技术实施例提供的另一种存储数据的装置的结构示意图;
49.图10为本技术实施例提供的另一种服务器的结构示意图。
具体实施方式
50.本技术说明书和权利要求书及上述附图中的术语“第一”、“第二”和“第三”等是用于区别不同对象,而不是用于限定特定顺序。
51.在本技术实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本技术实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念,便于理解。
52.在本技术的描述中,除非另有说明,“/”表示前后关联的对象是一种“或”的关系,例如,a/b可以表示a或b;本技术中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况,其中a,b可以是单数或者复数。并且,在本技术的描述中,除非另有说明,“多个”是指两个或多于两个。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
53.在本技术实施例中,至少一个还可以描述为一个或多个,多个可以是两个、三个、四个或者更多个,本技术不做限制。
54.为了便于理解,先对本技术涉及的技术术语进行解释。
55.复制组,可以指分布式数据服务系统中部署的用于存储相同数据的多个服务器集合。
56.持久服务器,可以指复制组中用于长期存储数据的服务器。可以配置大容量的服务器作为持久服务器。
57.临时服务器,可以指复制组中用于短期存储数据的服务器。可以配置小容量的服务器作为临时服务器。
58.现对分布式数据服务系统中当前常用的主复制协议存储方案和无主复制协议的存储方案进行简单介绍。如图1所示,分布式数据服务系统可以包括一个或多个客户机,以及多个服务器。其中,可以将多个服务器作为一个复制组进行数据的写入和读取。
59.首先,对配置复制组的过程进行介绍:用户根据分布式数据服务系统的可用性指标计算出系统中一个复制组可以包括的服务器的数量,然后给系统中的每个复制组配置该数量的服务器,并根据该数量的服务器的标识配置复制组的配置信息。对于无主复制协议,集中控制单元(可以部署于任一个节点)获取这些服务器的标识,将这些服务器的标识作为复制组的配置信息存储于复制组中每个服务器的预设位置。对于主复制协议,集中控制单元从复制组包括的多个节点中选择一个节点作为主节点,其他节点作为从节点;主节点获
取复制组中所有节点的标识,将复制组包括的节点的标识以及节点的状态(主节点或者从节点)作为复制组的配置信息,存储于复制组中的每个节点的预设位置。
60.例如,无主复制协议中复制组的配置信息可以为:服务器1、服务器2、服务器3、服务器4和服务器5。
61.再例如,主复制协议中复制组的配置信息可以为:主节点包括服务器1;从节点包括服务器2、服务器3、服务器4和服务器5。
62.数据的写入过程可以包括:用户通过客户机向分布式数据服务系统的集中控制单元发送一个写入请求和待写入数据的标识,集中控制单元接收该写入请求,为该待写入数据分配一个复制组,将分配的复制组标识发送给客户机,客户机接收该分配的复制组标识,将待写入数据写入该标识指示的复制组中。具体的,对于主复制协议,客户机将待写入数据先发送给主节点,主节点接收该待写入数据并写入,然后主节点将该待写入数据发送给该复制组中的其他从节点,从节点接收数据并写入,写入成功的从节点向主节点发送写入成功响应,主节点统计写入成功的节点数量,当该数量大于第一阈值时确定该数据写入成功,主节点向客户机发送一个写入成功的响应。具体的,对于无主复制协议,客户机将待写入数据直接发送给该复制组中的所有节点,该复制组中的所有节点接收该待写入数据并写入,写入成功的节点向客户机发送写入成功响应,客户机统计写入成功的节点数量,当该数量大于第一阈值时确定该数据写入成功。
63.数据的读取过程可以包括:用户通过客户机向分布式数据服务系统的集中控制单元发送一个读请求和待读取数据的标识,集中控制单元接收该读请求,查找该读请求所属的复制组,将该读请求所属的复制组标识发送给客户机,客户机接收该复制组标识,从该标识指示的复制组中读取待读取数据。具体的,对于主复制协议,客户机向该复制组中的主节点发送待读取数据的标识,主节点接收该待读取数据的标识,将待读取数据发送给客户机,若客户机接收到主节点发送的待读取数据,则认为读取成功。对于无主复制协议,客户机向该复制组中的所有节点发送待读取数据的标识,节点接收该标识并查找该标识指示的待待读取数据,节点查找到的待读取数据发送给客户机,客户机统计接收的待读取数据的数量,若该数量大于第二阈值,则认为读取成功。
64.若复制组中的某个节点故障时,需要更新存储于每个节点的复制组的配置信息。具体的,复制组中的所有服务器通过心跳机制检测节点间的通信是否正常,对于无主复制协议,若复制组中的节点a在预设时间段内未接收到节点b发送的心跳测试信号,则确定节点b故障,节点a向给该复制组添加一个新的节点c,更新复制组的配置信息,更新后的配置信息中包含节点c的标识,不包含节点b的标识。
65.对于主复制协议,若复制组中的从节点d检测到复制组中的从节点e故障时,从节点d向主节点发送一个故障请求,该请求中包括节点e的标识,主节点接收该请求,给该复制组配置一个新的从节点f,更新复制组的配置信息,更新后的配置信息中包含从节点f的标识,不包含从节点e的标识;若复制组中的主节点检测到复制组中的从节点e故障时,主节点给该复制组配置一个新的节点f,更新复制组的配置信息,更新后的配置信息中包含从节点f的标识,不包含从节点e的标识;若复制组中的从节点d检测到复制组中的主节点故障时,从节点d向复制中的其他从节点发起投票,复制组中所有从节点根据投票机制确定新主节点,然后新主节点给该复制组添加一个新的从节点f,更新复制组的配置信息,更新后的配
置信息中包含新主节点的标识,新从节点f的标识,不包括故障的主节点的标识。
66.但是,上述复制协议存储数据时,复制组中所有节点都用于存储用户输入的数据,为了保证用户数据的完整存储,需要配置大容量的服务器作为复制组中的节点,这样虽然提高了分布式数据服务系统的可用性,但是大容量服务器设备成本高,也就导致分布式数据服务系统的存储成本高。当系统可用性要求很高时,复制组中的节点数量也会很大,系统的存储成本也将巨大。
67.基于此,本技术提供一种存储数据的方法,在复制组中配置用于长期存储数据的持久服务器和临时存储数据的临时服务器,在数据写入成功后或者周期性的,对持久服务器进行数据同步,使持久服务器中的数据包括其所属复制组中所有服务器的存储数据,然后删除临时服务器中的数据。这样,复制组中的临时服务器仅用于暂时存储数据,可以配置小容量的服务器作为临时服务器,在保证系统可用性的前提下,降低了设备成本。即使系统可用性需求进一步增加,通过增加临时服务器的数量来保证系统可用性需求,也不会大幅增加设备成本。
68.下面将结合附图对本技术实施例的实施方式进行详细描述。
69.本技术实施例提供的存储数据的方法可以应用于图2所示的分布式数据服务系统20中,该分布式数据服务系统20可以包括一个或多个客户机201,一个或多个复制组202以及集中管理设备203。一个复制组202可以包括一个或多个持久服务器2021、以及一个或多个临时服务器2022。
70.需要说明的是,复制组202包括的服务器可以为分布式部署的服务器。
71.客户机201可以用于接收用户的输入数据,并将接收的输入数据发送给集中管理设备203分配的复制组202包括的服务器。其中,输入数据可以是用户输入的待读取数据的标识或待写入数据。
72.示例性的,客户机201可以为笔记本、服务器、平板电脑等具有相关输入和发送功能的设备。
73.集中管理设备203可以用于给复制组202配置一个或多个持久服务器2021,以及一个或多个临时服务器2022。
74.集中管理设备203还可以用于给输入数据分配复制组202。例如,输入数据为待读取数据的标识时,集中管理设备203用于查找该标识指示的待读取数据所属的复制组202。再例如,输入数据为待写入数据时,集中管理设备203用于给该待写入数据分配一个用于存储该数据的复制组202。
75.具体的,集中管理设备203可以为或者部署于分布式数据服务系统20中的任一个指定的服务器,或者集中管理设备203也可以单独部署,本技术实施例对此不予具体限定。
76.持久服务器2021可以用于接收输入数据,并根据该输入数据提供具体的服务。例如,当输入数据是待写入数据时,持久服务器2021可以用于接收待写入数据,并将待写入数据写入其内部长期保存。再例如,当输入数据是待读取数据的标识时,持久服务器2021可以用于接收待读取数据的标识,并查找该标识指示的待读取数据,将待读取数据发送给客户机201。
77.持久服务器2021还可以用于执行更新操作。
78.示例性的,持久服务器2021可以为具有较大存储空间的服务器。
79.临时服务器2022可以用于接收输入数据,并根据该输入数据提供具体的服务。例如,当输入数据是待写入数据时,临时服务器2022可以用于接收待写入数据,将待写入数据写入其内部暂时保存。
80.临时服务器2022还可以用于执行删除操作。具体的,临时服务器2022确定其自身的存储数据中满足第二条件的数据已存储于复制组202中的持久服务器2021后,临时服务器2022执行删除操作。
81.具体的,临时服务器2022可以为小容量服务器。
82.现以复制组202为例,对该复制组在不同复制协议下的配置进行说明。
83.复制组的配置过程包括:首先,集中控制单元203给复制组202配置多个持久服务器2021和多个临时服务器2022。然后集中控制单元203根据复制组中的多个持久服务器2021的标识,多个临时服务器2022的标识,以及每个服务器的形态(主节点或者从节点或者节点)配置复制组的配置信息。
84.对于复制组202,数据的写入过程与前述数据的写入过程类似,数据的读取过程前述数据的读取过程类似,具体实现参考前述数据的读取与写入,此处不再赘述。
85.下面结合附图,对本技术的实施例提供的存储数据的方法及装置进行具体阐述。
86.一方面,本技术实施例提供一种服务器30,用于执行本技术提供的存储数据的方法,该服务器30可以为图2示意的复制组202中的持久服务器或临时服务器。
87.如图3所示,服务器30可以包括处理器301、存储器302以及收发器303。
88.下面结合图3对服务器30的各个构成部件进行具体的介绍:
89.其中,存储器302可以是易失性存储器(volatile memory),例如随机存取存储器(random-access memory,ram);或者非易失性存储器(non-volatile memory),例如只读存储器(read-only memory,rom),快闪存储器(flash memory),硬盘(hard disk drive,hdd)或固态硬盘(solid-state drive,ssd);或者上述种类的存储器的组合,用于存储可实现本技术方法的程序代码、配置文件或其他内容。
90.处理器301是服务器30的控制中心。例如,处理器301可以是一个中央处理器(central processing unit,cpu),也可以是特定集成电路(application specific integrated circuit,asic),或者是被配置成实施本技术实施例的一个或多个集成电路,例如:一个或多个微处理器(digital singnal processor,dsp),或,一个或者多个现场可编程门阵列(field programmable gate array,fpga)。
91.收发器303用于与其他设备进行通信。收发器303可以为通信端口或者其他。
92.一种可能的实现方式中,服务器30为持久服务器,处理器301通过运行或执行存储在存储器302内的软件程序和/或模块,以及调用存储在存储器302内的存储数据,执行如下功能:
93.将自身的存储数据中满足第一条件的存储数据,更新为该复制组中所有服务器内存储的满足第一条件的数据的并集。
94.另一种可能的实现方式中,服务器30为临时服务器,处理器301通过运行或执行存储在存储器302内的软件程序和/或模块,以及调用存储在存储器302内的存储数据,执行如下功能:
95.确定其自身的存储数据中满足第二条件的数据已存储于该复制组中的持久服务
器后,临时服务器执行删除操作,删除满足第二条件的数据。
96.另一方面,本技术实施例提供的存储数据的方法,可以应用于包括一个或多个持久服务器及一个或多个临时服务器的复制组。
97.需要说明的是,本技术实施例提供的存储数据的方法可以应用于分布式数据服务系统的任一个复制组。其中,每个复制组存储数据的实现过程相似,现以一个复制组为例,对本技术实施例提供的存储数据的方法进行说明,其他不再赘述。
98.在存储数据之前,首先需要配置复制组。现对配置过程进行详细说明。
99.其中,用户系统中预先配置了一定数量的持久服务器和一定数量的临时服务器。用户根据系统的需要满足的参数指标确定复制组中持久服务器的数量p和临时服务器的数量q。在具体配置时,集中控制单元在系统预先配置的一定数量的持久服务器和一定数量的临时服务器中,选择满足第一规则的p个持久服务器和q个临时服务器作为一个复制组,然后集中控制单元获取该复制组采用不同复制协议时的配置信息,并将该配置信息存储于该复制组包括的每个服务器的固定位置中。
100.其中,可以根据实际需求配置第一规则,本技术实施例对此不予限定。具体的,第一规则可以复制组的设计阶段静态配置,或者,第一规则也可以设置为可配置内容,在复制组的使用阶段由用户或者管理员或者其他人员修改配置。
101.一种可能的实现方式中,第一规则可以包括:剩余存储空间大于第三阈值。
102.另一种可能的实现方式中,第一规则可以包括:剩余存储空间大于第三阈值且剩余存储空间处于第一区间。
103.其中,可以根据实际需求配置第三阈值和第一区间,本技术实施例对此不予具体限定。
104.其中,可以根据实际需求配置p和q的具体取值,本技术实施例对此不予限定。具体的,p大于或等于1,q大于或等于1。
105.一种可能的实现方式中,复制组中服务器的数量o由系统可用度确定,复制组中持久服务器的数量p由系统持久度确定。具体的,用户可以根据系统需要满足的持久度的指标计算出,满足该持久度指标时至少应该成功写入的节点的数量,作为复制组中持久服务器的数量p。用户可以根据需要满足的可用度的指标计算出,满足该可用度指标时至少应该写入的节点的数量,作为复制组中服务器的总数量o。用复制组中服务器的总数量o减去持久服务器的数量p,作复制组中临时服务器的数量q。
106.当然,用户还可以根据系统应该满足的其他需求或者指标进一步确定复制组中持久服务器的数量,以及临时服务器的数量,本技术实施例对比不予唯一限定。
107.集中控制单元获取该复制组采用不同复制协议时的配置信息可以实现为:若复制组采用主复制协议,集中控制单元在p个持久服务器中选择一个持久服务器作为主节点,其他持久服务器和q个临时服务器作为从节点,然后将p个持久服务器的标识、q个临时服务器的标识、主节点包括的服务器的标识以及从节点包括的服务器的标识作为该复制组的配置信息。若复制组采用无主复制协议,集中控制单元将p个持久服务器的标识、q个临时服务器的标识作为该复制组的配置信息。
108.例如,主复制协议的复制组的配置信息可以为:持久服务器包括a1、b1和c1;临时服务器包括a1和b1;主节点包括a1;从节点包括b1、c1、a1和b1。
109.无主复制协议的复制组的配置信息可以为:持久服务器包括a2、b2和c2;临时服务器包括a2和b2。
110.本技术实施例提供的存储数据的方法具体应用于数据写入复制组之后,即将数据写入复制组后,再执行本技术实施例提供的存储数据的方法。
111.一种可能的实现方式中,可以在每次写入操作后,执行本技术实施例提供的存储数据的方法。
112.另一种可能的实现方式中,可以在预设次数的写入操作后,执行本技术实施例提供的存储数据的方法。
113.其中,可以根据实际需求配置预设次数,本技术实施例对此不予限定。
114.示例性的,可以根据数据写入的频率确定预设次数。例如,数据写入的频率越大,预设次数可以越小;数据写入的频率越小,预设次数可以越大。
115.再一种可能的实现方式中,可以周期性的执行本技术实施例提供的存储数据的方法。
116.其中,可以根据实际需求配置该周期的时长,本技术实施例对此不予限定。
117.示例性的,可以根据数据写入的频率确定周期的时长。例如,数据写入的频率越大,该周期的时长可以越小;数据写入的频率越小,该周期的时长可以越大。
118.其中,数据写入的过程可以参考现前述数据写入的具体实现过程,此处不再一一赘述。
119.如图4所示,本技术实施例提供的存储数据的方法可以包括:
120.s401、每个持久服务器分别执行更新操作,将自身的存储数据中满足第一条件的存储数据,更新为复制组中所有服务器内存储的满足第一条件的数据的并集。
121.其中,可以根据实际需求配置第一条件,本技术实施例对此不予具体限定。具体的,第一条件可以复制组的设计阶段静态配置,或者,第一条件也可以设置为可配置内容,在复制组的使用阶段由用户或者管理员或者其他人员修改配置。
122.一种可能的实现方式中,第一条件可以包括:前n次写入的数据。
123.其中,n大于或等于1。
124.另一种可能的实现方式中,第一条件可以包括:当前时刻之前第一预设时长内写入的数据。
125.其中,可以根据实际需求配置第一预设时长,本技术实施例对此不予具体限定。具体的,第一预设时长可以复制组的设计阶段静态配置,或者,第一预设时长也可以设置为可配置内容,在复制组的使用阶段由用户或者管理员或者其他人员修改配置。
126.示例性的,用户可以根据数据的写入频率或者写入数据的大小配置第一预设时长。例如,数据的写入频率越高,第一预设时长越小。
127.其中,s401的具体实现中,复制组中的每个持久服务器分别执行更新操作,且每个持久服务器的更新过程类似,现以第一持久服务器为例对s401的实现进行说明,其他持久服务器的实现不在赘述。具体的,针对第一持久服务器,s401的实现可以包括但不限于下述情况1至情况5中的任一种。
128.情况1、复制组采用主复制协议,第一持久服务器为从节点,且主节点正常通信,针对第一持久服务器,s401可以实现为:第一持久服务器将自身的存储数据中满足第一条件
的存储数据,更新为复制组中主节点内存储的满足第一条件的数据;或者第一持久服务器将复制组中主节点内存储的满足第一条件的数据中,第一持久服务器未存储的数据写入。
129.示例性的,第一持久服务器通过获取存储于自身固定位置的复制组的配置信息,检测到配置信息中从节点的标识中包括第一持久服务器的标识,确定复制组采用主复制协议,且第一持久服务器为从节点;若第一持久服务器在预设时间段内,可以正常接收到主节点发送的心跳测试信息,确定主节点通信正常;然后,第一持久服务器获取复制组中主节点内存储的满足第一条件的数据,将自身的存储数据中满足第一条件的存储数据,更新为复制组中主节点内存储的满足第一条件的数据;或者,第一持久服务器获取复制组中主节点内存储的满足第一条件的数据,将复制组中主节点内存储的满足第一条件的数据中,自身未存储的数据写入。
130.其中,需要说明的是,若复制组采用主复制协议,第一持久服务器为主节点,且主节点通信正常,此时主节点可以不执行该更新操作。
131.情况2、复制组采用主复制协议,第一持久服务器为从节点,且主节点故障,针对第一持久服务器,s401可以实现为:第一持久服务器获取复制组中所有服务器内存储的满足第一条件的数据,将复制组中所有服务器内存储的满足第一条件的数据中,第一持久服务器未存储的数据写入;或者第一持久服务器获取复制组中所有服务器内存储的满足第一条件的数据的并集,第一持久服务器将自身的存储数据中满足第一条件的存储数据,更新为复制组中所有服务器内存储的满足第一条件的数据的并集。
132.示例性的,第一持久服务器通过获取存储于自身固定位置的复制组的配置信息,检测到配置信息中从节点的标识中包括第一持久服务器的标识,确定复制组采用主复制协议,且第一持久服务器为从节点;若复制组中的一个或多个服务器检测到预设时间段内,无法正常接收到主节点发送的心跳测试信息,确定主节点故障;第一持久服务器将复制组中所有服务器内存储的满足第一条件的数据中,第一持久服务器未存储的数据写入;或者,第一持久服务器将自身的存储数据中满足第一条件的存储数据,更新为复制组中所有服务器内存储的满足第一条件的数据的并集。
133.情况3、复制组采用主复制协议,第一持久服务器为从节点,主节点故障,且新选取的主节点为第一持久服务器,针对第一持久服务器,s401可以实现为:第一持久服务器执行更新操作,将复制组中所有服务器内存储的满足第一条件的数据中,第一持久服务器未存储的数据写入;然后,第一持久服务器向复制组中的其他持久服务器发送更新完成指令,指示主节点完成更新操作,其他持久服务器可以执行更新操作。
134.示例性的,第一持久服务器通过获取存储于自身固定位置的复制组的配置信息,检测到配置信息中从节点的标识中包括第一持久服务器的标识,确定复制组采用主复制协议,且第一持久服务器为从节点;若复制组中的一个或多个服务器检测到预设时间段内无法正常接收到主节点发送的心跳测试信息,确定主节点间的通信故障;然后,第一持久服务器发起投票,向其他从节点发送投票信息,其他从节点根据该投票信息进行投票,并将投票结果发送给第一持久服务器,第一持久服务器统计投票结果,确定投票第一持久服务器为主节点的票数大于预设阈值,确定新选取的主节点为第一持久服务器。此时,第一持久服务器将复制组中所有服务器内存储的满足第一条件的数据中,第一持久服务器未存储的数据写入;或者,第一持久服务器将自身的存储数据中满足第一条件的存储数据,更新为复制组
中所有服务器内存储的满足第一条件的数据的并集。然后,第一持久服务器向复制组中的其他持久服务器发送更新完成指令,指示主节点完成更新操作,其他持久服务器可以执行更新操作。
135.情况4、复制组采用主复制协议,第一持久服务器为从节点,主节点故障,且新选取的主节点为复制组中除第一持久服务器之外的持久服务器时,针对第一持久服务器,s401可以实现为:第一持久服务器在新选取的主节点执行更新操作后,第一持久服务器执行更新操作,第一持久服务器将自身的存储数据中满足第一条件的存储数据,更新为新选取的主节点内存储的满足第一条件的数据;或者第一持久服务器将新选取的主节点内存储的满足第一条件的数据中,第一持久服务器未存储的数据写入。
136.示例性的,第一持久服务器通过获取存储于自身固定位置的复制组的配置信息,检测到配置信息中从节点的标识中包括第一持久服务器的标识,确定复制组采用主复制协议,且第一持久服务器为从节点;若复制组中的一个或多个服务器在预设时间段内无法正常接收到主节点发送的心跳测试信息,确定主节点故障;然后,复制组中的其他节点发起投票,根据投票机制确定新选取的主节点为复制组中除第一持久服务器之外的该另一个持久服务器。此时,第一持久服务器在收到新选取的主节点发送的更新完成指令后,确定新选取的主节点执行更新操作,第一持久服务器将自身的存储数据中满足第一条件的存储数据,更新为新选取的主节点内存储的满足第一条件的数据;或者,第一持久服务器将新选取的主节点内存储的满足第一条件的数据中,第一持久服务器未存储的数据写入。
137.情况5、复制组采用无主复制协议,针对第一持久服务器,s401可以实现为:第一持久服务器将自身的存储数据中满足第一条件的存储数据,更新为复制组中所有服务器内存储的满足第一条件的数据的并集,或者第一持久服务器将复制组中所有服务器内存储的满足第一条件的数据中,第一持久服务器未存储的数据写入。
138.示例性的,第一持久服务器通过获取存储于自身固定位置的复制组的配置信息,检测到配置信息中无主节点和从节点的服务器标识,确定复制组采用无主复制协议,然后,第一持久服务器获取复制组中所有服务器内存储的满足第一条件的数据的并集,将自身的存储数据中满足第一条件的存储数据,更新为复制组中所有服务器内存储的满足第一条件的数据的并集;或者,第一存储服务器,分别获取将复制组中每个服务器内存储的满足第一条件的数据,将每个服务器存储的满足第一条件的数据中,第一持久服务器未存储的数据写入。
139.s402、每个临时服务器分别确定其自身的存储数据中满足第二条件的数据已存储于该复制组中的持久服务器后,每个临时服务器分别执行删除操作,删除满足第二条件的数据。
140.其中,可以根据实际需求配置第二条件,本技术实施例对此不予具体限定。具体的,第二条件可以复制组的设计阶段静态配置,或者,第二条件也可以设置为可配置内容,在复制组的使用阶段由用户或者管理员或者其他人员修改配置。
141.一种可能的实现方式中,第二条件可以包括:前m次写入的数据。
142.其中,m大于或等于1。
143.在该可能的实现方式中,m可以等于n,此时,执行更新操作的频率可以与执行删除操作的频率相同。
144.在该可能的实现方式中,m还可以大于n,即执行更新操作的频率还可以大于执行删除操作的频率。
145.另一种可能的实现方式中,第二条件可以包括:当前时刻之前第二预设时长内写入的数据。
146.其中,可以根据实际需求配置第二预设时长,本技术实施例对此不予具体限定。具体的,第二预设时长可以复制组的设计阶段静态配置,或者,第二预设时长也可以设置为可配置内容,在复制组的使用阶段由用户或者管理员或者其他人员修改配置。
147.示例性的,用户可以根据数据的写入频率或者写入数据的大小配置第二预设时长。例如,数据的写入频率越高,第二预设时长越小。
148.其中,s402的具体实现中,复制组中的每个临时服务器分别确定复制组中的所有持久服务器执行完更新操作后,执行删除操作。且每个临时服务器实现过程类似,现以第一临时服务器为例对s402的实现进行说明,其他临时服务器的实现不在赘述。
149.具体的,针对第一临时服务器,s402的实现可以包括但不限于下述方式1至方式3中任一种。
150.方式1、第一临时服务器确定其自身的存储数据中满足第二条件的数据已存储于该复制组中所有的持久服务器后,第一临时服务器执行删除操作,删除满足第二条件的数据。
151.方式2、第一临时服务器确定其自身的存储数据中满足第二条件的数据已存储于该复制组中的至少一个持久服务器后,第一临时服务器执行删除操作,删除满足第二条件的数据。
152.方式3、第一临时服务器确定其自身的存储数据中满足第二条件的数据,已存储于该复制组中的持久服务器的数量大于预设门限后,第一临时服务器执行删除操作,删除满足第二条件的数据。
153.其中,可以根据实际需求配置预设门限,本技术实施例对此不予具体限定。
154.示例性的,第一临时服务器获取复制组中每个持久服务器的存储数据,判断每个持久服务器中是否都存储了第一临时服务器中满足第二条件的数据,若复制组中所有持久服务器中均存储了第一临时服务器中满足第二条件的数据,则第一临时服务器确定其自身的存储数据中满足第二条件的数据已存储于该复制组中的持久服务器,然后第一临时服务器执行删除操作,删除满足第二条件的数据。
155.进一步的,如图5所示,若复制组中的持久服务器故障时,本技术提供的存储数据的方法还可以包括s403和s404。
156.s403、若复制组中持久服务器故障时,向复制组添加新的持久服务器。
157.其中,复制组中的所有服务器会周期性的向其他服务器发送心跳测试信息,以判断复制组中的服务器是否通信正常。复制组中每个持久服务器故障时的处理方式类似,现以第二持久服务器故障为例,对s403的实现过程进行说明,第二持久服务器为复制中的任一个持久服务器。
158.针对第二持久服务器故障,s403可以实现为:复制组中一个或多个服务器在预设时间段内未正常接收到第二持久服务器发送的心跳测试信息时,确定第二持久服务器故障,根据第二规则向复制组中添加一个新的持久服务器。
159.其中,可以根据实际需求配置第二规则,本技术实施例对此不予具体限定。
160.一种可能的实现方式中,新的持久服务器为未配置给复制组的持久服务器中剩余存储空间最大的持久服务器。
161.另一种可能的实现方式中,新的持久服务器为未配置给复制组的持久服务器中,与复制组中的其他持久服务器的剩余存储空间之差处于第二区间的持久服务器。
162.具体的,s403的实现可以包括但不限于下述方案1至方案3中的任一个。
163.方案1,复制组采用主复制协议,第二持久服务器为主节点,示例性的,s403可以实现为:若复制组中的一个或多个服务器在预设时间段内未正常接收到主节点发送的心跳测试信息时,确定主节点故障,复制组中的其他从节点根据投票机制在复制组包括的从节点中选取一个节点作为新的主节点,新的主节点根据第二规则向复制组中添加一个新的持久服务器,作为新的从节点,新的主节点将复制组的配置信息中从节点包括的服务器标识中,故障的节点的标识删除,并加入新的从节点的标识;将复制组的配置信息中原故障的主节点的标识更新为新的主节点的标识。
164.方案2,复制组采用主复制协议,第二持久服务器为从节点,示例性的,s403可以实现为:若复制组中的一个或多个服务器在预设时间段内未正常接收到第二持久服务器发送的心跳测试信息时,确定第二持久服务器故障,然后,主节点根据第二规则向复制组中添加一个新的持久服务器,作为新的从节点,并将复制组的配置信息中从节点包括的服务器标识中,故障的节点的标识更新为新的从节点的标识。
165.方案3,复制组采用无主复制协议,针对第二持久服务器故障,示例性的,s403可以实现为:若复制组中的一个或多个服务器在预设时间段内未正常接收到第二持久服务器发送的心跳测试信息时,确定第二持久服务器故障,然后,第三持久服务器根据第二规则向复制组中添加一个新的持久服务器,并将复制组的配置信息中,故障的持久服务器的标识更新为新的持久服务器的标识。
166.其中,第三持久服务器可以为复制组中任一个未故障的持久服务器,或者,第三服务器可以为复制组所有未故障的服务器根据第三规则选取的持久服务器。
167.用户可以根据实际需求配置第三规则,本技术实施例对此不予具体限定。
168.示例性的,第三规则可以为:最先检测到故障持久服务器的持久服务器。
169.s404、新的持久服务器写入复制组中所有服务器内存储的数据的并集。
170.一种可能的实现方式中,复制组采用无主复制协议,s404可以实现为:新的持久服务器获取复制组中所有服务器内存储的数据的并集,并写入。或者,新的持久服务器先获取复制组中一个持久服务器存储的数据然后写入,然后分别将复制组中其他服务器存储的数据中,该信息的持久服务器未存储的数据写入。
171.另一种可能的实现方式中,复制组采用主复制协议,s404可以实现为:新的持久服务器写入复制组中主节点存储的数据,或者写入新的主节点存储的数据。
172.进一步的,如图5所示,若复制组中的临时服务器故障时,本技术提供的存储数据的方法还可以包括s403a。
173.s403a、若复制组中临时服务器故障时,向复制组添加新的临时服务器。
174.其中,复制组中的所有临时服务器故障的处理方式类似,现以第二临时服务器故障为例,对s403的实现过程进行说明,第二临时服务器为复制中的任一个临时服务器。
175.针对第二持久服务器故障,s403可以实现为:若复制组中一个或多个服务器在预设时间段内未正常接收到第二临时服务器发送的心跳测试信息时,确定第二临时服务器故障,根据第四规则向复制组中添加一个新的持久服务器。
176.其中,可以根据实际需求配置第四规则,本技术实施例对此不予具体限定。
177.一种可能的实现方式中,新的临时服务器为未配置给复制组的临时服务器中任一个临时服务器。
178.另一种可能的实现方式中,新的临时服务器为未配置给复制组的服务器中,与复制组中的其他临时服务器的剩余存储空间之差处于第三区间的临时服务器。
179.具体的,s403a的实现可以包括但不限于下述方案a或至方案b。
180.方案a、复制组采用主复制协议,针对第二临时服务器,s403a可以实现为:若复制组中一个或多个服务器在预设时间段内未正常接收到第二临时服务器发送的心跳测试信息时,确定第二临时服务器故障,主节点根据第三规则向复制组中添加一个新的临时服务器。
181.示例a,若复制组中一个或多个服务器在预设时间段内未正常接收到第二临时服务器发送的心跳测试信息时,确定第二临时服务器故障,然后,主节点根据第三规则向复制组中添加一个新的临时服务器,作为新的从节点,并将复制组的配置信息中从节点包括的服务器标识中,故障的节点的标识更新为新的从节点的标识。
182.方案b,复制组采用无主复制协议,针对第二临时服务器,s403a可以实现为:若复制组中一个或多个服务器在预设时间段内未正常接收到第二临时服务器发送的心跳测试信息时,确定第二临时服务器故障,第三持久服务器根据第三规则向复制组中添加一个新的临时服务器。
183.示例b,若复制组中的一个或多个服务器未正常接收到第二临时服务器发送的心跳测试信息时,确定第二临时服务器故障,然后,第三持久服务器根据第二规则向复制组中添加一个新的临时服务器,并将复制组的配置信息中,故障临时服务器的标识更新为新的临时服务器的标识。
184.下面以分布式数据服务系统的存储过程为例,对本技术提供的存储数据的方法进行介绍。
185.如图6所示,分布式数据服务系统客户机、多个持久服务器和多个临时服务器。其中,将持久服务器a1、持久服务器b1、持久服务器c1、临时服务器a1以及临时服务器b1作为复制组1;将持久服务器a2、持久服务器b2、持久服务器c2、临时服务器a2以及临时服务器b2作为复制组2。
186.其中,复制组1采用主复制协议,复制组1的配置信息为:持久服务器包括a1、b1和c1;临时服务器包括a1和b1;主节点包括a1;从节点包括b1、c1、a1和b1。
187.用户通过客户机将数据m写入到复制组1,具体的,将数据m成功写入到a1、b1、a1以及b1;3分钟后,用户通过客户机又将数据n写入到复制组1,具体的,将数据n成功写入到a1、c1以及b1。然后,b1获取a1中的数据m和数据n,将数据n写入;c1获取a1中的数据m和数据n,将数据m写入;a1检测a1、b1和c1中均存储了将数据m后,将数据m删除;b1检测a1、b1和c1中均存储了将数据m和数据n后,将数据m和数据n删除。
188.某一时刻,若b1检测到a1故障时,b1、c1、a1和b1根据投票机制选取b1为新的主节
点,b1给复制组1中添加一个新的持久服务器d1,作为从节点。d1获取b1中的存储数据,将数据m和数据n写入。b1更新复制组1的配置信息为:持久服务器包括b1、c1和d1;临时服务器包括a1和b1;主节点包括b1;从节点包括c1、d1、a1和b1。
189.另一时刻,若a1检测到b1故障时,a1给复制组1中添加一个新的持久服务器d1,作为从节点。d1获取a1中的存储数据,将数据m和数据n写入。a1更新复制组1的配置信息为:持久服务器包括a1、d1和c1;临时服务器包括a1和b1;主节点包括a1;从节点包括d1、c1、a1和b1。
190.另一时刻,若a1检测到a1故障时,a1给复制组1中添加一个新的临时服务器c1,作为从节点。a1更新复制组1的配置信息为:持久服务器包括a1、b1和c1;临时服务器包括c1和b1;主节点包括a1;从节点包括b1、c1、c1和b1。
191.其中,复制组2采用无主复制协议,复制组2的配置信息为:持久服务器包括a2、b2和c2;临时服务器包括a2和b2。
192.用户通过客户机将数据j写入到复制组2,具体的,将数据j成功写入到b2、a2以及b2;3分钟后,用户通过客户机又将数据k写入到复制组2,具体的,将数据k成功写入到a2、c2以及b2。然后,a2获取b2、c2、a2和b2中的数据j和数据k,将数据j写入;b2获取a2、c2、a2和b2中的数据j和数据k,将数据k写入;c2获取a2、b2、a2和b2中的数据j和数据k,将数据j写入;a2检测a2、b2和c2中均存储了将数据j后,将数据j删除;b2检测a2、b2和c2中均存储了将数据j和数据k后,将数据j和数据k删除。
193.某一时刻,若b2检测到a2故障时,b2给复制组2中添加一个新的持久服务器d2。d2获取b2、c2、a2和b2中的存储数据,将数据j和数据k写入。b2更新复制组2的配置信息为:持久服务器包括d2、b2和c2;临时服务器包括a2和b2。
194.另一时刻,若b2检测到a2故障时,b2给复制组2中添加一个新的临时服务器c2。b2更新复制组2的配置信息为:持久服务器包括a2、b2和c2;临时服务器包括c2和b2。
195.上述主要从存储数据的系统的一个复制组中的服务器的工作原理的角度对本发明实施例提供的方案进行了介绍。可以理解的是,各存储数据的装置,例如持久服务器、临时服务器等为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本发明能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
196.本发明实施例可以根据上述方法示例对存储数据的装置等进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本发明实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
197.在采用对应各个功能划分各个功能模块的情况下,图7示为本技术实施例提供的一种存储数据的装置70,用于实现上述方法中持久服务器的功能。该存储数据的装置70可以是持久服务器或者该存储数据的装置70可以部署于持久服务器。如图7所示,存储数据的
装置70可以包括:存储单元701、写入单元702、和更新单元703。存储单元701用于存储写入持久服务器的数据;写入单元702用于将写入持久服务器的数据写入持久服务器的存储单元,更新单元703用于执行图4或图5中的s401。其中,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
198.在采用集成的单元的情况下,如图8所示为本技术实施例提供的服务器80,用于实现上述方法中持久服务器的功能。该服务器80可以是持久服务器,服务器80包括至少一个处理模块801,用于实现本技术实施例提供的方法中持久服务器的功能。示例性地,处理模块801可以用于执行图4中的过程s401,或者,图5中的过程s401、s403、s404,具体参见方法示例中的详细描述,此处不做赘述。
199.服务器80还可以包括至少一个存储模块802,用于存储程序指令和/或数据。存储模块802和处理模块801耦合。本技术实施例中的耦合是装置、单元或模块之间的间接耦合或通信连接,可以是电性,机械或其它的形式,用于装置、单元或模块之间的信息交互。处理模块801可能和存储模块802协同操作。处理模块801可以执行存储模块802中存储的程序指令。所述至少一个存储模块中的至少一个可以包括于处理模块中。
200.服务器80还可以包括通信模块803,用于通过传输介质和其它设备进行通信,通信模块803用于该设备与其它设备进行通信。示例性的,处理模块801可以利用通信模块803执行图4或图5中的过程s401。
201.当处理模块801为处理器,存储模块802为存储器,通信模块803为收发器时,本技术实施例图8所涉及的服务器80可以为图3所示的服务器30。
202.如前述,本技术实施例提供的存储数据的装置70或服务器80可以用于实施上述本技术各实施例实现的方法中持久服务器的功能,为了便于说明,仅示出了与本技术实施例相关的部分,具体技术细节未揭示的,请参照本技术各实施例。
203.在采用对应各个功能划分各个功能模块的情况下,如图9所示为本技术实施例提供的存储数据的装置90,用于实现上述方法中临时服务器的功能。该存储数据的装置90可以是临时服务器或者该存储数据的装置90可以部署于临时服务器。如图9所示,存储数据的装置90可以包括:存储单元901、写入单元902和处理单元903。存储单元901用于存储写入临时服务器的数据;写入单元902用于将写入临时服务器的数据写入临时服务器的存储单元;处理单元903用于执行图4或图5中s402。其中,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
204.在采用集成的单元的情况下,如图10所示为本技术实施例提供的服务器100,用于实现上述方法中临时服务器的功能。该服务器100可以是临时服务器。服务器100包括至少一个处理模块1001,用于实现本技术实施例提供的方法中临时服务器的功能。示例性地,处理模块1001可以用于执行图4或图5中的s402,具体参见方法示例中的详细描述,此处不做赘述。
205.服务器100还可以包括至少一个存储模块1002,用于存储程序指令和/或数据。存储模块1002和处理模块1001耦合。本技术实施例中的耦合是装置、单元或模块之间的间接耦合或通信连接,可以是电性,机械或其它的形式,用于装置、单元或模块之间的信息交互。处理模块1001可能和存储模块1002协同操作。处理模块1001可能执行存储模块1002中存储的程序指令。所述至少一个存储模块中的至少一个可以包括于处理模块中。
206.服务器100还可以包括通信模块1003,用于通过传输介质和其它设备进行通信,从而用于确定服务器100中的装置可以和其它设备进行通信。通信模块1003用于该设备与其它设备进行通信。
207.当处理模块1001为处理器,存储模块1002为存储器,通信模块1003为收发器时,本技术实施例图10所涉及的服务器100可以为图3所示的服务器30。
208.如前述,本技术实施例提供的存储数据的装置90或服务器100可以用于实施上述本技术各实施例实现的方法中临时服务器的功能,为了便于说明,仅示出了与本技术实施例相关的部分,具体技术细节未揭示的,请参照本技术各实施例。
209.本技术另一些实施例提供一种存储数据的系统,该系统中可以包括第一存储数据的装置和第二存储数据的装置,该第一存储数据的装置可以实现持久服务器的功能,该第二存储数据的装置可以实现临时服务器的功能。例如,第一存储数据的装置为本技术实施例描述的持久服务器,第二存储数据的装置为本技术实施例描述的临时服务器。
210.本技术另一些实施例提供了一种芯片系统,该芯片系统包括处理器,还可以包括存储器,用于实现上述图4或图5所示实施例中持久服务器的功能。该芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。
211.本技术另一些实施例提供了一种芯片系统,该芯片系统包括处理器,还可以包括存储器,用于实现上述图4或图5所示实施例中临时服务器的功能。该芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。
212.本技术另一些实施例还提供一种计算机可读存储介质,该计算机可读存储介质可包括计算机程序,当该计算机程序在计算机上运行时,使得该计算机执行上述图4或图5所示实施例中持久服务器或临时服务器的各个步骤。
213.本技术另一些实施例还提供一种计算机程序产品,该计算机产品包含计算机程序,当该计算机程序产品在计算机上运行时,使得该计算机执行上述图4或图5所示实施例中持久服务器或临时服务器的各个步骤。
214.通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
215.在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
216.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
217.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以
是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
218.所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本技术实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
219.以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何在本技术揭露的技术范围内的变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献