---
articleId: 20a35372-8e81-4fd8-97c0-2e8255382ede
slug: data-destination-azure-synapse-analytics
title: 転送先 - Azure Synapse Analytics
parentCategoryId: 03f04962-e96f-49cb-9c01-d84d025cc41a
languageCode: ja
---
## 概要
Azure Synapse Analyticsへデータを転送する設定のDocsです。
## 制約
- 特になし
## 設定項目
### STEP1 基本設定
| 項目名 | 必須 | デフォルト値 | 内容 |
| --- | --- | --- | --- |
| Azure Synapse Analytics接続情報 | Yes | - | あらかじめ登録してある[Azure Synapse Analyticsの接続情報](/docs/connection-configuration-azure-synapse-analytics)から、今回の転送設定に必要な権限を持つものを選択します。 |
| データベース | Yes | - | 転送先のデータベース名を選択します。|
| スキーマ | Yes | - | 転送先のスキーマ名を選択します。|
| テーブル | Yes | - | 転送先のテーブル名を選択します。
対象テーブルが転送先のデータベース・スキーマ内に存在しない場合は、自動的に作成されます。|
| 転送モード | Yes | 追記(`INSERT`) | 転送モードを選択します。
詳しくは、後述の[転送モードについて](/docs/data-destination-azure-synapse-analytics#転送モードについて)を参照ください。|
| マージキー | No | - | **転送モード**で`UPSERT (MERGE)`を選択したときに入力できます。
プライマリーキーが転送先のテーブルに存在しない場合、マージキー(主キー)扱いとする、カラムの名前を入力してください。
マージキーには、値の重複がなく、NULL値も持たないカラムを入力してください。|
| テーブル構造 | Yes | ヒープ (`HEAP`) | テーブル構造を選択します。
詳しくは、後述の[テーブル構造について](/docs/data-destination-azure-synapse-analytics#テーブル構造について)を参照ください。|
| インデックス キー列 | Yes | - | **テーブル構造**で**クラスター化列ストア インデックス** (`CLUSTERED COLUMNSTORE INDEX`)を選択したときに入力します。
インデックスのキー列名の入力および順序を指定してください。 |
| テーブル分散 | Yes | ラウンド ロビン分散 (`ROUND_ROBIN`) | テーブル分散を選択します。
詳しくは、後述の[テーブル分散について](/docs/data-destination-azure-synapse-analytics#テーブル分散について)を参照ください。|
| ディストリビューション列 | Yes | - | **テーブル分散**で**ハッシュ分散** (`HASH`)を選択したときに入力します。
ハッシュキーとなるディストリビューション列名を指定してください。 |
#### 転送モードについて
| 転送モード | 内容 |
| --- | --- |
| 追記(`INSERT`) | まず一時テーブルを作成し、データを転送します。
すべての一時テーブルの作成が完了したら、対象テーブルにデータを挿入します。 |
| 追記(`INSERT DIRECT`) | 対象テーブルに直接行を挿入します。
転送が途中で失敗した場合、**対象テーブルにデータが一部挿入されている可能性があります。** |
| 全件洗い替え (`TRUNCATE INSERT`) | まず一時テーブルを作成し、一時テーブルにデータを転送します。
すべての一時テーブルの作成が完了したら、対象テーブルの中身を削除し、そのあとに対象テーブルにデータを挿入します。 |
| 全件洗い替え (`REPLACE`) | まず一時テーブルを作成し、データを転送します。
一時テーブルの作成が完了したら、対象テーブルを削除し、一時テーブルを対象名に変更します。
転送が途中で失敗した場合、**対象テーブルが削除される可能性があります**。 |
| `UPSERT (MERGE)` | まず一時テーブルを作成し、データを転送します。
すべての一時テーブルの作成が完了したら、以下の処理を行います。
対象テーブルに対して、一時テーブルのマージキーと値が一致する行は更新され、一致しない行は挿入されます。|
#### テーブル構造について
テーブル構造について、詳しくは[Azure Synapse Analytics公式ドキュメント - テーブル構造オプション](https://learn.microsoft.com/sql/t-sql/statements/create-table-azure-sql-data-warehouse?view=azure-sqldw-latest#TableOptions)を参照ください。
| テーブル構造 | 内容 |
| --- | --- |
| ヒープ (`HEAP`) | テーブルをヒープとして格納します。 |
| クラスター化列ストア インデックス (`CLUSTERED COLUMNSTORE INDEX`) | テーブルをクラスター化列ストア インデックスとして格納します。 |
| クラスター化インデックス (`CLUSTERED INDEX`) | テーブルを1つまたは複数のキー列を含むクラスター化インデックスとして格納します。 |
#### テーブル分散について
テーブル分散について、詳しくは[Azure Synapse Analytics公式ドキュメント - テーブル分散オプション](https://learn.microsoft.com/sql/t-sql/statements/create-table-azure-sql-data-warehouse?view=azure-sqldw-latest#TableDistributionOptions)を参照してください。
| テーブル分散 | 内容 |
| --- | --- |
| ハッシュ分散 (`HASH`) | 最大8列のハッシュ値に基づいて行を分散させます。 |
| ラウンド ロビン分散 (`ROUND_ROBIN`) | 行をラウンドロビン方式ですべてのディストリビューションに均等に分散させます。 |
| レプリケート (`REPLICATE`) | テーブルの1つのコピーを各コンピューティングノードに格納します。 |
### STEP1 詳細設定
| 項目名 | デフォルト値 | 内容 |
| --- | --- | --- |
| 最大リトライ回数 | 12 | 最大のリトライ回数を指定します。 |
| リトライ待ち時間 (ミリ秒) | 1000 | リトライ時の待ち時間を指定します。 |
| リトライ待ち時間の最大値 (ミリ秒) | 1800000 | リトライ時の待ち時間の最大値を指定します。 |
| バッチサイズ (MB) | 16 | バッチサイズを指定します。 |
| デフォルトのタイムゾーン | - | デフォルトのタイムゾーンを指定します。 |
| 接続タイムアウト (秒) | 300 | ドライバが接続するまでのタイムアウトを秒単位で指定します。
0を指定した場合、ドライバーのデフォルト値である**30秒**が採用されます。 |
| ソケットタイムアウト (秒) | 1800 | クエリを実行するまでのタイムアウトを秒単位で指定します。
0を指定した場合、**タイムアウトなし**となります。 |