数据的存储方法及装置、存储介质、终端与流程

文档序号:16628374发布日期:2019-01-16 06:19阅读:203来源:国知局
数据的存储方法及装置、存储介质、终端与流程

本发明涉及一种数据处理技术领域,特别是涉及一种数据的存储方法及装置、存储介质、终端。



背景技术:

随着大数据时代的到来,互联网时代处理的数据量远远超过了人们的想象。为了将数据分别存储在对应的存储器中,并在需要的时候进行获取,技术人员开发了负载均衡方法,将数据均匀的分配到各个节点中,例如数据的存储。

目前,现有的针对数据存储的负载均衡方法是通过数据求摸、除以节点数等方法将数据平均分配到各个存储节点中进行存储,但是这种方法在新增或删减存储节点时,需要将全部数据重新存储,影响数据存储速度,会造成原缓存数据无法准确加载,频繁的进行数据重新存储也会造成数据存储的过载。



技术实现要素:

有鉴于此,本发明提供一种数据的存储方法及装置、存储介质、终端,主要目的在于现有针对数据存储的负载均衡方法是通过数据求摸、除以节点数等方法将数据平均分配到各个存储节点中进行存储的问题。

依据本发明一个方面,提供了一种数据的存储方法,包括:

获取待存储目标数据,并按照前端系统对所述待存储目标数据的更新速度,对所述待存储目标数据进行划分;

对划分后的更新速度快的所述待存储目标数据进行哈希求值得到第一类哈希值,对划分后的更新速度慢的所述待存储目标数据进行哈希求值得到第二类哈希值;其中,更新速度快的所述待存储目标数据为所述前端系统在预设时间内存储数据的数据量大于预设阈值的数据,更新速度慢的所述待存储目标数据为所述前端系统在预设时间内存储数据的数据量小于或等于预设阈值的数据;

根据预设存储数据段确定关系确定所述第一类哈希值、所述第二类哈希值对应的存储数据段,并将更新速度快的所述待存储目标数据存储至所述第一类哈希值对应的存储数据段中,将更新速度慢的所述待存储目标数据存储至所述第二类哈希值对应的存储数据段中,所述预设存储数据段确定关系为所述第一类哈希值、所述第二类哈希值与所述存储数据段之间的存储对应关系。

进一步地,所述根据预设存储数据段确定关系确定所述第一类哈希值、所述第二类哈希值对应的存储数据段之前,还包括:

确定待进行存储数据的存储位置的存储能力,并根据所述存储能力对所述存储位置划分存储数据段,所述存储能力包括存储数据量的大小、查询数据时系统响应的快慢、存储位置的硬件、软件配置情况。

进一步地,所述根据预设存储数据段确定关系确定所述第一类哈希值、所述第二类哈希值对应的存储数据段,并将更新速度快的所述待存储目标数据存储至所述第一类哈希值对应的存储数据段中,将更新速度慢的所述待存储目标数据存储至所述第二类哈希值对应的存储数据段中包括:

将所述第一类哈希值、所述第二类哈希值分别代入存储数据段确定公式中,确定所述第一类哈希值与所述第二类哈希值分别对应的不同存储能力的存储位置中的存储数据段,所述存储数据段确定公式用于确定所述第一类哈希值、所述第二类哈希值是否存储至所述存储数据段中;

利用分段计算法分别确定更新速度快的所述待存储数据和更新速度慢的所述待存储数据是否能够存储至对应的所述存储数据段,所述存储数据段确定公式为y=x-a,y为结果阈值,x为存储段数参数,a为第一类哈希值与第二类哈希值的代入值;其中,当y大于0时,所述第一类哈希值、所述第二类哈希值对应的数据存储至所述存储段数参数对应的存储数据段中;

当确定能够存储至对应的所述存储数据段时,将更新速度快的所述待存储目标数据存储至所述第一类哈希值对应的存储数据段中,将更新速度慢的所述待存储目标数据存储至所述第二类哈希值对应的存储数据段中。

进一步地,所述方法还包括:

对应记录所述待存储目标数据、所述待进行存储的数据确定出的哈希值类别以及所述数据对应的存储数据段,以生成查询列表。

进一步地,所述方法还包括:

当接收到查询请求时,从所述查询列表中查询与所述查询请求中携带的待查询数据对应的存储数据段,以使得从所述存储数据段中查询数据。

进一步地,所述方法还包括:

