数据存储方法、读取方法、装置、设备及存储介质制造方法及图纸

技术编号:24852125 阅读:15 留言:0更新日期:2020-07-10 19:06
本申请公开了一种数据存储、数据读取方法、装置、设备及存储介质,属于数据存储技术领域。所述方法应用于分布式存储系统的多个存储节点中的调度存储节点,该调度存储节点是由管理节点从该多个存储节点中为当前待存储的对象数据选择的,该方法包括:接收该对象数据;对该对象数据进行条带化处理,得到多个条带数据;根据该多个存储节点当前的资源信息,确定该多个条带数据的存储位置信息;根据该多个条带数据的存储位置信息,生成该多个条带数据的条带索引信息;将该多个条带数据和该条带索引信息存储至该多个存储节点中。如此,可以避免将所有对象元数据都存储至管理节点给管理节点带来巨大的存储压力。

【技术实现步骤摘要】
数据存储方法、读取方法、装置、设备及存储介质
本申请涉及数据存储
,特别涉及一种数据存储方法、读取方法、装置、设备及存储介质。
技术介绍
目前,对象存储在数据存储
得到广泛应用。其中,对象存储是指将数据以对象的形式进行存储,对象通常包括对象标识、对象数据、对象元数据,对象数据是指具体业务数据,如视频、图片等,对象元数据用于描述对象数据,比如可以为对象数据的时间、大小、索引等描述性信息。通常情况下,可以采用分布式存储系统进行对象存储,分布式存储系统一般包括客户端、管理节点和多个存储节点。在数据存储时,管理节点可以为客户端分配存储节点,并将所分配的存储节点的地址信息发送给客户端,如此,客户端即可以将对象数据存储至该地址信息指向的存储节点中。存储节点生成对象数据的索引信息,并将包括该索引信息的对象元数据发送给管理节点进行存储。然而,当将对象数据切成数据块,并将数据块分布存储于不同存储节点中时,该索引信息包含的信息量较多,在该种情况下,由于包括索引信息的对象元数据集中存储于管理节点中,因此,导致管理节点的存储压力较大。
技术实现思路
本申请实施例提供了一种数据存储方法、读取方法、装置、设备及存储介质,可以解决相关技术中所有对象元数据集中存储于管理节点导致管理节点的存储压力和访问压力较大的问题。所述技术方案如下:一方面,提供了一种数据存储方法,应用于分布式存储系统的多个存储节点中的调度存储节点,所述调度存储节点是由管理节点从所述多个存储节点中为当前待存储的对象数据选择的,所述方法包括:接收所述对象数据;对所述对象数据进行条带化处理,得到多个条带数据;根据所述多个存储节点当前的资源信息,确定所述多个条带数据的存储位置信息;根据所述多个条带数据的存储位置信息,生成所述多个条带数据的条带索引信息;将所述多个条带数据和所述条带索引信息存储至所述多个存储节点中。在本申请一种可能的实现方式中,所述将所述多个条带数据和所述条带索引信息存储至所述多个存储节点中之前,还包括:生成所述多个条带数据的条带数据标识;相应地,所述将所述多个条带数据和所述条带索引信息存储至所述多个存储节点中,包括:将所述多个条带数据存储至所述多个存储节点中,以及将所述多个条带数据的条带数据标识与条带索引信息对应存储至所述多个存储节点中。在本申请一种可能的实现方式中,所述将所述多个条带数据存储至所述多个存储节点中,以及将所述多个条带数据的条带数据标识与条带索引信息对应存储至所述多个存储节点中,包括:在本地存储目标条带数据,以及将所述目标条带数据的条带数据标识与索引信息对应存储至本地,所述目标条带数据是指需要本端存储的条带数据;将所述多个条带数据中除所述目标条带数据之外的其他条带数据、其他条带数据的条带数据标识和条带索引信息发送至其他存储节点进行存储。在本申请一种可能的实现方式中,每个条带数据包括多个数据单元,所述存储位置信息包括每个数据单元的存储位置信息,所述根据所述多个条带数据的存储位置信息,生成所述多个条带数据的条带索引信息之前,还包括:获取每个条带数据中的每个数据单元的位置索引信息;相应地,所述根据所述多个条带数据的存储位置信息,生成所述多个条带数据的条带索引信息,包括:对于所述多个条带数据中的任一条带数据,根据所述任一条带数据中的每个数据单元的存储位置信息和所述每个数据单元在所述任一条带数据中的位置索引信息,生成所述任一条带数据的条带索引信息。在本申请一种可能的实现方式中,所述将所述目标条带数据的条带数据标识与索引信息对应存储至本地之后,还包括:根据参考策略,从所述多个存储节点中确定目标存储节点;将所述目标条带数据的条带数据标识与索引信息对应存储至所述目标存储节点中,并建立所述目标存储节点与所述调度存储节点之间的关联关系。另一方面,提供了一种数据读取方法,应用于分布式存储系统的多个存储节点中的调度存储节点,所述调度存储节点是由管理节点从所述多个存储节点中为当前待读取的对象数据确定的,所述方法包括:接收来自客户端的信息获取请求,所述信息获取请求携带所述对象数据的对象数据标识,所述对象数据包括多个条带数据;基于所述对象数据标识,获取所述多个条带数据的条带数据标识,每个条带数据标识与条带索引信息对应,所述多个条带数据的条带索引信息由所述调度存储节点存储在所述多个存储节点中;获取多个条带标识对应的节点地址信息,每个节点地址信息指示的存储节点用于存储对应的条带标识指示的条带数据;将所述多个条带数据标识和所述多个条带标识对应的节点地址信息发送给所述客户端。在本申请一种可能的实现方式中,所述方法还包括:接收来自所述客户端的数据读取请求,所述数据读取请求携带待读取条带数据的条带数据标识;从本地存储的条带数据标识与条带索引信息之间的对应关系中,查询所述条带数据标识对应的条带索引信息;当查询到所述条带数据标识对应的条带索引信息时,根据所述条带索引信息从对应的存储节点中获取所述待读取条带数据。在本申请一种可能的实现方式中,所述从本地存储的条带数据标识与条带索引信息之间的对应关系中,查询所述条带数据标识对应的条带索引信息之后,还包括:当未查询到所述条带数据标识对应的条带索引信息时,确定与所述调度存储节点具有关联关系的目标存储节点的节点地址信息;基于所确定的节点地址信息,从所述目标存储节点中查询所述条带数据标识对应的条带索引信息。在本申请一种可能的实现方式中,所述待读取数据包括多个数据单元,所述条带索引信息包括所述待读取条带数据在所述多个存储节点的存储位置信息、以及所述待读取条带数据中每个数据单元在所述待读取条带数据中的位置索引信息;所述根据所述条带索引信息从对应的存储节点中获取所述待读取条带数据,包括:根据所述待读取条带数据的每个数据单元的存储位置信息,从对应的存储节点中获取所述每个数据单元;按照所述每个数据单元在所述待读取条带数据中的位置索引信息,重新组合所获取的数据单元,得到所述待读取条带数据。另一方面,提供了一种数据存储装置,配置于分布式存储系统的多个存储节点中的调度存储节点,所述调度存储节点是由管理节点从所述多个存储节点中为当前待存储的对象数据选择的,所述装置包括:第一接收模块,用于接收所述对象数据;条带化模块,用于对所述对象数据进行条带化处理,得到多个条带数据;确定模块,用于根据所述多个存储节点当前的资源信息,确定所述多个条带数据的存储位置信息;生成模块,用于根据所述多个条带数据的存储位置信息,生成所述多个条带数据的条带索引信息;存储模块,用于将所述多个条带数据和所述条带索引信息存储至所述多个存储节点中。在本申请一种可能的实现方式中,所述存储模块还用于:生成所述多个条带数据的条带数据标识;将所述多个条带数据存本文档来自技高网...

