Client-Generated Key-Value Storage for Low-Latency Concurrent Access
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing database systems require a coordinating database management server to manage database queries, leading to increased operational costs, computational resources, energy usage, and latency, particularly in time-sensitive data access scenarios, and can become overloaded when multiple client devices access data concurrently.
Innovation Solution
A 'serverless' database system where client devices generate unique keys to store and retrieve data directly in a key-value data store, using a hierarchical data structure with layers to ensure immutability and avoid concurrency issues, allowing direct client-device interaction without the need for a central server.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a database management server is implemented to manage database queries, then data access coordination is improved, but operational costs and computational resources increase
Solution Approach 1:
The patent enables client devices to autonomously manage their own data access operations by implementing local database management functionality. Each client device can independently execute queries, manage transactions, and coordinate data access without requiring a centralized database management server, thereby eliminating the operational costs and energy consumption associated with running such a server while maintaining reliable data access coordination through distributed client-side management
2Reliability
If a database management server is implemented to manage database queries, then data access coordination is improved, but latency increases
Solution Approach 1:
The patent enables client devices to autonomously manage their own data access operations by implementing local database management functionality. Each client device can independently execute queries, manage transactions, and coordinate data access without requiring a centralized database management server, thereby eliminating the operational costs and energy consumption associated with running such a server while maintaining reliable data access coordination through distributed client-side management
3Reliability
If a database management server is implemented to manage database queries, then data access coordination is improved, but the server becomes overloaded when multiple client devices access data concurrently
Solution Approach 1:
The patent segments the centralized database management functionality into distributed client-side components. Instead of having a single database management server handle all queries from multiple client devices, each client device implements its own database management capabilities locally. This segmentation distributes the query processing load across multiple independent client devices, eliminating the bottleneck and overload issues that occur when a single server must coordinate all data access operations for multiple concurrent clients
4Reliability
If version tracking structures are implemented to track chunk versions, then data integrity is improved, but overhead and computational resources increase
Solution Approach 1:
The patent enables client devices to autonomously manage their own data access operations by implementing local database management functionality. Each client device can independently execute queries, manage transactions, and coordinate data access without requiring a centralized database management server, thereby eliminating the operational costs and energy consumption associated with running such a server while maintaining reliable data access coordination through distributed client-side management
Data Source
AI summary
Embodiments described herein relate to a computer-implemented method (700), comprising: receiving (702), at a client device (202), a first request to store a first data segment in a remote key-value data store (212); generating (704), at the client device (202), a unique first data layer key (314) based on values stored in the first data segment (316), wherein the first data layer key (314) uniquely identifies the first data segment (316); generating (706), at the client device (202), a first reference layer data segment (376) based on components of the first data layer key (314); and sending (708), to the data store (212) over a network (206), for storing in the data store (212): a first data layer key-value pair (312) comprising the first data layer key (314) and the first data segment (316); and a first reference layer key-value pair (372) comprising a reference layer key (374) and the first reference layer data segment (376).


