Dynamic Shard Allocation for Near Real-Time Query Load Balancing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing shard management techniques in near real-time search platforms lack the ability to dynamically adapt to evolving cluster conditions, leading to suboptimal performance and resource imbalances due to their reliance on predefined criteria and lack of real-time query load analysis.

Innovation Solution

Dynamic shard allocation in a near real-time search platform involves real-time assessment of query load distribution across nodes, identifying high and low query load shards, and exchanging them to balance the query load, without relying on cluster-level node configurations or static ranking criteria.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If predefined criteria and static ranking methods are used for shard allocation, then device complexity is reduced, but query load balancing performance deteriorates

Engineering Contradiction:
Improveshard allocation mechanism complexityVSAvoidquery load balancing performance
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent implements dynamic shard allocation by continuously monitoring query load metrics and automatically adjusting shard distribution based on real-time conditions. The system transitions from static predefined criteria to dynamic adaptive allocation, where shard positions are recalculated and reassigned based on current cluster state, ensuring optimal performance without manual intervention

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system establishes a feedback loop by continuously measuring query load distribution across nodes and using this information to drive shard allocation decisions. The monitoring component collects real-time metrics, the determination component analyzes imbalances, and the redistribution component acts on this feedback to correct imbalances, creating a closed-loop control system that automatically optimizes performance

Inventive Principle:
Principle #23Feedback

2Productivity

If real-time query load assessment and dynamic shard exchange are implemented, then query load balancing performance is improved, but device complexity increases

Engineering Contradiction:
Improvequery load balancing performanceVSAvoidshard allocation mechanism complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent divides the complex shard allocation task into distinct functional components: a monitoring component that collects query load metrics, a determination component that analyzes imbalance conditions, and a redistribution component that executes shard moves. This segmentation allows each component to specialize in a specific aspect of the allocation process, managing complexity through modular design while achieving real-time dynamic optimization

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system introduces an intermediary shard allocation mechanism that sits between the static shard storage and the dynamic query processing needs. This intermediary layer absorbs the complexity of real-time decision-making and coordination, managing the exchange of shard data between nodes without requiring changes to the underlying storage or query processing systems

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If shards are frequently exchanged based on real-time conditions, then resource utilization is improved, but system stability deteriorates

Engineering Contradiction:
Improveresource utilization efficiencyVSAvoidshard distribution stability
Core Design Contradiction:
ProductivityVSStability of the object's composition

Solution Approach 1:

The system applies preliminary anti-action by implementing thresholds and conditions that prevent shard exchanges unless genuine imbalances are detected. The determination component evaluates multiple criteria before triggering redistribution, and the system monitors for stabilization before and after exchanges, preventing oscillations and ensuring that frequent exchanges only occur when truly necessary for optimization

Inventive Principle:
Principle #9Preliminary anti-action

Data Source

PatentUS12346323B2Dynamic shard allocation in a near real-time search platform
Publication Date: 2025.07.01 EBAY INC
  • US12346323B2 patent drawing
  • US12346323B2 patent drawing
  • US12346323B2 patent drawing

AI summary

Dynamic shard allocation in a near real-time search platform is described. A computing system may include a cluster comprising a plurality of nodes, each node of the plurality of nodes comprising a plurality of shards storing searchable data. A query load distribution of the cluster is assessed in real-time. A first shard of a first node and a second shard of a second node are identified based on the query load distribution. The first shard of the first node is commanded to exchange with the second shard of the second node.