mapbox / mapbox/osm-wayback

Sharding / Planet Scale

Open
#16 12 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
2
Forks
1
PR merge metrics
No merged PRs in 30d

Description

The bad news is that currently this does not scale to the planet. Not sure what the major bottleneck or problem is here but the indexes stop growing ~ 60GB.

Solutions:
1. Shard geographically?

+ Geographic Indexes make sense; we know where the data should be
- Cannot be guaranteed of size. Will run into the same problems.
- Convoluted geographic boundaries. Even by Country: Germany / France will need to be split into multiple regions within the year

2. Shard by ID & Type?

- Will need to maintain open connections to all databases when reading (and maybe writing, if input file is not perfectly sorted)
+ Better control of size / predictability. 1 Billion Entries per Node DB, 500M entries per Way DB
+ Easy to know what DB to lookup in based on the object type and ID; simpler keys available

Not a major, major priority, but worth investigating.

/cc @lukasmartinelli

Contributor guide

Open the contributing guide

Research direction

The issue names no files, tests, or entry points. Start by investigating why the indexes stop growing at roughly 60GB, then compare geographic and ID/type sharding against the repository's RocksDB design. Done would require a decided, validated sharding approach rather than only further discussion.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
databases, distributed-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.