一种数据存储系统、数据存储方法及数据存储中心的制作方法

文档序号:10724484阅读:306来源:国知局
一种数据存储系统、数据存储方法及数据存储中心的制作方法
【专利摘要】本发明实施例提供一种数据存储系统、数据存储方法及数据存储中心,该系统包括:存储级别依序升高的n个存储单元;所述n个存储单元包括:第一存储级别的数据存储中心,及存储级别高于所述第一存储级别,且存储级别依序升高的n?1个存储单元;其中,各存储单元存储有存储级别不高于自身存储级别的数据;所述数据存储中心,用于接收客户端发送的针对目标数据的处理请求;确定所述目标数据对应的目标存储级别;从存储级别不低于所述目标存储级别的存储单元中,寻找可处理所述处理请求的目标存储单元;触发所述目标存储单元根据所述处理请求对所述目标数据进行处理。本发明实施例可在兼顾海量数据的高存储量要求的情况下,提升数据处理效率。
【专利说明】
一种数据存储系统、数据存储方法及数据存储中心
技术领域
[0001]本发明涉及存储技术领域,具体涉及一种数据存储系统、数据存储方法及数据存储中心。
【背景技术】
[0002]随着数据的爆炸式增长,数据存储系统如何对海量数据有效的进行查询、写入等处理成为了数据存储领域的研究重点。
[0003]目前数据存储的方式主要是,通过设置一大型数据库来专用的存储海量数据,这种数据存储方式,虽然可通过大型数据库满足海量数据的高存储量要求,但从大型数据库中查询、写入某一数据的效率大幅的降低,牺牲了数据处理效率,数据处理效率如QPS(每秒查询率)等数据查询、写入指标;因此如何在兼顾数据处理效率,和海量数据的高存储量要求的情况下,实现海量数据的存储和处理,成为本领域技术人员急需解决的问题。

【发明内容】