【技术保护点】
1.一种数据存储方法,其特征在于,应用于分布式存储系统的多个存储节点中的调度存储节点,所述调度存储节点是由管理节点从所述多个存储节点中为当前待存储的对象数据选择的,所述方法包括:/n接收所述对象数据;/n对所述对象数据进行条带化处理,得到多个条带数据;/n根据所述多个存储节点当前的资源信息,确定所述多个条带数据的存储位置信息;/n根据所述多个条带数据的存储位置信息,生成所述多个条带数据的条带索引信息;/n将所述多个条带数据和所述条带索引信息存储至所述多个存储节点中。/n

【技术特征摘要】
1.一种数据存储方法,其特征在于,应用于分布式存储系统的多个存储节点中的调度存储节点,所述调度存储节点是由管理节点从所述多个存储节点中为当前待存储的对象数据选择的,所述方法包括:
接收所述对象数据;
对所述对象数据进行条带化处理,得到多个条带数据;
根据所述多个存储节点当前的资源信息,确定所述多个条带数据的存储位置信息;
根据所述多个条带数据的存储位置信息,生成所述多个条带数据的条带索引信息;
将所述多个条带数据和所述条带索引信息存储至所述多个存储节点中。


2.如权利要求1所述的方法,其特征在于,所述将所述多个条带数据和所述条带索引信息存储至所述多个存储节点中之前,还包括:
生成所述多个条带数据的条带数据标识;
相应地,所述将所述多个条带数据和所述条带索引信息存储至所述多个存储节点中,包括:
将所述多个条带数据存储至所述多个存储节点中,以及将所述多个条带数据的条带数据标识与条带索引信息对应存储至所述多个存储节点中。


