P
US8161074B2ActiveUtilityPatentIndex 62

Operationally complete hierarchical repository in a relational database

Assignee: CHANDRASEKAR SIVASANKARANPriority: Sep 15, 2009Filed: Sep 15, 2009Granted: Apr 17, 2012
Est. expirySep 15, 2029(~3.2 yrs left)· nominal 20-yr term from priority
Inventors:CHANDRASEKAR SIVASANKARANIDICULA SAMAGARWAL NIPUNKRISHNAMURTHY VISWANATHAN
G06F 16/86G06F 16/24535Y10S707/99945
62
PatentIndex Score
2
Cited by
11
References
20
Claims

Abstract

A modular repository is described, where operational features may be implemented without the need to scan every resource included in the modular repository. A modular repository includes a dedicated set of database objects containing all information needed to access the resources in the repository. For example, the database objects of a modular repository may include those user identifier mappings and ACL mappings, etc., to which metadata in the modular repository refers. A database system may also include a mechanism through which a modular repository may be mounted under a subdirectory of a common directory in the database system. The resources of a modular repository that are mounted under the common directory may be accessed through the common directory. Further, a client may query the resources of any modular repository mounted under the common directory by making the federated repository, represented by the common directory, the context of the query.

Claims

exact text as granted — not AI-modified
1. A computer-executed method comprising:
 storing a particular hierarchically-organized collection of resources in a particular set of database objects in a database managed by a first database system; 
 wherein all information for accessing the particular hierarchically-organized collection of resources is contained within the particular set of database objects; and 
 incorporating the particular hierarchically-organized collection of resources into a second hierarchically-organized collection of resources; 
 wherein the method is performed by one or more computing devices. 
 
     
     
       2. The computer-executed method of  claim 1 , wherein the step of incorporating the particular hierarchically-organized collection of resources into the second hierarchically-organized collection of resources further comprises:
 mapping one or more resources in the particular hierarchically-organized collection of resources to a first subdirectory of the second hierarchically-organized collection of resources; 
 wherein the second hierarchically-organized collection of resources is a common directory that is associated with the database. 
 
     
     
       3. The computer-executed method of  claim 2 , further comprising:
 storing a third hierarchically-organized collection of resources in a second set of database objects; 
 wherein all information for accessing the third hierarchically-organized collection of resources is contained within the second set of database objects; 
 mapping one or more resources in the third hierarchically-organized collection of resources to a second subdirectory of the second hierarchically-organized collection of resources; 
 receiving a query, in a context of the second hierarchically-organized collection of resources, that requires evaluation over both the particular hierarchically-organized collection of resources and the third hierarchically-organized collection of resources; and 
 evaluating the query using, at least, the particular set of database objects and the second set of database objects. 
 
     
     
       4. The computer-executed method of  claim 3 , wherein the step of evaluating the query further comprises:
 creating a plurality of sub-queries based on the query; 
 evaluating a first sub-query of the plurality of sub-queries using the particular set of database objects; and 
 evaluating a second sub-query of the plurality of sub-queries using the second set of database objects. 
 
     
     
       5. The computer-executed method of  claim 1 ,
 wherein the particular set of database objects includes one or more database tables indexed by logical identifiers; and 
 wherein the method further comprises associating row identifiers, identifying physical locations for rows in the one or more database tables, with the logical identifiers using one or more index structures included in the particular set of database objects. 
 
     
     
       6. The computer-executed method of  claim 1 , wherein:
 the first database system includes a particular tablespace; 
 only the particular set of database objects is stored in the particular tablespace; and 
 the particular set of database objects are located completely within the context of a particular schema. 
 
     
     
       7. The computer-executed method of  claim 1 , further comprising:
 transferring the particular hierarchically-organized collection of resources from the first database system to a second database system; 
 wherein the particular hierarchically-organized collection of resources is organized according to a logical model in the first database system; 
 wherein the particular hierarchically-organized collection of resources is organized according to the same logical model in the second database system; and 
 wherein the step of transferring does not include scanning each resource in the particular hierarchically-organized collection of resources. 
 
     
     
       8. The computer-executed method of  claim 1 , wherein storing the particular hierarchically-organized collection of resources in the particular set of database objects further comprises:
 including information for a particular resource in one or more database objects of the particular set of database objects; 
 determining whether data referred to in the information for the particular resource is not included in the particular set of database objects; and 
 in response to determining that the data referred to in the information for the particular resource is not included in the particular set of database objects, adding the data, referred to in the information for the particular resource, to the particular set of database objects. 
 
     
     
       9. The computer-executed method of  claim 8 , wherein the step of including information for the particular resource in one or more database objects of the particular set of database objects further comprises:
 determining a type of the particular resource; 
 determining whether the type of the particular resource conforms to a constraint on the type of resources to be included in the particular set of database objects; and 
 only in response to determining that the type of the particular resource conforms to the constraint on the type of resources to be included in the particular set of database objects, including information for the particular resource in one or more database objects of the particular set of database objects. 
 
     
     
       10. The computer-executed method of  claim 1 , wherein the particular set of database objects includes (a) a table that maps user identifiers, included in the particular hierarchically-organized collection of resources, to user names, and (b) a table that represents ACL information for the particular hierarchically-organized collection of resources. 
     
     
       11. A computer-readable storage medium that stores instructions which, when executed by one or more processors, cause:
 storing a particular hierarchically-organized collection of resources in a particular set of database objects in a database managed by a first database system; 
 wherein all information for accessing the particular hierarchically-organized collection of resources is contained within the particular set of database objects; and 
 incorporating the particular hierarchically-organized collection of resources into a second hierarchically-organized collection of resources. 
 
     
     
       12. The computer-readable storage medium of  claim 11 , wherein the step of incorporating the particular hierarchically-organized collection of resources into the second hierarchically-organized collection of resources further comprises:
 mapping one or more resources in the particular hierarchically-organized collection of resources to a first subdirectory of the second hierarchically-organized collection of resources; 
 wherein the second hierarchically-organized collection of resources is a common directory that is associated with the database. 
 
     
     
       13. The computer-readable storage medium of  claim 12 , wherein the instructions further comprise instruction which, when executed by the one or more processors, further cause:
 storing a third hierarchically-organized collection of resources in a second set of database objects; 
 wherein all information for accessing the third hierarchically-organized collection of resources is contained within the second set of database objects; 
 mapping one or more resources in the third hierarchically-organized collection of resources to a second subdirectory of the second hierarchically-organized collection of resources; 
 receiving a query, in a context of the second hierarchically-organized collection of resources, that requires evaluation over both the particular hierarchically-organized collection of resources and the third hierarchically-organized collection of resources; and 
 evaluating the query using, at least, the particular set of database objects and the second set of database objects. 
 
     
     
       14. The computer-readable storage medium of  claim 13 , wherein instructions for the step of evaluating the query further comprise instructions which, when executed by the one or more processors, cause:
 creating a plurality of sub-queries based on the query; 
 evaluating a first sub-query of the plurality of sub-queries using the particular set of database objects; and 
 evaluating a second sub-query of the plurality of sub-queries using the second set of database objects. 
 
     
     
       15. The computer-readable storage medium of  claim 11 ,
 wherein the particular set of database objects includes one or more database tables indexed by logical identifiers; and 
 wherein the method further comprises associating row identifiers, identifying physical locations for rows in the one or more database tables, with the logical identifiers using one or more index structures included in the particular set of database objects. 
 
     
     
       16. The computer-readable storage medium of  claim 11 , wherein:
 the first database system includes a particular tablespace; 
 only the particular set of database objects is stored in the particular tablespace; and 
 the particular set of database objects are located completely within the context of a particular schema. 
 
     
     
       17. The computer-readable storage medium of  claim 11 , wherein the instructions further comprise instruction which, when executed by the one or more processors, further cause:
 transferring the particular hierarchically-organized collection of resources from the first database system to a second database system; 
 wherein the particular hierarchically-organized collection of resources is organized according to a logical model in the first database system; 
 wherein the particular hierarchically-organized collection of resources is organized according to the same logical model in the second database system; and 
 wherein the step of transferring does not include scanning each resource in the particular hierarchically-organized collection of resources. 
 
     
     
       18. The computer-readable storage medium of  claim 11 , wherein instructions for the step of storing the particular hierarchically-organized collection of resources in the particular set of database objects further comprise instructions which, when executed by the one or more processors, cause:
 including information for a particular resource in one or more database objects of the particular set of database objects; 
 determining whether data referred to in the information for the particular resource is not included in the particular set of database objects; and 
 in response to determining that the data referred to in the information for the particular resource is not included in the particular set of database objects, adding the data, referred to in the information for the particular resource, to the particular set of database objects. 
 
     
     
       19. The computer-readable storage medium of  claim 18 , wherein instructions for the step of including information for the particular resource in one or more database objects of the particular set of database objects further comprise instructions which, when executed by the one or more processors, cause:
 determining a type of the particular resource; 
 determining whether the type of the particular resource conforms to a constraint on the type of resources to be included in the particular set of database objects; and 
 only in response to determining that the type of the particular resource conforms to the constraint on the type of resources to be included in the particular set of database objects, including information for the particular resource in one or more database objects of the particular set of database objects. 
 
     
     
       20. The computer-readable storage medium of  claim 11 , wherein the particular set of database objects includes (a) a table that maps user identifiers, included in the particular hierarchically-organized collection of resources, to user names, and (b) a table that represents ACL information for the particular hierarchically-organized collection of resources.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.