

# Amazon Redshift ターゲットノードの作成
<a name="creating-redshift-target-node"></a>

## 必要となる許可
<a name="creating-redshift-target-node-permissions"></a>

 Amazon Redshift データターゲットを使用する AWS Glue Studio ジョブには追加の許可が必要です。ETL ジョブに許可を追加する方法の詳細については、「[ETL ジョブに必要な IAM アクセス許可を確認する](https://docs.aws.amazon.com/glue/latest/ug/setting-up.html#getting-started-min-privs-job)」を参照してください。

 Amazon Redshift 接続を使用するには、次の許可が必要です。
+  redshift-data:ListSchemas 
+  redshift-data:ListTables 

## Amazon Redshift ターゲットノードの追加
<a name="w2aac25c27c13c15b5"></a>

**Amazon Redshift ターゲットノードを作成するには**

1.  既存の Amazon Redshift テーブルをターゲットとして選択するか、新しいテーブル名を入力します。

1.  **データターゲット - Redshift** ターゲットノードを使用する場合、次のオプションから選択できます。
   +  **APPEND** — テーブルがすでに存在している場合は、新しいデータをテーブルにすべて挿入してダンプします。テーブルが存在しない場合は、新規にテーブルを作成し、そこに新しいデータをすべて挿入します。

      またターゲットのテーブルで、既存のレコードを更新 (UPSERT) する場合は、このチェックボックスにチェックを入れてください。まずテーブルが存在している必要があります。存在しない場合には、操作は失敗します。
   +  **MERGE** — 指定した条件に基づいて、AWS Glue がターゲットとなるテーブルのデータを更新するか、またはデータを追加します。
**注記**  
 AWS Glue でマージアクションを使用するには、Amazon Redshift のマージ機能を有効にする必要があります。Amazon Redshift インスタンスのマージを有効にする方法については、「[MERGE (プレビュー)](https://docs.aws.amazon.com/redshift/latest/dg/r_MERGE.html)」を参照してください。

      [オプション] を選択します。
     + **キーと簡単なアクションの選択** — ソースデータとターゲットデータセットとの、マッチングキーとして使用する列を選択します。

       一致した場合、次のオプションを指定します。
       + ターゲットのデータセットにあるレコードを、ソースのデータで更新します。
       + ターゲットのデータセットにあるレコードを削除します。

       一致しない場合、次のオプションを指定します。
       + ターゲットのデータセットに、新しい行としてソースデータを挿入します。
       + 何もしない。
     + **カスタム MERGE ステートメントの入力** — その後 **[MERGE ステートメントの検証]** を選択し、ステートメントが有効か、無効かを検証できます。
   +  **TRUNCATE** — 既にテーブルが存在している場合は、ターゲットのテーブルの内容を削除してから、ターゲットのテーブルを削除します。削除が成功してから、すべてのデータを挿入します。テーブルが存在していない場合、テーブルを作成し、すべてのデータを挿入します。削除が成功しなかった場合、操作は失敗します。
   +  **DROP** — 既にテーブルが存在している場合は、テーブルのメタデータとデータを削除します。削除が成功してから、すべてのデータを挿入します。テーブルが存在していない場合、テーブルを作成し、すべてのデータを挿入します。削除が成功しなかった場合、操作は失敗します。
   +  **CREATE** — 新しいテーブルを、デフォルトの名前を使用して作成します。既にテーブル名が存在する場合は、接尾辞として `job_datetime` を名前につけたうえで新しいテーブルを作成し、一意性を保ちます。これで、すべてのデータが新しいテーブルに挿入されます。テーブルが存在する場合、最終的なテーブル名には接尾辞が付きます。テーブルが存在しない場合、テーブルが作成されます。いずれの場合も、テーブルが新しく作成されます。