各种示例性实施例涉及在包括多个数据中心(135a-f)云系统(130)中存储文件块的方法。该方法可以包括:从客户端110A-b)接收文件块;从文件块生成多个组块,其中每个组块比文件块小并且文件块可以从组块的子集重建;将每个组块分发给多个数据中心(135a-f)中的一个;并将文件块存储在高速缓存中。各种示例性实施例涉及用于存储文件的云系统。该系统可以包括含主数据中心的多个数据中心。主数据中心可以包括:被配置为存储至少一个完整文件块(260)的高速缓存;被配置为对多个文件块(240)的每一个存储组块的组块存储器;文件编码器(230);以及文件解码器(250)。
【技术实现步骤摘要】
【国外来华专利技术】在弹性云文件系统中减少延迟和成本
本文公开的各种示例性实施例一般涉及计算机文件系统。
技术介绍
云计算可以定义为使用共享资源通过网络传送计算服务。云计算往往需要数据文件的存储,以使它们能够被各种用户访问。文件存储可以被看作是云计算服务。各种最终用户可以访问由云服务提供商存储的文件而不需要不知道文件到底是怎么存储的。
技术实现思路
云计算环境中的文件存储给云服务提供商和用户的带来了各种各样的问题。云服务有时受到延迟问题的影响,因为文件必须位于网络中并通过网络传送给最终用户。用户可能期望以低延迟提供所需的文件的云服务。如果网络的数据中心或部分网络不可用,云服务也可能不可用。用户可能期望当云组件不可用时提供弹性的云服务。对云服务提供商和/或用户来说,低延迟和高弹性往往需要额外的成本。 鉴于上述情况,人们希望提供用于云计算的文件系统。特别是,人们希望以低成本提供具有低延迟和高回弹性的用于存储文件的方法和系统。 鉴于当前对于进行云计算的文件系统的需求,下面提出对各种示例性实施例的简要说明。在以下的简要说明中作了一些简化和省略,这是意在突出和引入各种示例性实施方式的一些方面,而不是限制本专利技术的范围。后面章节中对优选实施例的详细说明足以使本领域的普通技术人员能够制造和使用本专利技术的概念。 各种示例性实施例涉及一种用于在包括多个数据中心的云系统中存储文件的方法,该方法包括:在第一数据中心接收来自客户端的文件块;从文件中块生成多个组块,其中每个组块小于所述文件并且所述文件块能从所述组块的子集重建;向多个数据中心的不同数据中心分发每个组块;以及在第一数据中心处的高速缓存中存储文件块。 在各种替代实施方案中,该方法进一步包括从客户端接收读取所述文件块的请求;确定所述文件块是否存储在高速缓存中;如果所述文件块存储在高速缓存中,则向客户端发送存储在高速缓存中的文件块。该方法还可以包括:如果所述文件块没有存储在高速缓存中,则:从所述多个数据中心请求组块;从所述多个数据中心接收所述多个组块的至少一个子集;从组块子集重建所述文件块;在第一数据中心处的高速缓存中存储所述文件块;以及将所述重建的文件块发送给客户端。 在各种替代实施例中,从所述文件生成多个组块的步骤包括使用纠删码来生成所述多个组块。 在各种替代实施方案中,该方法还包括:接收写入所述文件块的请求;在高速缓存中写入文件块;关闭文件;从所述文件块生成第二多个组块;以及将所述第二多个组块中的每个组块分发给所述多个数据中心的不同数据中心。所述第二多个组块可以只包括修改的组块。 在各种替代实施方案中,该方法进一步包括:比较当前高速缓存尺寸的实际存储和传递成本为与先前高速缓存尺寸的假定存储和传递成本;以及基于较低存储和传递成本来调整高速缓存尺寸。 在各种替代实施方案中,该方法进一步包括:确定所述高速缓存已满;并从高速缓存中移除文件块。 在各种替代实施方案中,所述多个组块根据系统纠删码而生成,其中所述文件块被分成未编码组块的子集和编码组块的子集。 在各种替代实施例中,组块的数目比组块子集的数目至大两个。 各种示例性实施例涉及编码为有形的、非瞬时的、机器可读存储介质上的指令的上述方法。 各种示例性实施例涉及一种用于存储文件的云系统。该系统可以包括含主数据中心的多个数据中心。所述主数据中心包括:被配置为存储至少一个完整文件块的高速缓存;被配置为对多个文件块的每一个存储组块的组块存储器;被配置为从所述文件块生成多个组块的文件编码器,其中每个组块小于所述文件并且所述文件块能从所述组块的子集重建;以及被配置为从所述组块的子集重建完整文件块的件解码器。 在各种替代实施例中,高速缓存是硬盘。 在各种替代实施例中,主数据中心还包括被配置为从客户端接收完整文件块和发送完整文件块到客户端的客户端接口。 在各种替代实施例中,主数据中心还包括被配置成将多个组块中的组块分发给所述多个数据中心的每一个并被配置为从所述多个数据中心接收组块的子集的云接口。 在各种替代实施例中,所述文件编码器被配置为使用纠删码来生成所述多个组块。 在各种替代实施例中,子集中组块的数目至少比由所述文件编码器生成的多个组块的数目小两个。 显而易见的是,在这种方式下,不同的示例性实施例实现了云计算方法及文件系统。特别是,通过分发文件块并在数据中心提供文件高速缓存,高弹性和低延时的目标能够以低成本得到满足。 【附图说明】 为了更好地理解各种示例性实施例中,参考了附图,其中: 图1示出典型的用于存储文件作为云服务云环境; 图2示出为云服务提供文件存储的示例性数据中心; 图3示出用于存储文件块的示例性数据结构; 图4示出在云服务中存储文件块的示例性的方法流程图; 图5示出在云服务中用于读取存储的文件块的示例性方法流程图; 图6示出在云服务中用于写入存储的文件块的示例性方法流程图;以及 图7示出调整高速缓存的尺寸的示例性方法的流程图。 【具体实施方式】 现在参照附图公开各种示例性实施例的公开的广泛方面,在附图中相同的标号表示同样的部件或步骤。 图1示出了用于存储文件作为云服务的示例性的云环境100。文件可以被存储为一个或多个文件块。因此,一个文件块可以是一个文件或整个文件的一部分。示例性的云环境100可以包括用户设备110、网络120、和云服务130。云服务130可包括多个数据中心135,用户设备110可以与云服务130的一个或多个数据中心135通过网络120进行通信。该云服务130可以向用户设备110提供数据存储和其他云服务。 用户设备110可以包括能够通过网络120与云服务130通信的任何设备。例如,用户设备110可以是个人计算机、笔记本电脑、移动电话、智能手机、服务器、个人数字助理、或任何其它电子装置。多个用户设备IlOa和IlOb可访问云服务130,虽然只有两个用户设备110被示出,但应该明白,任何数目的用户设备110都可以访问云服务130。 网络120可以包括能够处理用户设备110和数据中心135之间的数字通信的任何通信网络,网络120可以是因特网。网络120可以提供用户设备110和数据中心135之间的各种通信路径。 云服务130可以包括一个或多个向用户设备110提供计算服务的计算设备。在各种示例性实施例中,计算设备可以是存储数据文件的数据中心135。数据中心135可以在地理上分布以帮助确保弹性。如果一个数据中心,例如数据中心135a,由于电力或网络故障不可用,则其他数据中心135b-f可以保持可用。数据中心135可以相互通信。在各种示例性实施例中,数据中心135可以通过专用或租用线路互相通信。可选地,数据中心135可以经由网络120相互通信。 数据中心135可以用分布式架构存储数据文件以提供弹性。数据文件可以被划分为可由用户设备110请求和访问的一个或多个文件块。例如,文件块可以由一系列的数据文件中的字节定义。文件块可以被划分成多个组块,并存储在多个数据中心135的每一个中。可能需要组块中的一个子集来重建文件块。因此,云服务130可以能够提供到一个文件块的访问,即使数据中心135的一个或多个是不可用的。 数据中心135的一个可本文档来自技高网...
【技术保护点】
一种用于在包括多个数据中心(135a‑e)的云系统(130)中存储文件的方法,该方法包括:在第一数据中心接收来自客户端的文件块(420);从所述文件中块生成多个组块,其中每个组块小于所述文件并且所述文件块能从所述组块的子集重建(440);向所述多个数据中心的至少两个分发所述多个组块;其中所述多个组块的至少第一组块和第二组块被分发给所述多个数据中心的不同数据中心(450);以及在第一数据中心处的高速缓存中存储所述文件块(430)。
【技术特征摘要】
【国外来华专利技术】2012.01.11 US 13/348,2431.一种用于在包括多个数据中心(135a-e)的云系统(130)中存储文件的方法,该方法包括: 在第一数据中心接收来自客户端的文件块(420); 从所述文件中块生成多个组块,其中每个组块小于所述文件并且所述文件块能从所述组块的子集重建(440); 向所述多个数据中心的至少两个分发所述多个组块;其中所述多个组块的至少第一组块和第二组块被分发给所述多个数据中心的不同数据中心(450);以及在第一数据中心处的高速缓存中存储所述文件块(430)。2.如权利要求1所述的方法,还包括: 从客户端接收读取所述文件块的请求(520); 确定所述文件块是否存储在高速缓存中(530); 如果所述文件块存储在高速缓存中,则向所述客户端发送存储在高速缓存中的所述文件块(580)。3.如权利要求2所述的方法,还包括,如果所述文件块没有存储在高速缓存中,则: 从所述多个数据中心请求组块(540); 从所述多个数据中心接收所述多个组块的至少一个子集(550); 从组块的子集重建所述文件块(560); 在第一数据中心处的高速缓存中存储所述文件块(570);以及 将所述重建的文件块发送给客户端(580)。4.如权利要求1-3任一项所述的方法,其中,从所述文件生成多个组块的步骤包括使用纠删码来生成所述多个组块。5.如权利要求4所述的方法,其特征在于,所述纠删码是里德所罗门码、MDS码和LDPC码中的至少一个。6.如权利要求1至5任一项所述的方法,还包括: 接收写入所述文件块的请求(610); 在高速缓存中(640)写入所述文件块; 关闭所述文件(645); 从所述文件块生成第二多个组块(650);以及 将所述第二多个组块中的每个组块分发给所述多个数据...
【专利技术属性】
技术研发人员:K·普塔斯瓦米纳加,T·南达戈帕尔,Y·马,
申请(专利权)人:阿尔卡特朗讯公司,
类型:发明
国别省市:法国;FR
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。