

# 使用 NoSQL Workbench 浏览数据集和生成操作
<a name="workbench.querybuilder"></a>

NoSQL Workbench for Amazon DynamoDB 为开发和测试查询提供了一个丰富的图形用户界面。您可以使用 NoSQL Workbench 中的操作生成器来查看、浏览和查询实时数据集。结构化操作生成器支持投影表达式、条件表达式，并生成多种语言的示例代码。您可以直接将表从一个 Amazon DynamoDB 账户克隆到不同区域的另一个账户。您还可以直接在 DynamoDB local 账户和 Amazon DynamoDB 账户之间克隆表，以便在开发环境之间更快地复制表的键架构（以及可选的 GSI 架构和项目）。您可以在操作生成器中保存多达 50 个 DynamoDB 数据操作。

**Topics**
+ [连接到实时数据集](workbench.querybuilder.connect.md)
+ [生成复杂操作](workbench.querybuilder.operationbuilder.md)
+ [使用 NoSQL Workbench 克隆表](workbench.querybuilder.cloning-tables.md)
+ [将数据导出到 CSV 文件](workbench.querybuilder.exportcsv.md)

# 连接到实时数据集
<a name="workbench.querybuilder.connect"></a>

要使用 NoSQL Workbench 连接到您的 Amazon DynamoDB 表，必须首先连接到您的 AWS 账户。

**添加与数据库的连接**

1. 在 NoSQL Workbench 的左侧导航窗格中，选择**操作生成器**图标。

1. 选择**添加连接**。

