一种读取分布式数据的方法、系统和设备技术方案

技术编号:13142065 阅读:52 留言:0更新日期:2016-04-07 02:31
本发明专利技术实施例涉及通信技术领域,特别涉及一种读取分布式数据的方法、系统和设备,用以解决现有技术中存在的读取分布式数据的方案实时性比较低的问题。本发明专利技术实施例读取端根据需要读取的Object的数据分片的存储位置信息向至少一个存储节点请求数据分片,并接收来自所述至少一个存储节点的数据分片,由于本发明专利技术实施例能够以数据分片为单位进行读取,不需要整个Object全部存储完才可以读取,从而提高了读取分布式数据的方案实时性。

【技术实现步骤摘要】

本专利技术涉及通信
,特别涉及一种读取分布式数据的方法、系统和设备
技术介绍
分布式文件系统(Distributed File System)是指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网络与节点相连,比如云存储系统。当云计算系统运算和处理的核心是大量数据的存储和管理时,云计算系统中就需要配置大量的存储设备,那么云计算系统就转变成为一个云存储系统,所以云存储是一个以数据存储和管理为核心的云计算系统。简单来说,云存储就是将储存资源放到云上供人存取的一种新兴方案。使用者可以在任何时间、任何地方,透过任何可连网的装置连接到云上方便地存取数据现有的基于Raid (Redundant Arrays of Inexpensive Disks,磁盘阵列)的分布式存储系统中,以Object (对象)为单位写入读取数据。读取端在需要读取数据时,会向存储端读取对应的数据。目前的读取端只能从存储端读取写入端已经写入存储端的Object。如果写入端正在对存储端写入Object,而读取端需要读取这个Object,读取端必须等到写入端将Object写入存储端后,才能读取这个Object。无法实时读取正在存储的Object,因此会导致读取数据的实时性整整少一个Object大小,读取数据的实时性比较低。综上所述,目前读取分布式数据的方案实时性比较低。
技术实现思路
本专利技术提供一种读取分布式数据的方法、系统和设备,用以解决现有技术中存在的读取分布式数据的方案实时性比较低的问题。本专利技术实施例提供一种读取分布式数据的方法,包括:读取端确定需要读取的对象Object的数据分片的存储位置信息;所述读取端根据所述存储位置信息向至少一个存储节点请求数据分片,并接收来自所述至少一个存储节点的数据分片。较佳地,所述读取端根据所述存储位置信息向至少一个存储节点请求数据分片,包括:所述读取端根据所述存储位置信息,确定存储需要读取的Object的数据分片的至少一个存储节点;所述读取端同时向确定的所述至少一个存储节点请求数据分片。较佳地,所述读取端接收来自所述至少一个存储节点的数据分片之后,还包括:若接收到所述至少一个存储节点返回的读取失败消息或在读取Object时长内需要读取的Object的所有数据分片未接收完成,所述读取端在确定需要继续接收后,确定未接收的数据分片;所述读取端根据所述存储位置信息向存储未接收的数据分片的存储节点请求数据分片。较佳地,所述Object由多个条带组成,每个条带由多个数据分片组成;所述读取端接收来自所述至少一个存储节点的数据分片之后,还包括:所述读取端在读取条带时长内对应的条带的所有数据分片未接收完成,所述读取端在确定需要继续接收后,确定对应的条带中未接收的数据分片;所述读取端根据所述存储位置信息向存储未接收的数据分片的存储节点请求数据分片。较佳地,所述读取端接收来自所述至少一个存储节点的数据分片之后,还包括:所述读取端在接收到一个条带的所有数据分片后,判断所述Object中位于该条带之前的所有条带是否已存储;若是,则将该条带进行存储,否则等待所述Object中位于该条带之前的所有条带已存储后,将该条带进行存储。较佳地,所述读取端根据下列方式判断是否需要继续接收:所述读取端判断接收命令时长内是否接收到停止命令,若接收到,则确定不需要继续接收;否则,确定需要继续接收;或所述读取端判断接收命令时长内是否接收到继续命令,若接收到,则确定需要继续接收;否则,确定不需要继续接收。本专利技术实施例提供的一种读取分布式数据的方法,包括:存储节点根据接收到的来自读取端的请求,确定所述读取端需要读取的Ob j e c t的数据分片;所述存储节点将确定的数据分片发送给所述读取端。较佳地,所述存储节点将确定的数据分片发送给所述读取端,包括:所述存储节点将确定的、且已存储的数据分片发送给所述读取端。较佳地,所述存储节点将确定的、且已存储的数据分片发送给所述读取端之后,还包括:若确定的数据分片中有未存储的数据分片,所述存储节点保存收到的所述请求,并在所述未存储的数据分片存储到所述存储节点后,向所述读取端返回存储到所述存储节点的数据分片。较佳地,所述存储节点保存收到的所述请求,并在所述未存储的数据分片存储到所述存储节点后,向所述读取端返回存储到所述存储节点的数据分片之前,还包括:所述存储节点确定在所述未存储的数据分片存储到所述存储节点时,未超过存储时长。较佳地,所述存储节点保存收到的所述请求,并在所述未存储的数据分片存储到所述存储节点后,还包括:若在所述未存储的数据分片存储到所述存储节点时,超过存储时长,所述存储节点向所述读取端返回读取失败消息。本专利技术实施例提供的一种读取分布式数据的读取设备,包括:位置确定模块,用于确定需要读取的Object的数据分片的存储位置信息;处理模块,用于根据所述存储位置信息向至少一个存储设备请求数据分片,并接收来自所述至少一个存储设备的数据分片。较佳地,所述处理模块具体用于:根据所述存储位置信息,确定存储需要读取的Object的数据分片的至少一个存储设备;同时向确定的所述至少一个存储设备请求数据分片。较佳地,所述处理模块还用于:接收来自所述至少一个存储设备的数据分片之后,若接收到所述至少一个存储设备返回的读取失败消息或在读取Object时长内需要读取的Object的所有数据分片未接收完成,在确定需要继续接收后,确定未接收的数据分片;根据所述存储位置信息向存储未接收的数据分片的存储设备请求数据分片。较佳地,所述Object由多个条带组成,每个条带由多个数据分片组成;所述处理模块还用于:接收来自所述至少一个存储设备的数据分片之后,若在读取条带时长内对应的条带的所有数据分片未接收完成,在确定需要继续接收后,确定对应的条带中未接收的数据分片;根据所述存储位置信息向存储未接收的数据分片的存储节点请求数据分片。较佳地,所述处理模块还用于:在接收到一个条带的所有数据分片后,判断所述Object中位于该条带之前的所有条带是否已存储;若是,则将该条带进行存储,否则等待所述Object中位于该条带之前的所有条带已存储后,将该条带进行存储。较佳地,所述处理模块具体用于,根据下列方式判断是否需要继续接收:判断接收命令时长内是否接收到停止命令,若接收到,则确定不需要继续接收;否贝1J,确定需要继续接收;或判断接收命令时长内是否接收到继续命令,若接收到,则确定需要继续接收;否贝U,确定不需要继续接收。本专利技术实施例提供的一种读取分布式数据的存储设备,包括:数据分片确定模块,用于根据接收到的来自读取设备的请求,确定所述读取设备需要读取的Object的数据分片;发送模块,用于将确定的数据分片发送给所述读取设备。较佳地,所述发送模块具体用于:将当前第1页1 2 3 4 5 本文档来自技高网...

【技术保护点】
一种读取分布式数据的方法,其特征在于,该方法包括:读取端确定需要读取的对象Object的数据分片的存储位置信息;所述读取端根据所述存储位置信息向至少一个存储节点请求数据分片,并接收来自所述至少一个存储节点的数据分片。

【技术特征摘要】

【专利技术属性】
技术研发人员:陈义许焰俞乐勤钱浩东周明伟王海丰张兴明
申请(专利权)人:浙江大华技术股份有限公司
类型:发明
国别省市:浙江;33

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

1