3.如权利要求2所述的方法,其特征在于,所述将所述多个条带数据存储至所述多个存储节点中,以及将所述多个条带数据的条带数据标识与条带索引信息对应存储至所述多个存储节点中,包括:
在本地存储目标条带数据,以及将所述目标条带数据的条带数据标识与索引信息对应存储至本地,所述目标条带数据是指需要本端存储的条带数据;
将所述多个条带数据中除所述目标条带数据之外的其他条带数据、其他条带数据的条带数据标识和条带索引信息发送至其他存储节点进行存储。


4.如权利要求3所述的方法,其特征在于,每个条带数据包括多个数据单元,所述存储位置信息包括每个数据单元的存储位置信息,所述根据所述多个条带数据的存储位置信息,生成所述多个条带数据的条带索引信息之前,还包括:
获取每个条带数据中的每个数据单元的位置索引信息;
相应地,所述根据所述多个条带数据的存储位置信息,生成所述多个条带数据的条带索引信息,包括:
对于所述多个条带数据中的任一条带数据,根据所述任一条带数据中的每个数据单元的存储位置信息和所述每个数据单元在所述任一条带数据中的位置索引信息,生成所述任一条带数据的条带索引信息。


5.如权利要求4所述的方法,其特征在于,所述将所述目标条带数据的条带数据标识与索引信息对应存储至本地之后,还包括:
根据参考策略,从所述多个存储节点中确定目标存储节点;
将所述目标条带数据的条带数据标识与索引信息对应存储至所述目标存储节点中,并建立所述目标存储节点与所述调度存储节点之间的关联关系。


6.一种数据读取方法,其特征在于,应用于分布式存储系统的多个存储节点中的调度存储节点,所述调度存储节点是由管理节点从所述多个存储节点中为当前待读取的对象数据确定的,所述方法包括:
接收来自客户端的信息获取请求,所述信息获取请求携带所述对象数据的对象数据标识,所述对象数据包括多个条带数据;
基于所述对象数据标识,获取所述多个条带数据的条带数据标识,每个条带数据标识与条带索引信息对应,所述多个条带数据的条带索引信息由所述调度存储节点存储在所述多个存储节点中;
获取多个条带标识对应的节点地址信息,每个节点地址信息指示的存储节点用于存储对应的条带标识指示的条带数据;
将所述多个条带数据标识和所述多个条带标识对应的节点地址信息发送给所述客户端。


7.如权利要求6所述的方法,其特征在于,所述方法还包括:

【专利技术属性】
技术研发人员:方毅黄华东夏伟强王伟
申请(专利权)人:杭州海康威视系统技术有限公司
类型:发明
国别省市:浙江;33

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

1