EP1892921A2

Method and system for managing distributed content and related metadata

Abstract

There is provided a method and system for creating an innovative file system that separates its directory presentation from its data store. The method and system include processing, division, distribution, managing, synchronizing, and reassembling of file system objects that does not delay the presentation of the content to the user, but also uses a reduced amount of storage space. The invention includes the ability to manage and control the integrity of the files distributed across the network, and the ability to serve and reconstruct files in real time using a Virtual File Control System.

EP1892921A2, drawing sheet 1
Sheet 1 of 52

Term

Term ended

Projected expiry passed 26 October 2021, 4.9 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

12 claims: 10 independent, 2 dependent

  1. 1
    A method for propagating a distribution command related to file system object changes in a network having a plurality of network nodes comprising steps of, at each network node:(a) creating a distribution map containing distribution criteria for a respective node;(b) forwarding the distribution command to a qualified set of neighbours in part based on the distribution map;and(c) in response to the distribution command, managing storage and meta file system in the network nodes, and issuing the same command to another qualified set of neighbours to represent the distribution of information across network nodes.
  2. 4
    A method for deleting a file object, comprising (a) receiving a delete request from a user or from another node to delete the file object;(b) locating the metadata of the file object;(c) distributing a command related to the delete request to a plurality of nodes based on distribution criteria;(d) removing metadata from the meta file system to represent deletion of the file system object;and(e) removing block files from block storage device corresponding to the file system object requested to be deleted.
  3. 5
    A method for deleting a file system object, comprising (a) receiving a delete request from a user or from another node(b) locating the metadata of the file system object;(c) distributing a command related to the deletion to a plurality of nodes based on distribution criteria;(d) removing metadata from a meta file system;and(e) removing a directory from the meta file system that corresponds to the deleting of the file system object.
  4. 6
    A method for re-locating a file system object in a network, comprising:(a) receiving a re-location request from a user or from another node;(b) locating the metadata of the file system object;(c) distributing a command related to the re-location of the object to a plurality of nodes based on a distribution criteria;(d) changing the metadata of the file system object and all the other related objects in the directory the corresponds to the file system object being re-located;and(e) relocating the file system object from one location of the meta file system to another location within the meta file system in accordance with the re-location request.
  5. 7
    A method for applying distribution policies when distributing a file system object, comprising:(a) configuring a set of distribution policies;(b) looking up at least one distribution policy using parameters that apply to the distribution;and(c) allocating network and storage resources based on the distribution policy.
  6. 8
    A method for applying file server policy when serving a file system, comprising:(a) configuring a set of service policies based on a set of parameters;(b) looking up at least one policy using at least one parameter;and(c) applying each policy by allocating network and storage resources for the service.
  7. 9
    A method for separating a file system presentation of content from storage of the content, comprising:storing content in storage devices across network nodes;andusing a meta file system and metadata at each node to associate a file system view with data stored in storage devices across the network nodes.
  8. 10
    A method for building an virtual in-memory file system that includes an overlay file system, comprising:(a) loading meta file system and metadata to create a file system presentation;(b) caching meta information that associates the virtual file system objects to the data stored in a plurality of storage devices;and(c) serving file system requests by mapping the requests to the actual data in the storage using cached meta information.
  9. 11
    A method for building a scalable virtual in-memory file system that includes selective and dynamic caching of a virtual file control system:(a) loading part of meta file system and metadata to create a file system presentation;(b) caching part of the information that associates the virtual file system objects to the data stored in a plurality of storage devices;(c) serving file system requests by mapping the requests to the actual data in the storage using cached meta information if information exists in a cache;(d) if information does not exist in cache, tearing down part of the file system presentation information and removing part of the cache that are least frequently accessed, and loading the requesting metadata to reconstruct a partial file system presentation that request by users;and(e) serving file system requests by mapping the requests to the actual data in the storage.
  10. 12
    A method for aggregating a storage and file system from a plurality of servers comprising:(a) receiving a file system request to add, delete, or modify a file system object at a first node;(b) processing the file system request to generate metadata;(c) distributing the metadata and subset of file system object received at the first node to a plurality of nodes;(d) integrating information from the first node to receiving nodes;(e) receiving a file system request to add, delete, or modify a file system object at a second node in the set of receiving nodes;(f) processing the file system request to generate metadata;(g) distributing the metadata and subset of file system object received at the first node to a second plurality of nodes which include the first node;and(h) integrating metadata information from the second node to the second set of nodes.