Shared namespace for storage clusters
First Claim
1. A method of adding a computer file to a storage cluster, said method comprising:
- receiving a first pathname identifying a computer file that uses a first pathname scheme of a client software application;
parsing said first pathname by said client application into its constituent name portions;
constructing a representation in a database of said first pathname identifying said computer file using said name portions, said representation forming a path arranged to be traversed progressively from the most general name portion to the most specific name portion;
passing said computer file to said storage cluster and receiving a unique identifier from said storage cluster that uniquely identifies said computer file stored within said storage cluster;
storing said unique identifier in conjunction with an end of said representation of said first pathname in said database, whereby said computer file is uniquely represented in said database by said representation; and
forming a second path in said database using name portions from a second pathname that is different from said first pathname, said second path terminating at said end of said representation of said first pathname, whereby a traversal of said path and a traversal of said second path both terminate at said end where said unique identifier is stored.
4 Assignments
0 Petitions
Accused Products
Abstract
Any client application uses a namespace application to resolve its pathname in order to reference a computer file. Computer files are stored in a fixed-content storage cluster and are accessed by retrieving a unique identifier for the computer file using the namespace application. Any type of pathname scheme from any client application is supported by the namespace. The namespace application uses a bindings table to record bindings between objects including the start date and end date for each binding, and direction and separator data used in the pathname scheme. An attribute table in the namespace keeps track of each attribute and its value for each object of the namespace including a start date and an end date for each attribute. The namespace provides syntactic generality in that any pathname scheme of a client application can be resolved to identify a unique computer file in the storage cluster. The namespace may be shared between applications because when one application modifies a file or its attributes using the namespace, another application using a different pathname scheme has access to the exact same data and modifications. The namespace provides a near instantaneous continuous backup for computer files in the storage cluster because of the use of start date and end dates for the bindings and attributes.
-
Citations
18 Claims
-
1. A method of adding a computer file to a storage cluster, said method comprising:
-
receiving a first pathname identifying a computer file that uses a first pathname scheme of a client software application; parsing said first pathname by said client application into its constituent name portions; constructing a representation in a database of said first pathname identifying said computer file using said name portions, said representation forming a path arranged to be traversed progressively from the most general name portion to the most specific name portion; passing said computer file to said storage cluster and receiving a unique identifier from said storage cluster that uniquely identifies said computer file stored within said storage cluster; storing said unique identifier in conjunction with an end of said representation of said first pathname in said database, whereby said computer file is uniquely represented in said database by said representation; and forming a second path in said database using name portions from a second pathname that is different from said first pathname, said second path terminating at said end of said representation of said first pathname, whereby a traversal of said path and a traversal of said second path both terminate at said end where said unique identifier is stored. - View Dependent Claims (4, 5, 6, 7, 8, 9, 10)
-
-
2. A method of adding a computer file to a storage cluster, said method comprising:
-
receiving a first pathname identifying a computer file that uses a first pathname scheme of a client software application; parsing said first pathname by said client application into its constituent name portions; constructing a representation in a database of said first pathname identifying said computer file using said name portions, said representation forming a path arranged to be traversed progressively from the most general name portion to the most specific name portion; passing said computer file to said storage cluster and receiving a unique identifier from said storage cluster that uniquely identifies said computer file stored within said storage cluster; storing said unique identifier in conjunction with an end of said representation of said first pathname in said database, whereby said computer file is uniquely represented in said database by said representation; receiving a second pathname that uses a second pathname scheme that is different from said first pathname scheme; and storing name portions of said second pathname in said database to form links that terminate at said end of said representation of said first pathname, whereby a traversal of said path and a traversal of said links both terminate at said end where said unique identifier is stored. - View Dependent Claims (11, 12, 13, 14, 15)
-
-
3. A method of adding a computer file to a storage cluster, said method comprising:
-
receiving a first pathname identifying a computer file that uses a first pathname scheme of a first client software application; calling a function of a namespace application and passing said first pathname, said first pathname including first pathname portions; constructing a first representation in said namespace application of said first pathname identifying said computer file using said first pathname portions; storing said computer file in said storage cluster and receiving a unique identifier from said storage cluster that uniquely identifies said computer file stored within said storage cluster; receiving a second pathname identifying said computer file that uses a second pathname scheme of a second client software application; calling said function of said namespace application and passing said second pathname, said second pathname including second pathname portions; constructing a second representation in said namespace application of said second pathname identifying said computer file using said second pathname portions; storing said unique identifier in conjunction with a termination of said representation of said first pathname and of said second pathname in said namespace application, whereby said computer file is uniquely represented in said namespace application by both of said representations. - View Dependent Claims (16, 17, 18)
-
Specification