从S3中导入数据到Dynamodb
2014-12-19 19:04
232 查看
本节假设你已经从Dynamodb中导出过数据,并且导出的文件以及被存入S3。
Data Export File 中描述。
我们称之前导出数据的原始表为source table,数据将要被导入的表为destination table。你可以将S3中的导出文件导入到dynamodb的表中,但是要先确保满足下面条件:
The destination table 已经存在。 (导入任务不会为你创建表)
The destination table 与 source table 有相同的名称。
The destination table 与 source table 有相同的结构。
Destination table不一定要是空的。然而,导入进程会替换掉表中有相同主键的数据。例如,你有一个Customer 表,它的主键是CustomerId,并且只有三个items (CustomerId 1, 2, and 3)。如果要导入的文件中同样包含CustomerID 为1,
2, and 3的items,这些在destination table中的items将会被导入文件中的数据替换。如果文件中还包含CustomerId为4的item,那么这个item会被加入到destination table中。
Destination table 可以在不同的AWS region。例如,假设你有个一个 Customer table在US West (Oregon) region,然后将它的数据导出到了Amazon S3中。你可以将它导入到在 EU (Ireland) region中有相同表明,相同主键的表中。这种做法被称为
cross-region 导出和导入。
注意到AWS管理控制台允许你一次导出多个表的数据。但是,不同的是,你一次只能导入一个表。
从S3导入数据到DynamoDB
登陆AWS管理控制台,然后打开dynamodb控制台: https://console.aws.amazon.com/dynamodb/.
(可选) 如果你想做块区域导入,点击右上角的Select a Region 然后选择要导入的表的区域。控制台会显示该区域下的所有表。如果destination table不存在的话,你需要先创建它。
在 Amazon DynamoDB Tables 页面, 点击 Export/Import.
在 Export/Import 页面,选择一个你要导入的表,然后点击 Import into DynamoDB.
在 Create Import Table Data Pipeline 页面,按下面步骤操作:
S3 Input Folder 文本框中输入导入文件对应的 Amazon S3 URI。例如:
:
导入任务会通过指定的S3位置找到对应的文件。
Data Export File 中描述。
在 S3 Log Folder 文本框中输入一个S3 URI,导出过程的日志将被存储在相应的folder中。例如:
S3 Log Folder URI的格式和
S3 Output Folder的格式相同。
在 Throughput Rate 文本框中可选择一个百分比。这个比率表示在导出过程中会消耗读吞吐量的上限。例如,假设你要导出的表的读吞吐量是20,同时你设置的百分比是40%。那么导出时所消耗的吞吐量将不会超过8.
如果你在导出多个表,这个 Throughput Rate 将会被应用到每个表中。
Execution Timeout 文本框,输入导出任务的超时时长。如果导出任务在这个时长内还没执行完成,此任务会失败。
Send notifications to 文本框,输入一个email地址。在 pipeline被创建后,你将会收到一封email邀请订阅Amazon SNS;如果你接受了此邀请,在每次执行导出操作时你都将会收到email通知。
Data Pipeline Role, 选择 DataPipelineDefaultRole.
Resource Role, 选择 DataPipelineDefaultResourceRole
确认好以上设置然后点击 Create Export Pipeline.
你的 pipeline 现在将被创建;这个过程可能会花费几分钟完成。要查看当前状态,移步 Managing
Export and Import Pipelines.
导入任务会在你的pipeline创建好后立即执行。
文件内部结构会在Verify
Data Export File 中描述。
我们称之前导出数据的原始表为source table,数据将要被导入的表为destination table。你可以将S3中的导出文件导入到dynamodb的表中,但是要先确保满足下面条件:
The destination table 已经存在。 (导入任务不会为你创建表)
The destination table 与 source table 有相同的名称。
The destination table 与 source table 有相同的结构。
Destination table不一定要是空的。然而,导入进程会替换掉表中有相同主键的数据。例如,你有一个Customer 表,它的主键是CustomerId,并且只有三个items (CustomerId 1, 2, and 3)。如果要导入的文件中同样包含CustomerID 为1,
2, and 3的items,这些在destination table中的items将会被导入文件中的数据替换。如果文件中还包含CustomerId为4的item,那么这个item会被加入到destination table中。
Destination table 可以在不同的AWS region。例如,假设你有个一个 Customer table在US West (Oregon) region,然后将它的数据导出到了Amazon S3中。你可以将它导入到在 EU (Ireland) region中有相同表明,相同主键的表中。这种做法被称为
cross-region 导出和导入。
注意到AWS管理控制台允许你一次导出多个表的数据。但是,不同的是,你一次只能导入一个表。
从S3导入数据到DynamoDB
登陆AWS管理控制台,然后打开dynamodb控制台: https://console.aws.amazon.com/dynamodb/.
(可选) 如果你想做块区域导入,点击右上角的Select a Region 然后选择要导入的表的区域。控制台会显示该区域下的所有表。如果destination table不存在的话,你需要先创建它。
在 Amazon DynamoDB Tables 页面, 点击 Export/Import.
在 Export/Import 页面,选择一个你要导入的表,然后点击 Import into DynamoDB.
在 Create Import Table Data Pipeline 页面,按下面步骤操作:
S3 Input Folder 文本框中输入导入文件对应的 Amazon S3 URI。例如:
s3://mybucket/exports这个URI的规则应该是这样
s3://bucketname/
folder
:
bucketname是S3中bucket的名称
folder表示存放要导入的文件的名称
导入任务会通过指定的S3位置找到对应的文件。
文件内部结构会在Verify
Data Export File 中描述。
在 S3 Log Folder 文本框中输入一个S3 URI,导出过程的日志将被存储在相应的folder中。例如:
s3://mybucket/logs/
S3 Log Folder URI的格式和
S3 Output Folder的格式相同。
在 Throughput Rate 文本框中可选择一个百分比。这个比率表示在导出过程中会消耗读吞吐量的上限。例如,假设你要导出的表的读吞吐量是20,同时你设置的百分比是40%。那么导出时所消耗的吞吐量将不会超过8.
如果你在导出多个表,这个 Throughput Rate 将会被应用到每个表中。
Execution Timeout 文本框,输入导出任务的超时时长。如果导出任务在这个时长内还没执行完成,此任务会失败。
Send notifications to 文本框,输入一个email地址。在 pipeline被创建后,你将会收到一封email邀请订阅Amazon SNS;如果你接受了此邀请,在每次执行导出操作时你都将会收到email通知。
Data Pipeline Role, 选择 DataPipelineDefaultRole.
Resource Role, 选择 DataPipelineDefaultResourceRole
确认好以上设置然后点击 Create Export Pipeline.
你的 pipeline 现在将被创建;这个过程可能会花费几分钟完成。要查看当前状态,移步 Managing
Export and Import Pipelines.
导入任务会在你的pipeline创建好后立即执行。
相关文章推荐
- Aws Dynamodb数据导出到S3
- 怎样在自己的进销存里导入速达、管家婆和用友的数据
- [导入]抢救零磁道损坏的软盘数据
- [导入]利用XSL对XML数据进行加密和大小写转换
- [导入]实现千万级数据分页的存储过程!
- oracle数据导入
- 如何将从web形式的freetextbox控件中录入的数据去掉超文本字符后导入到word文档?
- bcp 可以实现数据的导入导出
- [导入]XmlHttp异步获取网站数据的例子
- 数据导入到oracle时去掉触发器可以提速
- 文件上传与数据导入
- 将Excel中的数据导入至MsSQLSERVER中(示例)
- 使用DTS导入多个文件数据到SQL Server中
- 使用sql*loader进行数据导入
- MySQL数据的导出和导入工具:mysqldump
- 使用T-SQL导入多个文件数据到SQL Server中
- [导入]常用数据类型使用转换详解
- jsp中将数据库中的数据导入到excel的实现
- MySQL数据导入导出方法与工具介绍(3-Exporting Data)
- [导入]XmlHttp异步获取网站数据的例子