US9250830B2

Storing data across a plurality of storage nodes

Summary by NHIP

File Storage Across Cached Nodes

The method stores file portions across multiple storage nodes, each containing a cache. It selects the next node by examining a log to find the entry with the furthest past write time after the current cache fills.

Claim Score by NHIP

Read claim 1, the broadest

Abstract

Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for storing data on storage nodes. In one aspect, a method includes receiving a file to be stored across a plurality of storage nodes each including a cache. The is stored by storing portions of the file each on a different storage node. A first portion is written to a first storage node's cache until determining that the first storage node's cache is full. A different second storage node is selected in response to determining that the first storage node's cache is full. For each portion of the file, a location of the portion is recorded, the location indicating at least a storage node storing the portion.

US9250830B2, drawing sheet 1
Sheet 1 of 7

Term

4.3 yearsleft in the term

Expires 20 January 2031.

  1. Priority
  2. Filed
  3. Granted
  4. Today
  5. Expires

18 claims: 2 independent, 16 dependent

  1. 1
    Broadest claimClaim Score 48, average(NHIP)A method performed by data processing apparatus, the method comprising:receiving a file to be stored across a plurality of storage nodes each including a cache;storing the file by storing a plurality of portions of the file each on a different storage node, including writing a first portion to a first storage node's cache;copying the first portion from the first storage node's cache to slower storage of the first storage node, the slower storage of the first storage node being slower than the first storage node's cache;recording, within a log, data specifying the slower storage of the first storage node, the log also specifying a plurality of additional corresponding slower storages of a plurality of storage nodes;determining that the first storage node's cache is full and in response, selecting a different second storage node, wherein selecting the second storage node comprises: examining the log, and selecting the second storage node as the storage node having a corresponding write time in the log that is the furthest in the past of the write times in the log.
  2. 12
    A system comprising one or more data processing apparatus configured to perform operations comprising:receiving a file to be stored across a plurality of storage nodes each including a cache;storing the file by storing a plurality of portions of the file each on a different storage node, including writing a first portion to a first storage node's cache;copying the first portion from the first storage node's cache to slower storage of the first storage node, the slower storage of the first storage node being slower than the first storage node's cache;recording, within a log, data specifying the slower storage of the first storage node, the log also specifying a plurality of additional corresponding slower storages of a plurality of storage nodes;determining that the first storage node's cache is full and in response, selecting a different second storage node, wherein selecting the second storage node comprises: examining the log;and selecting the second storage node as the storage node having a corresponding write time in the log that is the furthest in the past of the write times in the log.