Partition Splitting in Distributed Database Systems
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
As distributed databases scale, managing and splitting partitions to handle increased data and traffic becomes complex, leading to latency, inconsistency, and reduced scalability due to inefficient data routing and processing.
Innovation Solution
Implement a method for partition splitting in distributed databases where data from a particular series is routed to the same node, using ingestion routers with updated partition metadata to create and manage sub-partitions, ensuring efficient reordering and deduplication, and preventing the parent partition from receiving new data once a threshold of routers has updated metadata.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If partition splitting is implemented in a distributed database, then scalability and data distribution are improved, but system complexity and routing inconsistency increase
Solution Approach 1:
The patent divides a parent partition into multiple child partitions based on data range criteria, enabling the system to handle increased data volume by segmenting the data storage structure. This segmentation allows scalable growth while maintaining organized data distribution across the distributed database nodes.
Solution Approach 2:
The patent introduces a metadata store as an intermediary component that centralizes partition metadata management. This metadata store acts as a mediator between ingestion routers and the distributed database, providing a single source of truth for partition information and reducing routing inconsistency during split operations.
2Adaptability or versatility
If partition splitting is performed, then data distribution is improved, but latency increases due to metadata propagation delays
Solution Approach 1:
The patent performs preliminary actions by pre-defining partition metadata in the metadata store before actual data redistribution occurs. Ingestion routers can proactively fetch and cache partition metadata, preparing the routing structure in advance to minimize latency during the actual split operation.
Solution Approach 2:
The patent replaces the mechanical propagation of partition metadata through multiple router instances with a centralized metadata store that provides on-demand access. This substitution eliminates the time-consuming chain of metadata updates across distributed routers, reducing latency by allowing routers to independently retrieve current partition information.
3Reliability
If partition metadata is propagated to all ingestion routers, then routing consistency is improved, but network overhead and processing time increase
Solution Approach 1:
The centralized metadata store serves as an intermediary that provides routing consistency without requiring widespread propagation of metadata updates. Ingestion routers query the metadata store as needed, ensuring they receive consistent partition information without the overhead of maintaining synchronized copies across all nodes.
Solution Approach 2:
The patent enables ingestion routers to self-serve by allowing them to independently query and retrieve partition metadata from the centralized metadata store. This self-service approach eliminates the need for passive metadata propagation, reducing network overhead and processing time while maintaining routing consistency.
4Productivity
If data is reassigned from parent partition to sub-partitions, then load balancing is improved, but data routing complexity and inconsistency increase
Solution Approach 1:
The patent segments the parent partition into multiple child partitions with clearly defined data ranges, enabling systematic load balancing. Each child partition handles a specific portion of the data space, simplifying the routing logic despite the increased number of partitions by providing structured data distribution.
Solution Approach 2:
The centralized metadata store acts as an intermediary that manages the complexity of data reassignment during partition splits. It maintains the authoritative mapping between data keys and partition locations, allowing ingestion routers to perform simple key-based lookups rather than managing complex reassignment logic themselves.
Data Source
AI summary
Methods, systems, and computer-readable media for partition splitting in a distributed database are disclosed. A partition of data is split into a first sub-partition and a second sub-partition. A first portion of the data is assigned to the first sub-partition, and a second portion of the data is assigned to the second sub-partition. One or more elements of the first portion of the data from the partition and an additional one or more elements of the first portion of the data from the first sub-partition are stored into a first node. One or more elements of the second portion of the data from the partition and an additional one or more elements of the second portion of the data from the second sub-partition are stored into a second node. The partition is prevented from receiving new data after the partition is split into the first and second sub-partitions.