当从所述具体段数的存储数据段中未查询到数据,则从所述具体段数对应的存储位置中重新进行查询,若所述存储位置中未查询到数据,则发送报警信息。

进一步地,所述获取待存储目标数据之前,所述方法还包括:

判断待存储数据个数是否大于预置存储阈值;

若是,则对所述待存储数据划分批次,并按照所述批次依次确定每一批次的待存储数据为所述待存储目标数据。

依据本发明一个方面,提供了一种数据的存储装置,包括:

获取单元,用于获取待存储目标数据,并按照前端系统对所述待存储目标数据的更新速度,对所述待存储目标数据进行划分;

求值单元,用于对划分后的更新速度快的所述待存储目标数据进行哈希求值得到第一类哈希值,对划分后的更新速度慢的所述待存储目标数据进行哈希求值得到第二类哈希值;其中,更新速度快的所述待存储目标数据为所述前端系统在预设时间内存储数据的数据量大于预设阈值的数据,更新速度慢的所述待存储目标数据为所述前端系统在预设时间内存储数据的数据量小于或等于预设阈值的数据;

存储单元,用于根据预设存储数据段确定关系确定所述第一类哈希值、所述第二类哈希值对应的存储数据段,并将更新速度快的所述待存储目标数据存储至所述第一类哈希值对应的存储数据段中,将更新速度慢的所述待存储目标数据存储至所述第二类哈希值对应的存储数据段中,所述预设存储数据段确定关系为所述第一类哈希值、所述第二类哈希值与所述存储数据段之间的存储对应关系。

进一步地,所述装置还包括:

确定单元,用于确定待进行存储数据的存储位置的存储能力,并根据所述存储能力对所述存储位置划分存储数据段,所述存储能力包括存储数据量的大小、查询数据时系统响应的快慢、存储位置的硬件、软件配置情况。

进一步地,所述存储单元包括:

第一确定模块,用于将所述第一类哈希值、所述第二类哈希值分别代入存储数据段确定公式中,确定所述第一类哈希值与所述第二类哈希值分别对应的不同存储能力的存储位置中的存储数据段,所述存储数据段确定公式用于确定所述第一类哈希值、所述第二类哈希值是否存储至所述存储数据段中;

第二确定模块,用于利用分段计算法分别确定更新速度快的所述待存储数据和更新速度慢的所述待存储数据是否能够存储至对应的所述存储数据段,所述存储数据段确定公式为y=x-a,y为结果阈值,x为存储段数参数,a为第一类哈希值与第二类哈希值的代入值;其中,当y大于0时,所述第一类哈希值、所述第二类哈希值对应的数据存储至所述存储段数参数对应的存储数据段中;

存储模块,用于当确定能够存储至对应的所述存储数据段时,将更新速度快的所述待存储目标数据存储至所述第一类哈希值对应的存储数据段中,将更新速度慢的所述待存储目标数据存储至所述第二类哈希值对应的存储数据段中。

进一步地,所述装置还包括:

生成单元,用于对应记录所述待存储目标数据、所述待进行存储的数据确定出的哈希值类别以及所述数据对应的存储数据段,以生成查询列表。

进一步地,所述装置还包括:

查询单元,用于当接收到查询请求时,从所述查询列表中查询与所述查询请求中携带的待查询数据对应的存储数据段,以使得从所述存储数据段中查询数据。

进一步地,所述装置还包括:

发送单元,用于当从所述具体段数的存储数据段中未查询到数据,则从所述具体段数对应的存储位置中重新进行查询,若所述存储位置中未查询到数据,则发送报警信息。

进一步地,所述获取单元,还用于判断待存储数据个数是否大于预置存储阈值;若是,则对所述待存储数据划分批次,并按照所述批次依次确定每一批次的待存储数据为所述待存储目标数据。

根据本发明的又一方面,提供了一种存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如上述数据的存储方法对应的操作。

根据本发明的再一方面,提供了一种终端,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;

所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行上述数据的存储方法对应的操作。

借由上述技术方案,本发明实施例提供的技术方案至少具有下列优点:

