US6061690A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Apparatus and method for storage of object collections in a database system
Assignee: Oracle International Corp
•
Filing: 1997-10-31
•
Granted: 2000-05-09
•
Expires: 2017-10-31
Abstract
Abstract The present invention pertains to an apparatus and process for storing information object collections in a database. Examples of such object collections are nested tables and variable length arrays. In an embodiment, the invention provides mechanisms and methods for storing nested tables in either a base table of a database, or an index-organized table. In one embodiment, mechanisms and methods are provided for storing variable length arrays into a table column, as a large object ("LOB"), or as an index-organized table. The invention also provides methods and mechanisms for accessing data from these storage mediums.
Inventors
- 👤 Anil Nori
- 👤 Viswanathan Krishnaomurthy
- 👤 Vikas Arora
- 👤 Srinath Krishnaswamy
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-31 21:29
CPC Classifications
G; G06; G06F; G06F16/00; G06F16/20; G06F16/22; G06F16/221; G06F16/2219; Y; Y10; Y10S; Y10S707/00; Y10S707/99931; Y10S707/99932; Y10S707/99933; Y10S707/99934; Y10S707/99935; Y10S707/99941; Y10S707/99944; Y10S707/99951; Y10S707/99952; Y10S707/99953
Claims Analysis
Total Claims: 28
Claim 1
Independent Claim
107 words
A method of storing an information object in a database system, comprising the steps of: establishing an information object class that has a collection attribute; creating said information object as an instance of said information object class; establishing in said database system a collection storage structure for said collection attribute; storing attribute information about said information object in a first table; storing values of said collection attribute in said collection storage structure; and wherein said attribute information that is stored in said first table includes a reference that indicates where said values of said collection attribute for said information object are stored in said collection storage structure.
Claim 2
Independent Claim
107 words
A method of storing an information object in a database system, comprising the steps of: establishing an information object class that has a collection attribute; creating said information object as an instance of said information object class; establishing in said database system a collection storage structure for said collection attribute; storing attribute information about said information object in a first table; storing values of said collection attribute in said collection storage structure; and wherein said attribute information that is stored in said first table includes a reference that indicates where said values of said collection attribute for said information object are stored in said collection storage structure.
Claim 3
Dependent Claim
55 words
The method recited in claim 1, further comprising the steps of: establishing a second table in said database system; storing a first identifier that identifies said first table and a second identifier that identifies said collection storage structure; and storing within said second table a record that associates said first identifier with said second identifier.
Claim 4
Dependent Claim
67 words
The method of claim 2, wherein said information object class has another collection attribute, and wherein the method further comprises the step of storing within said second table a second record, wherein said second record associates said first identifier with a third identifier that identifies another collection storage structure, wherein said other collection storage structure is used to store values that belong to said other collection attribute.
Claim 5
Dependent Claim
64 words
The method recited in claim 1, further comprising the steps of: establishing said collection storage structure in the form of a storage table in said database system; establishing in said storage table, at least one nested table portion comprising rows of values of said collection attribute associated with said reference; and storing a copy of said reference in a column of said storage table.
Claim 6
Dependent Claim
38 words
The method recited in claim 1, wherein said step of establishing an information object class that has a collection attribute comprises the step of establishing a variable length array as said collection attribute of said information object class.
Claim 7
Dependent Claim
69 words
The method recited in claim 5, further comprising the steps of: when said variable length array is defined having fixed-length elements: computing a maximum size value representing an amount of storage space required for an instance of said variable length array; and storing said variable length array in a database column when said maximum size value is equal to or less than a pre-defined maximum database column size value.
Claim 8
Dependent Claim
35 words
The method recited in claim 6, further comprising the step of storing said variable length array in a large object structure when said maximum size value is greater than said maximum database column size value.
Claim 9
Dependent Claim
30 words
The method recited in claim 5, further comprising the step of: when said variable length array is defined having variable-length elements, storing said variable length array in an index-organized table.
Claim 10
Dependent Claim
53 words
The method recited in claim 8, further comprising the step of storing, in a node of said index-organized table, an identifier of said variable length array, an element order value indicating an ordinal position within said variable length array of an element of said variable length array, and a value of said element.
Claim 11
Dependent Claim
38 words
The method recited in claim 1, further comprising the steps of: establishing said collection storage structure as an index organized table; and storing, in a leaf node of said index organized table, a value of said collection attribute.
Claim 12
Dependent Claim
68 words
The method recited in claim 1, further comprising the steps of: retrieving said information object by carrying out the steps of: when said information object has at least one collection attribute: retrieving said reference to said collection storage structure; and retrieving a value of an element of said collection attribute and delivering said value to an external process only when said element is accessed by said external process.
Claim 13
Dependent Claim
30 words
The method recited in claim 11, further comprising the steps of: retrieving said information object and all values of each attribute thereof when said information object has no collection attribute.
Claim 14
Dependent Claim
159 words
A computer apparatus for storing an information object in a table of a database system, said computer apparatus comprising: a processor; and a memory coupled to said processor; the memory having stored therein a database system; and sequences of instructions which, when executed by said processor, cause said processor to store said information object in said database system by causing the processor to perform the steps of: establishing an information object class that has a collection attribute; creating said information object as an instance of said information object class; establishing in said database system a collection storage structure for said collection attribute; storing attribute information about said information object in a first table; storing values of said collection attribute in said collection storage structure; and wherein said attribute information that is stored in said first table includes a reference that indicates where said values of said collection attribute for said information object are stored in said collection storage structure.
Claim 15
Dependent Claim
159 words
A computer apparatus for storing an information object in a table of a database system, said computer apparatus comprising: a processor; and a memory coupled to said processor; the memory having stored therein a database system; and sequences of instructions which, when executed by said processor, cause said processor to store said information object in said database system by causing the processor to perform the steps of: establishing an information object class that has a collection attribute; creating said information object as an instance of said information object class; establishing in said database system a collection storage structure for said collection attribute; storing attribute information about said information object in a first table; storing values of said collection attribute in said collection storage structure; and wherein said attribute information that is stored in said first table includes a reference that indicates where said values of said collection attribute for said information object are stored in said collection storage structure.
Claim 16
Dependent Claim
156 words
A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, cause said one or more processors to store an information object in a database system accessible to said one or more processors by causing said one or more processors to perform the steps of: establishing an information object class that has a collection attribute; creating said information object as an instance of said information object class; establishing in said database system a collection storage structure for said collection attribute; creating an information object as an instance of said information object class; storing attribute information about said information object in a first table; storing values of said collection attribute in said collection storage structure; and wherein said attribute information that is stored in said first table includes a reference that indicates where said values of said collection attribute for said information object are stored in said collection storage structure.
Claim 17
Dependent Claim
156 words
A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, cause said one or more processors to store an information object in a database system accessible to said one or more processors by causing said one or more processors to perform the steps of: establishing an information object class that has a collection attribute; creating said information object as an instance of said information object class; establishing in said database system a collection storage structure for said collection attribute; creating an information object as an instance of said information object class; storing attribute information about said information object in a first table; storing values of said collection attribute in said collection storage structure; and wherein said attribute information that is stored in said first table includes a reference that indicates where said values of said collection attribute for said information object are stored in said collection storage structure.
Claim 18
Dependent Claim
61 words
The computer-readable medium recited in claim 14, further comprising sequences of instructions for performing the steps of: establishing a second table in said database system; storing a first identifier that identifies said first table and a second identifier that identifies said collection storage structure; and storing within said second table a record that associates said first identifier with said second identifier.
Claim 19
Dependent Claim
74 words
The computer-readable medium of claim 15, wherein said information object class has another collection attribute, and wherein the computer-readable medium further comprises sequences of instructions for performing the step of storing within said second table a second record, wherein said second record associates said first identifier with a third identifier that identifies another collection storage structure, wherein said other collection storage structure is used to store values that belong to said other collection attribute.
Claim 20
Dependent Claim
70 words
The computer-readable medium recited in claim 14, further comprising sequences of instructions for performing the steps of: establishing said collection storage structure in the form of a storage table in said database system; establishing in said storage table, at least one nested table portion comprising rows of values of said collection attribute associated with said reference; and storing a copy of said reference in a column of said storage table.
Claim 21
Dependent Claim
39 words
The computer-readable medium recited in claim 14, wherein said step of establishing an information object class that has a collection attribute comprises the step of establishing a variable length array as said collection attribute of said information object class.
Claim 22
Dependent Claim
75 words
The computer-readable medium recited in claim 18, further comprising sequences of instructions for performing the steps of: when said variable length array is defined having fixed-length elements: computing a maximum size value representing an amount of storage space required for an instance of said variable length array; and storing said variable length array in a database column when said maximum size value is equal to or less than a pre-defined maximum database column size value.
Claim 23
Dependent Claim
41 words
The computer-readable medium recited in claim 19, further comprising sequences of instructions for performing the step of storing said variable length array in a large object structure when said maximum size value is greater than said maximum database column size value.
Claim 24
Dependent Claim
36 words
The computer-readable medium recited in claim 18, further comprising sequences of instructions for performing the step of: when said variable length array is defined having variable-length elements, storing said variable length array in an index-organized table.
Claim 25
Dependent Claim
59 words
The computer-readable medium recited in claim 21, further comprising sequences of instructions for performing the step of storing, in a node of said index-organized table, an identifier of said variable length array, an element order value indicating an ordinal position within said variable length array of an element of said variable length array, and a value of said element.
Claim 26
Dependent Claim
44 words
The computer-readable medium recited in claim 14, further comprising sequences of instructions for performing the steps of: establishing said collection storage structure as an index organized table; and storing, in a leaf node of said index organized table, a value of said collection attribute.
Claim 27
Dependent Claim
74 words
The computer-readable medium recited in claim 14, further comprising sequences of instructions for performing the steps of: retrieving said information object by carrying out the steps of: when said information object has at least one collection attribute: retrieving said reference to said collection storage structure; and retrieving a value of an element of said collection attribute and delivering said value to an external process only when said element is accessed by said external process.
Claim 28
Dependent Claim
36 words
The computer-readable medium recited in claim 24, further comprising sequences of instructions for performing the steps of: retrieving said information object and all values of each attribute thereof when said information object has no collection attribute.
References Cited (Backward Citations)
US5652882A
Cited
US5675779A
Cited
US5291583A
Cited
US5307484A
Cited
US5794229A
Cited
US5615367A
Cited
US5499359A
Cited
US5560005A
Cited
US5546577A
Cited
US5778356A
Cited
US5566329A
Cited
US5732402A
Cited
US5799310A
Cited
US5742810A
Cited
US5692445A
Cited
US5875446A
Cited
US5890160A
Cited
US5920860A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2003-05-09 | 2003-11-08 | 2004-05-09 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2007-05-09 | 2007-11-08 | 2008-05-09 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2011-05-09 | 2011-11-08 | 2012-05-09 | $7700.00 | Window Closed / Lapsed |