Claims
- 1. A method of distributing failure-induced workload in an object-based data storage system comprising:
selecting a plurality of managers to serve as backup managers for a primary manager in said data storage system, wherein said primary manager and each of said plurality of managers manage data storage operations for respective portions of said data storage system during a fault-free state of said primary manager; assigning a canonical name to said primary manager; generating a plurality of qualified names from said canonical name, wherein each of said plurality of qualified names is assigned to a respective one of said plurality of backup managers; configuring said primary manager to serve each of said plurality of qualified names during said fault-free state thereof; and upon failure of said primary manager, distributing a respective portion of workload of said primary manager to each corresponding one of said plurality of backup managers using said plurality of qualified names.
- 2. The method of claim 1, further comprising maintaining a database containing the following information for each qualified name:
a first information indicating the name of each said qualified name; a second information identifying said primary manager for each said qualified name; and a third information identifying a corresponding one of said plurality of backup managers associated with each said qualified name.
- 3. The method of claim 2, wherein maintaining said database includes replicating said database among a plurality of realm managers in said data storage system, wherein each of said plurality of realm managers maintains a record representing a storage configuration of a portion of said data storage system.
- 4. The method of claim 1, further comprising maintaining a database containing the following information for each qualified name:
a first information indicating the name of each said qualified name; and a second information linking each said qualified name with said primary manager and a corresponding one of said plurality of backup managers.
- 5. The method of claim 1, wherein selecting said plurality of managers as backup managers includes selecting said plurality of managers using at least one of the following considerations:
minimization of messaging time between said primary manager and each one of said plurality of backup managers; and average observed load on each of said plurality of backup managers.
- 6. The method of claim 1, wherein a corresponding number of managers in said plurality of managers is identical for each primary manager in said data storage system.
- 7. The method of claim 1, wherein the number of managers in said plurality of managers is predetermined.
- 8. The method of claim 1, wherein a corresponding number of managers in said plurality of managers is different for two or more primary managers in said data storage system.
- 9. The method of claim 1, wherein configuring said primary manager to serve each of said plurality of qualified names includes configuring said primary manager to assign each object managed thereby to a corresponding one of said plurality of qualified names.
- 10. The method of claim 9, wherein configuring said primary manager to assign each said object includes configuring said primary manager to assign each said object in one of the following ways:
a static way, wherein a corresponding number of objects assigned to each of said plurality of qualified names is constant; and a dynamic way, wherein said corresponding number of objects assigned to each of said plurality of qualified names is variable.
- 11. The method of claim 1, wherein configuring said primary manager to serve each of said plurality of qualified names includes configuring said primary manager to distribute a load thereof among said plurality of qualified names.
- 12. The method of claim 1, further comprising storing an identity of a server manager for an object in said data storage system in a directory entry for said object, wherein said server manager is one of the following:
said primary manager; and one of said plurality of backup managers whose qualified name has said object assigned thereto.
- 13. A computer-readable storage medium containing a program code, which, upon execution by a processor in an object-based distributed data storage system, causes said processor to perform the following:
select a plurality of managers to serve as backup managers for a primary manager in said data storage system, wherein said primary manager and each of said plurality of managers manage data storage operations for respective portions of said data storage system during a fault-free state of said primary manager; assign a canonical name to said primary manager; generate a plurality of qualified names from said canonical name, wherein each of said plurality of qualified names is assigned to a respective one of said plurality of backup managers; configure said primary manager to serve each of said plurality of qualified names during said fault-free state thereof; and upon failure of said primary manager, distribute a respective portion of workload of said primary manager to each corresponding one of said plurality of backup managers using said plurality of qualified names.
- 14. An object-based data storage system comprising:
means for selecting a plurality of managers to serve as backup managers for a primary manager in said data storage system, wherein said primary manager and each of said plurality of managers manage data storage operations for respective portions of said data storage system during a fault-free state of said primary manager; means for assigning a canonical name to said primary manager; means for generating a plurality of qualified names from said canonical name, wherein each of said plurality of qualified names is assigned to a respective one of said plurality of backup managers; means for configuring said primary manager to serve each of said plurality of qualified names during said fault-free state thereof; and upon failure of said primary manager, means for distributing a respective portion of workload of said primary manager to each corresponding one of said plurality of backup managers using said plurality of qualified names.
REFERENCE TO RELATED APPLICATIONS
[0001] This application claims priority benefits of prior filed co-pending U.S. provisional patent applications Serial No. 60/368,796, filed on Mar. 29, 2002 and Serial No. 60/372,031, filed on Apr. 12, 2002, the disclosures of both of which are incorporated herein by reference in their entireties.
Provisional Applications (2)
|
Number |
Date |
Country |
|
60368796 |
Mar 2002 |
US |
|
60372031 |
Apr 2002 |
US |