Immutable bookmarks for large objects in a database
First Claim
Patent Images
1. In a database that utilizes bookmarks to access user selected data stored in a database, a method for maintaining the association between the bookmarks and the user selected data comprising:
- associating a bookmark with an offset of the database;
updating the offset associated with the bookmark to match an offset associated with the user selected data, wherein updating the offset associated with the bookmark comprises associating the offset with the bookmark in accordance with (p−
x+y), where p denotes an initial offset, x denotes the number of deleted bytes, and y denotes the number of inserted bytes between a start of the user selected data and the initial offset associated with the bookmark;
reorganizing the database such that the user selected data is stored at the updated offset; and
associating the bookmark with the updated offset.
1 Assignment
0 Petitions
Accused Products
Abstract
User-level bookmarks are initially created at a specified offset in a large object (LOB) of a database and automatically updated to reflect a new offset, if necessary, after database updates. By logically linking the bookmark to a data element, the bookmark continues to point to the same logical data element as it did before the update. An API provides the functionality of immutable bookmarks by automatically changing the offset of the bookmark following sliding inserts or deletions of data to the database.
4 Citations
48 Claims
-
1. In a database that utilizes bookmarks to access user selected data stored in a database, a method for maintaining the association between the bookmarks and the user selected data comprising:
-
associating a bookmark with an offset of the database;
updating the offset associated with the bookmark to match an offset associated with the user selected data, wherein updating the offset associated with the bookmark comprises associating the offset with the bookmark in accordance with (p−
x+y), where p denotes an initial offset, x denotes the number of deleted bytes, and y denotes the number of inserted bytes between a start of the user selected data and the initial offset associated with the bookmark;reorganizing the database such that the user selected data is stored at the updated offset; and associating the bookmark with the updated offset. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. In a relational database having a plurality of large datatypes and a plurality of bookmarks, each of which point to user selected data stored at a specific offset within the database, a system for updating at least one of the bookmarks in response to a database reorganization, the system comprising:
-
means for storing the database;
means, coupled to the storing means and operating on a server, for managing the database; andan application program interface, coupled to the managing means, adapted to create a bookmark logically linked to user selected data stored in one of the plurality of large datatypes and to associate an offset of the database with the bookmark, wherein the application program interface further comprises means for changing the offset associated with the bookmark during database update in accordance with (p−
x +y), where p denotes an initial offset. x denotes the number of deleted bytes, and y denotes the number of inserted bytes between a start of the user selected data and the initial offset associated with the bookmark. - View Dependent Claims (19, 20, 21, 22, 23, 24, 25, 26)
-
-
27. A method for adding bookmarks to a relational database having a plurality of large objects (LOBs), the method comprising:
-
defining a bookmark by associating the bookmark at an initial offset in a LOB; in response to a database reorganization, calculating an updated offset of the database for the bookmark; and updating the initial offset associated with the bookmark to reflect the updated offset, wherein updating the initial offset associated with the bookmark comprises associating the offset with the bookmark in accordance with (p −
x +y), where p denotes the initial offset, x denotes the number of deleted bytes, and y denotes the number of inserted bytes between a start of the LOB and the initial offset associated with the bookmark. - View Dependent Claims (28, 29, 30)
-
-
31. A machine-readable medium including instructions executable by one or more processors, the machine-readable medium comprising:
-
one or more instructions for defining a bookmark by associating the bookmark at an initial offset in a database; one or more instructions for calculating an updated offset for the bookmark; and one or more instructions for updating the initial offset associated with the bookmark to reflect the updated offset, wherein updating the initial offset associated with the bookmark comprises associating the initial offset with the bookmark in accordance with (p −
x +y), where p denotes the initial offset. x denotes the number of deleted bytes, and y denotes the number of inserted bytes between a start of a LOB and the initial offset associated with the bookmark.
-
-
32. An information storage medium having a plurality of instructions adapted to direct an information processing device to perform a set of steps including:
-
defining an immutable bookmark by associating the bookmark with data stored at a location in a database;
updating the database such that the data is stored at an updated location in the database; and
associating the bookmark with the updated location,wherein associating the bookmark with the undated location comprises associating an initial offset with the bookmark in accordance with (p −
x +y), where p denotes the initial offset, x denotes the number of deleted bytes, and y denotes the number of inserted bytes between a start of the data stored and the initial offset associated with the bookmark. - View Dependent Claims (33, 34, 35)
-
-
36. A method comprising:
-
permitting access to a first data stored in a database by using a first bookmark, where the first bookmark is linked to the first data through a first offset value relative to a reference position in the database; reorganizing the database so that the first data moves to a second offset value relative to the reference position; and after the reorganizing the database, updating the first bookmark to associate with the second offset value instead of the first offset value, wherein updating the first bookmark comprises associating the second offset with the first bookmark in accordance with (p −
x +y). where p denotes the first offset, x denotes the number of deleted bytes, and y denotes the number of inserted bytes between a start of the first data and the first offset associated with the first bookmark. - View Dependent Claims (37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48)
-
Specification