亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

gocql 客戶端如何為任何查詢選擇正確的 Tablet 服務器?

gocql 客戶端如何為任何查詢選擇正確的 Tablet 服務器?

Go
暮色呼如 2022-10-31 15:24:01
yugabyte 集群有 2 個區域,3 個可用區,6 個節點架構。中部4個節點,東部2個節點Node1 (Master, TServer) US-eastNode2 (Master, TServer) US-central-1Node3 (TServer) US-central-1Node4 (TServer) US-eastNode5 (Master, TServer) US-central-2 (Leader)Node6 (TServer) US-central-2應用程序正在中部地區運行。應用程序正在使用當前配置為向 Node2 發送 SQL 查詢的YCQL 驅動程序(yugabyte gocql 客戶端)(僅限)如此處所述: 在許多情況下,此轉發將純粹是本地的,因為 CQL 和 Redis 集群客戶端都能夠將請求發送到正確的服務器并避免額外的網絡躍點。上面關于 CQL 客戶端的說法是指 yugabyte gocql 客戶端嗎?這里它提到:“驅動程序可以將查詢路由到基于分區鍵(首選本地 DC)保存數據副本的節點?!笨蛻舳蓑寗映绦蛉绾沃老蚰膫€平板服務器發送請求?如果是,YCQL 驅動程序的連接配置是否與所有 4 個節點(在中心區域)都有連接,使客戶端驅動程序能夠知道正確的平板服務器,以發送查詢?提高查詢響應時間如果是,Hoes YCQL 驅動程序知道,哪個是發送查詢請求(INSERT/UPDATE/SELECT)的正確平板服務器?
查看完整描述

1 回答

?
隔江千里

TA貢獻1906條經驗 獲得超10個贊

客戶端驅動程序如何知道向哪個平板服務器發送請求?

驅動程序定期查詢此表:

ycqlsh:system> select * from system.partitions;

它在哪里找到表格的拆分方式以及平板電腦的位置。

當您發送查詢時,您以驅動程序理解它們并散列它們并知道將它們發送到哪里的方式傳遞分區鍵。

如果是,YCQL 驅動程序的連接配置是否與所有 4 個節點(在中心區域)都有連接,使客戶端驅動程序能夠知道正確的平板服務器,以發送查詢?提高查詢響應時間

是的。這應該與 DC Aware 查詢路由相結合:https ://pkg.go.dev/github.com/gocql/gocql#hdr-Data_center_awareness_and_query_routing

如果是,Hoes YCQL 驅動程序知道,哪個是發送查詢請求(INSERT/UPDATE/SELECT)的正確平板服務器?

使用與上述相同的邏輯。了解所有集群上的平板電腦位置。


查看完整回答
反對 回復 2022-10-31
  • 1 回答
  • 0 關注
  • 92 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號