用于促进对分布式存储系统中的数据的访问的装置和方法

文档序号:8433909阅读:332来源:国知局
用于促进对分布式存储系统中的数据的访问的装置和方法
【技术领域】
[0001]本发明的实施方式总体上涉及数据处理领域,更具体地,涉及用于促进对分布式存储系统中的数据的访问的装置和方法。
【背景技术】
[0002]近年来,分布式存储架构已被广泛应用于存储基础设施设计,以实现可扩展性、大数据量、高可用性等。一些分布式存储系统将大数据量(典型地在千兆字节到兆兆字节范围内)分成多个分片(partit1n)并且基于商业机器或者企业硬件而在分布式存储系统的多个存储节点上存储所述多个分片。此外,为了实现可靠性,这些分布式存储系统通常会对数据的每个分片进行备份,以生成分片的一个或多个副本,并且将该一个或多个副本存储在一个或多个存储节点。
[0003]然而,数据的分片信息以及各分片及其副本的存储位置信息对于请求访问该数据的客户端而言是透明的。换言之,客户端并不知晓数据被分成多少个分片以及各分片分别存储于哪个存储节点上。以EMC公司的Isilon集群存储系统为例,Isilon集群存储系统中的任一个节点都可作为访问节点。当客户端向访问节点发送请求以访问Isilon集群存储系统中所存储的数据,由于数据的分片被存储于系统中的多个节点上,因此访问节点负责从存储该数据的各分片的节点取回各分片,将各分片进行组装,并将组装后的分片(即数据)提供给客户端。显然,这不可避免地需要访问节点上的高资源消耗并且对Isilon集群存储系统带来显著的带宽开销。
[0004]如果客户端能够获得数据的分片信息以及各分片及其副本在存储系统中的分布信息,那么客户端自身可以从存储节点取回数据的分片并将各分片进行组装,从而减轻存储系统的负荷。

【发明内容】

