数据管理方法及相关产品
技术领域
本申请涉及数据处理技术领域,具体涉及一种数据管理方法及相关产品。
背景技术
随着科学技术的飞速发展,网络源源不断的产生新的数据,当产生新数据后,需将一些重要数据存储,以备后续使用,目前,一般将数据存储到数据库中进行保存,当后续需要使用该数据时,可以向数据库发起数据获取请求,在该数据获取请求中携带数据标识,依据该数据标识在数据库中遍历存储的数据,获取该数据标识对应的数据,实现对存储数据的调用,当数据库中存储有海量数据时,遍历数据库的时间较长,响应数据请求缓慢。所以,为了提高获取速度,会将数据库中的部分数据信息同步到其他数据库,例如,将数据库的索引标识同步到ES数据库,通过两个数据库的协同作用,提高数据的获取速度,但是,数据同步时不具有针对性,同步过多无效信息,导致同步方式单一。
发明内容
本申请实施例提供了一种数据管理方法及相关产品,以期针对性同步数据信息,提高数据获取速度。
第一方面,本申请实施例提供一种数据管理方法,该方法包括:
接收数据存储请求,提取所述数据存储请求中的待存储数据信息,按照预设存储规则将所述待存储数据信息存储至Oracle数据库;
获取对所述Oracle数据库中已存储数据信息的处理操作,根据所述处理操作确定所述已存储数据信息的热值评分;
在所述热值评分大于阈值时,获取所述已存储数据信息的索引标识,将所述索引标识同步至ES数据库。
第二方面,本申请实施例提供一种数据管理装置,该装置包括:
存储单元,用于接收数据存储请求,提取所述数据存储请求中的待存储数据信息,按照预设存储规则将所述待存储数据信息存储至Oracle数据库;
确定单元,用于获取对所述Oracle数据库中已存储数据信息的处理操作,根据所述处理操作确定所述已存储数据信息的热值评分;
同步单元,用于在所述热值评分大于阈值时,获取所述已存储数据信息的索引标识,将所述索引标识同步至ES数据库。
第三方面,本申请实施例提供一种电子设备,包括处理器、存储器、通信接口以及一个或多个程序,其中,所述一个或多个程序被存储在所述存储器中,并且被配置由所述处理器执行,所述程序包括用于执行如第一方面所述的方法中的步骤的指令。
第四方面,本申请实施例提供一种计算机可读存储介质,其存储用于电子数据交换的计算机程序,其中,所述计算机程序使得计算机执行如第一方面所述的方法。
第五方面,本申请实施例提供一种计算机程序产品,所述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,所述计算机可操作来使计算机执行如第一方面所述的方法。
实施本申请实施例,具有如下有益效果:
可以看出,在本申请实施例中,首先将数据信息存储至Oracle数据库,然后确定Oracle数据库已存储数据信息中的待同步数据信息,将待同步数据信息的索引标识同步至ES数据库,从而实现针对性的将索引标识同步至ES数据库,有目的性将数据信息同步,避免同步无效信息,提高数据同步的速度和效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1A为本申请实施例提供的一种数据管理的网络架构的示意图;
图1B为本申请实施例提供的一种数据管理方法的流程示意图;
图1C为本申请实施例提供的一种存储数据的示意图;
图2为本申请实施例提供的另一种数据管理方法的流程示意图;
图3为本申请实施例提供的一种数据管理装置的结构示意图;
图4为本申请实施例提供的一种数据管理装置的功能单元组成框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及所述附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结果或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
本申请中的电子设备可以包括智能手机(如Android手机、iOS手机、WindowsPhone手机等)、平板电脑、掌上电脑、笔记本电脑、移动互联网设备MID(Mobile InternetDevices,简称:MID)或穿戴式设备等,上述电子设备仅是举例,而非穷举,包含但不限于上述电子设备,为了描述的方便,下面实施例中将上述电子设备称为用户设备UE(Userequipment,简称:UE)。当然在实际应用中,上述用户设备也不限于上述变现形式,例如还可以包括:智能车载终端、计算机设备等等。
以下,对本申请中的部分用语进行解释说明,以便于本领域技术人员理解。
Oracle数据库,一种关系型数据库,采用关系模型来组织数据的数据库,其关系模型指的就是二维表格模型,故Oracle关系型数据库由二维表及其之间的联系所组成的一个数据组织;ES数据库,一种非关系型数据库,存储理念以键值对存储,且结构不固定,每一个元组有不一样的字段,每个元组可以根据需要增加自己的键值对,不局限于固定的结构,减少时间和空间的开销;用户可以根据需求添加自己需要的字段。
优缺点比较:从非关系型数据库中获取数据信息时,不需像关系型数据库中获取数据时,需对多个表进行关联查询。仅需要根据id取出相应的value就可以查询数据信息,查询速度快。由于非关系型数据库存在很少的约束,很难提供像关系型数据库所提供的where这种对于字段属性值情况的查询,故只适合存储一些较为简单的数据,例如,存储索引标识;对于需要进行较复杂查询的数据、逻辑关系较复杂的数据信息,需要存放在关系型数据库。
首先,参阅图1A,图1A为本申请实施例提供的一种数据管理的网络架构的示意图,该网络架构包括:客户端10、数据管理装置20、消息队列30(可选的)、Oracle数据库40和ES数据库50(可选的),其中,当存在ES数据库40,将Oracle数据库30和ES数据库40封装为一组件;
客户端10,用于向数据管理装置20发送数据存储请求;
数据管理装置20,用于接收数据存储请求,提取该数据存储请求中的待存储数据信息,按照预设存储规则将该待存储数据信息存储至Oracle数据库40;
数据管理装置20,还用于获取对Oracle数据库40中已存储数据信息的处理操作,根据所述处理操作确定所述已存储数据信息的热值评分;
数据管理装置20,还用于在所述热值评分大于阈值时,获取所述已存储数据信息的索引标识,将所述索引标识同步至ES数据库50;或者通过消息队列30将所述索引标识同步至ES数据库50。
可以看出,在本申请实施例中,在将数据信息存储至Oracle数据库后,获取对Oracle数据库中已存储的数据信息的处理操作,将频繁处理的数据信息同步至ES数据库,从而实现针对性的同步数据信息,减少了无效信息的同步,提高了数据同步的速度,降低数据同步的复杂度。
参阅图1B,图1B为本申请实施例提供的一种数据管理方法的流程示意图,该方法应用于数据管理系统,该数据管理系统包括数据管理装置以及Oracle数据库和ES数据库的封装组件,该方法包括如步骤S101~S103中所示的内容:
步骤S101、所述数据管理装置接收数据存储请求,提取所述数据存储请求中的待存储数据信息,按照预设存储规则将所述待存储数据信息存储至Oracle数据库。
其中,该数据存储请求可以为任意客户的业务数据的存储请求,该业务数据包含若干项数据信息,例如客户ID(注册账号或者会员号)、银行卡信息(例如,银行卡号、开户行、开户类型)、信用等级、身份信息(如,年龄、职业)。
其中,该数据存储请求携带待存储数据信息。
可选的,按照预设存储规则将所述待存储数据信息存储至所述Oracle数据库的实现过程可以为:对所述待存储数据信息中的各项数据信息进行关键词识别,确定每项数据信息对应的关键词集群;将属于同一关键词集群的数据信息划分到同一数据维度,得到多个数据维度;获取所述多个数据维度中每个数据维度相对于所述待存储数据信息的重要等级;将重要等级最高的数据维度作为根节点,将所述多个数据维度中除重要等级最高的数据维度之外的其他数据维度作为子节点创建第一树模型;将所述多个数据维度各自对应的待存储数据信息存储在对应的节点上,其中,所述节点包括所述第一树模型的根节点和子节点;将存储数据信息后的第一树模型存储至所述Oracle数据库。
具体来讲,首先预设关键词集群,每个关键词集群中包含若干个关键词,例如,预设身份信息关键词集群,其可以包括关键词:“姓名”、“性别”、“身份证号”、“身高”、“体重”,等等,在对各项数据信息进行关键词识别时,需对识别到的关键词进行属性分析,确定每个关键词的源属性,即源信息,判断该源属性对应的关键词集群,将该源属性对应的关键词集群作为该关键词对应的关键词集群,例如,识别出的关键词为138×××8733时,确定其对应的源属性为电话号码,再如,识别出的关键词为“张三”时,确定其对应的源属性为姓名,故在确定各项信息对应的关键词集群后,将属于同一个关键词集群的各项数据信息划分到同一数据维度,得到多个数据维度;例如,将“姓名”、“性别”、“身份证号”对应的数据信息划分到身份信息维度。
进一步地,获取所述多个数据维度中每个数据维度相对于所述待存储数据信息的重要等级的实现过程可以为:获取各个数据维度的标识信息,确定该标识信息是否具有唯一性,依据该标识信息是否具有唯一性确定每个数据维度的重要等级,其重要等级可以划分为高和低,如标识信息具有唯一性,确定该数据维度的重要等级为高,否则确定该数据维度的重要等级为低。举例来说,对于客户来说,客户ID和客户的身份证号的标识作用均具有唯一性,故其对应的重要等级为高,本申请中以客户ID作为具有唯一性的数据维度为例作具体说明,并不做唯一限定。可以看出,本申请构建的第一树模型与现有的随机森林算法构建的决策树模型相比,本申请中的子节点之间无重要性排序,即子节点处存储的数据信息之间无耦合关系。
进一步地,将所述多个数据维度各自对应的待存储数据信息存储在对应的节点上的实现过程可以为:确定所述多个数据维度中每个数据维度对应的主题域;获取该主题域中主题数量;获取该主题域中每个主题对应的待存储数据信息的数量,确定该主题域中待存数据信息的数量最多的第一主题;以所述主题数量为行数,以所述第一主题对应的待存储数据信息的数量作为列数,创建该主题域对应的Excel表;将该主题域对应的待存储数据信息添加到所述Excel表中;将添加数据信息后的Excel表挂接在每个数据维度对应的节点处。
具体来讲,结合数据仓库理念,预先设置数据维度与主题域的对应关系,依据该对应关系获取每个数据维度对应的主题域,每个主题域中包含至少一个主题,每个主题在该数据维度下对应至少一项数据信息,举例来说,如数据维度为银行卡维度时,其对应的主题域为银行卡,该主题域中主题包括卡号、开户行、银行卡类型(例如,借记卡、信用卡、储蓄卡),等,故可以主题的数量为Excel表的行数,获取每个主题对应的待存储数据信息的数量,以待存储数据信息的最大数量作为Excel表的行数,构建Excel表,可以理解的是,如该Excel表中第一行存储的待存储数据信息和第二行存储的待存储数据信息之间存在依赖关系时,在将相关待存储数据信息添加至第一行和第二行时,将存在依赖关系的数据信息添加在该Excel表的同一列,以在获取数据信息时,从该列中提取出一份完整的数据信息。
举例来说,如图1C所示,数据维度包括客户ID维度、身份信息维度、申请信息维度以及银行卡信息维度,故以客户ID作为根节点,将ID号存储在该根节点处的Excel表,分别以身份信息维度、申请信息维度以及银行卡信息维度作为子节点,创建第一树模型,并将各个数据维度对应的待存储数据信息存储在各个节点处的Excel表,由于每张银行卡的卡号和开户行存在依赖关系,所以存储银行卡维度节点对应的数据信息时,将每张银行卡的卡号和开户行存储在Excel表的同一列,如第一列,表明该列数据信息为每张银行卡的完整信息。
步骤S102、所述数据管理装置获取对所述Oracle数据库中已存储数据信息的处理操作,根据所述处理操作确定所述已存储数据信息的热值评分。
其中,该处理操作包括:对所述已存储数据信息的增加操作、修改操作、更新操作、删除操作中的一种或几种。
可选的,根据所述处理操作确定所述已存储数据信息的热值评分的实现过程可以为:获取所述处理操作对应的处理类型;根据处理类型与热值评分的映射关系确定所述处理操作的热值评分。例如,预先建立处理操作与热值评分的映射关系,如数据查询操作对热值评分加5,数据增加操作对热值评分加3,数据修改操作对热值评分加1,同样,如未对已存储数据信息执行处理操作,可对其的热值评分减1,等等,仅做示例性说明,不做唯一限定。
进一步地,所述根据处理类型与热值评分的映射关系确定所述处理操作的热值评分的实现过程可以为:实时获取在预设时间段内对所述已存储数据信息处理操作的频繁度,其中,所述频繁度为当前时刻对所述已存储数据信息的处理操作的总次数与所述预设时间段的比值;当频繁度大于阈值时,确定频繁度大于所述阈值的第一时刻,依据处理类型与热值评分的第一映射关系确定第一时刻之前的时间段内对所述已存储数据信息的热值评分,依据处理类型与热值评分的第二映射关系确定第一时刻之后的时间段内对所述已存储数据信息的热值评分,得到对所述已存储数据信息的最终热值评分。举例来说,如在第一时刻之前的时间段内检测到数据查询操作,对热值评分加1,如在第一时刻之后的时间段内检测到数据查询操作,则对热值评分加10,等等,即根据处理操作的频繁度,实现对热值评分的梯度化管理,从而提高热值评分的合理性。
在一可能的示例中,在根据处理类型与热值评分的映射关系确定所述处理操作的热值评分之前,所述方法还包括:确定该已存储数据信息所属用户;获取每个用户对应的等级;基于等级与基础热值分的映射关系确定每个用户的基础热值分;基于该基础热值分以及处理类型与热值评分的映射关系确定所述已存储数据信息的热值评分。
在一可能的示例中,在确定该已存储数据信息的热值评分时,所述方法还包括:根据预设的热值管理规则确定热值评分,其中,该热值管理规则可以为对首次存储至所述Oracle数据库的数据信息设置保护期限,在所述保护期限内,对所述数据信息对应的热值评分仅执行加分操作,以保证将新增的用户的业务数据同步至所述ES数据库。当然,还可设置其他的热值管理规则,如在存储用户的业务数据之前,识别用户的身份信息,例如,对于VIP用户,可将该用户的基础热值分的幅度调高,本申请不对热值评分的管理规则做唯一限定。
步骤S103、在所述热值评分大于阈值时,所述数据管理装置获取所述已存储数据信息的索引标识,将所述索引标识同步至ES数据库。
可选的,将所述索引标识同步至ES数据库具体包括:确定所述已存储数据信息所在的第一树模型;获取所述第一树模型每个节点上挂接的Excel表的键值;将每个节点的键值作为每个节点的索引标识,将每个节点的索引标识挂接在每个节点处,构建与索引标识对应的第二树模型;将所述第二树模型同步至ES数据库。
可以看出,在本申请实施例中,在存储数据信息时,创建树模型,将每个用户的数据信息以树模型的方式存放在Oracle数据库,从而实现在获取数据信息时,从对应的树模型中查询相应的数据信息,无需遍历数据库中的所有数据信息,提高了数据获取速度;另外,在将数据信息存储至Oracle数据库后,获取对已存储的数据信息的处理操作,将频繁处理的数据信息的索引标识同步至ES数据库,从而实现针对性的同步数据信息,减少了无效信息的同步,提高了数据同步的速度,降低数据同步的复杂度;而且,将索引标识同步至ES数据库,充分利用Oracle数据库和ES数据库保存数据信息的特点,进一步提高数据获取的速度,提高用户体验。
另外,可通过消息队列的方式将所述第二树模型同步至ES数据库。
下面详细叙述通过消息队列将第二树模型同步至ES数据库的方式。
数据管理装置预先建立消息队列,在建立消息队列后,将消息队列的数据传输方式发送给ES数据库服务器,其中,所述数据传输方式包括用户名、密码、访问路径、端口号以及数据传输顺序,以使ES数据库服务器根据所述用户名、密码、访问路径以及端口号从消息队列中消费索引标识,该数据传输顺序包括先入先出FIFO顺序或者后入先出LIFO顺序;然后,利用开发工具包SDK组件封装该第二树模型,得到封装好的数据包,根据数据传输方式将封装好的数据包发布至消息队列;在发布成功后,即接收到消息队列装置反馈的确认字符ACK后,向ES数据库服务器发送数据消费请求,请求ES数据库服务器根据接收到的数据传输方式从消息队列中依次消费封装好的数据包,解析该封装好的数据包,得到该第二树模型,将该第二树模型存储至该ES数据库;当然,在将该第二树模型存储至消息队列后,获取向该消息队列发布的第二树模型的数量,当该数量达到该消息队列的容量时,向ES数据库服务器发送数据消费请求,实现批量同步索引标识,减少同步次数,降低对数据库的访问开销。
在一可能的示例中,在将所述索引标识同步至ES数据库之前,所述方法还包括:所述数据管理装置获取中央处理器CPU的利用率;在所述CPU的利用率小于阈值时,所述数据管理装置执行将所述索引标识同步至ES数据库的操作;在所述CPU的利用率大于所述阈值时,执行等待操作,直至CPU的利用率小于所述阈值。
其中,该阈值可以为80%、90%或者其他值。
在上述可能的实施例中,在对索引标识同步时,首先获取CPU当前的占用率,当该占用率大于阈值时,先执行等待操作,待其他线程结束后,再执行同步操作,从而避免当由于CPU中没有足够空间资源执行同步操作,导致同步失败的问题,提高同步的成功率。
在一可能的示例中,在将所述索引标识同步至ES数据库之后,所述方法还包括:在接收到数据获取请求时,所述数据管理装置解析所述数据获取请求,获取所述数据获取请求的数据标识;所述数据管理装置根据所述数据标识确定待获取数据信息的索引标识;所述数据获取装置确定所述索引标识所在的第三树模型;所述数据管理装置确定所述第三树模型是否同步到ES数据,如是,从所述ES数据库中获取所述数据获取请求对应的索引标识,从所述Oracle数据库中获取所述索引标识对应的数据信息,如否,遍历所述Oracle数据库,从所述Oracle数据库中获取与所述数据获取请求对应的的数据信息。
在上述示例中,将部分存在频繁操作的数据信息的索引标识同步至ES数据库,从而实现在查询该部分数据信息时,通过Oracle数据库和ES数据库的协同作用提高数据获取的速度。
在一可能的示例中,在按照预设存储规则将待存储数据信息存储至Oracle数据库时,所述方法还包括:获取该Oracle数据库中已存储的第一树模型的数量;在所述数量大于1时,将该Oracle数据库已存储的数据信息分层存储。
可选的,在上述可能的示例中,将该Oracle数据库存储的数据信息分层存储的实现过程可以为:将该Oracle数据库中已存储的第一树模型的根节点存放在同一数据存储层;确定已存储的第一树模型中每个第一树模型上各个子节点对应的主题域,将已存储的第一树模型中属于同一主题域的子节点存放在同一数据存储层,将不存在相同主题域的子节点单独存放在一数据存储层,实现对数据信息的分层存储。
进一步地,在对已存储的数据信息分层存储之前,预先对数据存储层进行空间分配,其分配过程包括如下步骤:获取每个数据存储层待存储的数据维度;获取该数据维度对应的数据信息类型;获取该数据信息类型对应的存储概率,该存储概率为存储数据信息的所有客户中,存储有该数据维度对应的数据信息的客户在所有客户中的占比;根据该数据类型以及该存储概率计算每个数据存储层所需的存储空间;例如,数据维度为身份信息维度,该身份信息的数据信息类型包含面部图像,相比于其他的数据维度,该数据维度下的数据信息占空间较大,所以,预先划分出一个内存空间较大的数据存储层,以完全存储该数据维度下的数据信息,所以,对数据存储层预先划分存储空间,从而合理利用该存储资源,提高存储利用率。
每个数据存储层所需的存储空间的计算公式如下:
其中,Sj为第j个数据存储层所需的存储空间,pj为第j个数据存储层对应的数据信息类型的存储概率,N为当前时刻在第j个数据存储层存储数据信息的客户数量,Mj为每个客户第j个数据存储层中所需的存储空间,Sj为j个数据存储层中存储的数据信息中的字符数量,aij为该数据信息中第i个图片的像素宽度,bij为该数据信息中第i个图片的像素高度,ki为第i个图片中每个像素点所占的字节大小,n为第j个数据存储层中存储的数据信息中的图片数量,其中,当i=0时,表示不存在图片,即a0j=b0j=k0=0,i和j均为大于1的整数。
进一步地,基于对数据信息分层存储的方式,将与索引标识对应的第二树模型进行相同模式的分层存储,在此不再详细叙述,并将分层存储后的第二树模型同步至ES数据库,同步方式与上述同步一致,不再叙述。
所以,在基于分层存储数据信息后,从所述ES数据库中获取所述数据获取请求对应的索引标识具体包括:遍历ES数据库中存储根节点层中所有根节点,查询与该至少一个数据获取请求对应的根节点,获取该根节点存储的索引标识(即一级索引标识)得到,确定该标识信息对应的主题域,确定该根节点所在的树模型中与该主题域对应的存储层,在该数据存储层中查询与该数据获取请求对应的子节点,获取该子节点存储的索引标识(即二级索引标识),同理,从所述Oracle数据库中获取所述索引标识对应的数据信息具体包括:基于一级索引标识在Oracle数据库中存储根节点层确定出目标树模型;在相应的存储层获取与二级索引标识对应的子节点处挂接的Excel表,从该Excel表中提取提取与数据获取请求对应的数据信息。故通过分层存储,在从Oracle数据库调取数据时,无需遍历Oracle数据库,只需在相应的存储层中查询与数据获取请求对应的数据信息,从而实现快速调取数据,提高了数据的访问速度。
参阅图2,图2为本申请实施例提供的另一种数据管理方法的流程示意图,该方法应用于数据管理系统,该数据管理系统包括数据管理装置以及Oracle数据库和ES数据库的封装组件,该方法包括如步骤S201~S206中所示的内容:
步骤S201、所述数据管理装置接收数据存储请求,提取所述数据存储请求中的待存储数据信息,按照预设存储规则将所述待存储数据信息存储至Oracle数据库。
步骤S202、所述数据管理装置获取对所述Oracle数据库中已存储数据信息的处理操作,根据所述处理操作确定所述已存储数据信息的热值评分。
步骤S203、在所述热值评分大于阈值时,所述数据管理装置获取所述已存储数据信息的索引标识。
步骤S204、所述数据管理装置获取中央处理器CPU的利用率。
步骤S205、所述数据管理装置判断所述利用率是否大于阈值;
如否,执行步骤S206;
如是,执行步骤S204。
步骤S206、所述数据管理装置将所述索引标识同步至ES数据库。
需要说明的是,图2所示的方法的各个步骤的具体实现过程可参见上述图1B所述方法的具体实现过程,在此不再叙述。
可以看出,在本申请实施例中,在存储数据信息时,创建树模型,将每个用户的数据信息以树模型的方式存放在Oracle数据库,从而实现在获取数据信息时,从对应的树模型中查询相应的数据信息,无需遍历数据库中的所有数据信息,提高了数据获取速度;另外,在将数据信息存储至Oracle数据库后,获取对已存储的数据信息的处理操作,将频繁处理的数据信息的索引标识同步至ES数据库,从而实现针对性的同步数据信息,减少了无效信息的同步,提高了数据同步的速度,降低数据同步的复杂度。
与上述图1B、图2所示的实施例一致的,请参阅图3,图3为本申请实施例提供的一种数据管理装置300的结构示意图,如图3所示,该数据管理装置300包括处理器、存储器、通信接口以及一个或多个程序,其中,上述一个或多个程序不同于上述一个或多个应用程序,且上述一个或多个程序被存储在上述存储器中,并且被配置由上述处理器执行,上述程序包括用于执行以下步骤的指令:
接收数据存储请求,提取所述数据存储请求中的待存储数据信息,按照预设存储规则将所述待存储数据信息存储至Oracle数据库;
获取对所述Oracle数据库中已存储数据信息的处理操作,根据所述处理操作确定所述已存储数据信息的热值评分;
在所述热值评分大于阈值时,获取所述已存储数据信息的索引标识,将所述索引标识同步至ES数据库。
在一可能的示例中,在按照预设存储规则将所述待存储数据信息存储至Oracle数据库时,上述程序具体用于执行以下步骤的指令:
对所述待存储数据信息中的各项数据信息进行关键词识别,确定每项数据信息对应的关键词集群;
将属于同一关键词集群的数据信息划分到同一数据维度,得到多个数据维度;
获取所述多个数据维度中每个数据维度相对于所述待存储数据信息的重要等级;
将重要等级最高的数据维度作为根节点,将所述多个数据维度中除重要等级最高的数据维度之外的其他数据维度作为子节点创建第一树模型;
将所述多个数据维度各自对应的待存储数据信息存储在对应的节点上,其中,所述节点包括所述第一树模型的根节点和子节点;
将存储数据信息后的第一树模型存储至Oracle数据库。
在一可能的示例中,在将所述多个数据维度各自对应的待存储数据信息存储在对应的节点上时,上述程序具体用于执行以下步骤的指令:
确定所述多个数据维度中每个数据维度对应的主题域;
获取该主题域中主题数量;
获取该主题域中每个主题对应的待存储数据信息的数量,确定该主题域中待存数据信息的数量最多的第一主题;
以所述主题数量为行数,以所述第一主题对应的待存储数据信息的数量作为列数,创建该主题域对应的Excel表;
将该主题域对应的待存储数据信息添加到所述Excel表中;
将添加数据信息后的Excel表挂接在每个数据维度对应的节点处。
在一可能的示例中,在根据所述处理操作确定所述已存储数据信息的热值评分时,上述程序具体用于执行以下步骤的指令:
获取所述处理操作对应的处理类型;
根据处理类型与热值评分的映射关系确定所述处理操作的热值评分;
其中,所述处理操作包括对所述已存储数据信息的查询操作、增加操作、修改操作、更新操作中的一种或几种。
在一可能的示例中,在将所述索引标识同步至ES数据库时,上述程序具体用于执行以下步骤的指令:
确定所述已存储数据信息所在的第一树模型;
获取所述第一树模型每个节点上挂接的Excel表的键值;
将每个节点的键值作为每个节点的索引标识,将每个节点的索引标识挂接在每个节点处,构建与索引标识对应的第二树模型;
将所述第二树模型加入预先构建的消息队列;
通过所述消息队列将所述第二树模型同步至ES数据库。
在一可能的示例中,上述程序还用于执行以下步骤的指令:
在接收到数据获取请求时,解析所述数据获取请求,获取所述数据获取请求的数据标识;
根据所述数据标识确定待获取数据信息的索引标识;
确定所述索引标识所在的第三树模型;
确定所述第三树模型是否同步到ES数据,如是,从所述ES数据库中获取所述数据获取请求对应的索引标识,从所述Oracle数据库中获取所述索引标识对应的数据信息,如否,遍历所述Oracle数据库,从所述Oracle数据库中获取与所述数据获取请求对应的的数据信息。
在一可能的示例中,在将所述索引标识同步至ES数据库之前,上述程序还用于执行以下步骤的指令:
获取中央处理器CPU的利用率;
在所述利用率小于阈值时,执行将所述索引标识同步至ES数据库的操作;在所述利用率大于所述阈值时,执行等待操作,直至CPU的利用率小于所述阈值。
参阅图4,图4示出了上述实施例中所涉及的数据管理装置400的一种可能的功能单元组成框图,数据管理装置400包括:存储单元410、确定单元420和同步单元430;
存储单元410,用于接收数据存储请求,提取所述数据存储请求中的待存储数据信息,按照预设存储规则将所述待存储数据信息存储至Oracle数据库;
确定单元420,用于获取对所述Oracle数据库中已存储数据信息的处理操作,根据所述处理操作确定所述已存储数据信息的热值评分;
同步单元430,用于在所述热值评分大于阈值时,获取所述已存储数据信息的索引标识,将所述索引标识同步至ES数据库。
在一可能的示例中,在按照预设存储规则将所述待存储数据信息存储至Oracle数据库时,存储单元410,具体用于:对所述待存储数据信息中的各项数据信息进行关键词识别,确定每项数据信息对应的关键词集群;将属于同一关键词集群的数据信息划分到同一数据维度,得到多个数据维度;获取所述多个数据维度中每个数据维度相对于所述待存储数据信息的重要等级;将重要等级最高的数据维度作为根节点,将所述多个数据维度中除重要等级最高的数据维度之外的其他数据维度作为子节点创建第一树模型;将所述多个数据维度各自对应的待存储数据信息存储在对应的节点上,其中,所述节点包括所述第一树模型的根节点和子节点;将存储数据信息后的第一树模型存储至Oracle数据库。
在一可能的示例中,在将所述多个数据维度各自对应的待存储数据信息存储在对应的节点上时,存储单元410,具体用于:确定所述多个数据维度中每个数据维度对应的主题域;获取该主题域中主题数量;获取该主题域中每个主题对应的待存储数据信息的数量,确定该主题域中待存数据信息的数量最多的第一主题;以所述主题数量为行数,以所述第一主题对应的待存储数据信息的数量作为列数,创建该主题域对应的Excel表;将该主题域对应的待存储数据信息添加到所述Excel表中;将添加数据信息后的Excel表挂接在每个数据维度对应的节点处。
在一可能的示例中,在根据所述处理操作确定所述已存储数据信息的热值评分时,确定单元420,具体用于:获取所述处理操作对应的处理类型;根据处理类型与热值评分的映射关系确定所述处理操作的热值评分;其中,所述处理操作包括对所述已存储数据信息的查询操作、增加操作、修改操作、更新操作中的一种或几种。
在一可能的示例中,在将所述索引标识同步至ES数据库时,同步单元430,具体用于:确定所述已存储数据信息所在的第一树模型;获取所述第一树模型每个节点上挂接的Excel表的键值;将每个节点的键值作为每个节点的索引标识,将每个节点的索引标识挂接在每个节点处,构建与索引标识对应的第二树模型;将所述第二树模型加入预先构建的消息队列;通过所述消息队列将所述第二树模型同步至ES数据库。
在一可能的示例中,数据管理装置400还包括:获取单元440;
获取单元440,用于在接收到数据获取请求时,解析所述数据获取请求,获取所述数据获取请求的数据标识;根据所述数据标识确定待获取数据信息的索引标识;确定所述索引标识所在的第三树模型;确定所述第三树模型是否同步到ES数据,如是,从所述ES数据库中获取所述数据获取请求对应的索引标识,从所述Oracle数据库中获取所述索引标识对应的数据信息,如否,遍历所述Oracle数据库,从所述Oracle数据库中获取与所述数据获取请求对应的的数据信息。
在一可能的示例中,在将所述索引标识同步至ES数据库之前,获取单元440,还用于:获取中央处理器CPU的利用率;在所述利用率小于阈值时,执行将所述索引标识同步至ES数据库的操作;在所述利用率大于所述阈值时,执行等待操作,直至CPU的利用率小于所述阈值。
本申请实施例还提供一种计算机存储介质,其中,该计算机存储介质存储用于存储计算机程序,其中,该计算机程序被处理器执行,以实现如上述方法实施例中记载的任何一种数据管理方法的部分或全部步骤。
本申请实施例还提供一种计算机程序产品,所述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,所述计算机程序可操作来使计算机执行如上述方法实施例中记载的任何一种数据管理方法的部分或全部步骤。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件程序模块的形式实现。
所述集成的单元如果以软件程序模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取器(英文:Random Access Memory,简称:RAM)、磁盘或光盘等。
以上对本申请实施例进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。