Geodata Sharding for Server Load Balancing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The increasing volume of map data poses challenges in searching and serving map data to a high volume of users, as it exceeds the limitations of random access memory (RAM) and requires distribution across multiple machines while ensuring all required data is accessible on the same machine for efficient response times.

Innovation Solution

The method involves sharding geodata based on geographical divisions, distributing it among multiple servers, and using a content switch to route requests efficiently and balance server loads by determining the relevant shard and server for each request based on geographic coordinates.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If map data is stored on a single machine's RAM, then response time is fast, but the system cannot handle the increasing volume of map data

Engineering Contradiction:
Improveresponse timeVSAvoidvolume of map data
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The patent divides the large volume of map data into smaller shards distributed across multiple servers. Each server stores a portion of the data in its RAM, enabling fast access within each shard while collectively handling the entire dataset across the distributed system.

Inventive Principle:
Principle #1Segmentation

2Quantity of substance

If map data is distributed across multiple machines, then the system can handle larger data volumes, but response time decreases due to data location complexity

Engineering Contradiction:
Improvevolume of map dataVSAvoidresponse time
Core Design Contradiction:
Quantity of substanceVSSpeed

Solution Approach 1:

The patent implements geo-sharding where each server is assigned specific geographic regions and stores all data related to those regions locally in RAM. This ensures that when a user requests data for a particular location, the serving server already has all required data locally available, eliminating the need to search across multiple machines and maintaining fast response times.

Inventive Principle:
Principle #3Local quality

3Productivity

If all map data is loaded into RAM, then searching is efficient, but the cost and memory limitations make it impractical

Engineering Contradiction:
Improvesearching efficiencyVSAvoidmemory capacity
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent segments the large dataset into smaller manageable shards that fit within the RAM capacity of individual servers. Each server loads its assigned shard into memory, achieving efficient searching within that shard while the distributed architecture collectively handles the entire large dataset across multiple machines.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS8850013B2Server load balancing using geodata
Publication Date: 2014.09.30 APPLE INC
  • US8850013B2 patent drawing
  • US8850013B2 patent drawing
  • US8850013B2 patent drawing

AI summary

The present technology relates to serving geodata based on location of a requesting device. More specifically, the technology efficiently services requests for geodata, e.g., map data, by directing requests to a server that stores a shard of an entire database of geodata. A request for geodata includes an unencrypted header having a location of a device making the request for geodata. The present technology relates the location to a shard storing data relevant to the location.