本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
本教學課程示範如何調整 DSBulk,以在設定的時間範圍內載入資料。因為您知道預先執行的讀取和寫入數量,請使用佈建容量模式。完成資料傳輸後,您應該設定資料表的容量模式,以符合應用程式的流量模式。若要進一步了解容量管理,請參閱管理 Amazon Keyspaces 中的無伺服器資源 (適用於 Apache Cassandra)。
透過佈建容量模式,您可以指定要預先佈建至資料表的讀取和寫入容量。寫入容量會每小時計費,並以寫入容量單位 (WCUs計量。每個 WCU 都有足夠的寫入容量,可支援每秒寫入 1 KB 的資料。當您載入資料時,寫入速率必須低於目標資料表上設定的最大 WCUs (參數:write_capacity_units
)。
根據預設,您最多可以佈建 40,000 WCUs 到 資料表,以及 80,000 個 WCUs 到您帳戶中所有資料表。如果您需要額外的容量,您可以在 Service Quotas
計算插入所需的 WCUs平均數量
每秒插入 1 KB 的資料需要 1 個 WCU。如果您的 CSV 檔案有 360,000 個資料列,而且您想要在 1 小時內載入所有資料,則必須每秒寫入 100 個資料列 (360,000 個資料列/60 分鐘/60 秒 = 每秒 100 個資料列)。如果每一列最多有 1 KB 的資料,若要每秒插入 100 列,您必須將 100 個 WCUs 佈建至資料表。如果每一列有 1.5 KB 的資料,您需要兩個 WCUs 才能每秒插入一列。因此,若要每秒插入 100 列,您必須佈建 200 WCUs。
若要判斷每秒需要插入一列WCUs 數量,請將平均資料列大小以位元組為單位除以 1024,然後四捨五入到最接近的整數。
例如,如果平均資料列大小為 3000 位元組,則需要三個 WCUs才能每秒插入一個資料列。
ROUNDUP(3000 / 1024) = ROUNDUP(2.93) = 3 WCUs
計算資料載入時間和容量
現在您知道 CSV 檔案中的平均大小和資料列數,您可以計算在指定時間內載入資料所需的 WCUs 數量,以及使用不同 WCU 設定載入 CSV 檔案中所有資料所需的大約時間。
例如,如果您檔案中的每一列都是 1 KB,而且 CSV 檔案中有 1,000,000 列,則若要在 1 小時內載入資料,您需要在該小時內將至少 278 個 WCUs 佈建到資料表。
1,000,000 rows * 1 KBs = 1,000,000 KBs
1,000,000 KBs / 3600 seconds =277.8 KBs / second = 278 WCUs
設定佈建的容量設定
您可以在建立資料表或使用 ALTER TABLE
命令時設定資料表的寫入容量設定。以下是使用 ALTER TABLE
命令變更資料表佈建容量設定的語法。
ALTER TABLE
catalog
.book_awards
WITH custom_properties={'capacity_mode':{'throughput_mode': 'PROVISIONED', 'read_capacity_units': 100, 'write_capacity_units': 278}} ;
如需完整的語言參考,請參閱 CREATE TABLE和 ALTER TABLE。