AWS Data Pipeline を使用して DynamoDB データをエクスポートおよびインポートする - Amazon DynamoDB

AWS Data Pipeline を使用して DynamoDB データをエクスポートおよびインポートする

AWS Data Pipeline を使用して、DynamoDB テーブルからAmazon S3 バケット内のファイルにデータをエクスポートできます。またコンソールを使用して、Amazon S3 から同じ AWS リージョンまたは別のリージョンにある DynamoDB テーブルにデータをインポートもできます。

注記

DynamoDB コンソールは、独自の Amazon S3 へのエクスポートフローをサポートするようになりましたが、AWS Data Pipeline インポートフローとの互換性はありません。詳細については、「Amazon S3 に DynamoDB テーブルデータをエクスポートする」およびブログ記事「Export Amazon DynamoDB Table Data to Your Data Lake in Amazon S3, No Code Writing Required」を参照してください。

データのエクスポートおよびインポート機能は多くシナリオで役立ちます。たとえば、テスト目的で一連のベースラインデータを保守するとします。ベースラインデータを DynamoDB テーブルに入力し、Amazon S3 にエクスポートできます。続いて、テストデータを変更するアプリケーションを実行した後、Amazon S3 から DynamoDB テーブルにインポートして戻すことで、ベースラインデータを「リセット」できます。別の例としては、データの誤った削除や誤った DeleteTable オペレーションもあります。このような場合は、Amazon S3 にある前回のエクスポートファイルからデータを復元できます。ある AWS リージョン内の DynamoDB テーブルからデータをコピーして Amazon S3 に保存し、その後に Amazon S3 から別のリージョン内の同じ DynamoDB テーブルにインポートすることもできます。別のリージョン内のアプリケーションは、最も近い DynamoDB エンドポイントにアクセスしてデータの独自のコピーを操作できるので、ネットワークレイテンシーが短くなります。

重要

DynamoDB のバックアップと復元は、フルマネージドの機能です。本稼働アプリケーションのパフォーマンスや可用性に影響を与えることなく、数メガバイトから数百テラバイトまでのデータを持つテーブルをバックアップできます。AWS Management Console でのワンクリック操作か、単一の API コールだけでテーブルを復元できます。AWS Data Pipeline ではなく、DynamoDB のネイティブの Backup および復元機能を使用することを強くお勧めします。詳細については、「」を参照してくださいDynamoDB のオンデマンドバックアップおよび復元

次の図表に、AWS Data Pipeline を使用した DynamoDB データのエクスポートおよびインポートの概要を示します。

DynamoDB テーブルをエクスポートするには、AWS Data Pipeline コンソールを使用して新しいパイプラインを作成します。パイプラインによって Amazon EMR クラスターが起動され、実際のエクスポートが実行されます。Amazon EMR は、DynamoDB からデータを読み取り、Amazon S3 バケット内のエクスポートファイルにデータを書き込みます。

このプロセスは、データが Amazon S3 バケットから読み込まれて DynamoDB テーブルに書き込まれることを除き、インポートでも同様です。

重要

DynamoDB データのエクスポートまたはインポート時、基礎となる次の AWS サービスの使用に対して追加コストが発生します。

  • AWS Data Pipeline — Import/Export のワークフローを管理します。

  • Amazon S3 - DynamoDB に対してエクスポートまたはインポートするデータを格納します。

  • Amazon EMR - マネージド Hadoop クラスターを実行して、Amazon S3 と DynamoDB の間で読み込みと書き込みを行います。クラスター構成は、1 つの m3.xlarge インスタンスリーダーノードと 1 つの m3.xlarge インスタンスコアノードです。

詳細については、「AWS Data Pipeline の料金」、「Amazon EMR の料金」、および「Amazon S3 の料金」を参照してください。

データをエクスポートおよびインポートデータするための前提条件

データのエクスポートとインポートに AWS Data Pipeline を使用するときは、パイプラインによって実行できるアクションと消費できるリソースを指定する必要があります。許可されるそれらのアクションとリソースは AWS Identity and Access Management (IAM) ロールを使用して定義します。

また、IAM ポリシーを作成し、IAM ユーザーまたはグループにアタッチすることでアクセスを制御できます。これらのポリシーでは、DynamoDB データに対してインポートおよびエクスポートが許可されるユーザーを指定できます。

重要

エクスポートとインポートを実行する IAM ユーザーには、アクティブ な AWS アクセスキー ID とシークレットキーが必要です。詳細については、『IAM ユーザーガイド』の「IAM ユーザーのアクセスキーの管理」を参照してください。