本发明提供了一种数据的存储方法及装置、存储介质、终端,首先获取待进行存储的数据,并按照前端系统更新数据的速度对所述数据进行划分;对划分后的更新速度快的数据以及更新速度慢的数据进行哈希求值,得到第一类哈希值、第二类哈希值;根据预设存储数据段确定关系确定所述第一类哈希值、所述第二类哈希值对应的存储数据段,并将所述第一类哈希值、所述第二类哈希值对应的数据分别存储至确定出的存储数据段中,所述预设存储数据段确定关系为所述第一类哈希值、所述第二类哈希值与所述存储数据段之间的存储对应关系。与现有针对数据存储的负载均衡方法是通过数据求摸、除以节点数等方法将数据平均分配到各个存储节点中进行存储相比,本发明实施例通过将按照前端系统的更新快慢对数据进行哈希求值,并按照预设数据段确定关系分别确定出将求得的第一类哈希值、第二类哈希值对应数据存储至存储数据段中,以便在新增或删减存储位置时,可以根据本发明实施例中的方法计算存储位置,直接计算数据可存储的数据段,无需将全部数据进行存储加载,从而提高数据存储的效率。

上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。

附图说明

通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:

图1示出了本发明实施例提供的一种数据的存储方法流程图;

图2示出了本发明实施例提供的另一种数据的存储方法流程图;

图3示出了本发明实施例提供的一种数据的存储装置框图;

图4示出了本发明实施例提供的另一种数据的存储装置框图;

图5示出了本发明实施例提供的一种终端的结构示意图。

具体实施方式

下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

本发明实施例提供了一种数据的存储方法,如图1所示,所述方法包括:

101、获取待存储目标数据,并按照前端系统对所述待存储目标数据的更新速度,对所述待存储目标数据进行划分。

其中,所述待存储目标数据可以为字母、数字、图片以及特殊字符,为了满足将不同的数据均衡的分配到不同的存储器中,以便进行数据处理,本发明实施例中,在系统后台接收到数据存储或数据处理请求时,获取待进行存储的数据,这些数据在存储至存储器之后,系统后台可以根据这些数据进行处理。

102、对划分后的更新速度快的所述待存储目标数据进行哈希求值得到第一类哈希值,对划分后的更新速度慢的所述待存储目标数据进行哈希求值得到第二类哈希值。

其中,所述哈希求值即是对待进行存储的每一个数据进行计算哈希值,并按照步骤101中的更新速度快的数据将计算得到的哈希值确定为第一类哈希值,按照更新速度慢的数据将计算得到的哈希值确定为第二类哈希值。

需要说明的是,本发明实施例中的哈希求值为利用hash算法求解散列值,即就是把任意长度的输入通过散列算法变换成固定长度的输出,该输出的值就是散列值,即为本发明实施例中的哈希值。

另外,所述前端系统更新数据的速度为前端系统获取到数据的速度,并将这些数据的更新速度划分为快速和慢速,具体的划分方式可以按照前端系统在预设时间内获取数据的数据量的大小来确定,具体为更新速度快的所述待存储目标数据为所述前端系统在预设时间内存储数据的数据量大于预设阈值的数据,更新速度慢的所述待存储目标数据为所述前端系统在预设时间内存储数据的数据量小于或等于预设阈值的数据。其中,所述预设阈值用于限定预设时间内获取数据量的大小,可以为10万、100万等,本发明实施例不做具体限定。例如,前端系统1在1小时内获取到的数据为10万条,前端系统2在1小时内获取到的数据为100万条,预设阈值为50万条,则将前端系统1得到的数据划分为更新速度慢的数据,将前端数据2得到的数据划分为更新速度快的数据,本发明实施例不做具体限定。

103、根据预设存储数据段确定关系确定所述第一类哈希值、所述第二类哈希值对应的存储数据段,并将更新速度快的所述待存储目标数据存储至所述第一类哈希值对应的存储数据段中,将更新速度慢的所述待存储目标数据存储至所述第二类哈希值对应的存储数据段中。

其中,所述预设存储数据段确定关系为所述第一类哈希值、所述第二类哈希值与所述存储数据段之间的存储对应关系。本发明实施例中,不同的存储器中可以进行划分不同的存储数据段,所述存储对应关系包括第一类哈希值存储在不同存储器中不同的存储数据段的位置,以及第二类哈希值存储在不同存储器中不同的存储数据段的位置。存储数据段包括可以存储数据的数据量、以及存储至存储器中的位置。例如,存储器a中包括3个存储数据段,第一个存储数据段可以存储1万个数据,第二个存储数据段可以存储5万个数据,第三个存储数据段可以存储15万个数据,存储器b中包括2个存储数据段,第一个存储数据段可以存储2万数据,第二个存储数据段可以存储10万个数据,根据第一类哈希值、第二类哈希值与存储数据段之间的存储对应关系,将计算出的第一类哈希值150、110、200对应的数据存储至存储器a中的第二个数据段中,将计算出的第一类哈希值250、300、310对应的数据存储至存储器b中的第二个存储数据段中,以此类推,本发明实施例不做具体限定。

