Read-Only Node Initialization via Common Database Storage
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Distributed database systems face challenges in efficiently adding or restarting read-only nodes due to the need for data replication and synchronization with a primary node, especially when updates occur during the initialization process, leading to increased complexity and query processing burdens.
Innovation Solution
Implementing a method where read-only nodes can initialize without copying data from the primary node by using a common database storage system that maintains different versions of the database, allowing the primary node to select an appropriate view and send notifications of changes to the read-only node, which can then initialize in-memory structures and handle queries while continuing to receive update notifications.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If read-only nodes copy data from the primary node during initialization, then data consistency is ensured, but the initialization complexity and time increase significantly
Solution Approach 1:
The patent applies copying by creating a read-only node as a copy of the primary node's database state. The read-only node receives a snapshot or copy of the database data from the primary node, allowing it to initialize quickly without manually replicating the entire database structure. This copying mechanism ensures data consistency while reducing initialization complexity compared to manual replication methods.
2Loss of information
If read-only nodes initialize by copying data from the primary node, then complete database state is obtained, but the primary node's query processing burden increases during initialization
Solution Approach 1:
The patent introduces an intermediary mechanism where the read-only node initializes by receiving data from the primary node through a controlled replication process. During initialization, the read-only node operates independently using copied data, while the primary node continues serving queries. The intermediary replication process ensures the read-only node obtains complete database state without significantly impacting the primary node's query processing capacity, as the data transfer occurs in the background during initialization.
3Productivity
If read-only nodes operate with asynchronous log shipping, then scalability is improved, but query results may lag behind the primary database
Solution Approach 1:
The patent applies preliminary action by pre-initializing the read-only node with a complete database snapshot before it starts serving queries. This preliminary data loading ensures that the read-only node has all necessary data in advance, reducing the lag between primary and replica operations. The read-only node can then apply subsequent changes asynchronously without significant delay, as the base state is already established, improving both scalability and reducing query lag.
4Productivity
If read-only nodes are added to the distributed database system, then workload balancing is improved, but coordination problems between nodes increase
Solution Approach 1:
The patent applies segmentation by dividing the database system into distinct read-write primary nodes and read-only replica nodes with clearly defined roles. Each node type has specialized responsibilities: primary nodes handle writes and generate replication logs, while read-only nodes handle reads and apply changes asynchronously. This segmentation reduces coordination complexity compared to fully distributed systems where all nodes must coordinate equally, as the primary-read-only relationship establishes a clear hierarchy and data flow direction.
Data Source
AI summary
Read-only nodes of a distributed database system may perform replicated database startup for common database storage. A read-only node may request a view of a database from a master node to initialize the read-only node for servicing queries. An indication of the view may be received and portions of data maintained for the distributed database may be read from a common data store maintaining the data for the database according to the indicated view of the database. In-memory data structures at the read-only node for servicing queries may be initialized based on the portions of data read from the common data store. The read-only node may then be made available for servicing queries.


