1.4.3.1 選擇交易協調器

預設方法是選擇被判定為「最近」的資料節點作為交易協調器 (TC),使用基於傳輸器連線類型的接近性啟發法。依由近至遠的順序,這些如下:

  1. SHM

  2. TCP/IP (localhost)

  3. TCP/IP (遠端主機)

如果有數個具有相同接近性的連線可用,則會以循環方式為每個交易選擇一個連線。或者,您可以將 TC 選擇的方法設定為循環模式,其中每個新的交易集都會放置在下一個資料節點上。進行此選擇的連線池包含所有可用的連線。

第 1.4.3 節「NDB 叢集概念回顧」中所述,應用程式開發人員可以向 NDB API 提供關於應該使用哪個交易協調器的提示。這是通過提供一個表格和一個分割鍵(通常是主鍵)來完成的。如果主鍵是分割鍵,則交易會放置在該記錄的主片段複本所在的節點上。請注意,這僅是一個提示;系統隨時可以重新配置,在這種情況下,NDB API 會選擇一個交易協調器,而不使用提示。如需更多資訊,請參閱 Column::getPartitionKey()Ndb::startTransaction()

應用程式開發人員可以使用以下結構從 SQL 指定分割鍵

CREATE TABLE ... ENGINE=NDB PARTITION BY KEY (attribute_list);

如需更多資訊,請參閱 MySQL 手冊中的分割,特別是KEY 分割