Aliased Key-Value Store Data Retrieval
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional key-value store implementations lead to data duplication, increased processing requirements, and higher storage costs due to multiple key-value pairs being stored across different applications and services accessing the same underlying data set with different keys.
Innovation Solution
The system introduces aliased data retrieval by using a primary key and secondary keys, where a primary key is allocated an internal identifier, stored in a first table, and secondary keys create new key-value pairs with this identifier, allowing retrieval using either key, thus abstracting the key-value store into two data storage structures.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If multiple key-value pairs are stored for the same data set with different keys for different services, then each service can access the data independently, but data duplication occurs and storage costs increase
Solution Approach 1:
The system segments the key-value store into two distinct tables: a metadata table storing key-internal identifier mappings, and a data table storing internal identifier-data value mappings. This segmentation allows the same data to be accessed through multiple keys without duplicating the actual data values, resolving the contradiction between service independence and data duplication.
Solution Approach 2:
The patent introduces an internal identifier as an intermediary between multiple service-specific keys and the underlying data values. This intermediary layer enables different services to access the same data through their own keys without creating data duplication, as all keys map to the same internal identifier which in turn maps to the single data value.
2Adaptability or versatility
If multiple key-value pairs are stored for the same data set, then different services can access data with different keys, but processing requirements and latency increase
Solution Approach 1:
By segmenting the storage structure into metadata and data tables, the system enables optimized query processing. The metadata table can be efficiently searched for key-internal identifier mappings, and the data table can be efficiently searched for internal identifier-data value mappings, improving retrieval speed compared to searching through multiple duplicated key-value pairs.
Solution Approach 2:
The system performs preliminary action by pre-computing and storing the mapping between keys and internal identifiers in the metadata table. This pre-established mapping structure enables faster data retrieval, as the system can directly look up the internal identifier from the key without performing complex searches or computations at query time.
3Adaptability or versatility
If multiple key-value pairs are stored for the same data set, then different services can access data independently, but overall storage costs increase
Solution Approach 1:
The patent merges multiple service-specific key-value pairs that reference the same data into a single unified structure. Instead of storing separate key-value pairs for each service, the system merges them into a metadata table where multiple keys map to a shared internal identifier, which in turn maps to a single data value in the data table, eliminating redundant storage.
Solution Approach 2:
The internal identifier serves as a universal reference that multiple keys can point to, enabling a single data value to be accessed by multiple services through their respective keys. This multi-functional approach allows the same data storage space to serve multiple purposes and multiple services simultaneously, reducing overall storage requirements.
4Device complexity
If a single key-value store is used without aliases, then the structure is simple, but heterogeneous applications cannot efficiently access a common data set
Solution Approach 1:
The patent segments the key-value store into two tables with distinct responsibilities: the metadata table handles key management and aliasing, while the data table handles efficient data storage and retrieval. This segmentation maintains relative structural simplicity while enabling heterogeneous applications to access common data sets through their preferred keys.
Solution Approach 2:
The internal identifier acts as an intermediary layer that enables heterogeneous applications to access a common data set efficiently. Each application can use its own keys to query the metadata table, obtain the corresponding internal identifier, and then access the shared data in the data table, maintaining application compatibility without sacrificing data sharing efficiency.
Data Source
AI summary
Examples of the present disclosure describe systems and methods for aliased data insertions/retrieval for key-value stores. In aspects, a data set comprising a primary key, one or more secondary keys (“aliases”), and data values may be received by a data storage system. The system may allocate an internal identifier to the primary key and store the internal identifier and the primary key in a first table. Each of the secondary keys may be used to create a key-value pair comprising the secondary key and the internal identifier. The key-value pair(s) may be stored in the first table with the corresponding primary key. The internal identifier and the data values may be stored in a second table. Subsequently, the primary or secondary key may be used to interrogate the first table for the internal identifier. The internal identifier may then be used to interrogate the second table for the data values.


