Multi-Tiered Query Load Balancing with Fan-Out Minimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Social networking sites face inefficiencies in data storage and retrieval due to the distribution of user information across thousands of servers, leading to latency issues and increased complexity in handling simultaneous page requests, which can result in user dissatisfaction if not addressed.

Innovation Solution

A multi-tiered targeted query system is implemented, comprising a web tier, an aggregator tier, and a shard tier, where servers are organized to distribute user data based on relationships, allowing for load balancing by moving databases between servers while minimizing the increase in fan-out, thereby reducing latency and improving user experience.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If user data is distributed across thousands of servers, then data storage capacity and accessibility are improved, but query execution latency and system complexity increase

Engineering Contradiction:
Improvedata storage capacityVSAvoidquery execution latency
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The system segments servers into three distinct tiers: web tier servers handle user requests, aggregator tier servers manage query coordination and data routing, and shard tier servers store and process actual data. This segmentation allows each tier to specialize in specific functions, improving overall query efficiency while maintaining distributed storage capacity across thousands of servers.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The aggregator tier acts as an intermediary between the web tier and shard tier, coordinating queries and routing requests to appropriate shard servers. This intermediary layer reduces latency by intelligently distributing queries across multiple shards and aggregating results, rather than requiring each web server to independently access all data shards.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of information

If multiple queries are executed simultaneously for page requests, then comprehensive data retrieval is improved, but server load and processing time increase

Engineering Contradiction:
Improvedata retrieval completenessVSAvoidserver processing throughput
Core Design Contradiction:
Loss of informationVSProductivity

Solution Approach 1:

The system merges multiple simultaneous queries into consolidated operations at the aggregator tier. When multiple web servers require data from the same shard, the aggregator consolidates these requests into a single query to the shard server, reducing redundant processing and improving overall server throughput while ensuring all required data is retrieved.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The aggregator tier performs preliminary query analysis and optimization before executing requests on shard servers. By pre-processing queries to identify redundancies, optimize execution plans, and prepare aggregation strategies, the system reduces the actual processing time required on shard servers, thereby improving productivity without compromising data retrieval completeness.

Inventive Principle:
Principle #10Preliminary action

3Ease of operation

If databases are moved between servers for load balancing, then server load distribution is improved, but fan-out increase and query complexity worsen

Engineering Contradiction:
Improveserver load distributionVSAvoidquery routing complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The system implements feedback mechanisms that monitor server load, query patterns, and performance metrics in real-time. Based on this feedback, the aggregator dynamically adjusts query routing strategies and database distribution decisions, moving databases between servers only when performance degradation is detected, thereby balancing load while minimizing increases in query routing complexity.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10366110B2Load balancing for multi-tiered querying
Publication Date: 2019.07.30 META PLATFORMS INC
  • US10366110B2 patent drawing
  • US10366110B2 patent drawing
  • US10366110B2 patent drawing

AI summary

Technology is disclosed for establishing a querying system and load balancing the multi-tiered querying system. A multi-tiered targeted query system can comprise three tiers: a web tier, an aggregator tier, and a shard tier. When load balancing of shards is performed, fan-out can occur, increasing latency. The disclosed technology performs load balancing while minimizing the amount fan-out increase. Selecting the databases to move can comprise determining which databases on that server are causing the most load, and determining if moving any of these databases will increase an expected amount of fan-out above an acceptable threshold value. Determining the expected amount of fan-out increase incurred by moving a database can be based on an analysis of a number of friend relationships between that database and other databases on the same or other servers.