WO2019197881A1 - Storing variable-length records in databases - Google Patents
Storing variable-length records in databases Download PDFInfo
- Publication number
- WO2019197881A1 WO2019197881A1 PCT/IB2018/052551 IB2018052551W WO2019197881A1 WO 2019197881 A1 WO2019197881 A1 WO 2019197881A1 IB 2018052551 W IB2018052551 W IB 2018052551W WO 2019197881 A1 WO2019197881 A1 WO 2019197881A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- page
- block
- blocks
- free
- list
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
Abstract
Let us consider page present in main memory or disk to be collection of blocks of fixed size. To efficiently use free memory of a page and all pages which are free to be used, we maintain a list of free blocks with each block having Page identifier, starting physical address of the block and the next pointer pointing to the next contiguous block of same page or first block of next contiguous page. One or more blocks could be assigned for a Variable-Length Record and the Record identifier would consist of Page identifier of the first block, physical address of the first block and total number of blocks in the record. Also to facilitate easier deletion of records, we will maintain a Page Directory where each entry points to the ordered and contiguous list of free blocks of the page.
Description
Storing Variable-Length Records In Databases
In this invention we store Variable-Length Records in the database using a very unique architecture. Let us consider page present in main memory or disk to be collection of blocks of fixed size. To efficiently use free memory of a page and all pages which are free to be used, we maintain a list of free blocks with each block having Page identifier, starting physical address of the block and the next pointer pointing to the next contiguous block of same page or first block of next contiguous page. One or more blocks could be assigned for a Variable- Length Record and the Record identifier would consist of Page identifier of the first block, physical address of the first block and total number of blocks in the record. Also to facilitate easier deletion of records, we will maintain a Page Directory where each entry points to the ordered and contiguous list of free blocks of the page and the last block of the page points to the first block of next contiguous page if it is free. Also in addition each entry in Page Directory will maintain ordering of list of free blocks when inserting new list of free blocks for the page by merging two sorted list of free blocks with respect to their physical addresses.
Claims
1. In this invention we store Variable-Length Records in the database using a very unique architecture. Let us consider page present in main memory or disk to be collection of blocks of fixed size. To efficiently use free memory of a page and all pages which are free to be used, we maintain a list of free blocks with each block having Page identifier, starting physical address of the block and the next pointer pointing to the next contiguous block of same page or first block of next contiguous page.
One or more blocks could be assigned for a Variable-Length Record and the Record identifier would consist of Page identifier of the first block, physical address of the first block and total number of blocks in the record. Also to facilitate easier deletion of records, we will maintain a Page Directory where each entry points to the ordered and contiguous list of free blocks of the page and the last block of the page points to the first block of next contiguous page if it is free. Also in addition each entry in Page Directory will maintain ordering of list of free blocks when inserting new list of free blocks for the page by merging two sorted list of free blocks with respect to their physical addresses. The above novel technique of storing Variable-Length Records in a database is the claim for this invention.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/IB2018/052551 WO2019197881A1 (en) | 2018-04-12 | 2018-04-12 | Storing variable-length records in databases |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/IB2018/052551 WO2019197881A1 (en) | 2018-04-12 | 2018-04-12 | Storing variable-length records in databases |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2019197881A1 true WO2019197881A1 (en) | 2019-10-17 |
Family
ID=68162841
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/IB2018/052551 WO2019197881A1 (en) | 2018-04-12 | 2018-04-12 | Storing variable-length records in databases |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2019197881A1 (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7552271B2 (en) * | 2005-08-03 | 2009-06-23 | Sandisk Corporation | Nonvolatile memory with block management |
-
2018
- 2018-04-12 WO PCT/IB2018/052551 patent/WO2019197881A1/en active Application Filing
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7552271B2 (en) * | 2005-08-03 | 2009-06-23 | Sandisk Corporation | Nonvolatile memory with block management |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5524144B2 (en) | Memory system having a key-value store system | |
CN108804510B (en) | Key value file system | |
CN102646130B (en) | Method for storing and indexing mass historical data | |
US7548928B1 (en) | Data compression of large scale data stored in sparse tables | |
CN106445416B (en) | A kind of method and device of the storage of data record, inquiry and retrieval | |
CN105683898A (en) | Set-associative hash table organization for efficient storage and retrieval of data in a storage system | |
JP2012526320A5 (en) | ||
RU2019111895A (en) | TRAVELING IN THE DATABASE OF SMART CONTRACTS THROUGH THE LOGICAL MAP | |
US9804961B2 (en) | Flash memory file system and method using different types of storage media | |
CN103914483B (en) | File memory method, device and file reading, device | |
JP2021500649A5 (en) | ||
US20140324875A1 (en) | Index for fast batch updates of large data tables | |
CN105335300A (en) | Data storage method and device | |
US9684677B2 (en) | Method for reliable and efficient filesystem metadata conversion | |
US11853279B2 (en) | Data storage using vectors of vectors | |
CN112262379A (en) | Storing data items and identifying stored data items | |
JPWO2010084754A1 (en) | Database system, database management method, and database structure | |
JP5646775B2 (en) | Memory system having a key-value store system | |
JP6258436B2 (en) | Memory system local controller | |
WO2019197881A1 (en) | Storing variable-length records in databases | |
US8285691B2 (en) | Binary method for locating data rows in a compressed data block | |
JP2015028815A (en) | Memory system having key-value store system | |
JP6034467B2 (en) | system | |
US10725926B2 (en) | Managing a list of items stored in a cache | |
KR101642072B1 (en) | Method and Apparatus for Hybrid storage |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 18914901 Country of ref document: EP Kind code of ref document: A1 |