In-memory key-value store for a multi-model database
First Claim
1. A method comprising:
- maintaining, on persistent storage, a relational database that is managed by a database server;
wherein said relational database includes a database table, said database table being stored on said persistent storage in a persistent format;
generating key-value records in a key-value format within volatile memory accessible to said database server by at least converting data in said database table to a key-value format;
wherein said key-value format is different from and independent of said persistent format;
executing a database statement referencing said database table, wherein executing said database statement comprises;
determining whether to access one or more key-value records in said volatile memory or to access said data in said database table in said persistent format, wherein said determining whether to access one or more key-value records includes at least one of;
determining whether accessing said one or more key-value records involves interpreting values in one or more fields of said key-value records, anddetermining whether said one or more key-value records include indirect references to corresponding data in said relational database;
accessing one or more key-value records in said volatile memory in response to determining to access said one or more key-value records.
2 Assignments
0 Petitions
Accused Products
Abstract
Techniques related to an in-memory key-value store for a multi-model database are disclosed. In an embodiment, a relational database may be maintained on persistent storage. The relational database may be managed by a database server and may include a database table. The database table may be stored in a persistent format. Key-value records may be generated within volatile memory accessible to the database server by converting data in the database table to a key-value format. The key-value format may be different from and independent of the persistent format. A database statement referencing the database table may be executed based on determining whether to access one or more key-value records in the volatile memory or to access the data in the database table. In response to determining to access the one or more key-value records, the database server may access the one or more key-value records in the volatile memory.
18 Citations
16 Claims
-
1. A method comprising:
-
maintaining, on persistent storage, a relational database that is managed by a database server; wherein said relational database includes a database table, said database table being stored on said persistent storage in a persistent format; generating key-value records in a key-value format within volatile memory accessible to said database server by at least converting data in said database table to a key-value format; wherein said key-value format is different from and independent of said persistent format; executing a database statement referencing said database table, wherein executing said database statement comprises; determining whether to access one or more key-value records in said volatile memory or to access said data in said database table in said persistent format, wherein said determining whether to access one or more key-value records includes at least one of; determining whether accessing said one or more key-value records involves interpreting values in one or more fields of said key-value records, and determining whether said one or more key-value records include indirect references to corresponding data in said relational database; accessing one or more key-value records in said volatile memory in response to determining to access said one or more key-value records. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. One or more non-transitory storage media storing instructions which, when processed by one or more computing devices, cause:
-
maintaining, on persistent storage, a relational database that is managed by a database server; wherein said relational database includes a database table, said database table being stored on said persistent storage in a persistent format; generating key-value records in a key-value format within volatile memory accessible to said database server by at least converting data in said database table to a key-value format; wherein said key-value format is different from and independent of said persistent format; executing a database statement referencing said database table, wherein executing said database statement comprises; determining whether to access one or more key-value records in said volatile memory or to access said data in said database table in said persistent format, wherein said determining whether to access one or more key-value records includes at least one of; determining whether accessing said one or more key-value records involves interpreting values in one or more fields of said key-value records, and determining whether said one or more key-value records include indirect references to corresponding data in said relational database; accessing one or more key-value records in said volatile memory in response to determining to access said one or more key-value records. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
Specification