Method and apparatus for obtaining an identifier for a logical unit of data in a database
First Claim
1. A method of obtaining a first identifier of a logical unit of data that belongs to a database, the first identifier uniquely identifying a location of the logical unit of data within the database, the method comprising a step of:
- (A) determining a group of identifiers that includes the first identifier based upon information, concerning a structure of the database, that does not directly specify the group of identifiers;
wherein the logical unit of data has a label in application space which can be used by application programs to access the logical unit of data from the database, the method further comprising a step of;
(B) requesting the database to provide the first identifier without first accessing the logical unit of data using the label.
8 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for obtaining an identifier of a logical unit of data that belongs to a database. In one embodiment, a method of obtaining a first identifier of a logical unit of data that belongs to a database is described. The first identifier uniquely identifies a location of the logical unit of data within the database, and the method includes determining a group of identifiers that includes the first identifier based upon information, concerning a structure of the database, that does not directly specify the group of identifiers. In one aspect of the present invention wherein the logical unit of data has an application space label which can be used by application programs to access the logical unit of data from the database, the method obtains the first identifier without first accessing the logical unit of data from the database using the application space label.
122 Citations
48 Claims
-
1. A method of obtaining a first identifier of a logical unit of data that belongs to a database, the first identifier uniquely identifying a location of the logical unit of data within the database, the method comprising a step of:
-
(A) determining a group of identifiers that includes the first identifier based upon information, concerning a structure of the database, that does not directly specify the group of identifiers;
wherein the logical unit of data has a label in application space which can be used by application programs to access the logical unit of data from the database, the method further comprising a step of;
(B) requesting the database to provide the first identifier without first accessing the logical unit of data using the label.
-
-
2. A method of obtaining a first identifier of a logical unit of data that belongs to a database, the first identifier uniquely identifying a location of the logical unit of data within the database, the method comprising a step of:
-
(A) determining a group of identifiers that includes the first identifier based upon information, concerning a structure of the database, that does not directly specify the group of identifiers;
wherein the logical unit of data is stored in a logical block of the database, wherein the logical block is assigned a number by the database, and wherein the step (A) includes a step of determining the group of identifiers based upon the number of the logical block in which the logical unit of data is stored.
-
-
3. A method of obtaining a first identifier of a logical unit of data that belongs to a database, the first identifier uniquely identifying a location of the logical unit of data within the database, the method comprising a step of:
-
(A) determining a group of identifiers that includes the first identifier based upon information, concerning a structure of the database, that does not directly specify the group of identifiers;
wherein the logical unit of data is stored in a logical block of the database, wherein the logical block is assigned a number by the database, wherein the logical block is stored in a file having a file name, and wherein the step (A) includes a step of determining the group of identifiers based upon the file name and the number of the logical block in which the logical unit of data is stored.
-
-
4. A method of obtaining a first identifier of a logical unit of data that belongs to a database, the first identifier uniquely identifying a location of the logical unit of data within the database, the method comprising a step of:
-
(A) determining a group of identifiers that includes the first identifier based upon information, concerning a structure of the database, that does not directly specify the group of identifiers;
wherein the database is mounted on a host computer having an application layer that maps the location of the logical unit of data to a physical layer that the host computer perceives as physical space, and wherein the step (A) includes a step of determining the group of identifiers based upon information concerning where the logical unit of data is mapped in the physical layer.
-
-
5. A method of obtaining a first identifier of a logical unit of data that belongs to a database, the first identifier uniquely identifying a location of the logical unit of data within the database, the method comprising a step of:
-
(A) determining a group of identifiers that includes the first identifier based upon information, concerning a structure of the database, that does not directly specify the group of identifiers;
wherein the group of identifiers is a first group of identifiers, the method further comprising a step of;
(B) querying the database using the first group of identifiers to determine a second group of identifiers that includes the first identifier and each identifier within the first group of identifiers that is known to the database. - View Dependent Claims (6)
requesting the database to provide each identifier in the second group of identifiers and the logical unit of data associated with each identifier in the second group of identifiers.
-
-
7. A method of obtaining a first identifier of a logical unit of data that belongs to a database, the first identifier uniquely identifying a location of the logical unit of data within the database, the method comprising steps of:
-
(A) determining a group of identifiers that includes the first identifier based upon information, concerning a structure of the database, that does not directly specify the group of identifiers; and
(B) requesting the database to provide all identifiers, including the first identifier, known to the database to be included in the group of identifiers. - View Dependent Claims (8, 9, 10, 11, 12, 13, 14)
specifying the group of identifiers to the database as a range of identifiers.
-
-
9. The method of claim 8, wherein the step of specifying includes steps of:
-
determining a first boundary for the range of identifiers; and
determining a second boundary for the range of identifiers.
-
-
10. The method of claim 9, wherein:
-
the step of determining the first boundary includes a step of determining a lower bound for the range of identifiers; and
the step of determining the second boundary includes a step of determining an upper bound for the range of identifiers.
-
-
11. The method of claim 10, wherein the logical unit of data includes a record that is stored in a logical block of the database, wherein the logical block is assigned a number by the database, wherein the logical block is stored in a file having a file name, and wherein the step of determining the upper bound includes steps of:
-
determining a file number of the file in which the logical block is stored based upon the file name;
determining the number of the logical block in which the logical unit of data is stored;
determining a maximum value of the record; and
calculating the upper bound based upon the file number, the logical block number, and the maximum value of the record.
-
-
12. The method of claim 11, wherein the logical block has a size, and wherein the step of determining the maximum value of the record includes a step of determining the maximum value of the record based upon a maximum number of records that can be stored in the size of the logical block.
-
13. The method of claim 11, wherein each logical block in the database has a maximum logical block size, and wherein the step of determining the maximum value of the record includes a step of determining the maximum value of the record based upon a maximum number of records that can be stored in the maximum logical block size.
-
14. The method of claim 10, wherein the logical unit of data includes a record that is stored in a logical block of the database, wherein the logical block is assigned a number by the database and is associated with an object of the database having an object number, wherein the logical block is stored in a file having a file name, and wherein the step of determining the upper bound includes steps of:
-
determining the object number of the object;
determining a file number of the file in which the logical block is stored based upon the file name;
determining the number of the logical block in which the logical unit of data is stored;
determining a maximum value of the record; and
calculating the upper bound based upon the object number, the file number, the logical block number, and the maximum value of the record.
-
-
15. A method of obtaining a first identifier of a logical unit of data that belongs to a database, the first identifier uniquely identifying a location of the logical unit of data within the database, the logical unit of data having an application space label which can be used by application programs to access the logical unit of data from the database, the method comprising a step of:
-
(A) requesting the database to provide the first identifier without first accessing the logical unit of data from the database using the application space label;
wherein the step (A) includes a step of submitting a request to the database that identifies the logical unit of data based upon information concerning a structure of the database.
-
-
16. A method of obtaining a first identifier of a logical unit of data that belongs to a database, the first identifier uniquely identifying a location of the logical unit of data within the database, the logical unit of data having an application space label which can be used by application programs to access the logical unit of data from the database, the method comprising a step of:
-
(A) requesting the database to provide the first identifier without first accessing the logical unit of data from the database using the application space label;
wherein the logical unit of data is stored in a logical block of the database, wherein the logical block is assigned a number by the database, and wherein the step (A) includes a step of submitting a request to the database that identifies the logical unit of data based upon the number of the logical block in which the logical unit of data is stored.
-
-
17. A method of obtaining a first identifier of a logical unit of data that belongs to a database, the first identifier uniquely identifying a location of the logical unit of data within the database, the logical unit of data having an application space label which can be used by application programs to access the logical unit of data from the database, the method comprising a step of:
-
(A) requesting the database to provide the first identifier without first accessing the logical unit of data from the database using the application space label;
wherein the logical unit of data is stored in a logical block of the database, wherein the logical block is assigned a number by the database, wherein the logical block is stored in a file having a file name, and wherein the step (A) includes a step of submitting a request to the database that identifies the logical unit of data based upon the file name and the number of the logical block in which the logical unit of data is stored.
-
-
18. A method of obtaining a first identifier of a logical unit of data that belongs to a database, the first identifier uniquely identifying a location of the logical unit of data within the database, the logical unit of data having an application space label which can be used by application programs to access the logical unit of data from the database, the method comprising steps of:
-
(A) requesting the database to provide the first identifier without first accessing the logical unit of data from the database using the application space label; and
(B) determining a group of identifiers that includes the first identifier based upon information concerning a structure of the database;
wherein the information does not directly specify the group of identifiers; and
wherein the step (A) includes a step of querying the database using the group of identifiers. - View Dependent Claims (19, 20, 21, 22, 23, 24)
specifying the group of identifiers to the database as a range of identifiers.
-
-
21. The method of claim 20, wherein the step of specifying includes steps of:
-
determining a first boundary for the range of identifiers; and
determining a second boundary for the range of identifiers.
-
-
22. The method of claim 21, wherein:
-
the step of determining the first boundary includes a step of determining a lower bound for the range of identifiers; and
the step of determining the second boundary includes a step of determining an upper bound for the range of identifiers.
-
-
23. The method of claim 22, wherein the logical unit of data includes a record that is stored in a logical block of the database, wherein the logical block is assigned a number by the database, wherein the logical block is stored in a file having a file name, and wherein the step of determining the upper bound includes steps of:
-
determining a file number of the file in which the logical block is stored based upon the file name;
determining the number of the logical block in which the logical unit of data is stored;
determining a maximum value of the record; and
calculating the upper bound based upon the file number, the logical block number, and the maximum value of the record.
-
-
24. The method of claim 22, wherein the logical unit of data includes a record that is stored in a logical block of the database, wherein the logical block is assigned a number by the database and is associated with an object of the database having an object number, wherein the logical block is stored in a file having a file name, and wherein the step of determining the upper bound includes steps of:
-
determining the object number of the object;
determining a file number of the file in which the logical block is stored based upon the file name;
determining the number of the logical block in which the logical unit of data is stored;
determining a maximum value of the record; and
calculating the upper bound based upon the object number, the file number, the logical block number, and the maximum value of the record.
-
-
25. A computer readable medium encoded with a computer program for execution on a host computer that includes a database, the computer program, when executed on the host computer, performing a method of obtaining a first identifier of a logical unit of data that uniquely identifies a location of the logical unit of data within the database, the method comprising a step of:
-
(A) determining a group of identifiers that includes the first identifier based upon information concerning a structure of the database, wherein the information does not directly specify the group of identifiers;
wherein the logical unit of data has a label in application space which can be used by application programs to access the logical unit of data from the database, and wherein the method further comprises a step of;
(B) requesting the database to provide the first identifier without first accessing the logical unit of data using the label.
-
-
26. A computer readable medium encoded with a computer program for execution on a host computer that includes a database, the computer program, when executed on the host computer, performing a method of obtaining a first identifier of a logical unit of data that uniquely identifies a location of the logical unit of data within the database, the method comprising a step of:
-
(A) determining a group of identifiers that includes the first identifier based upon information concerning a structure of the database, wherein the information does not directly specify the group of identifiers;
wherein the logical unit of data is stored in a logical block of the database, wherein the logical block is assigned a number by the database, and wherein the step (A) includes a step of determining the group of identifiers based upon the number of the logical block in which the logical unit of data is stored.
-
-
27. A computer readable medium encoded with a computer program for execution on a host computer that includes a database, the computer program, when executed on the host computer, performing a method of obtaining a first identifier of a logical unit of data that uniquely identifies a location of the logical unit of data within the database, the method comprising a step of:
-
(A) determining a group of identifiers that includes the first identifier based upon information concerning a structure of the database, wherein the information does not directly specify the group of identifiers;
wherein the database is mounted on a host computer having an application layer that maps the location of the logical unit of data to a physical layer that the host computer perceives as physical space, and wherein the step (A) includes a step of determining the group of identifiers based upon information concerning where the logical unit of data is mapped in the physical layer.
-
-
28. A computer readable medium encoded with a computer program for execution on a host computer that includes a database, the computer program, when executed on the host computer, performing a method of obtaining a first identifier of a logical unit of data that uniquely identifies a location of the logical unit of data within the database, the method comprising a step of:
-
(A) determining a group of identifiers that includes the first identifier based upon information concerning a structure of the database, wherein the information does not directly specify the group of identifiers;
wherein the group of identifiers is a first group of identifiers, and wherein the method further comprises a step of;
(B) querying the database using the first group of identifiers to determine a second group of identifiers that includes the first identifier and each identifier within the first group of identifiers that is known to the database. - View Dependent Claims (29)
requesting the database to provide each identifier in the second group of identifiers and the logical unit of data associated with each identifier in the second group of identifiers.
-
-
30. A computer readable medium encoded with a computer program for execution on a host computer that includes a database, the computer program, when executed on the host computer, performing a method of obtaining a first identifier of a logical unit of data that uniquely identifies a location of the logical unit of data within the database, the method comprising steps of:
-
(A) determining a group of identifiers that includes the first identifier based upon information concerning a structure of the database, wherein the information does not directly specify the group of identifiers; and
(B) requesting the database to provide all identifiers, including the first identifier, known to the database to be included in the group of identifiers. - View Dependent Claims (31, 32, 33, 34)
specifying the group of identifiers to the database as a range of identifiers.
-
-
32. The computer readable medium of claim 31, wherein the step of specifying includes steps of:
-
determining a first boundary for the range of identifiers; and
determining a second boundary for the range of identifiers.
-
-
33. The computer readable medium of claim 32, wherein:
-
the step of determining the first boundary includes a step of determining a lower bound for the range of identifiers; and
the step of determining the second boundary includes a step of determining an upper bound for the range of identifiers.
-
-
34. The computer readable medium of claim 33, wherein the logical unit of data includes a record that is stored in a logical block of the database, wherein the logical block is assigned a number by the database, wherein the logical block is stored in a file having a file name, and wherein the step of determining the upper bound includes steps of:
-
determining a file number of the file in which the logical block is stored based upon the file name;
determining the number of the logical block in which the logical unit of data is stored;
determining a maximum value of the record; and
calculating the upper bound based upon the file number, the logical block number, and the maximum value of the record.
-
-
35. A computer readable medium encoded with a computer program for execution on a host computer that includes a database, the computer program, when executed on the host computer, performing a method of obtaining a first identifier of a logical unit of data that belongs to the database and uniquely identifies a location of the logical unit of data within the database, the logical unit of data having a label in application space by which the logical unit of data can be accessed from the database, the method comprising a step of:
-
(A) requesting the database to provide the first identifier without first accessing the logical unit of data from the database using the label in application space;
wherein the step (A) includes a step of submitting a request to the database that identifies the logical unit of data based upon information concerning a structure of the database.
-
-
36. A computer readable medium encoded with a computer program for execution on a host computer that includes a database, the computer program, when executed on the host computer, performing a method of obtaining a first identifier of a logical unit of data that belongs to the database and uniquely identifies a location of the logical unit of data within the database, the logical unit of data having a label in application space by which the logical unit of data can be accessed from the database, the method comprising a step of:
-
(A) requesting the database to provide the first identifier without first accessing the logical unit of data from the database using the label in application space;
wherein the logical unit of data is stored in a logical block of the database, wherein the logical block is assigned a number by the database, and wherein the step (A) includes a step of submitting a request to the database that identifies the logical unit of data based upon the number of the logical block in which the logical unit of data is stored.
-
-
37. A computer readable medium encoded with a computer program for execution on a host computer that includes a database, the computer program, when executed on the host computer, performing a method of obtaining a first identifier of a logical unit of data that belongs to the database and uniquely identifies a location of the logical unit of data within the database, the logical unit of data having a label in application space by which the logical unit of data can be accessed from the database, the method comprising steps of:
-
(A) requesting the database to provide the first identifier without first accessing the logical unit of data from the database using the label in application space; and
(B) determining a group of identifiers that includes the first identifier based upon information concerning a structure of the database;
wherein the information does not directly specify the group of identifiers; and
wherein the step (A) includes a step of querying the database using the group of identifiers. - View Dependent Claims (38, 39, 40, 41, 42)
specifying the group of identifiers to the database as a range of identifiers.
-
-
40. The computer readable medium of claim 39, wherein the step of specifying includes steps of:
-
determining a first boundary for the range of identifiers; and
determining a second boundary for the range of identifiers.
-
-
41. The computer readable medium of claim 40, wherein:
-
the step of determining the first boundary includes a step of determining a lower bound for the range of identifiers; and
the step of determining the second boundary includes a step of determining an upper bound for the range of identifiers.
-
-
42. The computer readable medium of claim 41, wherein the logical unit of data includes a record that is stored in a logical block of the database, wherein the logical block is assigned a number by the database, wherein the logical block is stored in a file having a file name, and wherein the step of determining the upper bound includes steps of:
-
determining a file number of the file in which the logical block is stored based upon the file name;
determining the number of the logical block in which the logical unit of data is stored;
determining a maximum value of the record; and
calculating the upper bound based upon the file number, the logical block number, and the maximum value of the record.
-
-
43. A computer, comprising:
-
a processor;
a memory, coupled to the processor, having a database loaded thereon, the database having a logical unit of data that belongs to the database and a first identifier that uniquely identifies a location of the logical unit of data within the database; and
means for determining a group of identifiers that includes the first identifier based upon information, concerning a structure of the database, that does not directly specify the group of identifiers;
wherein the logical unit of data has a label in application space which can be used by application programs executing on the processor to access the logical unit of data from the database; and
wherein the computer further comprises means for requesting the database to provide the first identifier without first accessing the logical unit of data using the label.
-
-
44. A computer, comprising:
-
a processor;
a memory, coupled to the processor, having a database loaded thereon, the database having a logical unit of data that belongs to the database and a first identifier that uniquely identifies a location of the logical unit of data within the database; and
means for determining a group of identifiers that includes the first identifier based upon information, concerning a structure of the database, that does not directly specify the group of identifiers;
wherein the computer has an application layer that maps the location of the logical unit of data to a physical layer that the computer perceives as physical space; and
wherein the means for determining includes means for determining the group of identifiers based upon information concerning where the logical unit of data is mapped in the physical layer.
-
-
45. A computer, comprising:
-
a processor;
a memory, coupled to the processor, having a database loaded thereon, the database having a logical unit of data that belongs to the database and a first identifier that uniquely identifies a location of the logical unit of data within the database, the logical unit of data having an application space label which can be used by applications executing on the processor to access the logical unit of data from the database; and
means for requesting the database to provide the first identifier without first accessing the logical unit of data from the database using the application space label;
wherein the means for requesting includes means for submitting a request to the database that identifies the logical unit of data based upon information concerning a structure of the database.
-
-
46. A computer, comprising:
-
a processor;
a memory, coupled to the processor, having a database loaded thereon, the database having a logical unit of data that belongs to the database and a first identifier that uniquely identifies a location of the logical unit of data within the database, the logical unit of data having an application space label which can be used by applications executing on the processor to access the logical unit of data from the database;
means for requesting the database to provide the first identifier without first accessing the logical unit of data from the database using the application space label; and
means for determining a group of identifiers that includes the first identifier based upon information, concerning a structure of the database, that does not directly specify the group of identifiers. - View Dependent Claims (47)
-
-
48. A computer, comprising:
-
a processor;
a memory, coupled to the processor, having a database loaded thereon, the database having a logical unit of data that belongs to the database and a first identifier that uniquely identifies a location of the logical unit of data within the database, the logical unit of data having an application space label which can be used by applications executing on the processor to access the logical unit of data from the database; and
means for requesting the database to provide the first identifier without first accessing the logical unit of data from the database using the application space label;
wherein the computer has an application layer that maps the location of the logical unit of data to a physical layer that the computer perceives as physical space; and
wherein the means for requesting includes means for determining a group of identifiers that includes the first identifier based upon based upon information concerning where the logical unit of data is mapped in the physical layer.
-
Specification