ClickHouse / ClickHouse/ClickHouse
Geo-aware data fetching from replica
- 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
Assessment
This issue has not been assessed yet.