需要说明的是,本发明实施例中,第一类哈希值、所述第二类哈希值与所述存储数据段之间的存储对应关系可以具体按照哈希值的具体数值为对应的数据分配到对应的存储数据段中,如100-200之间的哈希值对应的数据存储在存储数据段中存储数据个数较少的存储数据段中,本发明实施例不做具体限定。

本发明提供了一种数据的存储方法,与现有针对数据存储的负载均衡方法是通过数据求摸、除以节点数等方法将数据平均分配到各个存储节点中进行存储相比,本发明实施例通过将按照前端系统的更新快慢对数据进行哈希求值,并按照预设数据段确定关系分别确定出将求得的第一类哈希值、第二类哈希值对应数据存储至存储数据段中,以便在新增或删减存储位置时,可以根据本发明实施例中的方法计算存储位置,直接计算数据可存储的数据段,无需将全部数据进行存储加载,从而提高数据存储的效率。

本发明实施例提供了另一种数据的存储方法,如图2所示,所述方法包括:

201、获取待存储目标数据,并按照前端系统对所述待存储目标数据的更新速度,对所述待存储目标数据进行划分。

本步骤与图1所示的步骤101方法相同,在此不再赘述。

对于本发明实施例,步骤201之前,所述方法还包括:判断待存储数据个数是否大于预置存储阈值;若是,则对所述待存储数据划分批次,并按照所述批次依次确定每一批次的待存储数据为所述待存储目标数据。

对于本发明实施例,为了避免数据过大使得数据存储时造成过载现象,在进行本发明实施例中步骤201之前,需要对待进行存储的数据的数据个数进行判断。其中,所示预置存储阈值为根据当前系统可以进行存储数据的能力进行设置,存储数据的能力即为当前系统一次性最大处理数据的数据量。例如,当前系统一次性最大处理数据的数据量为100万个数据,则设定的预置存储预置为90万个,当待进行存储的数据个数为150个,大于预置存储阈值90万个,则对这150万个数据划分批次,如划分2批,每一批为75万个数据进行获取,也可以划分3批,每一批为50万个数据进行获取,本发明实施例不做具体限定。

202、对划分后的更新速度快的所述待存储目标数据进行哈希求值得到第一类哈希值,对划分后的更新速度慢的所述待存储目标数据进行哈希求值得到第二类哈希值。

本步骤与图1所示的步骤102方法相同,在此不再赘述。

203、确定待进行存储数据的存储位置的存储能力,并根据所述存储能力对所述存储位置划分存储数据段。

对于本发明实施例,为了对不同存储能力的存储位置划分不同的存储数据段,需要对存储位置的存储能力进行解析,本发明实施例中的存储位置即为不同存储能力的存储器,所述存储能力包括存储数据量的大小、查询数据时系统响应的快慢、存储位置的硬件、软件配置情况。其中,针对本发明实施例中不同存储能力可以在存储位置中划分出不同个数的存储数据段,例如,存储能力为存储数据量大的、查询数据是系统响应快的、存储位置硬件较新的或为当前存储空间大的硬件、软件配置新的,可以说明这个存储位置可以存储很多的数据,对存储数据段的划分也可以为最大限度下的最大个数的划分,如,划分为5个存储数据段,每个存储数据段中可以存储50万个数据等,也可以为不同个数的数据,本发明实施例不做具体限定。

204、所述根据预设存储数据段确定关系确定所述第一类哈希值、所述第二类哈希值对应的存储数据段,并将更新速度快的所述待存储目标数据存储至所述第一类哈希值对应的存储数据段中,将更新速度慢的所述待存储目标数据存储至所述第二类哈希值对应的存储数据段中。

本步骤与图1所示的步骤102方法相同,在此不再赘述。

