一种数据存储方法、装置、应用服务器及存储介质与流程

文档序号:33560559发布日期:2023-03-22 14:07阅读:34来源:国知局
一种数据存储方法、装置、应用服务器及存储介质与流程

1.本发明实施例涉及数据处理技术领域,尤其涉及一种数据存储方法、装置、应用服务器及存储介质。


背景技术:

2.随着各行业信息化和数字化的发展,建设一套高性能的完备数据体系非常重要。
3.目前,随着数据的数据量也越来越大,在基于数据库对这样的数据进行存储的情况下,存储速度会变得越来越慢,有待改进。


技术实现要素:

4.本发明实施例提供了一种数据存储方法、装置、应用服务器及存储介质,可以提升数据存储效率。
5.根据本发明的一方面,提供了一种数据存储方法,应用于应用服务器,该方法可以包括:
6.响应于数据存储请求,获取待存储数据,将待存储数据存储入热数据库中,得到已存储数据;
7.响应于热库数据处理指令,针对已存储至热数据库中的至少一个热库数据中的每个热库数据,确定热库数据的第一数据类型,其中,至少一个热库数据包括已存储数据,第一数据类型包括热数据或是冷数据;
8.将第一数据类型为冷数据的热库数据存储入冷数据库中。
9.根据本发明的另一方面,提供了一种数据存储装置,配置于应用服务器,该装置可以包括:
10.已存储数据得到模块,用于响应于数据存储请求,获取待存储数据,将待存储数据存储入热数据库中,得到已存储数据;
11.第一数据类型确定模块,用于响应于热库数据处理指令,针对已存储至热数据库中的至少一个热库数据中的每个热库数据,确定热库数据的第一数据类型,其中,至少一个热库数据包括已存储数据,第一数据类型包括热数据或是冷数据;
12.热库数据存储模块,用于将第一数据类型为冷数据的热库数据存储入冷数据库中。
13.根据本发明的另一方面,提供了一种应用服务器,可以包括:
14.至少一个处理器;以及
15.与至少一个处理器通信连接的存储装置;其中,
16.存储装置存储有可被至少一个处理器执行的计算机程序,计算机程序被至少一个处理器执行,以使至少一个处理器执行时实现本发明任意实施例所提供的数据存储方法。
17.根据本发明的另一方面,提供了一种计算机可读存储介质,其上存储有计算机指令,该计算机指令用于使处理器执行时实现本发明任意实施例所提供的数据存储方法。
18.本发明实施例的技术方案,响应于数据存储请求,获取待存储数据,将待存储数据存储入热数据库中,得到已存储数据;响应于热库数据处理指令,针对已存储至热数据库中的至少一个热库数据中的每个热库数据,确定热库数据的第一数据类型,其中,至少一个热库数据包括已存储数据,第一数据类型包括热数据或是冷数据;将第一数据类型为冷数据的热库数据存储入冷数据库中。本发明实施例的技术方案,可以提升数据存储效率。本发明实施例的技术方案,在存储数据时,将待存储数据直接存储至热数据库中即可,在响应于热库数据处理指令时,再将热库数据中的冷数据分离存储至冷数据库,实现数据存储的冷热分离,可以实现在能够对冷数据和热数据分离存放的情况下,可以提升数据存储效率。
19.应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或是重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
附图说明
20.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
21.图1是本发明实施例一提供的一种数据存储方法的流程图;
22.图2是本发明实施例二提供的一种数据存储方法的流程图;
23.图3是本发明实施例三提供的一种数据存储方法的流程图;
24.图4是本发明实施例三提供的一种数据存储方法的可选示例的流程图;
25.图5是本发明实施例四提供的一种数据存储装置的结构框图;
26.图6是根本发明实施例五提供的一种应用服务器的结构示意图。
具体实施方式
27.为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
28.需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。“目标”、“原始”等的情况类似,在此不再赘述。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、装置、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
29.实施例一
30.图1是本发明实施例一中所提供的一种数据存储方法的流程图。本实施例可适用于基于数据库进行数据存储的情况。该方法可以由本发明实施例提供的数据存储装置来执
行,该装置可以由软件和/或硬件的方式实现,该装置可以集成在应用服务器上。
31.参见图1,本发明实施例的方法具体包括如下步骤:
32.s110、响应于数据存储请求,获取待存储数据,将待存储数据存储入热数据库中,得到已存储数据。
33.其中,数据存储请求是需求进行数据存储的请求。数据存储请求并非仅仅只是请求将数据存储入数据库的请求;还可以是会导致有数据需求存储入数据库的请求,例如医疗器械维修请求可能会新增已维修的医疗器械的标识数据,医疗器械维修请求在维修医疗器械后还需求将该标识数据存入数据库,因此医疗器械维修请求也属于本发明实施例中的数据存储请求。待存储数据可以理解为需求存入热数据库中的数据。已存储数据可以理解为已经存储入热数据库中的待存储数据。需要说明的是,本发明实施例中的数据可以是任意领域中的数据,例如用户就诊卡的卡号数据等。结合本发明实施例可能涉及的应用场景,接下来的示例基本以医疗器械数据为例进行阐述,但这并非是对本发明实施例中的数据的具体限定。
34.需要注意的是,待存储数据可能是热数据,热数据可以理解为经常查询或存储的数据;待存储数据也可能是冷数据,冷数据可以理解为不经常查询或存储的数据。相应的,热数据库即为存储热数据类型的数据的数据库,热数据库例如可以是基于远程字典服务(remote dictionary server,redis)数据库等能存储海量数据的数据库,在本发明实施例中,对热数据库的类型不做具体的限定。
35.s120、响应于热库数据处理指令,针对已存储至热数据库中的至少一个热库数据中的每个热库数据,确定热库数据的第一数据类型,其中,至少一个热库数据包括已存储数据,第一数据类型包括热数据或是冷数据。
36.其中,热库数据处理指令可以理解为指示扫描热数据库中的每个热库数据,并确定热库数据对应的第一数据类型的指令;热库数据处理指令可以是人工发起的指令,还可以是周期性的自动发起的指令。热库数据可以理解为存储在热数据库中的数据。第一数据类型可以理解为热库数据的数据类型。
37.可以理解的是,由于在响应于数据存储请求时,是直接将待存储数据存储入热数据库中,并没有将待存储数据分类存储入相应的数据库;并且存储在热数据库中的各热库数据的第一数据类型并非是一直保持不变的,例如热库数据是某个医疗器械的维修数据,在此情况下,该热库数据的第一数据类型为热数据,在该医疗器械报废后,该热数据的第一数据类型可能改变为冷数据。因此,热库数据可能并非是热数据,还有可能是冷数据,热库数据的第一数据类型也随时可能发生改变。在本发明实施例中,为了能够适用于动态化的热库数据,实现动态对冷热数据的分离,可以通过响应于热库数据处理指令,针对已存储至热数据库中的至少一个热库数据中的每个热库数据,确定热库数据的第一数据类型,从而便于后续根据热库数据的第一数据类型,将热库数据进行冷热数据分离。
38.需要注意的是,至少一个热库数据并非只包括已存储数据,还包括热数据库中原先存在的数据。
39.s130、将第一数据类型为冷数据的热库数据存储入冷数据库中。
40.其中,冷数据库可以理解为存储冷数据类型的数据的数据库,冷数据库例如可以是oracle、mysql或hbase数据库等存取速度较快的数据库,在本发明实施例中,对冷数据库
的类型不做具体的限定。
41.在本发明实施例中,将第一数据类型为冷数据的热库数据存储入冷数据库中,即可实现对热库数据的冷热分离。
42.在本发明实施例中,在确定热数据库中存储的热库数据的数据类型之后,还可以更改或增加热库数据的类型标识,其中,与热数据对应的类型标识包括热标识,与冷数据对应的类型标识包括冷标识;将冷标识的热库数据存储入冷数据库中。其中,类型标识是能够标识热库数据的数据类型的标识,类型标识例如可以是coldflag=waittingformove,即冷标识=等待移动。在此基础上,可选的,可以将类型标识是冷标识的热库数据存储入冷数据库中。
43.本发明实施例的技术方案,响应于数据存储请求,获取待存储数据,将待存储数据存储入热数据库中,得到已存储数据;响应于热库数据处理指令,针对已存储至热数据库中的至少一个热库数据中的每个热库数据,确定热库数据的第一数据类型,其中,至少一个热库数据包括已存储数据,第一数据类型包括热数据或是冷数据;将第一数据类型为冷数据的热库数据存储入冷数据库中。本发明实施例的技术方案,可以提升数据存储效率。本发明实施例的技术方案,在存储数据时,将待存储数据直接存储至热数据库中即可,在响应于热库数据处理指令时,再将热库数据中的冷数据分离存储至冷数据库,实现数据存储的冷热分离,可以实现在能够对冷数据和热数据分离存放的情况下,可以提升数据存储效率。
44.一种可选的技术方案,确定热库数据的第一数据类型,包括:确定热库数据的类型字段;根据类型字段以及预先配置的数据类型划分策略,确定热库数据的第一数据类型。
45.其中,类型字段可以理解为能够决定热库数据的第一数据类型的字段,例如医疗器械的维修数据中的未报废状态或报废状态等;类型字段可以是热库数据本身具有的字段,还可以是为热库数据额外添加的,表征热库数据的第一数据类型的字段;不同种类的热库数据的类型字段可能不同,例如医疗器械的维修数据中的类型字段为医疗器械是否报废的状态字段,某一批次的一次性医疗器械中的类型字段为该批次的一次性医疗器械的剩余数量字段,等等。
46.在本发明实施例,可以预先配置出数据类型划分策略,数据类型划分策略即为类型字段与第一数据类型之间的关系,例如数据类型划分策略中配置有某一批次的一次性医疗器械的剩余数量为0,则第一数据类型为冷数据;若剩余数量大于0,则第一数据类型为热数据。根据类型字段以及数据类型划分策略,即可确定出热库数据的第一类型数据,实现对不同类型的第一数据类型的确定。
47.实施例二
48.图2是本发明实施例二中提供的另一种数据存储方法的流程图。本实施例以上述各技术方案为基础进行优化。在本实施例中,可选的,确定热库数据的第一数据类型,包括:多线程循环确定热库数据的第一数据类型;将第一数据类型为冷数据的热库数据存储入冷数据库,包括:将第一数据类型为冷数据的热库数据作为第一待存储冷数据;在第一待存储冷数据未加锁的情况下,将第一待存储冷数据进行加锁处理后,更新第一待存储冷数据;将第一待存储冷数据存储入冷数据库;上述数据存储方法还包括:将已存储入冷数据库中的第一待存储冷数据进行解锁处理。其中,与上述各实施例相同或相应的术语的解释在此不再赘述。
49.参见图2,本实施例的方法具体可以包括如下步骤:
50.s210、响应于数据存储请求,获取待存储数据,将待存储数据存储入热数据库中,得到已存储数据。
51.s220、响应于热库数据处理指令,针对已存储至热数据库中的至少一个热库数据中的每个热库数据,多线程循环确定热库数据的第一数据类型,其中,至少一个热库数据包括已存储数据,第一数据类型包括热数据或是冷数据。
52.可以理解的是,由于热库数据的数量可能很多,可能随时会有相当多数量的热库数据的第一数据类型发生改变,也可能会有源源不断的待存储数据存入热数据库作为新增的热库数据。因此,在本发明实施例中,可以多线程循环确定热库数据的第一数据类型,以适用于热库数据的第一数据类型的动态性改变。
53.在本发明实施例中,可以是设置定时器,不断的以多线程的方式发出热库数据处理指令,以使根据热库数据处理指令,针对已存储至热数据库中的至少一个热库数据中的每个热库数据,多线程循环确定热库数据的第一数据类型。
54.s230、将第一数据类型为冷数据的热库数据作为第一待存储冷数据。
55.其中,第一待存储冷数据可以理解为待存储入冷数据库中的热库数据。
56.s240、在第一待存储冷数据未加锁的情况下,将第一待存储冷数据进行加锁处理后,更新第一待存储冷数据。
57.需要注意的是,由于本发明实施例中,采用多线程循环确定热库数据的第一数据类型,因此可能会存在本次多线程循环已经确定出第一待存储冷数据,但是在将第一待存储冷数据存储入冷数据库中的过程中,下一次多线程循环再次将上述第一待存储冷数据确定出来,再次执行将第一待存储冷数据存储入冷数据库中,即可能会产生多次将同一个第一待存储冷数据存储入冷数据库的操作。为了避免上述问题,在本发明实施例中,可以在第一待存储冷数据未加锁的情况下,将第一待存储冷数据进行加锁处理后,更新第一待存储冷数据。加锁处理可以理解为对第一待存储冷数据,加上可以防止其他线程访问或读取的锁,例如iinnodb锁等,在本发明实施例中,对锁的类型不做具体限定。在对第一待存储冷数据进行加锁处理后,即可避免第一待存储冷数据被其他线程确定为该线程对应的第一待存储冷数据,从而避免多次将同一个第一待存储冷数据存储入冷数据库的问题。
58.可以理解的是,在上一次多线程循环时,对各第一待存储冷数据进行了加锁处理,但是由于超时或其他因素的影响,可能会存在第一待存储冷数据已加锁但是未存储入冷数据库中的情况,因此在本次多线程循环时,仅对未加锁的第一待存储冷数据进行加锁处理。
59.s250、将第一待存储冷数据存储入冷数据库。
60.需要注意的是,第一待存储冷数据可能是经当前线程加锁后的第一待存储冷数据,也可能是其他线程加锁后但是由于超时等因素影响没有成功存入冷数据库中的第一待存储冷数据,无论第一待存储冷数据是何种情况进行加锁操作的,都将其存储入冷数据库中。
61.s260、将已存储入冷数据库中的第一待存储冷数据进行解锁处理。
62.需要注意的是,为了使第一待存储冷数据存储入冷数据库中能够正常的访问或读取,还需要将已存储入冷数据库中的第一待存储冷数据进行解锁处理。
63.本发明实施例的技术方案,多线程循环确定热库数据的第一数据类型;将第一数
据类型为冷数据的热库数据作为第一待存储冷数据;在第一待存储冷数据未加锁的情况下,将第一待存储冷数据进行加锁处理后,更新第一待存储冷数据;将第一待存储冷数据存储入冷数据库;将已存储入冷数据库中的第一待存储冷数据进行解锁处理。上述技术方案,可以及时的将具有动态性的第一数据类型为冷数据热库数据存储入冷数据库中,还可以避免多次将同一个第一待存储冷数据存储入冷数据库的问题。
64.一种可选的技术方案,将第一数据类型为冷数据的热库数据存储入冷数据库中,包括:复制第一数据类型为冷数据的热库数据,将复制出的复制数据存储入冷数据库中;将复制出的复制数据存储入冷数据库中第一数据类型之后,还包括:返回存储结果;若根据存储结果确定出复制数据存储成功,则删除热数据库中的与复制数据对应的热库数据。
65.其中,复制数据可以理解为复制第一数据类型为冷数据的热库数据所得到的数据,复制数据与该热库数据是完全相同的。存储结果是能够反映复制数据是否存储入冷数据库中成功的结果。
66.在本发明实施例中,由于在将第一数据类型为冷数据的热库数据存入冷数据库时,可能会在存储失败时,出现不仅没有成功将该热库数据存储入冷数据库中,热数据库中的该热库数据还被丢失的情况,为了避免这种情况,可以将该热库数据进行复制,将复制出的复制数据存储入冷数据库中,在将复制数据存储入冷数据库成功的情况下,再删除述热数据库中的与复制数据对应的热库数据,从而避免将该热库数据存储入冷数据库失败造成的数据丢失问题。
67.实施例三
68.图3是本发明实施例三中提供的另一种数据存储方法的流程图。本实施例以上述各技术方案为基础进行优化。在本实施例中,可选的,将第一数据类型为冷数据的热库数据存储入冷数据库,包括:将第一数据类型为冷数据的热库数据作为第二待存储冷数据,并判断冷数据库中是否存在数据标识与第二待存储冷数据的数据标识相同的冷库数据;在冷数据库中不存在冷库数据的情况下,则将第二待存储冷数据存储入冷数据库。其中,与上述各实施例相同或相应的术语的解释在此不再赘述。
69.参见图3,本实施例的方法具体可以包括如下步骤:
70.s310、响应于数据存储请求,获取待存储数据,将待存储数据存储入热数据库中,得到已存储数据。
71.s320、响应于热库数据处理指令,针对已存储至热数据库中的至少一个热库数据中的每个热库数据,确定热库数据的第一数据类型,其中,至少一个热库数据包括已存储数据,第一数据类型包括热数据或是冷数据。
72.s330、将第一数据类型为冷数据的热库数据作为第二待存储冷数据,并判断冷数据库中是否存在数据标识与第二待存储冷数据的数据标识相同的冷库数据。
73.其中,第二待存储冷数据可以理解为待存储入冷数据库中的热库数据。数据标识可以理解为用于表征数据的唯一性的标识,每个数据都有唯一的标识与之对应;数据标识例如可以是存储数据时的流水码,在本发明实施例中,对数据标识的类型不做具体限定。冷库数据可以理解为存储在冷数据库中的数据。
74.在本发明实施例中,可能会存在多次将同一个第二待存储冷数据存入冷数据库中的情况,也可能存在冷数据库已经存储有第二待存储冷数据后再次存储的情况,为了避免
因为上述情况造成的资源浪费的问题,可以判断冷数据库中是否存在数据标识与第二待存储冷数据的数据标识相同的冷库数据。
75.示例性的,在将第二待存储冷数据存储入冷数据库之前,在保存逻辑中增加一个判断,用于判断冷数据库中是否存在数据标识与第二待存储冷数据的数据标识相同的冷库数据,并将事务包围起来,保证幂等性,以此可以避免多次存储造成的资源浪费的问题,还可以确保保存逻辑可以继续运行。
76.s340、在冷数据库中不存在冷库数据的情况下,则将第二待存储冷数据存储入冷数据库。
77.在本发明实施例中,在冷数据库中不存在冷库数据的情况下,则说明冷数据库中不存在与第二待存储冷数据相同的冷库数据,可以将第二待存储冷数据存储入冷数据库。
78.本发明实施例的技术方案,将第一数据类型为冷数据的热库数据作为第二待存储冷数据,并判断冷数据库中是否存在数据标识与第二待存储冷数据的数据标识相同的冷库数据;在冷数据库中不存在冷库数据的情况下,则将第二待存储冷数据存储入冷数据库。上述技术方案,可以避免多次存储造成的资源浪费的问题。
79.一种可选的技术方案,数据存储方法,还包括:在冷数据库中存在冷库数据的情况下,则丢弃第二待存储冷数据。
80.在冷数据库中存在冷库数据的情况下,则说明冷数据库中存在与第二待存储冷数据相同的冷库数据,无需再次存储,可以丢弃第二待存储冷数据,以使冷数据库和热数据库中只存储一次第二待存储冷数据,进一步的节省存储资源。
81.另一种可选的技术方案,数据存储方法,还包括:响应于数据读取请求,获取待读取数据,并确定待读取数据的第二数据类型,其中,第二数据类型包括热数据或是冷数据;确定与第二数据类型对应的目标数据库,并从目标数据库中查询待读取数据,其中,与热数据对应的目标数据库包括热数据库,与冷数据对应的目标数据库包括冷数据库。
82.其中,数据读取请求是需求进行数据读取的请求;数据读取请求并非仅仅只是请求将从数据库中读取数据的请求;还可以是会导致有数据需求从数据库中读取的请求。待读取数据的第二数据类型可能是热数据,也可能是冷数据。第二数据类型可以理解为待读取数据的数据类型。目标数据库可以理解为数据需求读取数据的数据库,目标数据库可以包括热数据库和冷数据库。
83.在本发明实施例中,可以响应于数据读取请求,获取待读取数据,并确定待读取数据的第二数据类型;确定与第二数据类型对应的目标数据库,若第二数据类型为热数据,则对应的目标数据库为热数据库,若第二数据类型为冷数据,则对应的目标数据库为冷数据库;从目标数据库中查询待读取数据,以此实现对冷热分离的数据的查询。
84.为了更好的理解上述本发明实施例的技术方案,在此提供一种可选示例。示例性的,参见图4,响应于数据存储请求,存储待存储数据进入热数据库中。
85.定时器多线程循环扫描热数据库,确定热库数据的第一数据类型;移动第一数据类型为冷数据的热库数据移动进入冷数据库中。
86.响应于数据读取请求,确定待读取数据的第二数据类型;若第二数据类型为热数据,从热数据库中查询待读取数据;若第二数据类型为冷数据,从冷数据库中查询待读取数据。
87.实施例四
88.图5为本发明实施例四所提供的数据存储装置的结构框图,该装置用于执行上述任意实施例所提供的数据存储方法。该装置与上述各实施例的数据存储方法属于同一个发明构思,在数据存储装置的实施例中未详尽描述的细节内容,可以参考上述数据存储方法的实施例。参见图5,该装置具体可包括:已存储数据得到模块410、第一数据类型确定模块420和热库数据存储模块430。
89.其中,已存储数据得到模块410,用于响应于数据存储请求,获取待存储数据,将待存储数据存储入热数据库中,得到已存储数据;
90.第一数据类型确定模块420,用于响应于热库数据处理指令,针对已存储至热数据库中的至少一个热库数据中的每个热库数据,确定热库数据的第一数据类型,其中,至少一个热库数据包括已存储数据,第一数据类型包括热数据或是冷数据;
91.热库数据存储模块430,用于将第一数据类型为冷数据的热库数据存储入冷数据库中。
92.可选的,第一数据类型确定模块420,可以包括:
93.类型字段确定单元,用于确定热库数据的类型字段;
94.第一数据类型确定单元,用于根据类型字段以及预先配置的数据类型划分策略,确定热库数据的第一数据类型。
95.可选的,第一数据类型确定模块420,可以包括:
96.第一数据类型确定单元,用于多线程循环确定热库数据的第一数据类型;
97.热库数据存储模块430,可以包括:
98.第一待存储冷数据作为单元,用于将第一数据类型为冷数据的热库数据作为第一待存储冷数据;
99.第一待存储冷数据更新单元,用于在第一待存储冷数据未加锁的情况下,将第一待存储冷数据进行加锁处理后,更新第一待存储冷数据;
100.第一待存储冷数据存储单元,用于将第一待存储冷数据存储入冷数据库;
101.数据存储装置,还可以包括:
102.第一待存储冷数据解锁模块,用于将已存储入冷数据库中的第一待存储冷数据进行解锁处理。
103.可选的,热库数据存储模块430,可以包括:
104.复制数据存储单元,用于复制第一数据类型为冷数据的热库数据,将复制出的复制数据存储入冷数据库中;
105.数据存储装置,还可以包括:
106.存储结果返回模块,用于在将复制出的复制数据存储入冷数据库中第一数据类型之后,返回存储结果;
107.热库数据删除模块,用于若根据存储结果确定出复制数据存储成功,则删除热数据库中的与复制数据对应的热库数据。
108.可选的,热库数据存储模块430,可以包括:
109.冷库数据判断单元,用于将第一数据类型为冷数据的热库数据作为第二待存储冷数据,并判断冷数据库中是否存在数据标识与第二待存储冷数据的数据标识相同的冷库数
据;
110.第二待存储冷数据存储单元,用于在冷数据库中不存在冷库数据的情况下,则将第二待存储冷数据存储入冷数据库。
111.在上述方案的基础上,可选的,数据存储装置,还可以包括:
112.第二待存储冷数据丢弃模块,用于在冷数据库中存在冷库数据的情况下,则丢弃第二待存储冷数据。
113.可选的,数据存储装置,还可以包括:
114.第二数据类型确定模块,用于响应于数据读取请求,获取待读取数据,并确定待读取数据的第二数据类型,其中,第二数据类型包括热数据或是冷数据;
115.待读取数据查询模块,用于确定与第二数据类型对应的目标数据库,并从目标数据库中查询待读取数据,其中,与热数据对应的目标数据库包括热数据库,与冷数据对应的目标数据库包括冷数据库。
116.本发明实施例四提供的数据存储装置,通过已存储数据得到模块,响应于数据存储请求,获取待存储数据,将待存储数据存储入热数据库中,得到已存储数据;通过第一数据类型确定模块,响应于热库数据处理指令,针对已存储至热数据库中的至少一个热库数据中的每个热库数据,确定热库数据的第一数据类型,其中,至少一个热库数据包括已存储数据,第一数据类型包括热数据或是冷数据;通过热库数据存储模块,将第一数据类型为冷数据的热库数据存储入冷数据库中。本发明实施例的数据存储装置,在存储数据时,将待存储数据直接存储至热数据库中即可,在响应于热库数据处理指令时,再将热库数据中的冷数据分离存储至冷数据库,实现数据存储的冷热分离,可以实现在能够对冷数据和热数据分离存放的情况下,可以提升数据存储效率。
117.本发明实施例所提供的数据存储装置可执行本发明任意实施例所提供的数据存储方法,具备执行方法相应的功能模块和有益效果。
118.值得注意的是,上述数据存储装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
119.实施例五
120.图6是本发明实施例五提供的一种应用服务器的结构示意图。图6示出了适于用来实现本发明实施方式的示例性应用服务器512的框图。图6显示的应用服务器512仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
121.如图6所示,应用服务器512以通用服务器的形式表现。应用服务器512的组件可以包括但不限于:一个或者多个处理器516,存储装置528,连接不同系统组件(包括存储装置528和处理器516)的总线518。
122.总线518表示几类总线结构中的一种或多种,包括存储装置总线或者存储装置控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(industry subversive alliance,isa)总线,微通道体系结构(micro channel architecture,mac)总线,增强型isa总线、视频电子标准协会(video electronics standards association,vesa)局域总线以及外围组件互连(peripheral component interconnect,pci)总线。
123.应用服务器512典型地包括多种计算机系统可读介质。这些介质可以是任何能够被应用服务器512访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
124.存储装置528可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(random access memory,ram)530和/或高速缓存存储器532。应用服务器512可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统534可以用于读写不可移动的、非易失性磁介质(图6未显示,通常称为“硬盘驱动器”)。尽管图6中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘,例如只读光盘(compact disc read-only memory,cd-rom),数字视盘(digital video disc-read only memory,dvd-rom)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线518相连。存储装置528可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
125.具有一组(至少一个)程序模块542的程序/实用工具540,可以存储在例如存储装置528中,这样的程序模块542包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块542通常执行本发明所描述的实施例中的功能和/或方法。
126.应用服务器512也可以与一个或多个外部设备514(例如键盘、指向终端、显示器524等)通信,还可与一个或者多个使得用户能与该应用服务器512交互的终端通信,和/或与使得该应用服务器512能与一个或多个其它计算终端进行通信的任何终端(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口522进行。并且,应用服务器512还可以通过网络适配器520与一个或者多个网络(例如局域网(local area network,lan),广域网(wide area network,wan)和/或公共网络,例如因特网)通信。如图6所示,网络适配器520通过总线518与应用服务器512的其它模块通信。应当明白,尽管图中未示出,可以结合应用服务器512使用其它硬件和/或软件模块,包括但不限于:微代码、终端驱动器、冗余处理器、外部磁盘驱动阵列、磁盘阵列(redundant arrays of independent disks,raid)系统、磁带驱动器以及数据备份存储系统等。
127.处理器516通过运行存储在存储装置528中的程序,从而执行各种功能应用以及数据处理,例如实现本发明任意实施例所提供的一种数据存储方法,该方法可以包括:
128.响应于数据存储请求,获取待存储数据,将待存储数据存储入热数据库中,得到已存储数据;
129.响应于热库数据处理指令,针对已存储至热数据库中的至少一个热库数据中的每个热库数据,确定热库数据的第一数据类型,其中,至少一个热库数据包括已存储数据,第一数据类型包括热数据或是冷数据;
130.将第一数据类型为冷数据的热库数据存储入冷数据库中。
131.实施例六
132.本发明实施例六还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明任意实施例所提供的一种数据存储方法,该方法可以包括:
133.响应于数据存储请求,获取待存储数据,将待存储数据存储入热数据库中,得到已存储数据;
134.响应于热库数据处理指令,针对已存储至热数据库中的至少一个热库数据中的每个热库数据,确定热库数据的第一数据类型,其中,至少一个热库数据包括已存储数据,第一数据类型包括热数据或是冷数据;
135.将第一数据类型为冷数据的热库数据存储入冷数据库中。
136.本发明实施例的计算机可读存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
137.计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
138.存储介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于无线、电线、光缆、rf等等,或者上述的任意合适的组合。
139.可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或终端上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
140.注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1