AWS Data Pipeline の IAM ロールの作成

AWS Data Pipeline を使用するには、次の IAM ロールが AWS アカウントにあることが必要です。

  • DataPipelineDefaultRole — パイプラインによって自動的に実行されるアクション。

  • DataPipelineDefaultResourceRole — パイプラインによって自動的にプロビジョンされる AWS リソース。DynamoDB データのエクスポートとインポートの場合、これらのリソースには Amazon EMR クラスターと、そのクラスターに関連付けられている Amazon EC2 インスタンスが含まれます。

これまでに AWS Data Pipeline を使用したことがない場合は、DataPipelineDefaultRoleDataPipelineDefaultResourceRole を自分で作成する必要があります。作成したそれらのロールを使用して、必要に応じていつでも DynamoDB データをエクスポートしたりインポートしたりできます。

注記

以前に AWS Data Pipeline コンソールを使用してパイプラインを作成した場合、DataPipelineDefaultRoleDataPipelineDefaultResourceRole はその時点で自動的に作成されています。その場合、これ以上の操作は必要ありません。このセクションをスキップし、 コンソールを使用したパイプラインの作成を開始できます。詳細については、「DynamoDB から Amazon S3 にデータをエクスポートする」および「Amazon S3 から DynamoDB にデータをインポートする」を参照してください。

  1. AWS Management Console にサインインして、IAM コンソール (https://console.aws.amazon.com/iam/) を開きます。

  2. コンソールダッシュボードで [ロール] をクリックします。

  3. [ロールの作成] をクリックし、次の操作を実行します。

    1. [AWS サービス] の信頼されたエンティティで、[Data Pipeline] を選択します。

    2. [ユースケースの選択] パネルで、[Data Pipeline]、[次のステップ: アクセス許可] の順に選択します。

    3. AWSDataPipelineRole ポリシーが自動的にアタッチされることに注意してください。[次のステップ: 確認] を選択します。

    4. [ロール名] フィールドで、ロール名として「DataPipelineDefaultRole」と入力し、[ロールの作成] を選択します。

  4. [ロールの作成] をクリックし、次の操作を実行します。

    1. [AWS サービス] の信頼されたエンティティで、[Data Pipeline] を選択します。

    2. [ユースケースの選択] パネルで、[EC2 Role for Data Pipeline (データパイプラインの EC2 ロール)]、[Next:Permissions (次へ: 許可)] の順に選択します。

    3. AmazonEC2RoleForDataPipelineRole ポリシーが自動的にアタッチされることに注意してください。[次のステップ: 確認] を選択します。

    4. [ロール名] フィールドで、ロール名として「DataPipelineDefaultResourceRole」と入力し、[ロールの作成] を選択します。

これらのロールを作成できたので、DynamoDB コンソールを使用したパイプラインの作成を開始できます。詳細については、「DynamoDB から Amazon S3 にデータをエクスポートする」および「Amazon S3 から DynamoDB にデータをインポートする」を参照してください。

エクスポートおよびインポートタスクを実行するためのアクセス許可を IAM ユーザーおよびグループに付与する

他の IAM ユーザー、ロール、またはグループに DynamoDB テーブルのデータのエクスポートとインポートを許可するには、IAM ポリシーを作成し、指定したユーザーまたはグループにアタッチできます。ポリシーには、これらのタスクを実行するために必要なアクセス権限のみが含まれます。

フルアクセスを許可する

次の手順では、AWS マネージドポリシー (AmazonDynamoDBFullAccessAWSDataPipeline_FullAccess) と Amazon EMR インラインポリシーを IAM ユーザーに添付する方法について説明します。これらのマネージドポリシーは、AWS Data Pipeline および DynamoDB リソースへのフルアクセスを提供し、Amazon EMR インラインポリシーとともに使用することで、ユーザーはこのドキュメントで説明するアクションを実行できます。

注記

提案されたアクセス許可の範囲を制限するために、上記のインラインポリシーは、dynamodbdatapipeline タグの使用を強制しています。この制限なしにこのドキュメントを利用する場合は、該当するポリシーのConditionのセクションを参照してください。

  1. AWS Management Console にサインインして、IAM コンソール (https://console.aws.amazon.com/iam/) を開きます。

  2. IAM コンソールダッシュボードで [ユーザー] をクリックし、変更するユーザーを選択します。

  3. [アクセス権限] タブで [ポリシーの追加] をクリックします。

  4. [アクセス許可の付与] エリアで、[既存のポリシーを直接アタッチ] を選択します。

  5. AmazonDynamoDBFullAccessAWSDataPipeline_FullAccess の両方を選択して、[次のステップ: 確認] をクリックします。

  6. [さらにアクセス許可を追加する] をクリックします。

  7. [アクセス権限] タブで [インラインポリシーの追加] を選択します。

  8. [ポリシーの作成] ページで [JSON] タブをクリックします。

  9. 以下の内容を貼り付けます。

    { "Version": "2012-10-17", "Statement": [ { "Sid": "EMR", "Effect": "Allow", "Action": [ "elasticmapreduce:DescribeStep", "elasticmapreduce:DescribeCluster", "elasticmapreduce:RunJobFlow", "elasticmapreduce:TerminateJobFlows" ], "Resource": "*", "Condition": { "Null": { "elasticmapreduce:RequestTag/dynamodbdatapipeline": "false" } } } ] }
  10. [ポリシーの確認] をクリックします。

  11. 名前フィールドに「EMRforDynamoDBDataPipeline」と入力します。

  12. [ポリシーの作成] をクリックします。

注記

同様の手順を使用して、この管理ポリシーをユーザーではなく、グループにアタッチすることもできます。

特定の DynamoDB テーブルへのアクセスを制限する

アクセスを制限し、ユーザーがテーブルのサブセットのエクスポートまたはインポートのみできるようにするには、カスタマイズした IAM ポリシードキュメントを作成する必要があります。「フルアクセスを許可する」で説明されているプロセスをカスタムポリシーの開始点として使用し、このポリシーを変更して、指定したテーブルのみの操作をユーザーに許可できます。

たとえば、 ユーザーに ForumThreadReply のテーブルに対してのみエクスポートまたはインポートを許可するとします。この手順では、ユーザーがそれらテーブルを操作できるが、それ以外は操作できないようにするカスタムポリシーを作成する方法を示します。

  1. AWS Management Console にサインインして、IAM コンソール (https://console.aws.amazon.com/iam/) を開きます。

  2. コンソールダッシュボードから [ポリシー] をクリックし、[ポリシーの作成] をクリックします。

  3. [ポリシーの作成] パネルで、[AWS マネージドポリシーをコピー] に移動し、[選択] をクリックします。

  4. [AWS マネージドポリシーをコピー] パネルで、AmazonDynamoDBFullAccess を選択し、[選択] をクリックします。

  5. [ポリシーの確認] パネルで、以下の作業を行います。

    1. 自動生成される [ポリシー名] および [説明] を確認します。必要に応じて、これらの値を変更できます。

    2. [ポリシードキュメント] テキストボックスで、特定のテーブルへのアクセスを制限するポリシーを編集します。デフォルトでは、ポリシーはすべてのテーブルの DynamoDB アクションをすべて許可します。

      { "Version": "2012-10-17", "Statement": [ { "Action": [ "cloudwatch:DeleteAlarms", "cloudwatch:DescribeAlarmHistory", "cloudwatch:DescribeAlarms", "cloudwatch:DescribeAlarmsForMetric", "cloudwatch:GetMetricStatistics", "cloudwatch:ListMetrics", "cloudwatch:PutMetricAlarm", "dynamodb:*", "sns:CreateTopic", "sns:DeleteTopic", "sns:ListSubscriptions", "sns:ListSubscriptionsByTopic", "sns:ListTopics", "sns:Subscribe", "sns:Unsubscribe" ], "Effect": "Allow", "Resource": "*", "Sid": "DDBConsole" }, ...remainder of document omitted...

      ポリシーを制限するには、最初に次の行を削除します。

      "dynamodb:*",

      次に、ForumThread、および Reply テーブルへのアクセスのみを許可する新しい Action を構築します。

      { "Action": [ "dynamodb:*" ], "Effect": "Allow", "Resource": [ "arn:aws:dynamodb:us-west-2:123456789012:table/Forum", "arn:aws:dynamodb:us-west-2:123456789012:table/Thread", "arn:aws:dynamodb:us-west-2:123456789012:table/Reply" ] },
      注記

      us-west-2 は DynamoDB テーブルがあるリージョンに置き換えてください。123456789012 を使用する AWS アカウント番号で置き換えます。

      最後に、ポリシードキュメントに新しい Action を追加します。

      { "Version": "2012-10-17", "Statement": [ { "Action": [ "dynamodb:*" ], "Effect": "Allow", "Resource": [ "arn:aws:dynamodb:us-west-2:123456789012:table/Forum", "arn:aws:dynamodb:us-west-2:123456789012:table/Thread", "arn:aws:dynamodb:us-west-2:123456789012:table/Reply" ] }, { "Action": [ "cloudwatch:DeleteAlarms", "cloudwatch:DescribeAlarmHistory", "cloudwatch:DescribeAlarms", "cloudwatch:DescribeAlarmsForMetric", "cloudwatch:GetMetricStatistics", "cloudwatch:ListMetrics", "cloudwatch:PutMetricAlarm", "sns:CreateTopic", "sns:DeleteTopic", "sns:ListSubscriptions", "sns:ListSubscriptionsByTopic", "sns:ListTopics", "sns:Subscribe", "sns:Unsubscribe" ], "Effect": "Allow", "Resource": "*", "Sid": "DDBConsole" }, ...remainder of document omitted...
  6. ポリシーの設定が正しいことを確認したら、[ポリシーの作成] をクリックします。

ポリシーを作成したら、IAM ユーザーにポリシーをアタッチできます。

  1. IAM コンソールダッシュボードで [ユーザー] をクリックし、変更するユーザーを選択します。

  2. [アクセス許可] タブで [ポリシーのアタッチ] をクリックします。

  3. [ポリシーのアタッチ] パネルでポリシー名を選択し、[ポリシーのアタッチ] をクリックします。

注記

同様の手順を使用して、ポリシーをユーザーではなくグループにアタッチすることもできます。

DynamoDB から Amazon S3 にデータをエクスポートする

このセクションでは、1 つ以上の DynamoDB テーブルから Amazon S3 バケットにデータをエクスポートする方法について説明します。エクスポートを実行する前に、Amazon S3 バケットを作成する必要があります。

重要

これまでに AWS Data Pipeline を使用したことがない場合は、この手順を実行する前に 2 つの IAM ロールを設定する必要があります。詳細については、「」を参照してくださいAWS Data Pipeline の IAM ロールの作成

  1. AWS Management Console にサインインして AWS Data Pipeline コンソール (https://console.aws.amazon.com/datapipeline/) を開きます。

  2. 現在の AWS リージョンにパイプラインがない場合は、[Get started now (今すぐ始める)] を選択します。

    それ以外の場合、少なくとも 1 つのパイプラインがある場合は、[Create new pipeline (新しいパイプラインの作成)] を選択します。

  3. [Create Pipeline (パイプラインの作成)] ページで、次の操作を実行します。

    1. [Name (名前)] フィールドで、パイプラインの名前を入力します。例: MyDynamoDBExportPipeline

    2. [Source (ソース)] パラメータで、[Build using a template (テンプレートを使用してビルドする)] を選択します。ドロップダウンテンプレートのリストから、[Export DynamoDB table to S3 (DynamoDB テーブルを S3 にエクスポートする)] を選択します。

    3. [Source DynamoDB table name (ソース DynamoDB テーブル名)] フィールドに、エクスポートする DynamoDB テーブルの名前を入力します。

    4. [Output S3 Folder (出力 S3 フォルダ)] テキストボックスに、エクスポートファイルが書き込まれる Amazon S3 の URI を入力します。例: s3://mybucket/exports

      この URI の形式は s3://bucketname/folder で、次のような構成になっています。

      • bucketname は Amazon S3 バケットの名前です。

      • folder はそのバケット内のフォルダーの名前です。フォルダーが存在しない場合は、自動的に作成されます。フォルダーの名前を指定しない場合は、s3://bucketname/region/tablename という形式で名前が付けられます。

    5. [S3 location for logs (S3 ログの場所)] テキストボックスに、エクスポート用のログファイルが書き込まれる Amazon S3 の URI を入力します。例: s3://mybucket/logs/

      [S3 Log Folder (S3 ログフォルダ)] の URI 形式は [Output S3 Folder (出力 S3 フォルダ)] と同じです。URI はフォルダに解決される必要があります。ログファイルを S3 バケットの最上位に書き込むことはできません。

  4. キー dynamodbdatapipeline と値 true を含むタグを追加します。

  5. すべての設定が正しいことを確認したら、[Activate (有効化)] をクリックします。

これで、パイプラインが作成されます。このプロセスが完了するまでに数分かかることがあります。AWS Data Pipeline コンソールで進捗状況をモニターすることができます。

エクスポートが完了したら、Amazon S3 コンソールに移動して、エクスポートファイルを表示できます。出力ファイル名は、ae10f955-fb2f-4790-9b11-fbfea01a871e_000000 のように識別子の値で、拡張子はありません。このファイルの内部形式については、AWS Data Pipeline デベロッパーガイドの「データエクスポートファイルの確認」を参照してください。

Amazon S3 から DynamoDB にデータをインポートする

このセクションでは、すでに DynamoDB テーブルからデータをエクスポートし、エクスポートファイルが Amazon S3 バケットに書き込まれていることを前提とします。このファイルの内部形式については、AWS Data Pipeline デベロッパーガイドの「データエクスポートファイルの確認」を参照してください。これは、AWS Data Pipeline を使用して DynamoDB でインポートできる唯一のファイル形式です。

ソーステーブルという用語は、データのエクスポート元となったテーブルに使用します。インポート先テーブルという用語は、データのインポート先となるテーブルに使用します。エクスポートファイルから Amazon S3 にデータをインポートできます。ただし、次のすべての条件を満たしていることが前提です。

  • インポート先テーブルがすでに存在する (インポートプロセスによってテーブルは作成されません。)

  • インポート先テーブルとソーステーブルのキースキーマが同じ

インポート先テーブルは空である必要はありません。ただしインポートプロセスでは、インポート先テーブルのデータ項目のうち、エクスポートファイルの項目とキーが同じものはすべて置き換えられます。たとえば、Customer テーブルに CustomerId というキーがあり、そのテーブルに 3 つの項目 (CustomerId 1、2、3) のみがあるとします。エクスポートファイルにも CustomerID 1、2、3 のデータ項目がある場合、インポート先テーブルの項目はエクスポートファイルのものと置き換えられます。エクスポートファイルに CustomerId 4 のデータ項目もある場合、その項目がインポート先テーブルに追加されます。

インポート先テーブルは異なる AWS リージョンに置くことができます。たとえば、米国西部 (オレゴン) リージョンに Customer 手ぶるがあり、そのデータをAmazon S3 にエクスポートします。その後、そのデータを欧州 (アイルランド) リージョンにある同一の Customer テーブルにインポートできます。これは、クロスリージョンのエクスポートとインポートと呼ばれています。AWS リージョンのリストについては、AWS 全般のリファレンスの「リージョンとエンドポイント」を参照してください。

AWS Management Console では、一度に複数のソーステーブルをエクスポートできます。ただし、一度にインポートできるのは 1 つのテーブルのみです。

  1. AWS Management Console にサインインして AWS Data Pipeline コンソール (https://console.aws.amazon.com/datapipeline/) を開きます。

  2. (省略可能) クロスリージョンのインポートを実行する場合、ウィンドウの右上隅にあるインポート先リージョンを選択します。

  3. [Create new pipeline (新しいパイプラインの作成)] を選択します。

  4. [Create Pipeline (パイプラインの作成)] ページで、次の操作を実行します。

    1. [Name (名前)] フィールドで、パイプラインの名前を入力します。例: MyDynamoDBImportPipeline

    2. [Source (ソース)] パラメータで、[Build using a template (テンプレートを使用してビルドする)] を選択します。ドロップダウンテンプレートのリストから、[Import DynamoDB backup data from S3 (S3 から DynamoDB バックアップデータをインポートする)] を選択します。

    3. [Input S3 Folder (入力 S3 フォルダ)] テキストボックスに、エクスポートファイルがある Amazon S3 の URI を入力します。例: s3://mybucket/exports

      この URI の形式は s3://bucketname/folder で、次のような構成になっています。

      • bucketname は Amazon S3 バケットの名前です。

      • folder はエクスポートファイルを含むフォルダーの名前です。

      インポートジョブでは、指定した Amazon S3 の場所にファイルが見つかることが想定されます。このファイルの内部形式については、AWS Data Pipeline デベロッパーガイドの「データエクスポートファイルの確認」を参照してください。

    4. [Target DynamoDB table name (ターゲット DynamoDB テーブル名)] フィールドに、データをインポートする DynamoDB テーブルの名前を入力します。

    5. [S3 location for logs (S3 ログの場所)] テキストボックスに、インポート用のログファイルが書き込まれる Amazon S3 の URI を入力します。例: s3://mybucket/logs/

      [S3 Log Folder (S3 ログフォルダ)] の URI 形式は [Output S3 Folder (出力 S3 フォルダ)] と同じです。URI はフォルダに解決される必要があります。ログファイルを S3 バケットの最上位に書き込むことはできません。

    6. キー dynamodbdatapipeline と値 true を含むタグを追加します。

  5. すべての設定が正しいことを確認したら、[Activate (有効化)] をクリックします。

これで、パイプラインが作成されます。このプロセスが完了するまでに数分かかることがあります。インポートジョブはパイプラインの作成直後に開始されます。

Troubleshooting

このセクションでは、DynamoDB のエクスポートについていくつかの基本的な障害モードとトラブルシューティングを取り上げます。

エクスポートまたはインポート時にエラーが発生した場合、AWS Data Pipeline コンソールのパイプラインステータスは「ERROR」として表示されます。この場合は、エラーの発生したパイプラインの名前をクリックして、その詳細ページに移動します。これにより、パイプラインのすべてのステップの詳細と、各ステップのステータスが表示されます。特に、表示される実行スタックトレースを確認します。

最後に、Amazon S3 バケットに移動し、そこに書き込まれたすべてのエクスポートまたはインポートログファイルを探します。

次に示しているのは、パイプラインのエラーの原因として考えられるいくつかの一般的な問題とその対処方法です。パイプラインを診断するには、表示されたエラーと次に示している問題を比較します。

  • インポートの場合は、インポート先テーブルがすでに存在すること、インポート先テーブルにソーステーブルと同じキースキーマがあることを確認します。これらの条件が満たされていない場合、インポートは失敗します。

  • パイプラインに dynamodbdatapipeline タグがあることを確認してください。このタグがない場合、Amazon EMR API コールは成功しません。

  • 指定した Amazon S3 バケットが作成されていること、そのバケットに対する読み込みと書き込みのアクセス許可があることを確認します。

  • パイプラインがその実行タイムアウトを超えている可能性があります (このパラメータはパイプラインの作成時に設定しています。) たとえば、1 時間の実行タイムアウトを設定している場合がありますが、エクスポートジョブでこれより長い時間が必要だった可能性があります。パイプラインを削除して作成し直してみてください。ただし実行タイムアウト間隔は前回よりも長くします。

  • エクスポートが実行された元のバケットでない Amazon S3 バケット (エクスポートのコピーを含む) から復元する場合は、マニフェストファイルを更新します。

  • エクスポートまたはインポートを実行するための正しいアクセス許可がない可能性があります。詳細については、「」を参照してくださいデータをエクスポートおよびインポートデータするための前提条件

  • AWS アカウントのリソースクォータ (Amazon EC2 インスタンスの最大数や AWS Data Pipeline パイプラインの最大数など) に達した可能性があります。Service Quotas と引き上げリクエストの詳細については、AWS 全般のリファレンス の「AWS のサービスクォータ」を参照してください。

注記

パイプラインのトラブルシューティングの詳細については、AWS Data Pipeline デベロッパーガイドの「トラブルシューティング」を参照してください。

AWS Data Pipeline と DynamoDB 用の定義済みテンプレート

AWS Data Pipeline のしくみをより深く理解するには、AWS Data Pipeline デベロッパーガイド を参照することをお勧めします。このガイドには、パイプラインを作成して操作する手順について説明したチュートリアルが含まれています。これらのチュートリアルは、独自のパイプラインの作成を開始するときに参考になります。また、AWS Data Pipeline のチュートリアルを参照することをお勧めします。このチュートリアルでは、要件に合わせてカスタマイズ可能なインポートおよびエクスポートパイプラインを作成するステップについて説明しています。AWS Data Pipeline デベロッパーガイドの「AWS Data Pipeline を使用した Amazon DynamoDB のインポートとエクスポート」を参照してください。

AWS Data Pipeline には、パイプラインを作成するためのテンプレートがいくつか用意されています。次のテンプレートは DynamoDB に関連しています。

DynamoDB と Amazon S3 間でデータをエクスポートする

注記

DynamoDB コンソールは、独自の Amazon S3 へのエクスポートフローをサポートするようになりましたが、AWS Data Pipeline インポートフローとの互換性はありません。詳細については、「Amazon S3 に DynamoDB テーブルデータをエクスポートする」およびブログ記事「Export Amazon DynamoDB Table Data to Your Data Lake in Amazon S3, No Code Writing Required」を参照してください。

AWS Data Pipeline コンソールには、DynamoDB と Amazon S3 間でデータをエクスポートするための定義済みテンプレートが 2 つ用意されています。これらのテンプレートの詳細については、AWS Data Pipeline デベロッパーガイドの次のセクションを参照してください。