对于本发明实施例,步骤204可以具体细化为:将所述第一类哈希值、所述第二类哈希值分别代入存储数据段确定公式中,确定所述第一类哈希值与所述第二类哈希值分别对应的不同存储能力的存储位置中的存储数据段;利用分段计算法分别确定更新速度快的所述待存储数据和更新速度慢的所述待存储数据是否能够存储至对应的所述存储数据段;当确定能够存储至对应的所述存储数据段时,将更新速度快的所述待存储目标数据存储至所述第一类哈希值对应的存储数据段中,将更新速度慢的所述待存储目标数据存储至所述第二类哈希值对应的存储数据段中。

其中,所述存储数据段确定公式用于确定所述第一类哈希值、所述第二类哈希值是否存储至所述存储数据段中。为了准确确定出存储数据段中每个具体段数存储的数据,需要将第一类哈希值、第二类哈希值代入存储数据段确定公式确定出数据是否存储于存储数据段中。所述预设存储数据段确定公式为y=x-a,y为结果阈值,x为存储段数参数,a为第一类哈希值与第二类哈希值的代入值,所述分段计算法为当y大于0时,所述第一类哈希值、所述第二类哈希值对应的数据存储至所述存储段数参数对应的存储数据段中,针对当y小于或等与0时,所述第一类哈希值、所述第二类哈希值对应的数据不存储至所述存储段数参数对应的存储数据段中。所述存储段数参数为不同存储数据段中可以存储数据的个数,例如,存储位置a中包括2个存储数据段,存储数据段a1可以存储30万个数据,存储数据段a2可以存储100万个数据,存储位置b中包括3个存储数据段,存储数据段b1可以存储200万个数据,存储数据段b2可以存储300万个数据,存储数据段b3可以存储400万个数据,每个存储数据段对应的存储数据段参数则为对应30、100、200、300、400,当第一类哈希值分别为20、90、110,第二类哈希值分别为180、220、350,将上述数值分别代入y=x-a中,可以确定出,a为30时,30-20大于0,30-90小于0,30-110小于0,30-180小于0,30-220小于0,30-350小于0,因此,第一类哈希值20对应的数据不存储在存储数据段a2、b1、b2、b3中,而是存储至存储数据段a1中,同理类推,第一类哈希值90对应的数据存储至存储数据段a2中,110与180对应的数据存储至存储数据段b1中,220对应的数据存储至存储数据段b2中,350对应的数据存储至存储数据段b3中。

205、对应记录所述待存储目标数据、所述待进行存储的数据确定出的哈希值类别以及所述数据对应的存储数据段,以生成查询列表。

对于本发明实施例,为了简化数据查询的查询步骤,可以根据存储数据的哈希值类别以及所述数据对应的存储数据段建立查询列表,以便可以根据查询请求中携带的查询内容查找对应的存储数据段中的数据。其中,哈希值类别即为根据数据确定出的第一类哈希值或第二类哈希值。例如,生成的查询列表中包括了数据q对应的是第二类哈希值,计算出的哈希值为40,对应的存储数据段为c1,根据这样的对应关系,当需要进行查询的数据为q时,则从查询列表中找到对应的存储数据段c1。

206、当接收到查询请求时,从所述查询列表中查询与所述查询请求中携带的待查询数据对应的存储数据段。

对于本发明实施例,为了提高查询效率,当接收到查询请求时,可以查找到查询列表中与所述查询请求中携带的待查询数据对应的存储数据段,然后从这个存储数据段中查询数据。

207、当从所述具体段数的存储数据段中未查询到数据,则从所述具体段数对应的存储位置中重新进行查询,若所述存储位置中未查询到数据,则发送报警信息。

对于本发明实施例,为了避免在具体段数中的存储数据段中找不到待查询的数据时,扩大查询数据的范围,当未从查询列表中记录的具体段数的存储数据段中查询到数据,则扩大查询范围,从这个存储数据段的存储位置中重新进行查询,如存储数据段c1中未查询到数据,则扩大到存储位置c的所有存储数据段中进行查询。若这个存储位置中没有查询到数据,则发送报警信息,以便用户根据报警信息重新确定查询位置,或者人工进行查询,本发明实施例不做具体限定。

本发明提供了另一种数据的存储方法,本发明实施例通过将按照前端系统的更新快慢对数据进行哈希求值,并按照预设数据段确定关系分别确定出将求得的第一类哈希值、第二类哈希值对应数据存储至存储数据段中,以便在新增或删减存储位置时,可以根据本发明实施例中的方法计算存储位置,直接计算数据可存储的数据段,无需将全部数据进行存储加载,从而提高数据存储的效率。

