数据存储方法、装置、计算机设备和存储介质制造方法及图纸

技术编号:23512684 阅读:53 留言:0更新日期:2020-03-18 00:02
本申请涉及一种数据存储方法、装置、计算机设备和存储介质,该方法包括:根据数据分割策略,将待存储的数据拆分成多份数据,其中,该分割策略包括以下至少之一:时间分割策略、字段分割策略、业务分割策略;将该多份数据分别存储到不同的索引上,得到多个目标索引,其中,该目标索引包括前缀、根据该分割策略定义的信息;将该多个目标索引对应的数据分别存储到多个节点中。采用本方法能够达到减轻各个ES节点的压力,提高检索能力,且在删除某个分割后的索引的情况下,不会影响到其他索引的查询效率的技术效果。

Data storage method, device, computer equipment and storage medium

【技术实现步骤摘要】
数据存储方法、装置、计算机设备和存储介质
本申请涉及数据处理
,特别是涉及一种数据存储方法、装置、计算机设备和存储介质。
技术介绍
Elasticsearch(简称为,ES)是一个基于Lucene构建的开源、分布式、RESTful接口的全文搜索引擎。ES能够横向扩展至数以百计的服务器存储以及处理PB级的数据,可以在极短的时间内存储、搜索和分析海量的数据。与传统的关系型数据库相比,ES支持分片和复制,从而方便水平分割和扩展,复制保证了ES的高可用与高吞吐。目前使用ES存储大量数据一般是将结构相同的数据存储在ES的同一个索引上,利用ES对海量数据的支持,对这些数据进行检索和分析。具体在存储时,ES会将数据分散存储到多个节点上存储方式如图1所示:查询时,ES从所有的节点上查询数据后,汇总返回给客户端。查询方式如图2所示。但是,需要说明的是,如果单个索引的数据量过大,可能会对集群从故障中恢复的能力产生负面影响,删除数据时可能会对索引的查询造成比较大的影响。针对相关技术中,使用ES存储大量数据时将结构相同的数据存储在ES的同一个索引上,导致各个ES节点的压力较大,检索能力较低的问题,尚未提出有效的解决方案。
技术实现思路
基于此,有必要针对上述技术问题,提供一种能够减轻各个ES节点的压力,提高检索能力,并且在删除某个分割后的索引后,不会影响到其他索引的查询效率的数据存储方法、装置、计算机设备和存储介质。一种数据存储方法,所述方法包括:根据数据分割策略,将待存储的数据拆分成多份数据,其中,所述分割策略包括以下至少之一:时间分割策略、字段分割策略、业务分割策略;将所述多份数据分别存储到不同的索引上,得到多个目标索引,其中,所述目标索引包括前缀、根据所述分割策略定义的信息。在其中一个实施例中,在所述分割策略为所述时间分割策略时,所述根据数据分割策略,将待存储的数据拆分成多份数据包括:获取所述待存储的数据的新增日期,其中,所述新增日期为每天新增的数据所对应的具体时间,且所述新增日期包括多个;根据所述新增日期,将所述待存储的数据拆分成多份数据。在其中一个实施例中,在所述分割策略为所述字段分割策略时,所述根据数据分割策略,将待存储的数据拆分成多份数据包括:根据预设规则设置目标字段,其中,所述目标字段用于拆分数据;根据所述目标字段,将所述待存储的数据拆分成多份数据。在其中一个实施例中,在所述分割策略为所述业务分割策略时,所述根据数据分割策略,将待存储的数据拆分成多份数据包括:获取所述待存储的数据对应的业务类型;根据所述业务类型,将所述待存储的数据拆分成多份数据。在其中一个实施例中,在将所述多个目标索引对应的数据分别存储到多个节点中之后,所述方法还包括:通过所述多个目标索引的前缀和根据所述分割策略定义的信息,查询第一目标数据,其中,所述多个目标索引的前缀均相同;将所述第一目标数据上报至数据库。在其中一个实施例中,在将所述多个目标索引对应的数据分别存储到多个节点中之后,所述方法还包括:根据所述多个目标索引的前缀,查询第二目标数据;将所述第二目标数据上报至数据库。在其中一个实施例中,所述业务类型包括以下至少之一:面向企业业务、面向消费者业务。一种数据存储装置,所述装置包括:拆分模块,用于按照数据分割策略,将待存储的数据拆分成多份数据,其中,所述分割策略包括以下至少之一:时间分割策略、字段分割策略、业务分割策略;获取模块,用于将所述多份数据分别存储到不同的索引上,得到多个目标索引,其中,所述目标索引包括前缀、根据所述分割策略定义的信息;存储模块,用于将所述多个目标索引对应的数据分别存储到多个节点中。一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:根据数据分割策略,将待存储的数据拆分成多份数据,其中,该分割策略包括以下至少之一:时间分割策略、字段分割策略、业务分割策略;将该多份数据分别存储到不同的索引上,得到多个目标索引,其中,所述目标索引包括前缀、根据所述分割策略定义的信息;将该多个目标索引对应的数据分别存储到多个节点中。一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:根据数据分割策略,将待存储的数据拆分成多份数据,其中,所述分割策略包括以下至少之一:时间分割策略、字段分割策略、业务分割策略;将所述多份数据分别存储到不同的索引上,得到多个目标索引,其中,所述目标索引包括前缀、根据所述分割策略定义的信息;将所述多个目标索引对应的数据分别存储到多个节点中。上述数据存储方法、装置、计算机设备和存储介质,通过数据分割策略,将海量数据按照不同的维度拆分成多份数据,存储于不同的索引之中,而不是将结构相同的数据存储在ES的同一个索引上,导致各个ES节点的压力较大,检索能力较低,进而达到了减轻各个ES节点的压力,提高检索能力,且在删除某个分割后的索引的情况下,不会影响到其他索引的查询效率的技术效果。附图说明图1为相关技术中ES将数据分散存储到多个节点上的存储方式示意图;图2为相关技术中ES从所有节点上查询数据的示意图;图3为一个实施例中数据存储方法的应用环境图;图4为一个实施例中数据存储方法的流程示意图;图5为一个实施例中按照时间维度进行分割的方法流程示意图;图6为一个实施例中按照时间维度进行存储的方法流程示意图;图7为一个实施例中按照时间维度进行存储后查询的方法流程示意图(一);图8为一个实施例中按照时间维度进行存储后查询的方法流程示意图(二);图9为一个实施例中按照字段维度进行分割的方法流程示意图;图10为一个实施例中按照字段维度进行存储的方法流程示意图;图11为一个实施例中按照字段维度进行存储后查询的方法流程示意图(一);图12为一个实施例中按照字段维度进行存储后查询的方法流程示意图(二);图13为一个实施例中按照业务维度进行分割的方法流程示意图;图14为一个实施例中按照业务维度进行存储的方法流程示意图;图15为一个实施例中按照业务维度进行存储后查询的方法流程示意图(一);图16为一个实施例中按照业务维度进行存储后查询的方法流程示意图(二);图17为一个实施例中数据存储装置的结构框图;图18为一个实施例中计算机设备的内部结构图。具体实施方式为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。本申请提供的数据存储方法,可以应用于如图3所示的应用环境中。其中,终端102通过网络与服务器104通过网络进行通信。服务器104通过数据分割策略,将海量数据按照不同的维度拆分成多份数据,存储于不同的索引之本文档来自技高网...

