-
公开(公告)号:US20150019937A1
公开(公告)日:2015-01-15
申请号:US14320494
申请日:2014-06-30
Applicant: Caringo, Inc.
Inventor: Don BAKER , Paul R.M. CARPENTIER , Andrew KLAGER , Aaron PIERCE , Jonathan RING , Russell TURPIN , David YOAKLEY
CPC classification number: G06F11/1076 , G06F3/0605 , G06F3/0619 , G06F3/0632 , G06F3/064 , G06F3/065 , G06F3/0667 , G06F3/067 , G06F3/0683 , G06F11/10 , G06F11/14 , H03M13/05 , H03M13/25 , H03M13/251 , H03M13/2707 , H03M13/353 , H03M13/356 , H03M13/373 , H03M13/3761 , H04L67/1095 , H04L67/1097
Abstract: A cluster receives a request to store an object using replication or erasure coding. The cluster writes the object using erasure coding. A manifest is written that includes an indication of erasure coding and a unique identifier for each segment. The cluster returns a unique identifier of the manifest. The cluster receives a request from a client that includes a unique identifier. The cluster determines whether the object has been stored using replication or erasure coding. If using erasure coding, the method reads a manifest. The method identifies segments within the cluster using unique segment identifiers of the manifest. Using these unique segment identifiers, the method reconstructs the object. A persistent storage area of another disk is scanned to find a unique identifier of a failed disk. If using erasure coding, a missing segment previously stored on the disk is identified. The method locates other segments. Missing segments are regenerated.
-
公开(公告)号:US20150363269A1
公开(公告)日:2015-12-17
申请号:US14834017
申请日:2015-08-24
Applicant: Caringo, Inc.
Inventor: Don BAKER , Paul R.M. CARPENTIER , Andrew KLAGER , Aaron PIERCE , Jonathan RING , Russell TURPIN , David YOAKLEY
CPC classification number: G06F11/1076 , G06F3/0605 , G06F3/0619 , G06F3/0632 , G06F3/064 , G06F3/065 , G06F3/0667 , G06F3/067 , G06F3/0683 , G06F11/10 , G06F11/14 , H03M13/05 , H03M13/25 , H03M13/251 , H03M13/2707 , H03M13/353 , H03M13/356 , H03M13/373 , H03M13/3761 , H04L67/1095 , H04L67/1097
Abstract: A cluster receives a request to store an object using replication or erasure coding. The cluster writes the object using erasure coding. A manifest is written that includes an indication of erasure coding and a unique identifier for each segment. The cluster returns a unique identifier of the manifest. The cluster receives a request from a client that includes a unique identifier. The cluster determines whether the object has been stored using replication or erasure coding. If using erasure coding, the method reads a manifest. The method identifies segments within the cluster using unique segment identifiers of the manifest. Using these unique segment identifiers, the method reconstructs the object. A persistent storage area of another disk is scanned to find a unique identifier of a failed disk. If using erasure coding, a missing segment previously stored on the disk is identified. The method locates other segments. Missing segments are regenerated.
Abstract translation: 集群使用复制或擦除编码接收存储对象的请求。 集群使用擦除编码写入对象。 写入清单,其包括擦除编码的指示和每个段的唯一标识符。 集群返回清单的唯一标识符。 集群从包含唯一标识符的客户端接收请求。 集群确定对象是否已使用复制或擦除编码进行存储。 如果使用擦除编码,则该方法读取清单。 该方法使用清单的唯一段标识符来识别群集中的段。 使用这些唯一的段标识符,该方法重建对象。 扫描另一个磁盘的持久存储区域以找到故障磁盘的唯一标识符。 如果使用擦除编码,则会识别先前存储在磁盘上的缺失段。 该方法定位其他段。 缺少段重新生成。
-
公开(公告)号:US20180210777A1
公开(公告)日:2018-07-26
申请号:US15934574
申请日:2018-03-23
Applicant: Caringo, Inc.
Inventor: Paul R.M. CARPENTIER , Russell TURPIN
IPC: G06F11/07 , G06F3/06 , G06F12/1009 , H04L12/741 , H04L29/08 , G06F11/20
CPC classification number: G06F11/0709 , G06F3/0604 , G06F3/0607 , G06F3/061 , G06F3/0613 , G06F3/0626 , G06F3/0635 , G06F3/064 , G06F3/0659 , G06F3/0667 , G06F3/067 , G06F3/0683 , G06F11/2084 , G06F12/1009 , G06F2212/206 , H04L45/745 , H04L67/1097
Abstract: Digital objects are stored and accessed within a fixed content storage cluster by using a page mapping table and a pages index. A stream is read from the cluster by using a portion of its unique identifier as a key into the page mapping table. The page mapping table indicates a node holding a pages index indicating where the stream is stored. A stream is written by storing the stream on any suitable node and then updating a pages index stored within the cluster responsible for knowing the location of digital objects having unique identifiers that fall within a particular address range. The cluster recovers from a node failure by first replicating streams from the failed node and reallocating a page mapping table to create a new pages index. The remaining nodes send records of the unique identifiers corresponding to objects they hold to the new pages index.
-
公开(公告)号:US20140236906A1
公开(公告)日:2014-08-21
申请号:US14262628
申请日:2014-04-25
Applicant: Caringo, Inc.
Inventor: Paul R.M. CARPENTIER , Russell TURPIN
IPC: G06F3/06
CPC classification number: G06F3/0641 , G06F3/0608 , G06F3/067
Abstract: Digital objects within a fixed-content storage cluster use a page mapping table and a hash-to-UID table to store a representation of each object. For each object stored within the cluster, a record in the hash-to-UID table stores the object's hash value and its unique identifier (or portions thereof). To detect a duplicate of an object, a portion of its hash value is used as a key into the page mapping table. The page mapping table indicates a node holding a hash-to-UID table indicating currently stored objects in a particular page range. Finding the same hash value but with a different unique identifier in the table indicates that a duplicate of an object exists. Portions of the hash value and unique identifier may be used in the hash-to-UID table. Unneeded duplicate objects are deleted by copying their metadata to a manifest and then redirecting unique identifiers to point at the manifest.
Abstract translation: 固定内容存储集群内的数字对象使用页面映射表和散列到UID表来存储每个对象的表示。 对于存储在集群中的每个对象,散列到UID表中的记录存储对象的散列值及其唯一标识符(或其部分)。 为了检测对象的副本,将其哈希值的一部分用作页面映射表中的键。 页面映射表指示在特定页面范围内保存指示当前存储的对象的散列到UID表的节点。 在表中找到相同的哈希值但具有不同的唯一标识符表示存在对象的副本。 哈希值和唯一标识符的部分可以在哈希到UID表中使用。 将不必要的重复对象通过将其元数据复制到清单,然后将唯一标识符重定向到清单来删除。
-
公开(公告)号:US20170351575A1
公开(公告)日:2017-12-07
申请号:US15685833
申请日:2017-08-24
Applicant: Caringo, Inc.
Inventor: Don BAKER , Paul R.M. CARPENTIER , Andrew KLAGER , Aaron PIERCE , Jonathan RING , Russell TURPIN , David YOAKLEY
IPC: G06F11/10 , G06F3/06 , H03M13/37 , H03M13/27 , H03M13/25 , H03M13/05 , H04L29/08 , H03M13/35 , G06F11/14
CPC classification number: G06F11/1076 , G06F3/0605 , G06F3/0619 , G06F3/0632 , G06F3/064 , G06F3/065 , G06F3/0667 , G06F3/067 , G06F3/0683 , G06F11/10 , G06F11/14 , H03M13/05 , H03M13/25 , H03M13/251 , H03M13/2707 , H03M13/353 , H03M13/356 , H03M13/373 , H03M13/3761 , H04L67/1095 , H04L67/1097
Abstract: A cluster receives a request to store an object using replication or erasure coding. The cluster writes the object using erasure coding. A manifest is written that includes an indication of erasure coding and a unique identifier for each segment. The cluster returns a unique identifier of the manifest. The cluster receives a request from a client that includes a unique identifier. The cluster determines whether the object has been stored using replication or erasure coding. If using erasure coding, the method reads a manifest. The method identifies segments within the cluster using unique segment identifiers of the manifest. Using these unique segment identifiers, the method reconstructs the object. A persistent storage area of another disk is scanned to find a unique identifier of a failed disk. If using erasure coding, a missing segment previously stored on the disk is identified. The method locates other segments. Missing segments are regenerated.
-
公开(公告)号:US20160028629A1
公开(公告)日:2016-01-28
申请号:US14815889
申请日:2015-07-31
Applicant: Caringo, Inc.
Inventor: Paul R.M. CARPENTIER , Russell TURPIN
IPC: H04L12/741 , G06F3/06 , H04L29/08
CPC classification number: G06F11/0709 , G06F3/0604 , G06F3/0607 , G06F3/061 , G06F3/0613 , G06F3/0626 , G06F3/0635 , G06F3/064 , G06F3/0659 , G06F3/0667 , G06F3/067 , G06F3/0683 , G06F11/2084 , G06F12/1009 , G06F2212/206 , H04L45/745 , H04L67/1097
Abstract: Digital objects are stored and accessed within a fixed content storage cluster by using a page mapping table and a pages index. A stream is read from the cluster by using a portion of its unique identifier as a key into the page mapping table. The page mapping table indicates a node holding a pages index indicating where the stream is stored. A stream is written by storing the stream on any suitable node and then updating a pages index stored within the cluster responsible for knowing the location of digital objects having unique identifiers that fall within a particular address range. The cluster recovers from a node failure by first replicating streams from the failed node and reallocating a page mapping table to create a new pages index. The remaining nodes send records of the unique identifiers corresponding to objects they hold to the new pages index.
Abstract translation: 通过使用页面映射表和页面索引,数字对象在固定内容存储集群内存储和访问。 通过使用其唯一标识符的一部分作为页面映射表中的密钥从集群读取流。 页面映射表指示存储指示流存储在哪里的页面索引的节点。 通过将流存储在任何合适的节点上,然后更新存储在集群内的页面索引来写入流,负责知道具有落在特定地址范围内的唯一标识符的数字对象的位置。 通过首先从故障节点复制流并重新分配页面映射表以创建新的页面索引,群集从节点故障中恢复。 剩下的节点将与它们所持有的对象相对应的唯一标识符的记录发送到新页索引。
-
公开(公告)号:US20150301948A1
公开(公告)日:2015-10-22
申请号:US14788664
申请日:2015-06-30
Applicant: Caringo, Inc.
Inventor: Paul R.M. CARPENTIER , Russell TURPIN
CPC classification number: G06F11/0709 , G06F3/0604 , G06F3/0607 , G06F3/061 , G06F3/0613 , G06F3/0626 , G06F3/0635 , G06F3/064 , G06F3/0659 , G06F3/0667 , G06F3/067 , G06F3/0683 , G06F11/2084 , G06F12/1009 , G06F2212/206 , H04L45/745 , H04L67/1097
Abstract: Digital objects are stored and accessed within a fixed content storage cluster by using a page mapping table and a pages index. A stream is read from the cluster by using a portion of its unique identifier as a key into the page mapping table. The page mapping table indicates a node holding a pages index indicating where the stream is stored. A stream is written to the cluster by storing the stream on any suitable node and then updating a pages index stored within the cluster. The cluster recovers from a node failure by first replicating streams from the failed node and reallocating a page mapping table to create a new pages index. The remaining nodes send records of the unique identifiers corresponding to objects they hold to the new pages index. A node is added to the cluster by reallocating a page mapping table.
Abstract translation: 通过使用页面映射表和页面索引,数字对象在固定内容存储集群内存储和访问。 通过使用其唯一标识符的一部分作为页面映射表中的密钥从集群读取流。 页面映射表指示存储指示流存储在哪里的页面索引的节点。 通过将流存储在任何合适的节点上,然后更新存储在集群中的页面索引,将流写入集群。 通过首先从故障节点复制流并重新分配页面映射表以创建新的页面索引,群集从节点故障中恢复。 剩下的节点将与它们所持有的对象相对应的唯一标识符的记录发送到新页索引。 通过重新分配页面映射表将节点添加到集群。
-
公开(公告)号:US20140189423A1
公开(公告)日:2014-07-03
申请号:US14200183
申请日:2014-03-07
Applicant: Caringo, Inc.
Inventor: Paul R.M. CARPENTIER , Russell TURPIN
CPC classification number: G06F11/0709 , G06F3/0604 , G06F3/0607 , G06F3/061 , G06F3/0613 , G06F3/0626 , G06F3/0635 , G06F3/064 , G06F3/0659 , G06F3/0667 , G06F3/067 , G06F3/0683 , G06F11/2084 , G06F12/1009 , G06F2212/206 , H04L45/745 , H04L67/1097
Abstract: Digital objects are stored and accessed within a fixed content storage cluster by using a page mapping table and a pages index. A stream is read from the cluster by using a portion of its unique identifier as a key into the page mapping table. The page mapping table indicates a node holding a pages index indicating where the stream is stored. A stream is written by storing the stream on any suitable node and then updating a pages index stored within the cluster responsible for knowing the location of digital objects having unique identifiers that fall within a particular address range. The cluster recovers from a node failure by first replicating streams from the failed node and reallocating a page mapping table to create a new pages index. The remaining nodes send records of the unique identifiers corresponding to objects they hold to the new pages index.
Abstract translation: 通过使用页面映射表和页面索引,数字对象在固定内容存储集群内存储和访问。 通过使用其唯一标识符的一部分作为页面映射表中的密钥从集群读取流。 页面映射表指示存储指示流存储在哪里的页面索引的节点。 通过将流存储在任何合适的节点上,然后更新存储在集群内的页面索引来写入流,负责知道具有落在特定地址范围内的唯一标识符的数字对象的位置。 通过首先从故障节点复制流并重新分配页面映射表以创建新的页面索引,群集从节点故障中恢复。 剩下的节点将与它们所持有的对象相对应的唯一标识符的记录发送到新页索引。
-
-
-
-
-
-
-