进一步的,作为对上述图1所示方法的实现,本发明实施例提供了一种数据的存储装置,如图3所示,该装置包括:获取单元31、求值单元32、存储单元33。

获取单元31,用于获取待存储目标数据,并按照前端系统对所述待存储目标数据的更新速度,对所述待存储目标数据进行划分;所述获取单元31为数据的存储装置执行获取待存储目标数据,并按照前端系统对所述待存储目标数据的更新速度,对所述待存储目标数据进行划分的程序模块。

求值单元32,用于对划分后的更新速度快的所述待存储目标数据进行哈希求值得到第一类哈希值,对划分后的更新速度慢的所述待存储目标数据进行哈希求值得到第二类哈希值;其中,更新速度快的所述待存储目标数据为所述前端系统在预设时间内存储数据的数据量大于预设阈值的数据,更新速度慢的所述待存储目标数据为所述前端系统在预设时间内存储数据的数据量小于或等于预设阈值的数据;所述求值单元32为数据的存储装置执行对划分后的更新速度快的所述待存储目标数据进行哈希求值得到第一类哈希值,对划分后的更新速度慢的所述待存储目标数据进行哈希求值得到第二类哈希值的程序模块。

存储单元33,用于根据预设存储数据段确定关系确定所述第一类哈希值、所述第二类哈希值对应的存储数据段,并将更新速度快的所述待存储目标数据存储至所述第一类哈希值对应的存储数据段中,将更新速度慢的所述待存储目标数据存储至所述第二类哈希值对应的存储数据段中,所述预设存储数据段确定关系为所述第一类哈希值、所述第二类哈希值与所述存储数据段之间的存储对应关系。所述存储单元33为数据的存储装置执行根据预设存储数据段确定关系确定所述第一类哈希值、所述第二类哈希值对应的存储数据段,并将更新速度快的所述待存储目标数据存储至所述第一类哈希值对应的存储数据段中,将更新速度慢的所述待存储目标数据存储至所述第二类哈希值对应的存储数据段中的程序模块。

本发明提供了一种数据的存储装置,本发明实施例通过将按照前端系统的更新快慢对数据进行哈希求值,并按照预设数据段确定关系分别确定出将求得的第一类哈希值、第二类哈希值对应数据存储至存储数据段中,以便在新增或删减存储位置时,可以根据本发明实施例中的方法计算存储位置,直接计算数据可存储的数据段,无需将全部数据进行存储加载,从而提高数据存储的效率。

进一步的,作为对上述图2所示方法的实现,本发明实施例提供了另一种数据的存储装置,如图4所示,该装置包括:获取单元41、求值单元42、存储单元43、确定单元44、生成单元45、查询单元46、发送单元47。

获取单元41,用于获取待存储目标数据,并按照前端系统对所述待存储目标数据的更新速度,对所述待存储目标数据进行划分;

求值单元42,用于对划分后的更新速度快的所述待存储目标数据进行哈希求值得到第一类哈希值,对划分后的更新速度慢的所述待存储目标数据进行哈希求值得到第二类哈希值;其中,更新速度快的所述待存储目标数据为所述前端系统在预设时间内存储数据的数据量大于预设阈值的数据,更新速度慢的所述待存储目标数据为所述前端系统在预设时间内存储数据的数据量小于或等于预设阈值的数据;

存储单元43,用于根据预设存储数据段确定关系确定所述第一类哈希值、所述第二类哈希值对应的存储数据段,并将更新速度快的所述待存储目标数据存储至所述第一类哈希值对应的存储数据段中,将更新速度慢的所述待存储目标数据存储至所述第二类哈希值对应的存储数据段中,所述预设存储数据段确定关系为所述第一类哈希值、所述第二类哈希值与所述存储数据段之间的存储对应关系。

进一步地,所述装置还包括:

确定单元44,用于确定待进行存储数据的存储位置的存储能力,并根据所述存储能力对所述存储位置划分存储数据段,所述存储能力包括存储数据量的大小、查询数据时系统响应的快慢、存储位置的硬件、软件配置情况。

进一步地,所述存储单元43包括:

第一确定模块4301,用于将所述第一类哈希值、所述第二类哈希值分别代入存储数据段确定公式中,确定所述第一类哈希值与所述第二类哈希值分别对应的不同存储能力的存储位置中的存储数据段,所述存储数据段确定公式用于确定所述第一类哈希值、所述第二类哈希值是否存储至所述存储数据段中;

