Storage Segment Server State Assembly Without Snapshot Coordination
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional Database as a Service (DBaaS) systems face challenges in assembling a state of user data as of a particular point in time, especially when data is distributed across multiple storage segment servers that do not coordinate snapshot times, leading to complexities and dependencies on other servers' operational status.
Innovation Solution
The solution involves instantiating additional instances of storage segment servers to assume an initial state prior to the last snapshot, allowing them to reapply logged records up to a user-selected point in time, thereby assembling the user data independently without coordinating with other servers, simplifying snapshot logic and enhancing resilience.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Manufacturing precision
If storage segment servers coordinate snapshot times to assemble user data state, then data consistency is improved, but system complexity and dependency on other servers increase
Solution Approach 1:
The system divides the data storage and snapshot operations into independent segments, where each storage segment server operates autonomously on its own data portion without requiring coordination with other servers. This segmentation allows independent snapshot operations while maintaining overall data consistency through the use of log records for state assembly.
Solution Approach 2:
The system performs preliminary actions by creating snapshots at independent times on each storage segment server and recording the state of logged records at those snapshot times. This preliminary capture of data states allows the system to later assemble a consistent point-in-time view without requiring real-time coordination during the assembly process.
2Ease of manufacture
If storage segment servers perform independent snapshots without coordination, then snapshot logic is simplified and resilience is enhanced, but data consistency becomes more challenging
Solution Approach 1:
The system introduces an intermediary mechanism in the form of log records that mediate between independent snapshot operations and the final assembled data state. Each storage segment server independently snapshots its data and records log states, and these intermediaries are later used to assemble a consistent point-in-time view without requiring the servers to coordinate their snapshot times.
3Loss of information
If the system waits for all storage segment servers to be functional before assembling user data, then data completeness is improved, but recovery time increases
Solution Approach 1:
The system applies partial action by allowing the assembly of user data state to proceed with only the subset of storage segment servers that are currently functional. Instead of waiting for all servers, the system assembles data from available servers using their independent snapshots and log records, providing a point-in-time view even if some data portions are temporarily unavailable.
Data Source
Figure 1
Figure 2~3
Figure 4
AI summary
Assembly of a state of user data as of a particular point in time in the context of the data being spread across multiple storage segment servers. Furthermore, the assembly occurs despite the storage segment servers not needing to coordinate a timing of any snapshots. Rather, the storage segment servers perform a snapshot of the portion of the data that it individually stores without having to coordinate with any other storage segment server. The particular point of time may be any arbitrary time, such as a time selected by a user.