Key-Value Store for Continuous Data Protection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current continuous data protection (CDP) systems are complex and lack efficient primary storage solutions that can provide fine-granularity access to data at any point in time, especially when using block storage devices, which are difficult to scale out.
Innovation Solution
Implementing ultrafast key-value stores as primary storage systems that expose block device protocols on the host side, leveraging key-value stores for deduplication and any point in time access, using data structures like history maps and data maps with B-Trees for efficient data management and retrieval.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If block storage devices are used for key-value stores, then data protection and retrieval are enabled, but scaling out becomes much more complex
Solution Approach 1:
The patent segments the key-value store into independent key-value pairs that can be distributed across multiple storage nodes. Each node maintains a portion of the key-value data, enabling horizontal scaling without complex inter-node dependencies. This segmentation allows the system to scale out by simply adding more nodes to the distributed key-value store.
2Ease of operation
If traditional CDP systems are implemented, then any point in time access is provided, but the system becomes relatively complex with limited implementations
Solution Approach 1:
The patent introduces a key-value store as an intermediary layer between the host and the underlying storage system. This key-value store simplifies CDP operations by providing a straightforward interface for storing and retrieving data at any point in time, eliminating the need for complex traditional CDP mechanisms while maintaining full functionality.
3Speed
If key-value stores are implemented over block storage, then data storage and retrieval are enabled, but performance comparable to block devices is not achieved
Solution Approach 1:
The patent makes the key-value store universal by enabling it to perform both traditional block storage functions and key-value store operations through a unified architecture. The system can expose block device protocols on the host side while leveraging key-value store semantics internally, achieving block-device-like performance without sacrificing key-value store scalability and simplicity.
Data Source
AI summary
Embodiments for providing memory for continuous data protection in a data storage system by storing a first key-value map as a data structure wherein the key is an address of a volume and the value comprises timestamp and hash value pairs for each time the address had data written thereto, and corresponding hash values of the written data, and storing a second key-value map as a data structure wherein the key comprises the hash value and the value comprises the written data. The first key-value map and second key-value map are implemented as a driver component in a server computer of the data storage system. The driver exposes a block device protocol on the server computer and leverages the key-value data structures for use with a deduplication storage system.


