Join-Partitioning for Local Query Computability in Shared-Nothing Clusters
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional distributed relational databases face significant communication costs and scalability bottlenecks due to dynamic repartitioning during query processing in shared-nothing clusters, especially when managing large datasets across hundreds or thousands of hosts.
Innovation Solution
The introduction of join-partitioning, which partitions database relations based on their dependencies to enable local computability of queries on each host, eliminating the need for data transmission between hosts and minimizing communication costs by allowing queries to be executed independently on each host.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If dynamic repartitioning is used during query processing, then query results can be obtained from distributed data, but communication costs increase significantly and network becomes the bottleneck
Solution Approach 1:
The patent applies preliminary action by pre-partitioning data into partitions and pre-establishing join partitions before query execution. This allows queries to be executed locally on host nodes without requiring dynamic data repartitioning during query processing, thereby eliminating the communication overhead associated with dynamic repartitioning while maintaining query processing capability.
2Ease of operation
If data is shipped to central host for query processing, then query can be executed, but communication overhead and network bottleneck increase
Solution Approach 1:
The patent implements self-service by enabling each host node to independently execute queries on its local data partitions without requiring coordination or data shipping to a central host. Each host serves itself by executing queries locally using the pre-established join partitions, eliminating network communication overhead while maintaining ease of query execution.
3Quantity of substance
If conventional partitioning architectures are used, then data can be distributed across hosts, but significant data movements are required and scalability is limited
Solution Approach 1:
The patent applies segmentation by dividing data into distinct partitions and establishing join partitions that enable local query execution. This segmentation allows each host to process queries independently on its local data without requiring data movement, thereby maintaining data distribution while enabling linear scalability across hundreds or thousands of hosts.
Data Source
AI summary
The present invention addresses the problem of partitioning database relations across a plurality of hosts in a shared-nothing cluster while minimizing communication costs. A new partitioning approach for database relations—join-partitioning—is introduced that focuses on relations and their dependencies to a priori partition the plurality of relations to the plurality of hosts such that each host can locally compute a large class of queries over its partitioned data in isolation at query time, independent of other hosts in the cluster. Such an approach thus overcomes the primary bottleneck, i.e., the network, in deploying database systems over shared-nothing clusters by allowing them to seamlessly scale linearly to tens of thousands of hosts and manage tens or hundreds of terabytes of data.