[0004]有鉴于此,本发明实施例提供一种数据存储系统、数据存储方法及数据存储中心,以在兼顾海量数据的高存储量要求的情况下,提升数据处理效率。
[0005]为实现上述目的,本发明实施例提供如下技术方案:
[0006]—种数据存储系统,包括:存储级别依序升高的η个存储单元;所述η个存储单元包括:第一存储级别的数据存储中心,及存储级别高于所述第一存储级别,且存储级别依序升高的η-1个存储单元;其中,各存储单元存储有存储级别不高于自身存储级别的数据;
[0007]所述数据存储中心,用于接收客户端发送的针对目标数据的处理请求;确定所述目标数据对应的目标存储级别;从存储级别不低于所述目标存储级别的存储单元中,寻找可处理所述处理请求的目标存储单元;触发所述目标存储单元根据所述处理请求对所述目标数据进行处理。
[0008]本发明实施例还提供一种数据存储方法,所述数据存储方法包括:
[0009]接收客户端发送的针对目标数据的处理请求;
[0010]确定所述目标数据对应的目标存储级别;
[0011 ]从存储级别不低于所述目标存储级别的存储单元中,寻找可处理所述处理请求的目标存储单元;
[0012]触发所述目标存储单元根据所述处理请求对所述目标数据进行处理。
[0013]本发明实施例还提供一种数据存储中心,所述数据存储中心包括:
[0014]处理请求接收模块,用于接收客户端发送的针对目标数据的处理请求;
[0015]目标存储级别确定模块,用于确定所述目标数据对应的目标存储级别;
[0016]目标存储单元寻找模块,用于从存储级别不低于所述目标存储级别的存储单元中,寻找可处理所述处理请求的目标存储单元;
[0017]处理触发模块,用于触发所述目标存储单元根据所述处理请求对所述目标数据进行处理。
[0018]基于上述技术方案,本发明实施例中,数据存储中心针对目标数据的处理请求,只会在存储级别不低于目标存储级别的存储单元中,选择目标存储单元对目标数据进行数据处理;因此本发明实施例可针对不同存储级别的需处理的目标数据,适配相应的目标存储单元进行处理,减小可处理目标数据的存储单元的范围,同时可使得所寻找的目标存储单元的数据访问速度,能够与需处理的目标数据的存储级别尽可能的适配,提升针对目标数据的处理效率。
【附图说明】
[0019]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
[0020]图1为本发明实施例提供的数据存储系统的结构示意图;
[0021]图2为本发明实施例提供的数据存储系统的架构应用示意图;
[0022]图3为本发明实施例提供的数据存储方法的流程图;
[0023]图4为本发明实施例提供的确定目标数据的目标存储级别的方法流程图;
[0024]图5为本发明实施例提供的确定目标数据的目标存储级别的另一方法流程图;
[0025]图6为本发明实施例提供的确定目标数据的目标存储级别的再一方法流程图;
[0026]图7为本发明实施例提供的数据存储方法的另一流程图;
[0027]图8为本发明实施例提供的数据查询的处理示意图;
[0028]图9为本发明实施例提供的数据查询的另一处理示意图;
[0029]图10为本发明实施例提供的数据存储方法的再一流程图;
[0030]图11为本发明实施例提供的数据存储中心的结构框图;
[0031]图12为本发明实施例提供的目标存储级别确定模块的结构框图;
[0032]图13为本发明实施提供的数据存储中心的另一结构框图;
[0033]图14为本发明实施例提供的数据存储中心的再一结构框图;
[0034]图15为本发明实施例提供的数据存储中心的硬件配置示意图。
【具体实施方式】
[0035]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0036]图1为本发明实施例提供的数据存储系统的结构示意图,参照图1,该数据存储系统可以包括:η个存储单元,本发明实施例可为各个存储单元定义存储级别,且该η个存储单元的存储级别依序升高,即第i个存储单元的存储级别高于第i_l个存储单元的存储级别,如第一个存储单元的存储级别为第一存储级别,第二个存储单元的存储级别为第二存储级另IJ,且第二存储级别高于第一存储级别,以此类推;η可以是大于或等于2的整数,具体取值可视实际数据存储需求而定;
[0037]回到图1,该η个存储单元可以进一步划分为第一存储级别的数据存储中心10,及存储级别高于第一存储级别,且存储级别依序升高的η-1个存储单元20;
[0038]在本发明实施例中,η-1个存储单元20中的各存储单元可以认为是数据库形式的存储系统,数据存储中心10可以认为是具有数据处理能力和缓存能力的数据处理设备;
[0039]在本发明实施例中,存储级别越低则对应的存储单元的数据访问速度越快、数据存储容量越小;可以理解的是,数据存储中心为本发明实施例执行数据处理逻辑,与η-1个存储单元20中的各存储单元交互调度数据的设备,同时兼具数据缓存能力,因此数据存储中心的数据访问速度最快,但数据存储容量可能最小;
[0040]而η-1个存储单元中,依据存储级别的升高顺序,存储单元的数据访问速度逐级降低,而数据存储容量逐级升高,直至最高存储级别的第η个存储单元的数据访问速度最低,数据存储容量最高;
[0041]可选的,各存储单元可存储有存储级别不高于自身存储级别的数据;即第i个存储单元可存储存储级别等于或小于第i存储级别的数据,如第i个存储单元可存储第i存储级别的数据,也可能存储存储级别为第I至第i的数据;
[0042]可选的,最高存储级别的存储单元由于数据存储容量最高,为实现海量数据的持久化存储要求,本发明实施例可在最高存储级别的存储单元中存储所有的数据。
[0043]图1所示数据存储系统的架构应用可如图2所示,参照图2,图2中的数据存储系统分为三级存储级别结构,包括:第一存储级别的数据存储中心10,第二存储级别的key (键)_value(值)缓存存储单元21,第三存储级别的关系数据库22;
[0044]其中,key_value缓存存储单元是将数据以key-value形式存于内存,输入key字符串,查询返回value的数据存储单元;S卩键值(key-value)缓存存储单元中以键值形式存储有第二存储级别的数据;
[0045]关系数据库是采用了关系模型来组织数据的数据库,数据以关系表形式存储,输入结构化查询语句SQL,返回数据集;即关系数据库中以关系表形式存储有第三存储级别的数据;进一步,由于关系数据库的数据存储容量最高,为实现海量数据的持久化存储要求,关系数据库中可以关系表形式存储有第三存储级别的数据和第一存储级别及第二存储级别的数据,即关系数据库中可存储所有的数据。
[0046]本发明实施例通过设置不同存储级别的存储单元,可实现不同存储级别的数据在数据存储系统的存储,满足海量数据的高存储量要求;
[0047]同时,在对数据进行写入、查询等处理时,本发明实施例可通过数据存储中心接收客户端发送的针对目标数据的处理请求,进而数据存储中心可确定目标数据对应的目标存储级别,从存储级别不低于所述目标存储级别的存储单元中,寻找可处理所述处理请求的目标存储单元,从而数据存储中心可触发所述目标存储单元根据所述处理请求对所述目标数据进行处理;
[0048]由于本发明实施例只会在存储级别不低于目标存储级别的存储单元中,选择目标存储单元进行目标数据的处理;因此本发明实施例可针对不同存储级别的需处理的目标数据,适配相应的目标存储单元进行处理,减小可处理目标数据的存储单元的范围,同时可使得所寻找的目标存储单元的数据访问速度,能够与需处理的目标数据的存储级别尽可能的适配,提升针对目标数据的处理效率。
[0049]本发明实施例实现数据查询、写入等处理,主要是通过数据存储中心调度触发相应的目标存储单元实现,下面以数据存储中心的角度对本发明实施例提供的数据存储方法进行介绍。
[0050]图3为本发明实施例提供的数据存储方法的流程图,该方法可基于图1所示的数据存储系统,即该数据存储系统可以包括:存储级别依序升高的η个存储单元;所述η个存储单元包括:第一存储级别的数据存储中心,及存储级别高于所述第一存储级别,且存储级别依序升高的η-1个存储单元;其中,各存储单元存储有存储级别不高于自身存储级别的数据;
[0051]图3所示方法可应用在数据存储系统的数据存储中心中,参照图3,该方法可以包括:
[0052]步骤S100、接收客户端发送的针对目标数据的处理请求;
[0053]可选的,针对目标数据的处理请求可能是针对目标数据的查询请求,或者写请求等;
[0054]可选的,处理请求中可携带目标数据的标识。
[0055]步骤SI10、确定所述目标数据对应的目标存储级别;
[0056]可选的,本发明实施例可根据数据的访问属性,为数据设定存储级别;访问属性可以表征数据的访问频度,访问属性一般可通过数据的读频率、写频率等信息表示;
[0057]为数据设定存储级别的原则主要是,访问频度高的数据对应在访问速度快、容量低的存储单元中,即访问频度越高的数据对应的存储级别越低,而访问频度越低的数据对应的存储级别越高;
[0058]数据存储中心在接收到针对目标数据的处理请求后,可获取所述目标数据的访问属性信息(目标数据的访问属性的数据表示),从而基于目标数据的访问属性信息确定目标数据的访问频度,将所确定的访问频度相应的存储级别确定为目标存储级别;
[0059]可选的,本发明实施例可设置越高的访问频度对应的存储级别越低;
[0060]具体的,本发明实施例可设置不同的存储级别相应的访问频度范围,越低的存储级别相应的访问频度范围的值越大,从而在确定目标数据的访问频度后,可确定目标数据的访问频度所处于的访问频度范围相应的存储级别,以所确定的存储级别作为目标数据对应的目标存储级别;
[0061 ]可选的,本发明实施例可通过目标数据的标识获取目标数据的访问属性信息;各数据的访问属性信息可预收集,并通过数据的标识对应所收集的访问属性信息。
[0062]步骤S120、从存储级别不低于所述目标存储级别的存储单元中,寻找可处理所述处理请求的目标存储单元;
[0063]由于数据存储系统中的各存储单元存储有,存储级别不高于自身存储级别的数据,因此在确定目标数据的目标存储级别后,若是针对目标数据的查询请求,则目标数据可能存储在存储级别不低于所述目标存储级别的存储单元中,本发明实施例可从存储级别不低于所述目标存储级别的存储单元中,寻找存储有目标数据的存储单元,以便实现目标数据的查询;
[0064]若是针对目标数据的写请求,目标数据应写在存储级别不低于所述目标存储级别的存储单元中,因此本发明实施例可在存储级别不低于所述目标存储级别的存储单元中,寻找可写入目标数据的存储单元,以便实现目标数据的写入;
[0065]可见,无论是针对目标数据的查询、写入等请求,数据存储中心均需从存储级别不低于目标数据的目标存储级别的存储单元中,寻找可处理所述处理请求的目标存储单元,以便目标数据的相应处理。
[0066]步骤SI30、触发所述目标存储单元根据所述处理请求对所述目标数据进行处理。
[0067]在确定目标存储单元后,数据存储中心可通过目标存储单元,以所述处理请求处理目标数据,实现对目标数据的处理;如处理请求是查询请求时,数据存储中心可从目标存储单元中调取与目标数据的标识相应的目标数据内容,并反馈给客户端;如处理请求是写请求时,数据存储中心可将目标数据写入目标存储单元中。
[0068]本发明实施例提供的数据存储方法,基于一种数据存储系统,该数据存储系统包括:存储级别依序升高的η个存储单元;所述η个存储单元包括:第一存储级别的数据存储中心,及存储级别高于所述第一存储级别,且存储级别依序升高的η-1个存储单元;其中,各存储单元存储有存储级别不高于自身存储级别的数据;该数据存储系统通过设置不同存储级别的存储单元,且各存储单元存储有存储级别不高于自身存储级别的数据,可实现不同存储级别的数据在数据存储系统的存储,满足海量数据的高存储量要求;
[0069]同时,在执行该数据存储方法时,数据存储中心针对目标数据的处理请求,只会在存储级别不低于目标存储级别的存储单元中,选择目标存储单元对目标数据进行数据处理;因此本发明实施例可针对不同存储级别的需处理的目标数据,适配相应的目标存储单元进行处理,减小可处理目标数据的存储单元的范围,同时可使得所寻找的目标存储单元的数据访问速度,能够与需处理的目标数据的存储级别尽可能的适配,提升针对目标数据的处理效率。
[0070]可选的,图4示出了本发明实施例提供的确定目标数据的目标存储级别的方法流程图,参照图4,该流程可以包括:
[0071 ]步骤S200、获取目标数据的读频率和写频率;
[0072]读频率和写频率可以是访问属性信息的一种可选形式。
[0073]步骤S210、根据所述读频率和写频率,确定所述目标数据的读写比例值,以所述读写比例值作为所述目标数据的访问频度;
[0074]可选的,目标数据的读写比例值可以是目标数据的访问频度的一种形式,目标数据的读写比例值可以是读频率/写频率。
[0075]步骤S220、将所述访问频度相应的存储级别确定为目标存储级别。
[0076]目标数据的读写比例值越小,说明目标数据的读频率越低,写频率越高,目标数据的访问频度越低,相应的,目标数据应对应在数据访问速度较低,而数据存储容量较高的存储单元中,因此目标数据的存储级别应越高;
[0077]目标数据的读写比例值越大,说明目标数据的读频率越高,写频率越低,目标数据的访问频度越高,相应的,目标数据应对应在数据访问速度较高,而数据存储容量较低的存储单元中,因此目标数据的存储级别应越低。
[0078]可选的,本发明实施例可通过设置不同的存储级别相应的访问频度范围,从而在确定目标数据的访问频度后,实现目标数据的访问频度相应的目标存储级别的确定;
[0079]可选的,图5示出了本发明实施例提供的确定目标数据的目标存储级别的另一方法流程图,参照图5,该流程可以包括:
[0080]步骤S300、获取目标数据的读频率和写频率;
[0081]步骤S310、根据所述读频率和写频率,确定所述目标数据的读写比例值;
[0082]步骤S320、将所述读写比例值所处于的读写比例值范围相应的存储级别作为目标存储级别;其中,一个存储级别对应一个读写比例值范围,各存储级别对应的读写比例值范围不同。
[0083]值得注意的是,读频率和写频率仅是目标数据的访问属性信息的一种可选表示,本发明实施例并不排除其他形式的访问属性信息,具体形式的访问属性信息可根据实际情况设定,如可能仅选取读频率或写频率作为访问属性信息;
[0084]目标数据的读写比例值也仅是目标数据的访问频度的一种可选形式,本发明实施例并不排除其他形式的访问频度,具体形式的访问频度可根据实际情况设定,如可将写频率/读频率,或者,读频率的平方/写频率等作为访问频度。
[0085]可选的,本发明实施例在根据目标数据的访问属性信息确定目标数据的目标存储级别前,还可通过目标数据的数据量判断目标数据的数据量是否过大,需要足够大的存储单元才能存储,从而在判断目标数据的数据量过大,需要足够大的存储单元才能存储时,确定目标数据需对应与其数据量相应的存储单元,进而将与目标数据的数据量相应的存储单元的存储级别作为目标存储级别;同时,可在判断目标数据的数据量不过大时,基于目标数据的访问属性信息确定目标数据的目标存储级别;
[0086]图6示出了本发明实施例提供的确定目标数据的目标存储级别的再一方法流程图,参照图6,该流程可以包括:
[0087]步骤S400、获取目标数据的数据量,读频率和写频率;
[0088]步骤S410、判断目标数据的数据量是否高于设定数据量阈值,若是,执行步骤S420,若否,执行步骤S430;
[0089]步骤S420、将所述目标数据的数据量相应的存储级别作为目标存储级别;
[0090]可选的,如果判断所述目标数据的数据量高于设定数据量阈值,则本发明实施例可判断目标数据的数据量过大,可将与其数据量相应的存储单元的存储级别作为目标存储级别;可选的,本发明实施可设置不同存储级别的存储单元相应的数据量范围,从而在确定目标数据的数据量高于设定数据量阈值时,将目标数据的数据量所处的数据量范围相应的存储单元的存储级别,作为目标存储级别;
[0091 ]可选的,本发明实施例也可在目标数据的数据量高于设定数据量阈值时,直接将最高存储级别作为目标数据的目标存储级别。
[0092]步骤S430、根据所述读频率和写频率,确定所述目标数据的读写比例值;
[0093]可见,在本发明实施例中,数据存储中心判断目标数据的数据量低于设定数据量阈值时,才触发图5步骤S310的执行。
[0094]步骤S440、将所述读写比例值所处于的读写比例值范围相应的存储级别作为目标存储级别;其中,一个存储级别对应一个读写比例值范围,各存储级别对应的读写比例值范围不同。
[0095]以图2所示数据存储系统为例,本发明实施例可设置数据存储中心对应的第一存储级别相应的第一访问频度范围,key-value缓存存储单元对应的第二存储级别相应的第二访问频度范围,关系数据库对应的第三存储级别相应的第三访问频度范围;且第一访问频度范围的值>第二访问频度范围的值>第三访问频度范围的值;
[0096]进而,本发明实施例在确定目标数据的访问频度后,如果该访问频度处于第一访问频度范围,则确定第一存储级别为目标数据的目标存储级别,如果该访问频度处于第二访问频度范围,则确定第二存储级别为目标数据的目标存储级别,如果该访问频度处于第三访问频度范围,则确定第三存储级别为目标数据的目标存储级别。
[0097]在确定目标数据的目标存储级别后,数据存储中心可从存储级别不低于所述目标存储级别的存储单元中,寻找可处理所述处理请求的目标存储单元,以便触发目标存储单元根据所述处理请求对所述目标数据进行处理;下面将分别针对查询请求和写请求的情况,进行描述。
[0098]图7为本发明实施例提供的数据存储方法的另一流程图,参照图7,该方法可以包括:
[0099]步骤S500、接收客户端发送的针对目标数据的查询请求;
[0100]步骤S510、确定所述目标数据对应的目标存储级别;
[0101]步骤S520、从所述目标存储级别对应的存储单元开始,按照存储级别依序升高的顺序,依次从不低于所述目标存储级别的存储单元中查询所述目标数据,直至确定到存储有所述目标数据的存储单元,将第一个确定到的存储有所述目标数据的存储单元,作为目标存储单元;
[0102]本发明实施例可从目标存储级别对应的存储单元开始,查询是否存在目标数据,若存在,则将目标存储级别对应的存储单元作为目标存储单元,若不存在,则在高一存储级别的存储单元中查询是否存在目标数据,以此类推,直至将不低于所述目标存储级别的存储单元中,第一个查询到的存储有目标数据的存储单元,作为目标存储单元。
[0103]步骤S530、从所述目标存储单元中调取所述目标数据并反馈给客户端。
[0104]在确定目标存储单元后,本发明实施例可从目标存储单元中调取目标数据,以将目标数据反馈给客户端,实现客户端对目标数据的查询。
[0105]可选的,如果第一个查询到目标数据的目标存储单元的存储级别,高于目标数据的目标存储级别,说明目标数据在目标存储级别相应的存储单元中未存储;基于存储单元存储有存储级别不高于自身存储级别的数据的原则,本发明实施例可对目标存储级别相应的存储单元,及目标存储级别相应的存储单元至目标存储单元间的存储单元,进行目标数据的补充存储,从而提高下次从目标存储级别相应的存储单元中查询到目标数据的概率,提高下一次查询目标数据的速度;
[0106]具体的,如果数据存储中心在判断目标存储单元的存储级别高于所述目标存储级另IJ,则可确定所述目标存储级别至所述目标存储单元的存储级别的过渡存储级别,分别在所述目标存储级别及各过渡存储级别的存储单元中存储所述目标数据;
[0107]过渡存储级别为目标存储级别至所述目标存储单元的存储级别之间的存储级别,如目标存储级别为第一存储级别,目标存储单元的存储级别为第三存储级别,则过渡存储级别可以为第二存储级别。
[0108]以图2所示数据存储系统为例,本发明实施例提供的数据存储方法的应用过程可以如下:
[0109](I)数据存储中心收到目标数据的查询请求后,可确定目标数据的目标存储级别;
[0110](21)如果目标存储级别为第一存储级别,则在相应的数据存储中心的本地缓存中判断是否查询到目标数据,若是,则从数据存储中心的本地缓存中调取目标数据并反馈给客户端,若否,则数据存储中心向第二存储级别的键值缓存存储单元发送查询目标数据的请求;
[0111]如果键值缓存存储单元查询到目标数据,则数据存储中心从键值缓存存储单元中调取目标数据并反馈给客户端,同时,在数据存储中心的本地缓存中缓存目标数据;如果键值缓存存储单元未查询到目标数据,则数据存储中心向第三存储级别的关系数据库发送查询目标数据的请求;
[0112]由于关系数据库的存储级别最高,持久化存储有所有的数据,因此可在关系数据库中查询到目标数据并反馈给客户端;同时,数据存储中心可在本地缓存中缓存目标数据,或,分别在数据存储中心的本地缓存和键值缓存存储单元中缓存目标数据;
[0113](22)如果目标存储级别为第二存储级别,则数据存储中心向相应的键值缓存存储单元发送查询目标数据的请求;
[0114]如果键值缓存存储单元查询到目标数据,则数据存储中心从键值缓存存储单元中调取目标数据并反馈给客户端,如果键值缓存存储单元未查询到目标数据,则数据存储中心向第三存储级别的关系数据库发送查询目标数据的请求;
[0115]在关系数据库中查询到目标数据并反馈给客户端;同时,数据存储中心在键值缓存存储单元中缓存目标数据;
[0116](23)如果目标存储级别为第三存储级别,则数据存储中心向相应的关系数据库发送查询目标数据的请求,从关系数据库中查询到目标数据并反馈给客户端。
[0117]结合上述应用过程描述,图8、图9示出了数据查询的处理过程示意,具体如下:
[0118]1、数据存储中心收到目标数据的查询请求,检查请求的目标数据是否使用本地缓存(数据存储级别〈=I),如果是转到2;
[0119]2、数据存储中心查询本地缓存,如果查询成功转到7,否则转到3;
[0120]3、数据存储中心向KV缓存存储单元发出目标数据的查询请求;如果查询成功,则检查目标数据是否需要保存到本地缓存(数据存储级别〈=1),如果是转到6,否则转到7;如果查询失败转到4;
[0121]4、数据存储中心向关系数据库(DB)发出目标数据的查询请求,如果查询成功,则检查目标数据是否需要保存到KV缓存存储单元(数据存储级别〈=2),如果是转到5,否则转到7;
[0122]5、数据存储中心将目标数据保存到KV缓存存储单元中,并检查目标数据是否需要保存到本地缓存,如果是转到6,否则转到7;
[0123]6、数据存储中心将目标数据保存到本地缓存;
[0124]7、数据存储中心向客户端返回查询结果。
[0125]值得注意的是,如果从最高存储级别的关系数据库中还无法查询到目标数据,说明目标数据没有存储在数据存储系统,无法进行查询,数据存储中心可反馈相应结果给客户端。
[0126]本发明实施例可将访问频度高的热点数据,存放在相应的访问速度越快、容量越低的存储单元中,从而提高数据读取的整体QPS;此外,通过把所有数据都持久化到最高存储级别的存储单元(如关系数据库)中,可解决海量存储、复杂结构化查询和数据持久化问题。
[0127]图10为本发明实施例提供的数据存储方法的再一流程图,参照图10,该方法可以包括:
[0128]步骤S600、接收客户端发送的针对目标数据的写请求;
[0129]步骤S610、确定所述目标数据对应的目标存储级别;
[0130]步骤S620、将存储级别不低于所述目标存储级别的存储单元均作为目标存储单元;
[0131]可选的,本发明实施中,目标数据可写入存储级别大于或等于目标存储级别的存储单元中,因此存储级别不低于所述目标存储级别的存储单元均可作为目标存储单元来写入目标数据;这种方式可保证相同数据在各存储级别的存储单元之间的一致性。
[0132]步骤S630、在目标存储单元中存储所述目标数据。
[0133]以图2所示数据存储系统为例,本发明实施例提供的数据存储方法的应用过程可以如下:
[0134]数据存储中心收到目标数据的写请求后,可确定目标数据的目标存储级别;
[0135]如果目标存储级别为第一存储级别,则在第一存储级别相应的数据存储中心,存储级别高于第一存储级别的键值缓存存储单元和关系数据库中,分别写入目标数据;
[0136]如果目标存储级别为第二存储级别,则在第二存储级别相应的键值缓存存储单元,和存储级别高于第二存储级别的关系数据库中,分别写入目标数据;
[0137]如果目标存储级别为第三存储级别,则在第三存储级别相应的关系数据库中,写入目标数据。
[0138]可选的,在最高存储级别的存储单元可存储所有的数据的基础上,数据存储中心可触发最高存储级别的存储单元存储所有数据。
[0139]在本发明实施例中,η个存储单元中除数据存储中心外的η-1个存储单元可以包括:第二存储级别的键值缓存存储单元,第三存储级别的关系数据库。
[0140]本发明实施例提供的数据存储方法可在兼顾海量数据的高存储量要求的情况下,提升数据处理效率。
[0141]下面对本发明实施例提供的数据存储中心进行介绍,下文描述的数据存储中心可与上文描述的数据存储方法相互对应参照。
[0142]图11为本发明实施例提供的数据存储中心的结构框图,该数据存储中心可位于一数据存储系统中,所述数据存储系统可以包括:存储级别依序升高的η个存储单元;所述η个存储单元包括:第一存储级别的所述数据存储中心,及存储级别高于所述第一存储级别,且存储级别依序升高的η-1个存储单元;其中,各存储单元存储有存储级别不高于自身存储级别的数据;
[0143]回到图11,该数据存储中心可以包括:
[0144]处理请求接收模块100,用于接收客户端发送的针对目标数据的处理请求;
[0145]目标存储级别确定模块200,用于确定所述目标数据对应的目标存储级别;
[0146]目标存储单元寻找模块300,用于从存储级别不低于所述目标存储级别的存储单元中,寻找可处理所述处理请求的目标存储单元;
[0147]处理触发模块400,用于触发所述目标存储单元根据所述处理请求对所述目标数据进行处理。
[0148]可选的,图12示出了本发明实施例提供的目标存储级别确定模块200的可选结构,参照图12,目标存储级别确定模块200可以包括:
[0149]访问属性信息获取单元210,用于获取所述目标数据的访问属性信息;
[0150]访问频度确定单元220,用于根据所述访问属性信息确定所述目标数据的访问频度;
[0151 ]目标存储级别相应单元230,用于将所述访问频度相应的存储级别确定为目标存储级别,其中,越高的访问频度对应的存储级别越低。
[0152]可选的,访问属性信息获取单元210具体可用于,获取所述目标数据的读频率和写频率。
[0153]访问频度确定单元220具体可以用于,根据所述读频率和写频率,确定所述目标数据的读写比例值,以所述读写比例值作为所述目标数据的访问频度。
[0154]可选的,目标存储级别相应单元230具体可用于,将所述读写比例值所处于的读写比例值范围相应的存储级别作为目标存储级别;其中,一个存储级别对应一个读写比例值范围,各存储级别对应的读写比例值范围不同。
[0155]可选的,访问属性信息获取单元210,还可用于在获取所述目标数据的读频率和写频率时,获取所述目标数据的数据量;
[0156]相应的,图13示出了本发明实施提供的数据存储中心的另一结构框图,结合图11和图13所示,该数据存储中心还可以包括:
[0157]第一判断触发模块500,用于如果判断所述目标数据的数据量高于设定数据量阈值,则将所述目标数据的数据量相应的存储级别作为目标存储级别;
[0158]第二判断触发模块600,用于如果判断所述目标数据的数据量低于设定数据量阈值时,则触发所述访问频度确定单元根据所述读频率和写频率,确定所述目标数据的读写比例值。
[0159]可选的,在对目标数据进行查询请求的情况下,处理请求接收模块100具体可用于,接收客户端发送的针对目标数据的查询请求;
[0160]目标存储单元寻找模块300具体可用于,从所述目标存储级别对应的存储单元开始,按照存储级别依序升高的顺序,依次从不低于所述目标存储级别的存储单元中查询所述目标数据,直至确定到存储有所述目标数据的存储单元,将第一个确定到的存储有所述目标数据的存储单元,作为目标存储单元;
[0161 ]处理触发模块400具体可用于,从所述目标存储单元中调取所述目标数据并反馈给客户端。
[0162]可选的,图14示出了本发明实施例提供的数据存储中心的再一结构框图,结合图11和图14所示,该数据存储中心还可包括:
[0163]目标数据补充存储模块700,用于如果所述目标存储单元的存储级别高于所述目标存储级别,则确定所述目标存储级别至所述目标存储单元的存储级别的过渡存储级别,分别在所述目标存储级别及各过渡存储级别的存储单元中存储所述目标数据。
[0164]在对目标数据进行写请求的情况下,处理请求接收模块100具体可用于,接收客户端发送的针对目标数据的写请求;
[0165]目标存储单元寻找模块300具体可用于,将存储级别不低于所述目标存储级别的存储单元均作为目标存储单元;
[0166]处理触发模块400具体可用于,在目标存储单元中存储所述目标数据。
[0167]可选的,数据存储中心还可用于,触发最高存储级别的存储单元存储所有数据。
[0168]可选的,所述η-1个存储单元可以包括:第二存储级别的键值缓存存储单元,第三存储级别的关系数据库。
[0169]图15示出了本发明实施例提供的数据存储中心的硬件配置示意图,参照图15,该数据存储中心可以包括:处理器I,通信接口 2,存储器3和通信总线4;
[0170]其中处理器1、通信接口 2、存储器3通过通信总线4完成相互间的通信;
[0171]可选的,通信接口2可以为通信模块的接口,如GSM模块的接口 ;
[0172]处理器I,用于执行程序;
[0173]存储器3,用于存放程序;
[0174]程序可以包括程序代码,所述程序代码包括计算机操作指令。
[0175]处理器I可能是一个中央处理器CPU,或者是特定集成电路ASIC(Applicati0nSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。
[0176]存储器3可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。
[0177]其中,程序可具体用于:
[0178]接收客户端发送的针对目标数据的处理请求;
[0179]确定所述目标数据对应的目标存储级别;
[0180]从存储级别不低于所述目标存储级别的存储单元中,寻找可处理所述处理请求的目标存储单元;
[0181]触发所述目标存储单元根据所述处理请求对所述目标数据进行处理。
[0182]可选的,所述数据存储中心可位于上述所述的数据存储系统中。
[0183]下面对本发明实施例提供的数据存储系统的功能进行介绍;本发明实施例提供的数据存储系统的结构可如图1所示,包括:存储级别依序升高的η个存储单元;所述η个存储单元包括:第一存储级别的数据存储中心,及存储级别高于所述第一存储级别,且存储级别依序升高的η-1个存储单元;其中,各存储单元存储有存储级别不高于自身存储级别的数据;
[0184]其中,数据存储中心,可用于接收客户端发送的针对目标数据的处理请求;确定所述目标数据对应的目标存储级别;从存储级别不低于所述目标存储级别的存储单元中,寻找可处理所述处理请求的目标存储单元;触发所述目标存储单元根据所述处理请求对所述目标数据进行处理。
[0185]可选的,数据存储中心在确定所述目标数据对应的目标存储级别时,具体可用于,获取所述目标数据的访问属性信息,根据所述访问属性信息确定所述目标数据的访问频度,将所述访问频度相应的存储级别确定为目标存储级别,其中,越高的访问频度对应的存储级别越低。
[0186]可选的,数据存储中心在获取所述目标数据的访问属性信息时,具体可用于,获取所述目标数据的读频率和写频率;
[0187]数据存储中心在根据所述访问属性信息确定所述目标数据的访问频度时,具体可用于,根据所述读频率和写频率,确定所述目标数据的读写比例值,以所述读写比例值作为所述目标数据的访问频度。
[0188]可选的,数据存储中心在将所述访问频度相应的存储级别确定为目标存储级别时,具体可用于,将所述读写比例值所处于的读写比例值范围相应的存储级别作为目标存储级别;其中,一个存储级别对应一个读写比例值范围,各存储级别对应的读写比例值范围不同。
[0189]可选的,数据存储中心还可在获取所述目标数据的读频率和写频率时,获取所述目标数据的数据量;
[0190]相应的,数据存储中心还可用于,如果判断所述目标数据的数据量高于设定数据量阈值,则将所述目标数据的数据量相应的存储级别作为目标存储级别;如果判断所述目标数据的数据量低于设定数据量阈值时,则触发所述根据所述读频率和写频率,确定所述目标数据的读写比例值的步骤。
[0191]可选的,数据存储中心在接收客户端发送的针对目标数据的处理请求时,具体可用于,接收客户端发送的针对目标数据的查询请求;
[0192]数据存储中心在从存储级别不低于所述目标存储级别的存储单元中,寻找可处理所述处理请求的目标存储单元时,具体可用于:
[0193]从所述目标存储级别对应的存储单元开始,按照存储级别依序升高的顺序,依次从不低于所述目标存储级别的存储单元中查询所述目标数据,直至确定到存储有所述目标数据的存储单元,将第一个确定到的存储有所述目标数据的存储单元,作为目标存储单元;
[0194]所述数据存储中心在触发所述目标存储单元根据所述处理请求对所述目标数据进行处理时,具体可用于,从所述目标存储单元中调取所述目标数据并反馈给客户端。
[0195]可选的,数据存储中心还可用于,如果所述目标存储单元的存储级别高于所述目标存储级别,确定所述目标存储级别至所述目标存储单元的存储级别的过渡存储级别,分别在所述目标存储级别及各过渡存储级别的存储单元中存储所述目标数据。
[0196]可选的,数据存储中心在接收客户端发送的针对目标数据的处理请求时,具体可用于,接收客户端发送的针对目标数据的写请求;
[0197]数据存储中心在从存储级别不低于所述目标存储级别的存储单元中,寻找可处理所述处理请求的目标存储单元时,具体可用于,将存储级别不低于所述目标存储级别的存储单元均作为目标存储单元;
[0198]数据存储中心在触发所述目标存储单元根据所述处理请求对所述目标数据进行处理时,具体可用于,在目标存储单元中存储所述目标数据。
[0199]可选的,数据存储中心还可触发最高存储级别的存储单元存储所有数据。
[0200]本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
[0201]专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0202]结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(R0M)、电可编程R0M、电可擦除可编程R0M、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
[0203]对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
【主权项】
1.一种数据存储系统,其特征在于,包括:存储级别依序升高的η个存储单元;所述η个存储单元包括:第一存储级别的数据存储中心,及存储级别高于所述第一存储级别,且存储级别依序升高的η-1个存储单元;其中,各存储单元存储有存储级别不高于自身存储级别的数据; 所述数据存储中心,用于接收客户端发送的针对目标数据的处理请求;确定所述目标数据对应的目标存储级别;从存储级别不低于所述目标存储级别的存储单元中,寻找可处理所述处理请求的目标存储单元;触发所述目标存储单元根据所述处理请求对所述目标数据进行处理。2.根据权利要求1所述的数据存储系统,其特征在于,所述数据存储中心在确定所述目标数据对应的目标存储级别时,具体用于,获取所述目标数据的访问属性信息,根据所述访问属性信息确定所述目标数据的访问频度,将所述访问频度相应的存储级别确定为目标存储级别,其中,越高的访问频度对应的存储级别越低。3.根据权利要求1-2任一项所述的数据存储系统,其特征在于,所述数据存储中心在接收客户端发送的针对目标数据的处理请求时,具体用于,接收客户端发送的针对目标数据的查询请求; 所述数据存储中心在从存储级别不低于所述目标存储级别的存储单元中,寻找可处理所述处理请求的目标存储单元时,具体用于: 从所述目标存储级别对应的存储单元开始,按照存储级别依序升高的顺序,依次从不低于所述目标存储级别的存储单元中查询所述目标数据,直至确定到存储有所述目标数据的存储单元,将第一个确定到的存储有所述目标数据的存储单元,作为目标存储单元; 所述数据存储中心在触发所述目标存储单元根据所述处理请求对所述目标数据进行处理时,具体用于,从所述目标存储单元中调取所述目标数据并反馈给客户端。4.根据权利要求1-2任一项所述的数据存储系统,其特征在于,所述数据存储中心在接收客户端发送的针对目标数据的处理请求时,具体用于,接收客户端发送的针对目标数据的与请求; 所述数据存储中心在从存储级别不低于所述目标存储级别的存储单元中,寻找可处理所述处理请求的目标存储单元时,具体用于,将存储级别不低于所述目标存储级别的存储单元均作为目标存储单元; 所述数据存储中心在触发所述目标存储单元根据所述处理请求对所述目标数据进行处理时,具体用于,在目标存储单元中存储所述目标数据。5.根据权利要求2所述的数据存储系统,其特征在于,所述η-1个存储单元包括: 第二存储级别的键值缓存存储单元,所述键值缓存存储单元以键值形式存储有第二存储级别的数据; 第三存储级别的关系数据库,所述关系数据库以关系表形式存储有第三存储级别的数据,或者,所述关系数据库以关系表形式存储有第三存储级别的数据和第一存储级别及第二存储级别的数据。6.一种数据存储方法,其特征在于,所述数据存储方法包括: 接收客户端发送的针对目标数据的处理请求; 确定所述目标数据对应的目标存储级别; 从存储级别不低于所述目标存储级别的存储单元中,寻找可处理所述处理请求的目标存储单元; 触发所述目标存储单元根据所述处理请求对所述目标数据进行处理。7.根据权利要求6所述的数据存储方法,其特征在于,所述确定所述目标数据对应的目标存储级别包括: 获取所述目标数据的访问属性信息,根据所述访问属性信息确定所述目标数据的访问频度,将所述访问频度相应的存储级别确定为目标存储级别,其中,越高的访问频度对应的存储级别越低。8.根据权利要求7所述的数据存储方法,其特征在于,所述获取所述目标数据的访问属性信息包括:获取所述目标数据的读频率和写频率; 所述根据所述访问属性信息确定所述目标数据的访问频度包括:根据所述读频率和写频率,确定所述目标数据的读写比例值,以所述读写比例值作为所述目标数据的访问频度。9.根据权利要求8所述的数据存储系统,其特征在于,所述将所述访问频度相应的存储级别确定为目标存储级别包括: 将所述读写比例值所处于的读写比例值范围相应的存储级别作为目标存储级别;其中,一个存储级别对应一个读写比例值范围,各存储级别对应的读写比例值范围不同。10.根据权利要求8所述的数据存储系统,其特征在于,所述方法还包括: 在获取所述目标数据的读频率和写频率时,获取所述目标数据的数据量; 如果判断所述目标数据的数据量高于设定数据量阈值,则将所述目标数据的数据量相应的存储级别作为目标存储级别; 如果判断所述目标数据的数据量低于设定数据量阈值时,则触发所述根据所述读频率和写频率,确定所述目标数据的读写比例值。11.根据权利要求6-10任一项所述的数据存储系统,其特征在于,所述接收客户端发送的针对目标数据的处理请求包括: 接收客户端发送的针对目标数据的查询请求; 所述从存储级别不低于所述目标存储级别的存储单元中,寻找可处理所述处理请求的目标存储单元包括: 从所述目标存储级别对应的存储单元开始,按照存储级别依序升高的顺序,依次从不低于所述目标存储级别的存储单元中查询所述目标数据,直至确定到存储有所述目标数据的存储单元,将第一个确定到的存储有所述目标数据的存储单元,作为目标存储单元; 所述触发所述目标存储单元根据所述处理请求对所述目标数据进行处理包括: 从所述目标存储单元中调取所述目标数据并反馈给客户端。12.根据权利要求11所述的数据存储系统,其特征在于,所述方法还包括: 如果所述目标存储单元的存储级别高于所述目标存储级别,确定所述目标存储级别至所述目标存储单元的存储级别的过渡存储级别,分别在所述目标存储级别及各过渡存储级别的存储单元中存储所述目标数据。13.根据权利要求6-10任一项所述的数据存储系统,其特征在于,所述接收客户端发送的针对目标数据的处理请求包括: 接收客户端发送的针对目标数据的写请求; 所述在从存储级别不低于所述目标存储级别的存储单元中,寻找可处理所述处理请求的目标存储单元包括: 将存储级别不低于所述目标存储级别的存储单元均作为目标存储单元; 所述触发所述目标存储单元根据所述处理请求对所述目标数据进行处理包括: 在目标存储单元中存储所述目标数据。14.根据权利要求6所述的数据存储系统,其特征在于,触发最高存储级别的存储单元存储所有数据。15.根据权利要求6所述的数据存储系统,其特征在于,所述η-1个存储单元包括:第二存储级别的键值缓存存储单元,第三存储级别的关系数据库。16.一种数据存储中心,其特征在于,所述数据存储中心包括: 处理请求接收模块,用于接收客户端发送的针对目标数据的处理请求; 目标存储级别确定模块,用于确定所述目标数据对应的目标存储级别; 目标存储单元寻找模块,用于从存储级别不低于所述目标存储级别的存储单元中,寻找可处理所述处理请求的目标存储单元; 处理触发模块,用于触发所述目标存储单元根据所述处理请求对所述目标数据进行处理。
【文档编号】G06F17/30GK106095333SQ201610392193
【公开日】2016年11月9日
【申请日】2016年6月2日 公开号201610392193.9, CN 106095333 A, CN 106095333A, CN 201610392193, CN-A-106095333, CN106095333 A, CN106095333A, CN201610392193, CN201610392193.9
【发明人】徐之刚
【申请人】腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1