1. 指定以下信息：
   + **连接名称**：
   + **AWS 区域**
   + **访问密钥 ID**
   + **秘密访问密钥**

   有关如何获取访问密钥的更多信息，请参阅[获取 AWS 访问密钥](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/SettingUp.DynamoWebService.html#SettingUp.DynamoWebService.GetCredentials)。

   您可以选择指定以下内容：
   + [https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html)
   + [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-arns](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-arns)

1. 选择**连接**。

    如果您不想注册免费套餐账户，而更愿意使用 [DynamoDB Local（可下载版本）](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DynamoDBLocal.html)，则执行下列操作：

   1. 在连接屏幕上选择**本地**选项卡。

   1. 指定以下信息：
      + **连接名称**：
      + **端口**

   1. 选择**连接**按钮。
**注意**  
要连接到 DynamoDB local，请使用终端手动启动 DynamoDB local（参见[在计算机上部署 DynamoDB local](DynamoDBLocal.DownloadingAndRunning.md)），或者使用 NoSQL Workbench 导航菜单中的 DDB local 开关直接启动 DynamoDB local。确保连接端口与您的 DynamoDB local 端口相同。

1. 在创建的连接上，选择**打开**。

在连接到 DynamoDB 数据库后，将在左侧窗格中显示可用表的列表。选择其中一个表可返回存储在表中的数据示例。

现在，您可以对选定表运行查询。

要对表运行查询，请参阅下一部分[生成复杂操作](workbench.querybuilder.operationbuilder.md)中有关构建操作的内容。

# 生成复杂操作
<a name="workbench.querybuilder.operationbuilder"></a>

NoSQL Workbench for Amazon DynamoDB 中的操作生成器提供了一个直观界面，您可以在其中执行复杂的数据层面操作。该界面包含对投影表达式和条件表达式的支持。生成操作后，您可以将其保存以供以后使用（最多可以保存 50 个操作）。然后，可以在**保存的操作**菜单中浏览常用数据层面操作的列表，然后使用它们自动填充和生成新操作。此外，您还可以选择使用多种语言为这些操作生成示例代码。

NoSQL Workbench 支持生成 [PartiQL](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ql-reference.html) for DynamoDB 语句，允许使用与 SQL 兼容的查询语言与 DynamoDB 进行交互。NoSQL Workbench 还支持生成 DynamoDB CRUD API 操作。

要使用 NoSQL Workbench 生成操作，在左侧导航窗格中，选择**操作生成器**图标。

**Topics**
+ [生成 PartiQL 语句](workbench.querybuilder.partiql.md)
+ [生成 API 操作](workbench.querybuilder.operationbuilder.api.md)

# 生成 PartiQL 语句
<a name="workbench.querybuilder.partiql"></a>

要使用 NoSQL Workbench 生成 [PartiQL for DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ql-reference.html) 语句，请选择靠近 NoSQL Workbench UI 顶部的 **PartiQL 编辑器**。

您可以在操作生成器中生成以下 PartiQL 语句类型。

**Topics**
+ [单例语句](#workbench.querybuilder.partiql.single)
+ [事务](#workbench.querybuilder.partiql.transaction)
+ [批处理](#workbench.querybuilder.partiql.batch)

## 单例语句
<a name="workbench.querybuilder.partiql.single"></a>

要为 PartiQL 语句运行或生成代码，请执行以下操作。

1. 选择靠近窗口顶部的 **PartiQL 编辑器**。

1. 输入有效的 [PartiQL 语句](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ql-reference.statements.html)。

1. 如果您的语句使用参数：

   1. 选择**可选请求参数**。

   1. 选择**添加新参数**。

   1. 输入属性类型和值。

   1. 如果要添加其他参数，请重复步骤 b 和 c。

1. 如果要生成代码，请选择**生成代码**。

   从显示的选项卡中选择所需的语言。现在，您便可复制此代码并在应用程序中使用它。

1. 如果要立即执行操作，请选择**执行**。

1. 如果要保存此操作以供日后使用，选择**保存操作**。然后输入操作的名称并选择**保存**。

## 事务
<a name="workbench.querybuilder.partiql.transaction"></a>

要为 PartiQL 事务运行或生成代码，请执行以下操作。

1. 从**更多操作**下拉列表中选择 **PartiQLTransaction**。

1. 选择**添加新语句**。

1. 输入有效的 [PartiQL 语句](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ql-reference.statements.html)。
**注意**  
同一个 PartiQL 事务请求不同时支持读取和写入操作。SELETE 语句不能与 INSERT、UPDATE 和 DELETE 语句在同一请求中。请参阅[使用 PartiQL for DynamoDB 执行事务](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ql-reference.multiplestatements.transactions.html)以了解更多信息。

1. 如果您的语句使用参数

   1. 选择**可选请求参数**。

   1. 选择**添加新参数**。

   1. 输入属性类型和值。

   1. 如果要添加其他参数，请重复步骤 b 和 c。

1. 如果要添加更多语句，请重复步骤 2 至 4。

1. 如果要生成代码，请选择**生成代码**。

   从显示的选项卡中选择所需的语言。现在，您便可复制此代码并在应用程序中使用它。

1. 如果要立即执行操作，请选择**执行**。

1. 如果要保存此操作以供日后使用，选择**保存操作**。然后输入操作的名称并选择**保存**。

## 批处理
<a name="workbench.querybuilder.partiql.batch"></a>

要为 PartiQL 批处理运行或生成代码，请执行以下操作。

1. 从**更多操作**下拉列表中选择 **PartiQLBatch**。

1. 选择**添加新语句**。

1. 输入有效的 [PartiQL 语句](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ql-reference.statements.html)。
**注意**  
 同一个 PartiQL 批处理请求不同时支持读取和写入操作，这意味着 SELECT 语句不能与 INSERT、UPDATE 和 DELETE 语句位于同一请求中。不允许对同一项进行写入操作。与 BatchGetItem 操作一样，只支持单例读取操作。不支持扫描和查询操作。请参阅[使用 PartiQL for DynamoDB 运行批处理操作](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ql-reference.multiplestatements.batching.html)以了解更多信息。

1. 如果您的语句使用参数：

   1. 选择**可选请求参数**。

   1. 选择**添加新参数**。

   1. 输入属性类型和值。

   1. 如果要添加其他参数，请重复步骤 b 和 c。

1. 如果要添加更多语句，请重复步骤 2 至 4。

1. 如果要生成代码，请选择**生成代码**。

   从显示的选项卡中选择所需的语言。现在，您便可复制此代码并在应用程序中使用它。

1. 如果要立即执行操作，请选择**执行**。

1. 如果要保存此操作以供日后使用，选择**保存操作**。然后输入操作的名称并选择**保存**。

# 生成 API 操作
<a name="workbench.querybuilder.operationbuilder.api"></a>

要使用 NoSQL Workbench 生成 DynamoDB CRUD API，请选择 NoSQL Workbench 用户界面左侧的**操作生成器**。

然后选择**打开**并选择一个连接。

您可以在操作生成器中执行以下操作：
+ [删除表](#workbench.querybuilder.operationbuilder.DeleteTable)
+ [创建表](#workbench.querybuilder.operationbuilder.CreateTable)
+ [更新表](#workbench.querybuilder.operationbuilder.UpdateTable)
+ [放置项目](#workbench.querybuilder.operationbuilder.Put)
+ [更新项目](#workbench.querybuilder.operationbuilder.update)
+ [删除项目](#workbench.querybuilder.operationbuilder.Delete)
+ [Query](#workbench.querybuilder.operationbuilder.Query)
+ [Scan](#workbench.querybuilder.operationbuilder.scan)
+ [事务处理获取项目](#workbench.querybuilder.operationbuilder.transactget)
+ [事务处理写入项目](#workbench.querybuilder.operationbuilder.transactwrite)

## 删除表
<a name="workbench.querybuilder.operationbuilder.DeleteTable"></a>

要运行 `Delete Table` 操作，请完成以下步骤。

1. 在**表**部分中找到要删除的表。

1. 从水平省略号菜单中选择**删除表**。

1. 输入**表名称**来确认您要删除该表。

1. 选择**删除**。

有关此操作的更多信息，请参阅《Amazon DynamoDB API 参考》**中的[删除表](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DeleteTable.html)。

## 删除 GSI
<a name="workbench.querybuilder.operationbuilder.DeleteGSI"></a>

要运行 `Delete GSI` 操作，请完成以下步骤。

1. 在**表**部分中找到要删除的表的 GSI。

1. 从水平省略号菜单中选择**删除 GSI**。

1. 输入 **GSI 名称**来确认您要删除该 GSI。

1. 选择**删除**。

有关此操作的更多信息，请参阅《Amazon DynamoDB API 参考》**中的[删除表](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DeleteTable.html)。

## 创建表
<a name="workbench.querybuilder.operationbuilder.CreateTable"></a>

要运行 `Create Table` 操作，请完成以下步骤。

1. 选择**表**部分旁边的 **\$1** 图标。

1. 输入所需的表名称。

1. 创建分区键。

1. 可选：创建排序键。

1. 要自定义容量设置，请取消选中**使用默认容量设置**旁边的复选框。
   + 现在，您可以选择**已预置**或**按需容量**。

     选中“已预置”后，您可以设置最小和最大读取和写入容量单位。您还可以启用或禁用自动扩缩。
   + 如果表当前设置为“按需”，您将无法指定预置吞吐量。
   + 如果您从“按需”切换到“已预置”吞吐量，则自动扩缩将自动应用于所有 GSI，其中，最小值：1，最大值：10；目标：70%。

1. 选择**跳过 GSI 并创建**可创建此表而不创建 GSI。或者，您可以选择**下一步**以创建 GSI 以及此新表。

有关此操作的更多信息，请参阅《Amazon DynamoDB API 参考》**中的[创建表](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_CreateTable.html)。

## 创建 GSI
<a name="workbench.querybuilder.operationbuilder.CreateGSI"></a>

要运行 `Create GSI` 操作，请完成以下步骤。

1. 找到要添加 GSI 的表。

1. 从水平省略号菜单中，选择**创建 GSI**。

1. 在**索引名称**下为 GSI 命名。

1. 创建分区键。

1. 可选：创建排序键。

1. 从下拉列表中选择投影类型选项。

1. 选择**创建 GSI**。

有关此操作的更多信息，请参阅《Amazon DynamoDB API 参考》**中的[创建表](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_CreateTable.html)。

## 更新表
<a name="workbench.querybuilder.operationbuilder.UpdateTable"></a>

要使用 `Update Table` 操作更新表的容量设置，请执行以下步骤。

1. 找到您要更新容量设置的表。

1. 从水平省略号菜单中，选择**更新容量设置**。

1. 选择**已预置**或**按需容量**。

   选中**已预置**后，您可以设置最小和最大读取和写入容量单位。您还可以启用或禁用自动扩缩。

1. 选择**更新**。

有关此操作的更多信息，请参阅《Amazon DynamoDB API 参考》**中的[更新表](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UpdateTable.html)。

## 更新 GSI
<a name="workbench.querybuilder.operationbuilder.UpdateGSI"></a>

要使用 `Update Table` 操作更新 GSI 的容量设置，请执行以下步骤。

**注意**  
默认情况下，全局二级索引继承基表的容量设置。仅当基表采用已预置容量模式时，各个全局二级索引才能具有不同的容量模式。在预置模式表创建全局二级索引时，必须根据该索引的预期工作负载指定读取和写入容量单位。有关更多信息，请参阅 [全局二级索引的预调配吞吐量注意事项](GSI.md#GSI.ThroughputConsiderations)。

1. 找到您要更新容量设置的 GSI。

1. 从水平省略号菜单中，选择**更新容量设置**。

1. 现在，您可以选择**已预置**或**按需容量**。

   选中**已预置**后，您可以设置最小和最大读取和写入容量单位。您还可以启用或禁用自动扩缩。

1. 选择**更新**。

有关此操作的更多信息，请参阅《Amazon DynamoDB API 参考》**中的[更新表](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UpdateTable.html)。

## 放置项目
<a name="workbench.querybuilder.operationbuilder.Put"></a>

您可以使用 `Put Item` 操作创建项目。要为 `Put Item` 操作执行或生成代码，请执行以下操作。

1. 找到您要在其中创建项目的表。

1. 从**操作**下拉列表中，选择**创建项目**。

1. 输入分区键值。

1. 输入排序键值（如果存在）。

1. 如果要添加非键属性，请执行以下操作：

   1. 选择 **\$1 添加其他属性**。

   1. 指定**属性名称**、**类型**和**值**。

1. 如果必须满足条件表达式 `Put Item` 操作才能成功，请执行以下操作：

   1. 选择**条件**。

   1. 指定属性名称、比较运算符、属性类型和属性值。

   1. 如果需要其他条件，请再次选择**条件**。

   有关更多信息，请参阅 [DynamoDB 条件表达式 CLI 示例](Expressions.ConditionExpressions.md)。

1. 如果要生成代码，请选择**生成代码**。

   从显示的选项卡中选择所需的语言。现在，您便可复制此代码并在应用程序中使用它。

1. 如果要立即执行操作，请选择**执行**。

1. 如果要保存此操作以供日后使用，选择**保存操作**，然后输入操作的名称，选择**保存**。

有关此操作的更多信息，请参见 *Amazon DynamoDB API 参考*的 [PutItem](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_PutItem.html)。

## 更新项目
<a name="workbench.querybuilder.operationbuilder.update"></a>

要为 `Update Item` 操作执行或生成代码，请执行以下操作：

1. 找到您要在其中更新项目的表。

1. 选择项目。

1. 输入选定表达式的属性名称和属性值。

1. 如果要添加更多表达式，请在**更新表达式**下拉列表中选择另一个表达式，然后选择 **\$1** 图标。

1. 如果必须满足条件表达式 `Update Item` 操作才能成功，请执行以下操作：

   1. 选择**条件**。

   1. 指定属性名称、比较运算符、属性类型和属性值。

   1. 如果需要其他条件，请再次选择**条件**。

   有关更多信息，请参阅 [DynamoDB 条件表达式 CLI 示例](Expressions.ConditionExpressions.md)。

1. 如果要生成代码，请选择**生成代码**。

   选择所需语言的选项卡。现在，您便可复制此代码并在应用程序中使用它。

1. 如果要立即执行操作，请选择**执行**。

1. 如果要保存此操作以供日后使用，选择**保存操作**，然后输入操作的名称，选择**保存**。

有关此操作的更多信息，请参见 *Amazon DynamoDB API 参考*的 [UpdateItem](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UpdateItem.html)。

## 删除项目
<a name="workbench.querybuilder.operationbuilder.Delete"></a>

要运行 `Delete Item` 操作，请完成以下步骤。

1. 找到您要从中删除项目的表。

1. 选择项目。

1. 从**操作**下拉列表中，选择**删除项目**。

1. 选择**删除**以确认您要删除相应项目。

有关此操作的更多信息，请参见 *Amazon DynamoDB API 参考*的 [DeleteItem](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DeleteItem.html)。

## 重复项目
<a name="workbench.querybuilder.operationbuilder.Duplicate"></a>

您可以创建一个具有相同属性的新项目，从而复制项目。要复制项目，请执行以下操作。

1. 找到您要在其中复制项目的表。

1. 选择项目。

1. 从**操作**下拉列表中，选择**重复项目**。

1. 指定新的分区键。

1. 指定新的排序键（如果需要）。

1. 选择**运行**。

有关此操作的更多信息，请参见 *Amazon DynamoDB API 参考*的 [DeleteItem](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DeleteItem.html)。

## 查询
<a name="workbench.querybuilder.operationbuilder.Query"></a>

要为 `Query` 操作执行或生成代码，请执行以下操作。

1. 从 NoSQL Workbench UI 的顶部选择**查询**。

1. 指定分区键值。

1. 如果 `Query` 操作需要排序键，请执行以下操作：

   1. 选择**排序键**。

   1. 指定比较运算符和属性值。

1. 选择**查询**以运行此查询操作。如果需要更多选项，请选中**更多选项**复选框，然后继续执行以下步骤。

1. 如果并非所有属性都应与操作结果一起返回，请选择**投影表达式**。

1. 选择 **\$1** 图标。

1. 输入要与查询结果一起返回的属性。

1. 如果需要更多属性，请选择 **\$1**。

1. 如果必须满足条件表达式 `Query` 操作才能成功，请执行以下操作：

   1. 选择**条件**。

   1. 指定属性名称、比较运算符、属性类型和属性值。

   1. 如果需要其他条件，请再次选择**条件**。

   有关更多信息，请参阅 [DynamoDB 条件表达式 CLI 示例](Expressions.ConditionExpressions.md)。

1. 如果要生成代码，请选择**生成代码**。

   选择所需语言的选项卡。现在，您便可复制此代码并在应用程序中使用它。

1. 如果要立即执行操作，请选择**执行**。

1. 如果要保存此操作以供日后使用，选择**保存操作**，然后输入操作的名称，选择**保存**。

有关此操作的更多信息，请参见 *Amazon DynamoDB API 参考*的 [Query](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Query.html)。

## Scan
<a name="workbench.querybuilder.operationbuilder.scan"></a>

要为 `Scan` 操作执行或生成代码，请执行以下操作。

1. 从 NoSQL Workbench UI 的顶部选择**扫描**。

1. 选择**扫描**按钮以执行此基本扫描操作。如果需要更多选项，请选中**更多选项**复选框，然后继续执行以下步骤。

1. 指定属性名称可筛选扫描结果。

1. 如果并非所有属性都应与操作结果一起返回，请选择**投影表达式**。

1. 如果必须满足条件表达式扫描操作才能成功，请执行以下操作：

   1. 选择**条件**。

   1. 指定属性名称、比较运算符、属性类型和属性值。

   1. 如果需要其他条件，请再次选择**条件**。

   有关更多信息，请参阅 [DynamoDB 条件表达式 CLI 示例](Expressions.ConditionExpressions.md)。

1. 如果要生成代码，请选择**生成代码**。

   选择所需语言的选项卡。现在，您便可复制此代码并在应用程序中使用它。

1. 如果要立即执行操作，请选择**执行**。

1. 如果要保存此操作以供日后使用，选择**保存操作**，然后输入操作的名称，选择**保存**。

## TransactGetItems
<a name="workbench.querybuilder.operationbuilder.transactget"></a>

要为 `TransactGetItems` 操作执行或生成代码，请执行以下操作。

1. 从 NoSQL Workbench UI 顶部的**更多操作**下拉列表中，选择 **TransactGetItems**。

1. 选择 **TransactGetItem** 旁边的 **\$1** 图标。

1. 指定分区键。

1. 指定排序键（如果需要）。

1. 选择**运行**可执行操作，选择**保存操作**可进行保存，或者选择**生成代码**可为操作生成代码。

有关事务的更多信息，请参阅 [Amazon DynamoDB Transactions](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/transactions.html)。

## TransactWriteItems
<a name="workbench.querybuilder.operationbuilder.transactwrite"></a>

要为 `TransactWriteItems` 操作执行或生成代码，请执行以下操作。

1. 从 NoSQL Workbench UI 顶部的**更多操作**下拉列表中，选择 **TransactWriteItems**。

1. 从**操作**下拉列表中选择一个操作。

1. 选择 **TransactWriteItem** 旁边的 **\$1** 图标。

1. 在**操作**下拉列表中，选择您要执行的操作。
   + 对于 `DeleteItem`，按照 [删除项目](#workbench.querybuilder.operationbuilder.Delete) 操作的说明操作。
   + 对于 `PutItem`，按照 [放置项目](#workbench.querybuilder.operationbuilder.Put) 操作的说明操作。
   + 对于 `UpdateItem`，按照 [更新项目](#workbench.querybuilder.operationbuilder.update) 操作的说明操作。

   要更改操作的顺序，请在左侧列表中选择一项操作，然后选择向上或向下箭头以在列表中将其上移或下移。

   要删除一项操作，请在列表中选择该操作，然后选择**删除**（垃圾桶）图标。

1. 选择**运行**可执行操作，选择**保存操作**可进行保存，或者选择**生成代码**可为操作生成代码。

有关事务的更多信息，请参阅 [Amazon DynamoDB Transactions](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/transactions.html)。

# 使用 NoSQL Workbench 克隆表
<a name="workbench.querybuilder.cloning-tables"></a>

克隆表将在您的开发环境之间复制表的键架构（以及可选的 GSI 架构和项目）。您可以将表从 DynamoDB local 克隆到 Amazon DynamoDB 账户，甚至可以将表从一个账户克隆到不同区域中的另一个账户，以便更快地进行实验。

**克隆表**

1. 在**操作生成器**中，选择您的连接和区域（DynamoDB local 不支持区域选择）。

1. 连接到 DynamoDB 后，浏览表，然后选择要克隆的表。

1. 从水平省略号菜单中，选择**克隆**选项。

1. 输入您的克隆目标详细信息：

   1. 选择连接。

   1. 选择一个区域（区域不适用于 DynamoDB local）。

   1. 输入新的表名称。

   1. 选择克隆选项：

      1. 默认情况下，**键架构**处于选中状态，无法取消选择。默认情况下，克隆表将复制您的主键和排序键（如果有）。

      1. 如果要克隆的表具有 GSI，则默认情况下会选择 **GSI 架构**。克隆表将复制您的 GSI 主键和排序键（如果有）。您可以选择取消选择 GSI 架构以跳过克隆 GSI 架构。克隆表会将基表的容量设置复制为 GSI 的容量设置。克隆完成后，您可以使用操作生成器中的 `UpdateTable` 操作来更新表的 GSI 容量设置。

1. 输入要克隆的项目数量。要仅克隆键架构和可选的 GSI 架构，可以将**要克隆的项目**值保持为 0。可以克隆的最大项目数为 5000。

1. 选择容量模式：

   1. 默认情况下，系统将选择**按需模式**。DynamoDB on-demand 针对读写请求提供按请求支付定价，只需为使用的资源付费。要了解更多信息，请参阅 [DynamoDB 按需模式](capacity-mode.md#capacity-mode-on-demand)。

   1. **预置模式**允许您为应用程序指定需要的每秒读取和写入次数。您可以使用自动扩缩根据流量变化自动调整表的预置容量。要了解更多信息，请参阅 [DynamoDB 预置模式](provisioned-capacity-mode.md)。

1. 选择**克隆**开始克隆。

1. 克隆过程将在后台运行。当克隆表状态发生变化时，**操作生成器**选项卡将显示一条通知。您可以通过选择**操作生成器**选项卡，然后选择箭头按钮来访问此状态。箭头按钮位于菜单侧栏底部附近的克隆表状态控件上。

# 将数据导出到 CSV 文件
<a name="workbench.querybuilder.exportcsv"></a>

您可以将操作生成器中的查询结果导出到 CSV 文件。这样就能够将数据加载到电子表格中，或使用首选编程语言对其进行处理。

**导出到 CSV**

1. 在操作生成器中，运行您选择的操作，例如扫描或查询。
**注意**  
您只能将读取 API 操作和 PartiQL 语句的结果导出到 CSV 文件中。您无法从事务读取语句中导出结果。
目前，您可以一次一页将结果导出到 CSV 文件。如果有多页结果，则必须单独导出每页。

1. 选择要从结果中导出的项目。

1. 在**操作**下拉列表中，选择**导出为 CSV**。

1. 选择 CSV 文件的文件名和位置，然后选择**保存**。