ClickHouse / ClickHouse/ClickHouse

Geo-aware data fetching from replica

Open
#52,398 3 comments 0 reactions 0 assignees View on GitHub
comp-replication external feature
Dominant language
C++
Stars
49.9k
Forks
9k
Avg merge
21h 32m
Merged PRs (30d)
515

Description

Let say, we a cluster with 3 replicas, one in Asia and two in NA. Is there anyway to force the replicas in NA to only fetch parts from the other replica in NA instead of the Asia one? This will reduce the network cost significantly.

Example: we have 3 replica ASIA1, NA1, NA2. When inserting data to ASIA1, we don't want NA1 and NA2 to concurrently fetch from ASIA1, but NA1 will fetch first from ASIA1, then NA2 will fetch from NA1 only.

I've been searching the issues list but there's no discussion before this issue. One of my idea is similar to hedged read: to fetch a part, we first open connections to all possible replicas, then select the one with easiest response. This can somehow provide a sense of location-aware. But we still need to control the replica flow.

Appreciate for any advices 🙏

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.