

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 步驟 3：設定資料表的輸送量容量
<a name="bulk-upload-capacity"></a>

本教學課程說明如何調校 cqlsh，以在設定的時間範圍內載入資料。由於您知道預先執行的讀取和寫入數量，請使用佈建容量模式。完成資料傳輸後，您應該設定資料表的容量模式，以符合應用程式的流量模式。若要進一步了解容量管理，請參閱 [在 Amazon Keyspaces 中管理無伺服器資源 （適用於 Apache Cassandra)](serverless_resource_management.md)。

使用佈建容量模式時，您可以指定要預先佈建至資料表的讀取和寫入容量。寫入容量會以每小時計費，並以寫入容量單位 (WCUs計量。每個 WCU 都有足夠的寫入容量，可支援每秒寫入 1 KB 的資料。當您載入資料時，寫入速率必須低於目標資料表上設定的最大 WCUs（參數：`write_capacity_units`)。

根據預設，您最多可以將 40，000 WCUs 佈建到 資料表，並在您帳戶中所有資料表中佈建 80，000 WCUs。如果您需要額外的容量，您可以在 [ Service Quotas](https://console.aws.amazon.com/servicequotas/home#!/services/cassandra/quotas) 主控台中請求增加配額。如需配額的詳細資訊，請參閱 [Amazon Keyspaces 配額 （適用於 Apache Cassandra)](quotas.md)。

**計算插入所需的 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` CQL 命令時設定資料表的寫入容量設定。以下是使用 `ALTER TABLE` CQL 陳述式修改資料表佈建容量設定的語法。

```
ALTER TABLE mykeyspace.mytable WITH custom_properties={'capacity_mode':{'throughput_mode': 'PROVISIONED', 'read_capacity_units': 100, 'write_capacity_units': 278}} ; 
```

如需完整的語言參考，請參閱 [ALTER TABLE](cql.ddl.table.md#cql.ddl.table.alter)。