[0005]为了缓解上述问题,本发明提供一种用于促进对分布式存储系统中的数据的访问的装置和方法、以及访问分布式存储系统中的数据的相应装置和方法。
[0006]根据本发明实施方式的第一方面,提供了一种用于促进对分布式存储系统中的数据的访问的装置。该装置包括:收集单元,被配置为收集所述分布式存储系统的运行状态相关信息;元数据获取单元,被配置为获取与所述分布式存储系统中所存储的数据有关的元数据;接口单元,被配置为响应于来自客户端的请求,向所述客户端提供所述运行状态相关信息和与待访问的数据有关的元数据;以及访问扩展单元,被配置为对所述分布式存储系统中的存储节点进行扩展,以使得所述客户端能够利用所述运行状态相关信息和与待访问的数据有关的所述元数据直接访问所述存储节点。
[0007]在一个示例性实施方式中,所述接口单元可被进一步配置为响应于来自客户端的所述请求,向所述收集单元发送第一查询请求以获取所述运行状态相关信息以及向所述元数据获取单元发送第二查询请求以获取所述元数据。
[0008]在一个示例性实施方式中,所述收集单元可被进一步配置为响应于所述第一查询请求,从所述分布式存储系统收集所述运行状态相关信息;并且其中所述元数据获取单元被进一步配置为响应于所述第二查询请求,从所述分布式存储系统获取所述元数据。
[0009]在一个示例性实施方式中,所述元数据获取单元可被进一步配置为周期性地从所述分布式存储系统获取所述元数据。
[0010]在一个示例性实施方式中,所述元数据获取单元可被进一步配置为接收所述数据的存储状态发生改变的通知,并响应于所述通知而从所述分布式存储系统获取所述元数据。
[0011]在一个示例性实施方式中,所述元数据获取单元被进一步配置为监听消息总线,以获取与所述数据的存储状态发生改变有关的信息,所述信息包括所述元数据。
[0012]在一个示例性实施方式中,所述装置可进一步包括:信息存储库,被配置为存储所述收集单元所收集的所述运行状态相关信息、以及所述元数据获取单元所获取的所述元数据。
[0013]在一个示例性实施方式中,所述接口单元可被进一步配置为响应于来自客户端的所述请求,查询所述信息存储库以获取所述运行状态相关信息和所述元数据。
[0014]根据本发明实施方式的第二方面,提供了一种用于访问分布式存储系统中的数据的装置。该装置包括:发送单元,被配置为发送用于获取所述分布式存储系统的运行状态相关信息和与待访问的数据有关的元数据的请求;接收单元,被配置为接收对所述请求的响应,所述响应中包含所述运行状态相关信息和所述元数据;以及访问单元,被配置为利用所述运行状态相关信息和所述元数据直接访问所述分布式存储系统中的存储节点。
[0015]根据本发明实施方式的第三方面,提供了一种用于促进对分布式存储系统中的数据的访问的方法。该方法包括:收集所述分布式存储系统的运行状态相关信息;获取与所述分布式存储系统中所存储的数据有关的元数据;响应于来自客户端的请求,向所述客户端提供所述运行状态相关信息和与待访问的数据有关的元数据;以及对所述分布式存储系统中的存储节点进行扩展,以使得所述客户端能够利用所述运行状态相关信息和与待访问的数据有关的所述元数据直接访问所述存储节点。
[0016]根据本发明实施方式的第四方面,提供了一种用于访问分布式存储系统中的数据的方法。该方法包括:发送用于获取所述分布式存储系统的运行状态相关信息和与待访问的数据有关的元数据的请求;接收对所述请求的响应,所述响应中包含所述运行状态相关信息和所述元数据;以及利用所述运行状态相关信息和所述元数据直接访问所述分布式存储系统中的存储节点。
[0017]通过下文的详细描述将会理解,采用本发明的实施方式,通过向客户端提供分布式存储系统的运行状态相关信息和与分布式存储系统中所存储的数据有关的元数据,具有较大的计算能力、存储能力和联网能力并且能够嵌入复杂智能的客户端(下文中简称为“有能力的客户端”)能够自行决定访问数据的适当方式,以获得最佳的访问性能或实现最佳的应用目的,例如最小化数据备份窗等。此外,基于分布式存储系统的运行状态相关信息和与待访问的数据有关的元数据,客户端能够直接访问存储数据的存储节点,从相应存储节点获取待访问数据的各个分片(或其副本),在客户端本地进行分片的组装,而无需由分布式存储系统中的访问节点进行分片的组装,从而可以防止访问节点成为瓶颈,有助于分担分布式存储系统的负荷。
【附图说明】
[0018]结合附图并参考以下详细说明,本发明各实施方式的特征、优点及其他方面将变得更加明显,在此以示例性而非限制性的方式示出了本发明的若干实施方式。在附图中:
[0019]图1示出了根据本发明一个实施方式的用于促进对分布式存储系统中的数据的访问的装置100的框图;
[0020]图2示出了根据本发明一个实施方式的用于访问分布式存储系统中的数据的装置200的框图;
[0021]图3示出了根据本发明一个实施方式的用于促进对分布式存储系统中的数据的访问的方法300的流程图;
[0022]图4示出了根据本发明一个实施方式的用于访问分布式存储系统中的数据的方法400的流程图;以及
[0023]图5示出了适合用来实践本发明实施方式的计算机系统500的框图。
[0024]在各个附图中,相同或对应的标号表不相同或对应的部分。
【具体实施方式】
[0025]下面将参考附图中示出的若干示例性实施方式来描述本发明的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。
[0026]首先参考图1,其示出了根据本发明一个实施方式的用于促进对分布式存储系统中的数据的访问的装置100的框图。装置100可以实施为现有分布式存储系统的一部分,或者可以实施为现有分布式存储系统外部的、能够与分布式存储系统进行通信的装
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1