【技术保护点】
1.一种数据存储方法,其特征在于,所述方法包括:/n根据数据分割策略,将待存储的数据拆分成多份数据,其中,所述分割策略包括以下至少之一:时间分割策略、字段分割策略、业务分割策略;/n将所述多份数据分别存储到不同的索引上,得到多个目标索引,其中,所述目标索引包括前缀、根据所述分割策略定义的信息;/n将所述多个目标索引对应的数据分别存储到多个节点中。/n

【技术特征摘要】
1.一种数据存储方法,其特征在于,所述方法包括:
根据数据分割策略,将待存储的数据拆分成多份数据,其中,所述分割策略包括以下至少之一:时间分割策略、字段分割策略、业务分割策略;
将所述多份数据分别存储到不同的索引上,得到多个目标索引,其中,所述目标索引包括前缀、根据所述分割策略定义的信息;
将所述多个目标索引对应的数据分别存储到多个节点中。


2.根据权利要求1所述的方法,其特征在于,在所述分割策略为所述时间分割策略时,所述根据数据分割策略,将待存储的数据拆分成多份数据包括:
获取所述待存储的数据的新增日期,其中,所述新增日期为每天新增的数据所对应的具体时间,且所述新增日期包括多个;
根据所述新增日期,将所述待存储的数据拆分成多份数据。


3.根据权利要求1所述的方法,其特征在于,在所述分割策略为所述字段分割策略时,所述根据数据分割策略,将待存储的数据拆分成多份数据包括:
根据预设规则设置目标字段,其中,所述目标字段用于拆分数据;
根据所述目标字段,将所述待存储的数据拆分成多份数据。


4.根据权利要求1所述的方法,其特征在于,在所述分割策略为所述业务分割策略时,所述根据数据分割策略,将待存储的数据拆分成多份数据包括:
获取所述待存储的数据对应的业务类型;
根据所述业务类型,将所述待存储的数据拆分成多份数据。


5.根据权利要求1所述的方法,其特征在于,在将所述多个目标索引对应的数据...

【专利技术属性】
技术研发人员:李戈
申请(专利权)人:浙江大搜车软件技术有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1