Organizing resources into collections to facilitate more efficient and reliable resource access
First Claim
1. At a computer system including one or more processors and system memory, a method for routing a namespace lookup request to a namespace manager responsible for a namespace branch corresponding to the namespace lookup request, the method comprising:
- an act of a particular namespace manager receiving a namespace lookup request requesting access to a resource at a provider within a namespace tree,the namespace tree defining an arrangement of available resources via a plurality of namespace branches, each namespace branch being associated with at least one corresponding namespace manager,the namespace lookup request including a namespace identifier that identifies the requested resource within one of the plurality of namespace branches, the namespace identifier comprising a scheme portion that identifies a scheme type of the namespace identifier and a path portion identifying a path to the requested resource within the namespace tree, andthe particular namespace manager being included in a neighborhood of namespace managers that have formed federating relationships with one another to exchange namespace information, each namespace manager in the neighborhood being assigned a unique numeric identifier that is within a predefined numeric range of the particular namespace manager;
an act of the particular namespace manager generating an at least one-way equivalent numeric identification value for the resource based on the namespace identifier of the namespace lookup request, including generating the at least one-way equivalent numeric identification value based on a combination of at least the scheme portion of the namespace identifier and at least one part of the path portion of the namespace identifier; and
an act of the particular namespace manager sending the namespace lookup request to a destination namespace manager, which is included in the neighborhood of namespace managers that are within the predefined numeric range, and which has a unique identifier numerically closest to the at least one-way equivalent numeric identification value generated for the resource.
2 Assignments
0 Petitions
Accused Products
Abstract
The present invention extends to methods, systems, and computer program products for organizing resources into collections to facilitate more efficient and reliable resource access. Namespace managers communicate with one another to form a federation namespace infrastructure. The infrastructure can efficiently route, migrate, and process namespace requests, such as, for example, namespace registration requests from providers requesting to manage portions of namespaces and lookup requests from consumers requesting access to managed resources. Resources can be registered in and made accessible from multiple different namespaces. Resources can be identified using nested queries that filter results at multiple levels of a hierarchical namespace.
87 Citations
14 Claims
-
1. At a computer system including one or more processors and system memory, a method for routing a namespace lookup request to a namespace manager responsible for a namespace branch corresponding to the namespace lookup request, the method comprising:
-
an act of a particular namespace manager receiving a namespace lookup request requesting access to a resource at a provider within a namespace tree, the namespace tree defining an arrangement of available resources via a plurality of namespace branches, each namespace branch being associated with at least one corresponding namespace manager, the namespace lookup request including a namespace identifier that identifies the requested resource within one of the plurality of namespace branches, the namespace identifier comprising a scheme portion that identifies a scheme type of the namespace identifier and a path portion identifying a path to the requested resource within the namespace tree, and the particular namespace manager being included in a neighborhood of namespace managers that have formed federating relationships with one another to exchange namespace information, each namespace manager in the neighborhood being assigned a unique numeric identifier that is within a predefined numeric range of the particular namespace manager; an act of the particular namespace manager generating an at least one-way equivalent numeric identification value for the resource based on the namespace identifier of the namespace lookup request, including generating the at least one-way equivalent numeric identification value based on a combination of at least the scheme portion of the namespace identifier and at least one part of the path portion of the namespace identifier; and an act of the particular namespace manager sending the namespace lookup request to a destination namespace manager, which is included in the neighborhood of namespace managers that are within the predefined numeric range, and which has a unique identifier numerically closest to the at least one-way equivalent numeric identification value generated for the resource. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 13, 14)
-
-
11. One or more computer storage devices having stored thereon computer executable instructions that, when executed by one or more processors of a computer system, implement a method for routing a namespace lookup request to a namespace manager responsible for a namespace branch corresponding to the namespace lookup request, the method comprising:
-
a particular namespace manager receiving a namespace lookup request requesting access to a resource within a namespace tree, the namespace tree defining an arrangement of available resources via a plurality of namespace branches, each namespace branch being associated with at least one corresponding namespace manager, and the namespace lookup request including a namespace identifier that identifies the requested resource within one of the plurality of namespace branches, the namespace identifier comprising a scheme portion that identifies a scheme type of the namespace identifier and a path portion identifying a path to the requested resource within the namespace tree; the particular namespace manager calculating an at least one-way equivalent numeric identification value for the resource based on the namespace identifier of the namespace lookup request, including calculating the at least one-way equivalent numeric identification value based on a combination of at least the scheme portion of the namespace identifier and at least one part of the path portion of the namespace identifier; and the particular namespace manager forwarding the namespace lookup request to a destination namespace manager, which is included in a neighborhood of namespace managers that are within a predefined range of the particular namespace manager, and which has a unique identifier numerically closest to the at least one-way equivalent numeric identification value.
-
-
12. A computer system, comprising:
-
one or more processors; and one or more computer storage devices storing executable instructions that, when executed by the one or more processors, implement a method for routing a namespace lookup request to a destination namespace manager responsible for a namespace branch corresponding to the namespace lookup request, the method comprising; receiving a namespace lookup request requesting access to a resource within a namespace tree that defines an arrangement of available resources via a plurality of namespace branches, each namespace branch being associated with at least one namespace manager, the namespace lookup request including a namespace identifier that identifies the requested resource within one of the plurality of namespace branches, the namespace identifier comprising a scheme portion that identifies a scheme type of the namespace identifier and a path portion identifying a path to the requested resource within the namespace tree; computing an at least one-way equivalent numeric identification value for the resource based on the namespace identifier of the namespace lookup request, including computing the at least one-way equivalent numeric identification value based on a combination of at least the scheme portion and at least one part of the path portion; and sending the namespace lookup request to the destination namespace manager, destination namespace manager included in a neighborhood of namespace managers that are within a predefined range, the destination namespace manager having a unique identifier numerically closest to the at least one-way equivalent numeric identification value compared one or more other destination namespace managers included in the neighborhood of namespace managers.
-
Specification