CN104885076A - 分布式存储的系统和方法 - Google Patents
分布式存储的系统和方法 Download PDFInfo
- Publication number
- CN104885076A CN104885076A CN201380031080.0A CN201380031080A CN104885076A CN 104885076 A CN104885076 A CN 104885076A CN 201380031080 A CN201380031080 A CN 201380031080A CN 104885076 A CN104885076 A CN 104885076A
- Authority
- CN
- China
- Prior art keywords
- file
- computing equipment
- stored
- distributed storage
- accumulation layer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06F16/273—Asynchronous replication or reconciliation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2094—Redundant storage or storage space
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1464—Management of the backup or restore process for networked environments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/235—Update request formulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/84—Using snapshots, i.e. a logical point-in-time copy of the data
Abstract
用于使用连接至网络的多个计算设备的分布式存储的技术可包括将电子文件存储在计算设备之一的本地存储层内。所存储的电子文件可在网络上以诸部分的形式被非对称地传送至另一计算设备以跨分布式存储层中的其它计算设备存储该文件。电子文件可在网络上不同步地发送至云存储层,以使电子文件被镜像在云存储层中。每个计算设备的本地存储层对于分布式存储层中存储的每个电子文件可保存元数据,所述元数据具有指向存储在本地存储层和分布式存储层内的电子文件的部分的位置的指针。被存储在分布式存储层中的电子文件可如同被存储在单个逻辑驱动器中那样被显示。
Description
相关申请的交叉引用
本申请涉及2012年5月10日提交的美国临时申请S/N.61/645,505和2012年5月10日提交的美国临时申请S/N.61/645,508,每件临时申请全篇地援引包含于此并从中要求享有优先权。
背景
所披露的主题涉及分布式存储的技术,包括本地存储层、分布式存储层以及云存储层。
某些传统安全数据存储方案可能难以使用并难以维护。IT硬件和人力可能是昂贵的并且定期失效,并且这些失效可能导致数据损失。联系某些数据存储方案,数据可能难以或不可能远程地访问。
传统数据存储产品可被归类为“本地存储”、“网络存储服务器”、“基于Web的存储服务”以及“分布式存储系统”。对于小型至中型大小的办公室环境,每个类别可能就提供可靠的、可升级的、安全和故障容忍的存储方面具有相对的优势和缺陷。台式计算机中的本地硬盘驱动器是存储文件的常见形式。本地存储可提供高性能读/写次数和有形安全性的感觉,但如果盘失效、受到破坏或者数据被意外地或恶意地覆写,则数据不再存在。此外,当硬盘充满时,用户可尝试手动地管理存储空间,删除文件或试图将它们转移至另一机器——一种既需要时间又需要经验的过程。与同事手动地共享文件可能产生多个不一致的版本并且电子邮件文件可能是不安全的。
网络存储服务器可用来为组织中的用户提供共享存储空间。市面上有售的网络存储服务器涵盖从低到中等范围的“柜机(box in the closet)”方法(被称为“网络附连存储”或NAS)至充斥有刀片服务器和冗余盘阵列(例如RF ID)的高端、光纤信道存储域网(SAN)。网络存储服务器可为用户提供高容量存储以共享,但仍然可能遭受集中存储的许多公知问题:服务器可能中断、被篡改、被骇客侵入和被盗;它们可能在火灾中损毁或被咖啡浇湿;用户可能意外地覆写或删除文件;并且所有数据以与台式机的硬盘驱动器相同方式被存储。
尽管已知某些技术来改善这些问题,包括在远程位置复制数据、利用冗余盘阵列和加密,然而这些技术仍然包括各种缺陷,包括从中可能发生未经授权访问的地点增加、开销和复杂性增加以及降低的速度和方便性。另外,尽管网络存储服务器提供文件共享和高容量存储,然而它们维护和管理都可能昂贵。
基于Web的数据存储服务提供在因特网上备份和存储数据的不昂贵手段。类似Amazon S3、Apple iDisk、EMC Mozy和Pro SoftNetiDrive的服务是这些服务的例子。然而,一些用户可能对于在因特网上日常性发送他们的敏感信息比较谨慎,例如由于发觉来自数字搜索的较弱保护以及通过第三方对存储的数据的夺取。尽管基于web的存储一般能作为可靠的备份服务,然而它可能需要恒定、快速的因特网连接,并且可能太慢而无法被认为是每日文件访问和存储的理想替代方案。
分布式存储技术可包括在多个机器上多次地存储文件,将分散数据存储的负担和风险。文件存在的副本越多,越不可能丢失。然而,副本越多,意味着更多地方可以偷取,因此对于敏感数据或环境需要加密系统。此外,某些已有分布式存储系统可能提供低水平的安全性和性能。
因此,对于分布式存储需要改进的技术。
概述
所披露的主题涉及分布式存储的技术,包括本地存储层、分布式存储层以及云存储层。另外,所披露的主题涉及具有透明备份和数据安全性并具有全世界访问性和完全可审查版本历史的分布式存储技术。
在所披露的主题的一个方面,用于使用经由网络通信地耦合的多个计算设备的分布式存储的方法包括将电子文件存储在多个计算设备之一的本地存储层内。可以在网络上以诸部分的形式将电子文件异步地传送至多个计算设备中的其它计算设备,以使得跨分布式存储层中的其它计算设备存储电子文件。电子文件可在网络上被异步地传送至云存储层,以使电子文件被镜像在云存储层中。每个电子文件的元数据可被存储在每个计算设备的本地存储层中。元数据可包括指向被存储在本地存储层和分布式存储层中的电子文件的部分的位置的指针。被存储在分布式存储层中的电子文件可如同被存储在单个逻辑驱动中那样被显示。
根据示例性实施例,异步传送通过计算设备存储在本地存储层中的电子文件可包括:将电子文件分割成固定或可变大小的部分;经由网络将诸部分散列化到其它计算设备的存储设备上;更新元数据以包括指向经散列化部分的位置的指针;以及经由流言协议将元数据传送至其它计算设备。经散列化部分可通过进一步散列化而被复制到一个或多个其它计算设备上。
在一示例性实施例中,电子文件的编辑版本可通过计算设备来存储。计算设备可将文件的编辑版本与原始电子文件作比较以产生固定或可变大小的编辑部分。编辑部分可经由网络被散列化到其它计算设备的存储设备上,并且元数据可被更新以便对于文件的编辑版本,包括指向原始文件的未改变部分的指针以及指向编辑部分位置的指针。
方法可进一步包括通过计算设备之一检索电子文件。计算设备可从本地存储的元数据确定电子文件的部分的位置。这些部分可经由网络从这些位置检索,并且所检索的部分可被组装并被存储在计算设备的本地存储层内。根据示例性实施例,元数据也可包括被存储在分布式系统中的电子文件的版本信息、访问信息、许可信息和逻辑驱动路径信息中的一个或多个。在某些实施例中,电子文件可被加密。
根据所披露的主题的另一方面,用于分布式存储的系统可包括多个计算设备中的每一个的本地存储层以及分布式存储层。计算设备可与网络通信地耦合,并且每个计算设备可具有与之关联的一个或多个处理器以及一个或多个存储设备,其适于执行本文披露的技术。在一示例性实施例中,计算设备可包括一个或多个台式计算机、膝上型计算机或手持式计算设备。网络可以是有线或无线局域网、内域网或因特网。
在所披露的主题的另一方面,本文披露的技术可体现为存储可执行代码的非临时计算机存储可读介质,所述可执行代码当被执行时使得一个或多个处理器执行本文披露的功能。替代地,本文披露的所有或部分方法可以硬线电路形式体现,单独地或与可执行代码结合。
应当理解上述一般描述和以下详细说明仅都是示例性并旨在提供对所要求保护的披露主题的进一步阐述。
纳入于此并构成本说明书一部分的附图被包含以解说并提供对所披露的主题的进一步理解。与本说明书一起,附图用来解释所披露的主题的原理。
附图简述
图1A是根据所披露的主题的示例性实施例的分布式存储的方法的流程图。
图1B是根据所披露的主题的示例性实施例的分布式存储的系统的示意图。
图2A是根据所披露的主题的示例性实施例的存储层的示意图。
图2B是示出根据所披露的主题的示例性实施例的存储分层阶级的图。
图3是根据所披露的主题的示例性实施例的分布式存储系统的远程访问的示意图。
图4是根据所披露的主题的示例性实施例的元数据文件的图。
图5A是根据所披露的主题的示例性实施例的电子文件的散列部分的图。
图5B是示出根据所披露的主题的示例性实施例的编辑电子文件的散列部分的图。
图5C是示出根据所披露的主题的另一示例性实施例的编辑电子文件的散列部分的图。
图6C示出根据所披露的主题事项的示例性实施例的单逻辑联网驱动器的显示。
贯穿附图,相同的附图标记和字符,除非另有声明或通过上下文指示,否则用来表示相同特征、元件、组件或图示实施例的部分。此外,尽管现在参见附图详细描述所披露的主题,然而它是结合解说性实施例完成的,这旨在是非限制性的。
详细描述
根据所披露的主题的示例性存储系统可包括三个存储“层”。三个存储层可包括对于连接至系统的每个计算设备的本地存储层、跨计算设备的分布式存储层以及云存储层。存储系统可将计算设备中的未使用容量集中在一起,并能支持版本化、远程访问和长期备份。
所披露的主题的示例性实施例参照图1-6描述如下,为了解说目的并且不构成限制。为了清楚,同时地并彼此结合地描述方法和系统,其中对方法的引用标号用括号()作出,并且对系统的引用将不用括号作出。
参照图1A和图1B,并根据所披露主题的示例性实施例,分布式存储的技术可包括使用经由网络通信耦合的多个多个计算设备(例如111、121a和121b[统称121])。计算设备121可例如是一个或多个台式计算机、膝上型计算机、手持式计算设备或任何其它合适的计算设备。网络可以是有线或无线局域网、内域网或因特网。例如,计算设备121可以是在办公室环境中的数个机器,所述办公室环境包括但不限于学校、医院和本领域内技术人员清楚明白的其它环境,它们连接至局域网。每个计算设备可具有一个或多个处理器和一个或多个存储设备(例如一个或多个本地硬驱动),并可具有软件,例如包括操作系统(例如微软视窗、Mac OS、Linux等)以及伴随的软件应用。
计算设备121的用户能根据本文披露的技术来保存和检索文件。例如,当操作计算设备111的用户想要存储电子文件150时,电子文件150可首先被存储(101)到计算设备111中的一个的本地存储层110中。本地存储层110可例如是关联于计算设备111的一个或多个存储设备112的一部分(例如本地硬盘驱动)。本地存储可允许由保存它的用户进行快速和高效的读/写访问。
如前面提到的,仅在本地存储112中存储文件可能包括若干缺陷。因此,电子文件150可在网络上以多个部分(例如151a、151b、151c和151d[统称151])的形式被异步地传送(102)至其它多个计算设备(例如121a、121b),以使电子文件150跨分布式存储层120中的其它计算设备121而被存储。分布式存储层120(其可被称为例如中间存储层)可包括跨经由广域网、局域网等连接的多个机器的分布式存储。每个机器可被配置成跨其它机器的分布式存储。例如,软件可被安装在每个机器上,当软件被执行时,允许机器与其它机器通信以使特定文件能被存储在局域网上的多个机器上。
电子文件150可进一步在网络上被异步地传送(103)至云存储层130以使电子文件150被镜像(mirror)在云存储层130中。这种传输可包括在传输前首先加密与文件150对应的数据。如下文中更详细描述的那样,每个电子文件的元数据可被存储在每个计算设备121的本地存储层110中。元数据可包括指向被存储在本地存储层和分布式存储层中的电子文件的诸个部分的位置的指针。
根据示例性实施例,从计算设备111向分布式存储层120异步传送被存储在本地存储层110中的电子文件150可包括:将电子文件150分割成多个部分151并跨其它计算设备121存储这些部分151。这些部分151可以是固定或可变大小的部分。例如,创建部分151(可被称为“分块”)可包括将电子文件150的数据分割成固定大小的块(例如但不构成限制,在4kB和8kB大小之间)。替代地,电子文件150可通过使用例如滑动窗技术而被分块成可变大小的块。一般来说,为了解说而非限制,滑动窗技术可包括向上或向下“移动”分块文件至预定义“滑动窗”内的某个点,以尝试寻找公共块。这种滑动可产生能够通过新块填充的间隙。本领域内技术人员将理解,也可使用许多其它合适的变化和技术以将电子文件150分割成多个部分151,并且所披露的主题不旨在限制至本文披露的示例性实施例。
部分151可经由网络被散列到其它计算设备121的存储设备(例如122a、122b[统称122])上。例如,每个块可被散列(例如通过SHA-1算法等),从而产生可标识键空间(keyspace)内的块的位置的值(通常被称为键)。即,例如,并且如下文中更详细描述的那样,为了检索文件(即检索至少一个块),散列值可标识在哪里能找到块。另外,如果一个块具有与另一个块相同的值,则其散列值将是一样的,并因此相同的数据不需要被复制。经散列化部分151可随后经由网络被传送至另一计算设备121。例如,部分151a、151b可被传送至计算设备121a并被存储在与计算设备121a关联的一个或多个存储设备122a中。部分151b、151c可被传送至计算设备121b并被存储在与存储设备121b关联的一个或多个存储设备122b中。
被存储在每个计算设备(例如111、121a和121b)上的元数据随后可被更新以包括指向经散列化部分151的位置的指针。例如,计算设备111可将部分151散列并更新本地存储的元数据,并可使用例如流言协议(gossipprotocol)经由网络将元数据发送至另一计算设备。根据所披露的主题的某些实施例,经散列化部分151可通过进一步散列而被复制到一个或多个其它计算设备以形成冗余。
在示例性和非限定性实施例中,经由网络将部分151散列化在其它计算设备121的存储设备(例如122a、122b(统称122))上可使用诸如Chord之类的分布式散列表实现来达成。为了解说并且不作为限制,每个计算设备(例如121)可以是Chord节点,其中每个Chord节点负责键空间的一些部分。当电子文件150被存储在分布式存储层120中时,它被分解成诸个部分(“块”或“区块”)151并且这些块中的每一个被散列化,由此产生标识每个块在键空间中的位置的值,以及由此的其上将存储每个块的每个计算设备实例。也就是说,例如为了检索数据,计算设备仅需要知道文件的(或块的)散列值,该散列值标识在哪里能够找到数据。这些技术可避免中央协调或数据布置启发。
如前面提到的,电子文件150可进一步在网络上被异步地传送至云存储层130,以使电子文件150被镜像在云存储层130中。根据示例性实施例,参照图2A和图2B,云存储层130可包括被存储在系统中的整个数据集。云存储层130可充当本地层110和分布式层120的冗余,并且补充或替代地作为超出本地层110和分布式层120的容量的数据的存储库。例如,如图2A所示,在系统包括文件部分A-I的情形下,一个计算设备的本地存储层110可存储例如文件部分A、D和F,分布式存储层120可存储文件部分A、B、C、D、G和F,并且云存储层可存储所有文件部分A-I。
在示例性实施例中,数据可以类似于本文描述技术的方式被写至云存储层130,以将电子文件从本地存储层异步地传送至分布式存储层。也就是说,文件可被分割成一系列部分或“块”,它们可被传送至云存储层130。云存储层130可包括任何合适的存储服务,其可包括可操作用以在诸如因特网之类的网络上存储电子数据和提供对电子数据的访问的一个或多个存储设备、处理器和/或软件。例如,云存储层130可包括市面上可购得的web存储服务,例如Amazon S3、Apple iDi sk、EMC Mozy和Pro SoftNet iDrive。本领域内技术人员将理解,可使用多种其它合适的云存储服务,并且所披露的主题不旨在限制于本文披露的例子。例如,云存储层130不一定是市面上可得的,而是可以是专有云存储系统。
根据示例性实施例,云存储层130可包括来自多个分布式存储层的文件,如图2B所示。例如,公司可在两个位置运作局域网,其中在每个网络上的计算机运行本文描述的系统。尽管每个网络可具有单独的分布式存储层(220a、220b),两个层均可被包括在云存储层130中。例如,与分布式存储层220a对应的局域网可包括两个计算设备210a、210b,它们可将电子文件存储在相应的本地存储层中或分布式存储层210a中。类似地,与分布式存储层220b对应的局域网可包括两个计算设备210c、210d,它们可将电子文件存储在相应的本地存储层中或分布式存储层220b中。电子文件可从在其上创建或编辑文件的计算设备(例如210a、210b、210c或210d)被写至云存储层130,或者替代地,文件部分可从分布式存储层220a或220b被写入。
在示例性实施例中,本地存储层110的容量可被限制。例如,系统可被配置以使给定机器将贡献1GB数据给系统。在一些实施例中,本地存储层110可充当高速缓存。例如,在预定时间流逝后,可从本地存储再分配文件。作为附加或替代,可根据启发模型将文件从本地存储110中移除。分布式存储层120可类似地充当云存储层130的高速缓存。例如并如前面提到的,电子文件可被异步地传送至本地分布式存储110,其中数据可使用例如Chord来存储以确定布置。被发送至分布式层110存储的数据可被复制,以使其保持可用,而不管包含数据的n-1机器的故障,在那里数据被复制n次。存储在分布式存储层120中的操作可异步地执行,因此存储文件数据的用户或应用不需要等待分布式存储操作完成。在一些情形下,分布式存储层120的容量可小于存储系统中的总数据量,在这种情形下,分布式存储层120可充当云存储层130的高速缓存。云存储层130可存储被存储在存储系统中的整个数据集。更新可异步地被写至云存储,并在某些实施例中也可在被发送前被排队。排列可允许系统将一系列短更新作为单个单元上传,而不是在新的更新发生时重复地发送它们。
云存储层130可另外提供对系统的远程访问,例如通过因特网从远离其上安装系统的局域网的位置进行访问。例如,参见图3,远程计算设备310可访问被存储在云存储层130上的电子文件。远程计算设备310可因此经由云存储层130访问从分布式存储层120镜像的文件。
如本文中体现的,分布式存储层120中的每个计算设备的本地存储层110可存储与被存储在分布式存储层120和本地存储层110中的电子文件关联的元数据。根据示例性实施例并参照图4,对于所存储的每个电子文件(例如文件150),元数据可包括版本信息420、访问信息、许可信息和逻辑驱动路径信息410。
为解说目的而非限定,图4描绘文件的元数据,被命名为“test.txt”,具有三个版本:V0430、V1440和V2450。如图4所示,逻辑驱动路径信息410可包括表示文件150将如何被显示给用户的字符串。例如,文件150名称和路径可被显示为“C:\test.txt”。包括文件150的文件可如同被存储在单个逻辑驱动器中那样被显示,如图6描述的那样,这是为解说目的而非限定。也就是说,每个计算设备可被配置成显示被存储在分布式存储层中的文件,如同它们被存储在单个逻辑驱动器600中那样。
版本V0430和版本V1440可作为完整文件被存储,并且版本V2450可作为与之前版本V1440作比较的差异而被存储,如下文中更详细描述的那样。也就是说,版本V0430可包括访问包括指针431的信息,该指针431指向文件150的版本V0的经散列化部分的位置。同样,版本V1440可包括访问包括指针441的信息,该指针441指向文件150的版本V1的经散列化部分的位置。为了检索版本V0430或版本V1440,这些指针可被求解并且计算设备可请求创建文件版本的本地副本所需的部分。版本V2450可包括访问信息,该访问信息包括指向先前版本V1440的指针451和指向差异文件453的指针452。为了检索版本V2450,这些指针可被求解并且计算设备可请求V1441的部分和差异文件453以创建文件150的版本V2450的本地版本。
当本地存储时,与本地存储的文件150对应的元数据可包括指向本地存储上的文件的位置的指针。例如,在多个计算设备之一处检索电子文件150可包括从元数据确定电子文件150的诸个部分的位置(例如使用指针431、441或451和452)。随后可经由网络从这些位置检索这些部分并将它们组装并存储在计算设备的本地存储层上。计算设备上的元数据可随后被更新以包括指向本地存储的部分而不是指向被存储在分布式存储层上的部分的指针。
为了解说而非限定,图5A、5B和5C示出根据所披露的主题结合所存储的元数据的示例性散列文件部分(块)。图5A示出一个例子,其中三个部分510被存储在本文描述的系统的分布式存储层中。这三个部分包括与两个文件(文件X 530和文件Y 540)对应的部分。每个部分可如本文披露的那样被散列化520以产生与文件部分对应的散列(C、M和O)。可通过发出对部分C和M的查找调用(1ook-up call)来请求文件X 530。文件Y 540可包括与文件X 530的一些重叠,并因此可通过发出对部分O和M的查找调用而被请求。由于文件X 530和文件Y 540共享部分M,因此区块M不需要被存储两次。
如本文中提到的,对文件的编辑或更新可或者通过创建差异文件(这允许从先前版本计算文件的新版本)或者通过存储文件的全新版本而被存储。图5B示出通过形成文件的新版本对文件X 530的示例性编辑。在该示例性场景中,可将五个部分511存储在分布式存储层中并根据本文披露的技术将其散列化(B、C、G、M、O)521。这些部分511可包括与两个文件(即文件X和文件Y 541)对应的部分,其中文件X具有两个版本531a和531b。可通过分别发出对部分C、M和部分B、M的查找调用来请求文件X的版本V1531b和版本V2531a。也就是说,例如文件X的版本V2531a可包括仅与版本V1531b的文件部分之一(例如版本V1531b的部分C)对应的编辑。同样地,文件Y 541可包括与文件X的某些重叠,例如两个文件均包括部分M。
图5C示出通过基于之前的版本创建差异文件对文件X 530的示例性编辑。在这种场景下,可计算差异并将其存储在一个或多个新部分中。六个部分512可被存储在分布式存储层中并如本文披露地被散列化(A、B、C、G、M、O)522。文件X可包括两个版本532a和532b。可如前所述地通过发出对部分C和M的查找调用来请求文件X的版本V1532b。然而,对文件X编辑以创建版本V2532可包括存储部分A,它可以表示相对于版本V1532b的改变。也就是说,可通过除了发布对部分A的查找调用之外发出对版本V1531b的部分的查找调用来请求例如文件X的版本V2531a。请求计算设备可随后在请求的区块上执行操作以在本地存储层上组装版本V2531a。根据所披露的主题,对文件的编辑可基于对文件作出的改变程度使用新版本或差异文件来存储。另外,当大量差异已被执行时,可将差异组合到单个版本中以提高查找操作的速度。
在示例性实施例中,本地存储层的容量可能是有限的。例如,系统可被配置以使给定机器将贡献1GB数据给系统。在一些实施例中,本地存储层可充当高速缓冲存储器。例如,在预定时间流逝后,可从本地存储再分配文件。作为附加或替代,可根据启发将文件从本地存储中移除。为了解说而非限定,如果机器具有大容量,则与具有小容量的节点相比,它可控制更大部分的键空间。例如,具有大容量的计算设备可以被指派多个逻辑节点,从而给予它更大部分的键空间。然而,这种配置可能涉及将件部分散列化到同一物理机上的不同逻辑节点上。因此,可作出将节点指派给一部分键空间以使同一机器上的逻辑节点占据键空间的连续部分。
在某些情形下,本文披露的技术可能导致冲突的更新或编辑(例如同一文件的并发更新或创建、同一文件的并发重命名、或者仅当副本更新时文件的删除)。在这些情形下,并根据所披露的主题,可基于更新的时戳将“胜利(winning)”更新传播至其它计算设备,或者如果竞争更新的时戳相同,则基于计算设备的标识传播。“失败”更新可被保留在添加至系统的新文件中,可基于原始文件给予其名称。可对冲突更新创建冲突文件,并且存储在每个计算设备上的元数据可被更新以针对“失败”更新引用新文件。
在初始化过程中,每个计算设备可使用发现服务加入系统。例如,计算设备可在初始化时宣告其在网络上的存在。每个计算设备也可运行发现线程,该发现线程可监视网络已寻找变得活跃的新计算设备。
本文披露的技术可提供一种存储系统,该存储系统组合现有数据存储方案的力量并减轻其弱点,包括具有本地存储的写速度以及联网存储服务器的共享存储空间的存储系统。分布式存储层可将现有办公室机器中的未经使用容量(否则就会浪费的容量)聚集在一起——并可在它们之间分摊数据存储的负载以及数据存储的风险。安全云存储层可用于版本化、远程访问和长期备份。本文披露的技术可提供完整文件版本历史以实现审核和兼容目的,并且不需要IT工作人员、维护以及新硬件。
此外,本文披露的技术可提供其中不同策略可供不同组织需求使用的缩放性和扩展性。例如,法律事务所的策略可规定对文件高速缓存作为临时存储器使用,由此在机器被拔去电源插头时擦除任何本地副本。也可在对其仅存储总备份中的一部分的多个因特网辖地中规定多个基于web的备份设施——每一个在其本身上是不可用的——由此降低数字搜索和获取的ECPA类行动的威胁。
***
如前面结合某些实施例描述的那样,某些组件,例如本地存储层110、分布式存储层120和云存储层130可包括一个或多个计算机、处理器、网络、移动设备、簇或其它硬件以执行多种功能。此外,所披露主题的某些要素可体现为计算机代码,该计算机代码可被存储在计算机可读介质中并且当被执行时使得处理器执行某些功能。在这些实施例中,计算机在网络(例如局域网和/或因特网)上实现分布式存储的系统和方法方面起到重大作用。例如,计算机、处理器、存储器、存储和联网硬件的存在提供了计算设备中未经使用容量的集合,并能对版本化、远程访问和长期备份提供支持。
另外,如前面结合某些实施例描述的那样,某些组件可例如通过网络(比如因特网)与某些其它组件通信。尽管前面未明确声明,但所披露的主题旨在涵盖每次交易的两侧,包括发送和接收。本领域内技术人员将容易理解,对于前面描述的特征,如果一个组件传送、发送或以其它方式可供另一组件使用,则另一组件将接收或获取,而不管是否明确声明。
当前披露的主题不受本文中的具体实施例的范围限制。事实上,除了本文描述的那些,所披露的主题的多种修正对本领域内技术人员从前面的描述和附图中将变得显而易见。这些修正旨在落入所附权利要求书的范围内。
Claims (33)
1.一种用于使用经由网络通信地耦合的多个计算设备的分布式存储的方法,包括:
将电子文件存储在所述多个计算设备中的一个的本地存储层中;
在网络上将存储在多个计算设备中的一个的本地存储层中的电子文件部分以诸部分的形式异步地传送至多个计算设备中的其它计算设备,以使得跨分布式存储层中的其它计算设备存储所述电子文件;
在网络上将存储在分布式存储层中的电子文件异步地传送至云存储层,以使得电子文件被镜像在所述云存储层中;以及
对于分布式存储层中存储的每个电子文件,在多个计算设备的每个计算设备的本地存储层中存储元数据,所述元数据具有指向存储在本地存储层和分布式存储层内的所述电子文件的所述部分的位置的指针。
2.如权利要求1所述的方法,其特征在于,还包括用与计算设备中的一个耦合的显示设备将存储在所述分布式存储层中的电子文件如同被存储在单个逻辑驱动中那样进行显示。
3.如权利要求1所述的方法,其特征在于,所述多个计算设备包括台式计算机、膝上型计算机或手持式计算设备中的一个或多个。
4.如权利要求1所述的方法,其特征在于,所述网络包括有线局域网、无线局域网、内联网或因特网中的一个或多个。
5.如权利要求1所述的方法,其特征在于,异步地传送被存储在多个计算设备中的一个的本地存储层内的电子文件包括:
将所述电子文件分割成固定大小或可变大小的部分;
经由网络将所述部分散列化到其它计算设备的存储设备上;
更新所述元数据以包括指向经散列化部分的位置的指针;以及
使用流言协议经由网络将所述元数据传送至其它计算设备。
6.如权利要求5所述的方法,其特征在于,还包括通过进一步散列化将经散列化部分复制到一个或多个其它计算设备上。
7.如权利要求5所述的方法,其特征在于,还包括存储所述电子文件的编辑版本,其中存储包括在多个计算设备的一个上:
将编辑版本与所述电子文件比较以产生所述电子文件的固定或可变大小的编辑部分;
经由网络将编辑部分散列化到其它计算设备的存储设备上;以及
更新所述元数据以便对于电子文件的编辑版本,包括指向电子文件的未改变部分的指针以及指向编辑部分的位置的指针。
8.如权利要求1所述的方法,其特征在于,还包括在多个计算设备的一个上检索电子文件,其中检索包括:
从所述元数据确定所述电子文件的部分的位置;
经由网络从所述位置检索电子文件的部分;以及
在本地存储层上组装和存储所检索的部分。
9.如权利要求1所述的方法,其特征在于,还包括远程地访问所述电子文件,其中远程地访问包括在远程计算设备处从所述云存储层检索所述电子文件。
10.如权利要求1所述的方法,其特征在于,元数据进一步包括关于所述电子文件的版本信息、访问信息、许可信息和逻辑驱动路径信息中的一个或多个。
11.如权利要求1所述的方法,其特征在于,还包括对电子文件进行加密。
12.一种包含计算机可执行指令的非临时计算机可读介质,所述指令当被执行时使得一个或多个计算机设备执行用于使用经由网络通信地耦合的多个计算设备的分布式存储的方法,包括:
将电子文件存储在所述多个计算设备中的一个的本地存储层中;
在网络上将存储在多个计算设备中的一个的本地存储层中的电子文件部分以诸部分的形式异步地传送至多个计算设备中的其它计算设备,以使得跨分布式存储层中的其它计算设备存储所述电子文件;
在网络上将存储在分布式存储层中的电子文件异步地传送至云存储层,以使电子文件被镜像在所述云存储层中;以及
对于分布式存储层中存储的每个电子文件,在多个计算设备的每个计算设备的本地存储层中存储元数据,所述元数据具有指向存储在本地存储层和分布式存储层中的电子文件的部分的位置的指针。
13.如权利要求12所述的非临时计算机可读介质,其特征在于,还包括用与计算设备中的一个耦合的显示设备将存储在分布式存储层中的电子文件如同被存储在单个逻辑驱动中那样进行显示。
14.如权利要求12所述的非临时计算机可读介质,其特征在于,所述多个计算设备包括台式计算机、膝上型计算机或手持式计算设备中的一个或多个。
15.如权利要求12所述的非临时计算机可读介质,其特征在于,所述网络包括有线局域网、无线局域网、内联网或因特网中的一个或多个。
16.如权利要求12所述的非临时计算机可读介质,其特征在于,异步地传送被存储在多个计算设备中的一个的本地存储层内的电子文件包括:
将所述电子文件分割成固定大小或可变大小的部分;
经由网络将所述部分散列化到其它计算设备的存储设备上;
更新所述元数据以包括指向经散列化部分的位置的指针;以及
使用流言协议经由网络将所述元数据传送至其它计算设备。
17.如权利要求17所述的非临时计算机可读介质,其特征在于,还包括通过进一步散列化将经散列化部分复制到一个或多个其它计算设备上。
18.如权利要求17所述的非临时计算机可读介质,其特征在于,还包括存储所述电子文件的编辑版本,其中存储包括在多个计算设备的一个上:
将编辑版本与所述电子文件比较以产生电子文件的固定或可变大小的编辑部分;
经由网络将编辑部分散列化到其它计算设备的存储设备上;以及
更新所述元数据以便对于电子文件的编辑版本,包括指向电子文件的未改变部分的指针以及指向编辑部分的位置的指针。
19.如权利要求12所述的非临时计算机可读介质,其特征在于,还包括在多个计算设备的一个上检索电子文件,其中检索包括:
从所述元数据确定所述电子文件的部分的位置;
经由网络从所述位置检索所述电子文件的部分;以及
在本地存储层上组装和存储所检索的部分。
20.如权利要求12所述的非临时计算机可读介质,其特征在于,还包括远程地访问所述电子文件,其中远程地访问包括在远程计算设备处从云存储层检索所述电子文件。
21.如权利要求12所述的非临时计算机可读介质,其特征在于,元数据进一步包括关于所述电子文件的版本信息、访问信息、许可信息和逻辑驱动路径信息中的一个或多个。
22.如权利要求12所述的非临时计算机可读介质,其特征在于,还包括对电子文件进行加密。
23.一种用于分布式存储的系统,包括:
与网络通信耦合的多个计算设备,每个计算设备具有与之关联的一个或多个处理器以及一个或多个存储设备;
分布式存储层,其包括多个计算设备中的每一个的一个或多个存储设备的部分;
定义在每个计算设备的一个或多个存储设备上的本地存储层,所述计算设备上存储有元数据,所述元数据具有指向被存储在本地存储层和分布式存储层中的电子文件的部分的位置的指针;
其中每个计算设备中的一个或多个处理器被配置成经由网络与一个或多个计算设备中的其他计算设备通信,以使得跨所述分布式存储层中的其它计算设备异步地存储被存储在第一计算设备的本地存储层中的电子文件的部分;以及
其中每个计算设备中的一个或多个处理器被配置成经由网络与云存储层通信以使得被存储在分布式存储层中的所述电子文件被异步地镜像在云层中。
24.如权利要求23所述的系统,其特征在于,每个计算设备的一个或多个处理器被配置成通过与计算设备中的一个耦合的显示设备将被存储在分布式存储层中的所述电子文件如同存储在单个逻辑驱动中那样进行显示。
25.如权利要求23所述的系统,其特征在于,所述多个计算设备包括台式计算机、膝上型计算机或手持式计算设备中的一个或多个。
26.如权利要求23所述的系统,其特征在于,所述网络包括有线局域网、无线局域网、内联网或因特网中的一个或多个。
27.如权利要求23所述的系统,其特征在于,所述第一计算设备的一个或多个处理器被进一步配置成将所述电子文件分割成固定或可变大小的部分,经由网络将所述部分散列化到在其它计算设备的存储设备上,更新所述元数据以包括指向所述经散列化部分的位置的指针,并使用流言协议经由网络将所述元数据传送至其它计算设备以使得跨分布式存储层中的其它计算设备异步地存储所述电子文件的部分。
28.如权利要求27所述的系统,其特征在于,所述多个计算设备中的每一个的一个或多个处理器被进一步配置成通过进一步散列化将经散列化部分复制到一个或多个其它计算设备上。
29.如权利要求27所述的系统,其特征在于,所述第一计算设备的一个或多个处理器被进一步配置成通过以下操作来存储所述电子文件的编辑版本:通过将编辑版本与所述电子文件比较以产生所述电子文件的固定或可变大小的编辑部分,经由网络将所述编辑部分散列化到其它计算设备的存储设备上,以及更新所述元数据以便对于电子文件的编辑版本,包括指向所述电子文件的未改变部分的指针和指向所述编辑部分位置的指针。
30.如权利要求23所述的系统,其特征在于,第二计算设备的一个或多个处理器被进一步配置成检索所述电子文件,从所述元数据确定所述电子文件的部分的位置,经由网络从所述位置检索所述电子文件的部分,以及在本地存储层上组装和存储所检索的部分。
31.如权利要求23所述的系统,其特征在于,还包括具有一个或多个处理器的远程计算设备,所述一个或多个处理器被配置成通过从所述云存储层检索所述电子文件来远程地访问所述电子文件。
32.如权利要求23所述的系统,其特征在于,所述元数据进一步包括关于所述电子文件的版本信息、访问信息、许可信息和逻辑驱动路径信息中的一个或多个。
33.如权利要求23所述的系统,其特征在于,多个计算设备中的每一个的一个或多个处理器被进一步配置成对所述电子文件进行加密。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261645508P | 2012-05-10 | 2012-05-10 | |
US201261645505P | 2012-05-10 | 2012-05-10 | |
US61/645,505 | 2012-05-10 | ||
US61/645,508 | 2012-05-10 | ||
PCT/US2013/040299 WO2013169997A2 (en) | 2012-05-10 | 2013-05-09 | Systems and methods for distributed storage |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104885076A true CN104885076A (zh) | 2015-09-02 |
CN104885076B CN104885076B (zh) | 2018-06-05 |
Family
ID=49549456
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380031080.0A Expired - Fee Related CN104885076B (zh) | 2012-05-10 | 2013-05-09 | 分布式存储的系统和方法 |
Country Status (11)
Country | Link |
---|---|
US (2) | US9542466B2 (zh) |
EP (2) | EP3258369B1 (zh) |
JP (2) | JP6151353B2 (zh) |
CN (1) | CN104885076B (zh) |
BR (1) | BR112014027966A2 (zh) |
CA (1) | CA2873289A1 (zh) |
ES (1) | ES2658993T3 (zh) |
IL (1) | IL235587A0 (zh) |
IN (1) | IN2014DN10026A (zh) |
PL (1) | PL2847694T3 (zh) |
WO (1) | WO2013169997A2 (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105915542A (zh) * | 2016-06-08 | 2016-08-31 | 惠众商务顾问(北京)有限公司 | 基于随机指令分布式云认证系统、装置及方法 |
CN107340971A (zh) * | 2016-04-28 | 2017-11-10 | 上海优刻得信息科技有限公司 | 一种数据存储与恢复架构与方法 |
CN107423301A (zh) * | 2016-05-24 | 2017-12-01 | 华为技术有限公司 | 一种数据处理的方法、相关设备及存储系统 |
CN107810499A (zh) * | 2015-09-14 | 2018-03-16 | 谷歌有限责任公司 | 用于内容存储和检索的系统和方法 |
CN108667884A (zh) * | 2017-04-01 | 2018-10-16 | 华为技术有限公司 | 镜像分发方法、镜像获取方法及装置 |
CN109074295A (zh) * | 2016-07-29 | 2018-12-21 | 惠普发展公司,有限责任合伙企业 | 具有真实性的数据恢复 |
CN109117425A (zh) * | 2017-06-22 | 2019-01-01 | 奥多比公司 | 管理被存储为组件和打包文件的数字资产 |
CN109976667A (zh) * | 2016-01-26 | 2019-07-05 | 华为技术有限公司 | 一种镜像管理方法、装置及系统 |
CN110431527A (zh) * | 2017-03-09 | 2019-11-08 | 微软技术许可有限责任公司 | 跨存储提供方映射存储 |
CN112970020A (zh) * | 2018-10-31 | 2021-06-15 | 希捷科技有限公司 | 使用分布式账本监视设备部件 |
US11966414B2 (en) | 2017-06-22 | 2024-04-23 | Adobe Inc. | Synchronization of components of digital assets during live co-editing |
CN109117425B (zh) * | 2017-06-22 | 2024-05-10 | 奥多比公司 | 用于数字资产同步的方法、系统和介质 |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9542466B2 (en) * | 2012-05-10 | 2017-01-10 | Aetherstore Inc. | Systems and methods for distributed storage |
US9870374B2 (en) * | 2012-08-31 | 2018-01-16 | Microsoft Technology Licensing, Llc | Replicating data across data centers |
US20140195516A1 (en) * | 2013-01-09 | 2014-07-10 | Dropbox, Inc. | Systems and methods for presenting content items in a collections view |
US9159149B2 (en) * | 2013-03-14 | 2015-10-13 | Interntional Business Machines Corporation | Visualizing data transfers in distributed file system |
US9311326B2 (en) * | 2013-04-12 | 2016-04-12 | Alterante, Inc. | Virtual file system for automated data replication and review |
EP3186931B1 (en) * | 2014-08-26 | 2020-07-22 | Ctera Networks, Ltd. | Method and system for routing data flows in a cloud storage system |
US10594681B2 (en) | 2014-10-30 | 2020-03-17 | Lenovo (Singapore) Pte. Ltd. | Aggregate service with user interface |
JP6571202B2 (ja) * | 2015-05-27 | 2019-09-04 | グーグル エルエルシー | モバイルデバイス上の自動的なクラウドベースの全データバックアップおよびリストアのためのシステムおよび方法 |
CN105608193B (zh) * | 2015-12-23 | 2019-03-26 | 深信服科技股份有限公司 | 分布式文件系统的数据管理方法和装置 |
JP6854997B2 (ja) * | 2016-02-22 | 2021-04-07 | 株式会社croco | ネットワーク通信システム |
JP7352289B2 (ja) * | 2016-02-22 | 2023-09-28 | 株式会社croco | ネットワーク通信システム |
US10209901B2 (en) * | 2017-01-04 | 2019-02-19 | Walmart Apollo, Llc | Systems and methods for distributive data storage |
US10831719B2 (en) * | 2017-08-29 | 2020-11-10 | Western Digital Technologies, Inc. | File consistency in shared storage using partial-edit files |
CN108182244B (zh) * | 2017-12-28 | 2019-04-05 | 清华大学 | 一种基于多层次列式存储结构的时序数据存储方法 |
US10705752B2 (en) * | 2018-02-12 | 2020-07-07 | International Business Machines Corporation | Efficient data migration in hierarchical storage management system |
US11599752B2 (en) | 2019-06-03 | 2023-03-07 | Cerebri AI Inc. | Distributed and redundant machine learning quality management |
US11789617B2 (en) * | 2021-06-29 | 2023-10-17 | Acronis International Gmbh | Integration of hashgraph and erasure coding for data integrity |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060230076A1 (en) * | 2005-04-08 | 2006-10-12 | Microsoft Corporation | Virtually infinite reliable storage across multiple storage devices and storage services |
US20100082672A1 (en) * | 2008-09-26 | 2010-04-01 | Rajiv Kottomtharayil | Systems and methods for managing single instancing data |
WO2010088437A2 (en) * | 2009-01-30 | 2010-08-05 | Twinstrata, Inc. | System and method for secure and reliable multi-cloud data replication |
US20100332454A1 (en) * | 2009-06-30 | 2010-12-30 | Anand Prahlad | Performing data storage operations with a cloud environment, including containerized deduplication, data pruning, and data transfer |
CN101980192A (zh) * | 2010-10-15 | 2011-02-23 | 中兴通讯股份有限公司 | 一种基于对象的集群文件系统管理方法及集群文件系统 |
US20110107103A1 (en) * | 2009-10-30 | 2011-05-05 | Dehaan Michael Paul | Systems and methods for secure distributed storage |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5765171A (en) * | 1995-12-29 | 1998-06-09 | Lucent Technologies Inc. | Maintaining consistency of database replicas |
US6098078A (en) * | 1995-12-29 | 2000-08-01 | Lucent Technologies Inc. | Maintaining consistency of database replicas |
US6697846B1 (en) | 1998-03-20 | 2004-02-24 | Dataplow, Inc. | Shared file system |
US20020138362A1 (en) | 2001-03-21 | 2002-09-26 | Kitze Christopher Allin | Digital file marketplace |
US7016901B2 (en) | 2001-07-31 | 2006-03-21 | Ideal Scanners & Systems, Inc. | System and method for distributed database management of graphic information in electronic form |
US20040122917A1 (en) | 2002-12-18 | 2004-06-24 | Menon Jaishankar Moothedath | Distributed storage system for data-sharing among client computers running defferent operating system types |
US20060230039A1 (en) * | 2005-01-25 | 2006-10-12 | Markmonitor, Inc. | Online identity tracking |
WO2006094275A2 (en) * | 2005-03-02 | 2006-09-08 | Markmonitor, Inc. | Trust evaluation systems and methods |
US20060218160A1 (en) * | 2005-03-24 | 2006-09-28 | Computer Associates Think, Inc. | Change control management of XML documents |
JP2007073004A (ja) * | 2005-09-09 | 2007-03-22 | Canon Inc | データ保全情報装置、分散ストレージシステム及びその方法 |
US8782047B2 (en) * | 2009-10-30 | 2014-07-15 | Hitachi Data Systems Corporation | Fixed content storage within a partitioned content platform using namespaces |
US8341229B2 (en) * | 2008-11-25 | 2012-12-25 | Red Hat, Inc. | IMAP fetch diff |
US8805953B2 (en) * | 2009-04-03 | 2014-08-12 | Microsoft Corporation | Differential file and system restores from peers and the cloud |
US20100318759A1 (en) * | 2009-06-15 | 2010-12-16 | Microsoft Corporation | Distributed rdc chunk store |
US9021046B2 (en) * | 2010-01-15 | 2015-04-28 | Joyent, Inc | Provisioning server resources in a cloud resource |
US8429651B2 (en) * | 2010-01-20 | 2013-04-23 | International Business Machines Corporation | Enablement and acceleration of live and near-live migration of virtual machines and their associated storage across networks |
US8407244B2 (en) * | 2010-04-23 | 2013-03-26 | Datcard Systems, Inc. | Management of virtual packages of medical data in interconnected content-addressable storage systems |
US8799414B2 (en) * | 2010-05-03 | 2014-08-05 | Panzura, Inc. | Archiving data for a distributed filesystem |
US20110302312A1 (en) * | 2010-06-02 | 2011-12-08 | Mccrory Dave Dennis | Cloud resource proxy with attribute mirroring |
US9864685B2 (en) * | 2010-08-25 | 2018-01-09 | Intel Corporation | Method and system for cache tiering |
JP5822452B2 (ja) * | 2010-10-22 | 2015-11-24 | 株式会社インテック | ストレージサービス提供装置、システム、サービス提供方法、及びサービス提供プログラム |
US9357331B2 (en) * | 2011-04-08 | 2016-05-31 | Arizona Board Of Regents On Behalf Of Arizona State University | Systems and apparatuses for a secure mobile cloud framework for mobile computing and communication |
US9262498B2 (en) * | 2011-05-27 | 2016-02-16 | Red Hat, Inc. | Generating optimized host placement of data payload in cloud-based storage network |
US9542466B2 (en) * | 2012-05-10 | 2017-01-10 | Aetherstore Inc. | Systems and methods for distributed storage |
-
2013
- 2013-03-15 US US13/840,017 patent/US9542466B2/en active Active
- 2013-05-09 CA CA2873289A patent/CA2873289A1/en not_active Abandoned
- 2013-05-09 WO PCT/US2013/040299 patent/WO2013169997A2/en active Application Filing
- 2013-05-09 CN CN201380031080.0A patent/CN104885076B/zh not_active Expired - Fee Related
- 2013-05-09 ES ES13787573.8T patent/ES2658993T3/es active Active
- 2013-05-09 EP EP17184019.2A patent/EP3258369B1/en active Active
- 2013-05-09 PL PL13787573T patent/PL2847694T3/pl unknown
- 2013-05-09 EP EP13787573.8A patent/EP2847694B1/en not_active Not-in-force
- 2013-05-09 JP JP2015511689A patent/JP6151353B2/ja not_active Expired - Fee Related
- 2013-05-09 BR BR112014027966A patent/BR112014027966A2/pt not_active Application Discontinuation
-
2014
- 2014-11-09 IL IL235587A patent/IL235587A0/en not_active IP Right Cessation
- 2014-11-26 IN IN10026DEN2014 patent/IN2014DN10026A/en unknown
-
2016
- 2016-11-28 US US15/361,754 patent/US20170075971A1/en not_active Abandoned
-
2017
- 2017-05-24 JP JP2017102549A patent/JP2017168135A/ja active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060230076A1 (en) * | 2005-04-08 | 2006-10-12 | Microsoft Corporation | Virtually infinite reliable storage across multiple storage devices and storage services |
US20100082672A1 (en) * | 2008-09-26 | 2010-04-01 | Rajiv Kottomtharayil | Systems and methods for managing single instancing data |
WO2010088437A2 (en) * | 2009-01-30 | 2010-08-05 | Twinstrata, Inc. | System and method for secure and reliable multi-cloud data replication |
US20100332454A1 (en) * | 2009-06-30 | 2010-12-30 | Anand Prahlad | Performing data storage operations with a cloud environment, including containerized deduplication, data pruning, and data transfer |
US20110107103A1 (en) * | 2009-10-30 | 2011-05-05 | Dehaan Michael Paul | Systems and methods for secure distributed storage |
CN101980192A (zh) * | 2010-10-15 | 2011-02-23 | 中兴通讯股份有限公司 | 一种基于对象的集群文件系统管理方法及集群文件系统 |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107810499A (zh) * | 2015-09-14 | 2018-03-16 | 谷歌有限责任公司 | 用于内容存储和检索的系统和方法 |
US11930070B2 (en) | 2015-09-14 | 2024-03-12 | Google Llc | Systems and methods for content storage and retrieval |
CN107810499B (zh) * | 2015-09-14 | 2022-03-25 | 谷歌有限责任公司 | 用于内容存储和检索的系统和方法 |
CN109976667B (zh) * | 2016-01-26 | 2021-09-14 | 华为技术有限公司 | 一种镜像管理方法、装置及系统 |
CN109976667A (zh) * | 2016-01-26 | 2019-07-05 | 华为技术有限公司 | 一种镜像管理方法、装置及系统 |
CN107340971A (zh) * | 2016-04-28 | 2017-11-10 | 上海优刻得信息科技有限公司 | 一种数据存储与恢复架构与方法 |
CN107423301A (zh) * | 2016-05-24 | 2017-12-01 | 华为技术有限公司 | 一种数据处理的方法、相关设备及存储系统 |
CN105915542A (zh) * | 2016-06-08 | 2016-08-31 | 惠众商务顾问(北京)有限公司 | 基于随机指令分布式云认证系统、装置及方法 |
CN109074295A (zh) * | 2016-07-29 | 2018-12-21 | 惠普发展公司,有限责任合伙企业 | 具有真实性的数据恢复 |
CN110431527A (zh) * | 2017-03-09 | 2019-11-08 | 微软技术许可有限责任公司 | 跨存储提供方映射存储 |
CN108667884B (zh) * | 2017-04-01 | 2021-01-05 | 华为技术有限公司 | 镜像分发方法、镜像获取方法及装置 |
US11388220B2 (en) | 2017-04-01 | 2022-07-12 | Huawei Technologies Co., Ltd. | Image distribution method and apparatus, and image obtaining method and apparatus |
CN108667884A (zh) * | 2017-04-01 | 2018-10-16 | 华为技术有限公司 | 镜像分发方法、镜像获取方法及装置 |
CN109117425A (zh) * | 2017-06-22 | 2019-01-01 | 奥多比公司 | 管理被存储为组件和打包文件的数字资产 |
US11966414B2 (en) | 2017-06-22 | 2024-04-23 | Adobe Inc. | Synchronization of components of digital assets during live co-editing |
CN109117425B (zh) * | 2017-06-22 | 2024-05-10 | 奥多比公司 | 用于数字资产同步的方法、系统和介质 |
CN112970020A (zh) * | 2018-10-31 | 2021-06-15 | 希捷科技有限公司 | 使用分布式账本监视设备部件 |
Also Published As
Publication number | Publication date |
---|---|
PL2847694T3 (pl) | 2018-06-29 |
IL235587A0 (en) | 2015-01-29 |
CN104885076B (zh) | 2018-06-05 |
BR112014027966A2 (pt) | 2017-07-18 |
EP2847694A4 (en) | 2016-08-03 |
ES2658993T3 (es) | 2018-03-13 |
US20130304706A1 (en) | 2013-11-14 |
EP2847694A2 (en) | 2015-03-18 |
WO2013169997A9 (en) | 2013-12-05 |
EP3258369A1 (en) | 2017-12-20 |
US9542466B2 (en) | 2017-01-10 |
WO2013169997A3 (en) | 2015-05-28 |
JP2017168135A (ja) | 2017-09-21 |
IN2014DN10026A (zh) | 2015-08-14 |
EP3258369B1 (en) | 2019-08-14 |
JP6151353B2 (ja) | 2017-06-21 |
US20170075971A1 (en) | 2017-03-16 |
CA2873289A1 (en) | 2013-11-14 |
WO2013169997A2 (en) | 2013-11-14 |
EP2847694B1 (en) | 2017-11-08 |
JP2015523625A (ja) | 2015-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104885076A (zh) | 分布式存储的系统和方法 | |
US11797569B2 (en) | Configurable data replication | |
US11455409B2 (en) | Storage layer data obfuscation | |
US11360689B1 (en) | Cloning a tracking copy of replica data | |
US20210303164A1 (en) | Managing host mappings for replication endpoints | |
US20220083245A1 (en) | Declarative provisioning of storage | |
CN103473250B (zh) | 用于保存文件系统节点的过去状态的方法与系统 | |
US11036677B1 (en) | Replicated data integrity | |
CN104813321B (zh) | 在分布式对象存储生态系统中的去耦合的内容以及元数据 | |
US9773042B1 (en) | Method and system for accelerating data movement using change information concerning difference between current and previous data movements | |
CN105659213B (zh) | 无共享分布式存储系统中的目标驱动独立数据完整性和冗余恢复 | |
CN103109292B (zh) | 在容错数据库管理系统中聚集查询结果的系统和方法 | |
JP5210176B2 (ja) | 複数のノードを有するストレージ・システムの保護管理方法 | |
CN103473252B (zh) | 用于文件系统复制中复制标识与冲突避免的方法与系统 | |
US20220263897A1 (en) | Replicating Multiple Storage Systems Utilizing Coordinated Snapshots | |
US20220138223A1 (en) | Providing Quality Of Service (QoS) For Replicating Datasets | |
US20220075546A1 (en) | Intelligent application placement in a hybrid infrastructure | |
US8332497B1 (en) | Generic resynchronization between persistent management store and dynamic configuration | |
US9395936B2 (en) | Method and apparatus for remote storage performance data copy | |
US11893263B2 (en) | Coordinated checkpoints among storage systems implementing checkpoint-based replication | |
CN108369487A (zh) | 用于在去重虚拟文件系统中拍摄快照的系统和方法 | |
US20140019425A1 (en) | File server and file management method | |
Ratner | Better Object Storage With Hitachi Content Platform | |
Tate et al. | Implementing the IBM System Storage SAN Volume Controller with IBM Spectrum Virtualize V8. 2.1 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20180605 Termination date: 20200509 |