Replica-aware routing public beta
2 days ago
- ClickHouse中的临时表和命名会话仅存在于创建它们的副本上,导致后续查询在负载均衡到另一个副本时失败。
- 副本感知路由通过持续将请求发送到同一副本来解决此问题,从而允许访问会话范围的对象并实现写后读一致性。
- 在HTTP上,使用标头`X-ClickHouse-Replica-Tag`;在原生连接上,使用路由键覆盖SNI值。
- 关键用例包括维护临时表/会话、保持副本缓存预热以提高性能,以及为交互式应用和ETL作业确保写后读一致性。
- 该功能通过Istio和Envoy实现,对提供的标签或SNI值进行一致性哈希。
- 注意事项:粘性是最佳努力(受升级/重启/扩展影响),不是工作负载隔离,且仅限于企业级计划。