第二确定模块4302,用于利用分段计算法分别确定更新速度快的所述待存储数据和更新速度慢的所述待存储数据是否能够存储至对应的所述存储数据段,所述存储数据段确定公式为y=x-a,y为结果阈值,x为存储段数参数,a为第一类哈希值与第二类哈希值的代入值;其中,当y大于0时,所述第一类哈希值、所述第二类哈希值对应的数据存储至所述存储段数参数对应的存储数据段中;

存储模块4303,用于当确定能够存储至对应的所述存储数据段时,将更新速度快的所述待存储目标数据存储至所述第一类哈希值对应的存储数据段中,将更新速度慢的所述待存储目标数据存储至所述第二类哈希值对应的存储数据段中。

进一步地,所述装置还包括:

生成单元45,用于对应记录所述待存储目标数据、所述待进行存储的数据确定出的哈希值类别以及所述数据对应的存储数据段,以生成查询列表。

进一步地,所述装置还包括:

查询单元46,用于当接收到查询请求时,从所述查询列表中查询与所述查询请求中携带的待查询数据对应的存储数据段,以使得从所述存储数据段中查询数据。

进一步地,所述装置还包括:

发送单元47,用于当从所述具体段数的存储数据段中未查询到数据,则从所述具体段数对应的存储位置中重新进行查询,若所述存储位置中未查询到数据,则发送报警信息。

进一步地,所述获取单元41,还用于判断待存储数据个数是否大于预置存储阈值;若是,则对所述待存储数据划分批次,并按照所述批次依次确定每一批次的待存储数据为所述待存储目标数据。

本发明提供了另一种数据的存储装置,本发明实施例通过将按照前端系统的更新快慢对数据进行哈希求值,并按照预设数据段确定关系分别确定出将求得的第一类哈希值、第二类哈希值对应数据存储至存储数据段中,以便在新增或删减存储位置时,可以根据本发明实施例中的方法计算存储位置,直接计算数据可存储的数据段,无需将全部数据进行存储加载,从而提高数据存储的效率。

根据本发明一个实施例提供了一种存储介质,所述存储介质存储有至少一可执行指令,该计算机可执行指令可执行上述任意方法实施例中的数据的存储方法。

图5示出了根据本发明一个实施例提供的一种终端的结构示意图,本发明具体实施例并不对终端的具体实现做限定。

如图5所示,该终端可以包括:处理器(processor)502、通信接口(communicationsinterface)504、存储器(memory)506、以及通信总线508。

其中:处理器502、通信接口504、以及存储器506通过通信总线508完成相互间的通信。

通信接口504,用于与其它设备比如客户端或其它服务器等的网元通信。

处理器502,用于执行程序510,具体可以执行上述数据的存储方法实施例中的相关步骤。

具体地,程序510可以包括程序代码,该程序代码包括计算机操作指令。

处理器502可能是中央处理器cpu,或者是特定集成电路asic(applicationspecificintegratedcircuit),或者是被配置成实施本发明实施例的一个或多个集成电路。终端包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个cpu;也可以是不同类型的处理器,如一个或多个cpu以及一个或多个asic。

存储器506,用于存放程序510。存储器506可能包含高速ram存储器,也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。

程序510具体可以用于使得处理器502执行以下操作:

获取待存储目标数据,并按照前端系统对所述待存储目标数据的更新速度,对所述待存储目标数据进行划分;

对划分后的更新速度快的所述待存储目标数据进行哈希求值得到第一类哈希值,对划分后的更新速度慢的所述待存储目标数据进行哈希求值得到第二类哈希值;其中,更新速度快的所述待存储目标数据为所述前端系统在预设时间内存储数据的数据量大于预设阈值的数据,更新速度慢的所述待存储目标数据为所述前端系统在预设时间内存储数据的数据量小于或等于预设阈值的数据;

根据预设存储数据段确定关系确定所述第一类哈希值、所述第二类哈希值对应的存储数据段,并将更新速度快的所述待存储目标数据存储至所述第一类哈希值对应的存储数据段中,将更新速度慢的所述待存储目标数据存储至所述第二类哈希值对应的存储数据段中,所述预设存储数据段确定关系为所述第一类哈希值、所述第二类哈希值与所述存储数据段之间的存储对应关系。

显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1