# Amazon S3

Amazon S3 は次のように使用できます。

* データ パイプライン ターゲットとして Databricks (オプション) または Amazon Redshift (必須) を使用するときのクラウド ステージング エリア。クラウド ステージング エリアは、データと変更が適用および保存される前にステージングされる場所です。

* Qlik Open Lakehouse プロジェクトで CDC ソースを使用する場合のクラウド ステージング エリア。これには、Data Movement gateway とクラスターがランディング バケットへの読み取りと書き込みができる必要があります。詳細は、[ステップ 1: ネットワーク統合を作成します。](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Lakehouse/network-integration.htm)をご覧ください。

* Qlik Open Lakehouse プロジェクトでストリーミング ソースを使用する場合のクラウド ステージング エリア。これには、クラスターがランディング バケットへの読み取りと書き込みができる必要があります。詳細は、[ステップ 1: ネットワーク統合を作成します。](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Lakehouse/network-integration.htm)をご覧ください。

* レプリケーション タスクのターゲット。

  * Standard、Premium、Enterprise サブスクリプションを使用して Amazon S3 にデータをレプリケートする方法については、「[Standard、Premium、または Enterprise サブスクリプションを使用して、データ レイクにデータをランディングします](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Replicating/landing-datalakes.htm)」を参照してください。
  * Starter サブスクリプションを使用して Amazon S3 にデータをレプリケートする方法については、「[Qlik Talend Cloud スターター サブスクリプションを使用したデータのレプリケート](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Replicating/replicating-starter-subscription.htm)」を参照してください。

## ランディング データに必要な権限

* アクセスに使用するサービスまたはマシンからアクセス可能な Amazon S3 バケットが必要です。

  Amazon S3 の登録方法については、http://aws.amazon.com/s3/ を参照してください。

* バケット アクセス資格情報: バケット名、アクセス キー、シークレット アクセス キーをメモしておきます。Amazon S3 コネクタ を設定する際に提供する必要があります。

* バケット アクセス権限: 次のバケット アクセス権限が必要です:

  ```
   
  ```

  ```
  {
  	"Version": "2012-10-17",
  	"Statement": [
  	    {
  	     "Sid": "Stmt1497347821000",
  	     "Effect": "Allow",
  	     "Action": [
                  "s3:GetBucketLocation",
                  "s3:ListBucket"
              ],
              "Resource": [
                  "arn:aws:s3:::YOUR_BUCKET_NAME"
              ]
          },
          {
              "Sid": "Stmt1497344984000",
              "Effect": "Allow",
              "Action": [
                  "s3:PutObject",
                  "s3:GetObject",
                  "s3:DeleteObject"
              ],
              "Resource": [
                  "arn:aws:s3:::YOUR_BUCKET_NAME/target_path",
                  "arn:aws:s3:::YOUR_BUCKET_NAME/target_path/*"
              ]
          }
      ]
  }
  ```

`YOUR_BUCKET_NAME` がバケットの名前で、`target_path` がバケットのターゲット ファイルの意図する場所です。

情報メモ

ターゲット パスがバケット ルートの場合、`“/target_path”` を空の文字列で定義してください。

## Qlik データ ゲートウェイ - データ移動 前提条件

Data Movement gateway は SSL を使用して AWS に接続します。これには、適切な CA 証明書が Data Movement gateway マシンに存在する必要があります。 そうしないと、接続が失敗します。CA 証明書の目的は、AWS サーバー証明書の所有権を認証することです。

必要な CA 証明書が Linux マシンの次の場所に存在することを確認します。

/etc/pki/tls/certs/ca-bundle.crt

存在しない場合、最も簡単な解決策は、別の Linux マシンから証明書バンドルをコピーすることです。

## Amazon S3 接続プロパティの設定

コネクタを構成するには、次の手順を実行します。

1. [接続] で、[接続を作成] をクリックします。

2. Amazon S3 ターゲット コネクタを選択し、次の設定を行います。

### データ ターゲット

使用状況

使用状況に応じて、次のいずれかを選択してください。

* データ移動: Amazon S3 ターゲットへのアクセスに Data Movement gateway を使用する場合に選択します。

* ネットワーク統合: [Qlik Open Lakehouse ネットワーク統合](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Lakehouse/manual-integration.htm)に必要な Qlik メタデータ ファイルの保存に Amazon S3 を使用する場合に選択します。

* 両方: 上記の両方があてはまる場合に選択します。

データ ゲートウェイ

[データ移動] または [両方] が選択されている場合、ターゲットへのアクセスに使用する Data Movement gateway を選択します。

ユースケースに応じて、これはデータ ソースからデータを取得するために展開された、同じまたは別の Data Movement gateway になります。Data Movement gateway 展開の可能性については、「[一般的な使用例](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/Gateways/replication-gateway.htm#Common)」を参照してください。

情報メモData Movement gateway 2023.5.10 以降が必要です。

ネットワーク統合

[ネットワーク統合] または [両方] が選択されている場合は、Qlik Open Lakehouse [[以前に作成したネットワーク統合](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Lakehouse/network-integration.htm)] を選択します。

### 接続プロパティ

* アクセス オプション: 次のいずれかを選択します。

  * キーペア (既定)

    Amazon S3 バケットにアクセスするには、キー ペアを使用します。このオプションを選択した場合、次の項目を指定します。

    * アクセス キー: Amazon S3 バケットのアクセス キー。

    * シークレット キー: Amazon S3 バケットのシークレット キー。

  * IAM Roles Anywhere (Databricks または Qlik Open Lakehouse のステージング エリアとして Amazon S3 を使用している場合はサポートされません):

    IAM Roles Anywhere は、[IAM Roles Anywhere コンソール](https://console.aws.amazon.com/rolesanywhere/home/)、AWS CLI、または AWS SDK を使用してセット アップできます。IAM Roles Anywhere を使用すると、プライベート キー インフラストラクチャ (PKI) を使用して、AWS 外から IAM ロールにアクセスするための一時的な資格情報を生成できます。これにより、資格情報を長期的に管理することなく、Qlik Talend Data Integration から AWS リソースに安全にアクセスできます。

    このオプションを選択した場合、次の項目を指定します。

    * 証明書ファイル: PEM 形式の Data Movement gateway マシン上の Qlik Talend Data Integration 公開証明書へのパス。このファイルは、IAM Roles Anywhere コンソールで設定された CA 証明書を使用して署名する必要があります。

    * プライベート キー ファイル: PEM 形式の Data Movement gateway マシン上の Qlik Talend Data Integration プライベート キー ファイルへのパスです。

    * プライベート キーのパスフレーズ: プライベート キーのパスフレーズです。秘密鍵ファイルが暗号化されている場合にのみ必要です。

    * トラスト アンカー ARN: IAM Roles Anywhere コンソールで作成したトラスト アンカーに関連付けられた ARN です。IAM Roles Anywhere と証明機関 (CA) の間にトラスト アンカーを作成することで、信頼を確立します。トラスト アンカーとは、AWS Private CA または外部 CA 証明書への参照のことです。AWS の外部にあるワークロードは、信頼された CA によって発行された証明書を使用してトラスト アンカーで認証し、一時的な AWS 資格情報と引き換えます。

    * プロファイル ARN: IAM Roles Anywhere コンソールで作成したプロファイルに関連付けられた ARN です。IAM Roles Anywhere が引き受けるロールと、ワークロードが一時的な資格情報で実行できる内容を指定するには、プロファイルを作成します。プロファイルでは、IAM マネージド ポリシーを使用して権限を定義し、作成されたセッションの権限を制限できます。

    * ロール ARN: IAM Roles Anywhere コンソールで作成したロールに関連付けられた ARN です。ロールは、特定のアカウントで作成する、特定のアクセス許可を持つ IAM アイデンティティです。IAM Roles Anywhere がロールを引き受け、一時的な AWS 資格情報を配信できるようにするには、ロールが IAM Roles Anywhere サービス プリンシパルを信頼する必要があります。

      形式は次のとおりです。

      arn:aws:iam::&lt;account-id&gt;:role/&lt;role-name-with-path&gt;

    IAM Roles Anywhere の詳細については、次を参照してください。

    [IAM Roles Anywhere を使用して、AWS の外部のワークロードに AWS IAM ロールを拡張する](https://docs.aws.amazon.com/rolesanywhere/latest/userguide/introduction.html)

  * EC2 の IAM ロール

    Amazon S3 へのアクセスに使用するマシンが IAM ロールを使用して認証するように設定されている場合は、この方法を選択します。

    IAM ロールの詳細については、「[IAM ロール](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)」を参照してください。

    * ロールを引き受け: 対象の IAM ロールを引き受けるには、このオプションを選択します。

      このオプションは、データ移動、ネットワーク統合、両方のモードでは任意です。

      選択されていない場合、接続は関連する EC2 マシンに関連付けられている IAM ロールを使用します。

      選択した [使用] モードに適用されるデータ アクセス ロールおよび/またはデータ移動ロールを信頼するように、ターゲット ロールの信頼ポリシーを設定します。

      次を指定します。

      * 追加のロール ARN: ターゲットロールに関連付けられている ARN。
      * 追加ロールの外部 ID: [ロールを引き受け] が選択され、 [使用] が [ネットワーク統合] または [両方] に設定されている場合、 [外部 ID のロード] をクリックして外部 ID を取得します。取得した外部 ID を追加のターゲット ロールの信頼ポリシーに追加します。

      選択した [使用] モードに適用されるロールを信頼するように、信頼ポリシーを設定します。

      * ネットワーク統合モード: ネットワーク統合で使用されるデータ アクセス ロール (サーバー ロール) を信頼します。
      * データ移動モード: Data Movement gateway で使用されるデータ移動ロールを信頼します。
      * 両方 モード: データ アクセス ロールとデータ移動ロールの両方を信頼します。

* バケット名: Amazon S3 のバケットの名前。

  情報メモ

  既定のバケット リージョン設定は自動検出であるため、特定のリージョンを設定する必要はありません。ただし、セキュリティ上の配慮から、一部のリージョン (AWS GovCloud など) では、リージョンを明示的に設定する必要がある場合があります。このような場合は、`regionCode` 内部プロパティを使用してリージョン コードを設定できます。

  リージョン コードのリストについては、https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.RegionsAndAvailabilityZones.html の「Region availability」(使用可能なリージョン) セクションを参照してください。

  内部プロパティの設定手順については、以下を参照してください。

* AWS PrivateLink を使用 (Qlik Open Lakehouse のランディング ターゲットとしてはサポートされていません):これを選択して Amazon VPC に接続し、VPC エンドポイント URL (例: https://bucket.vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com) を指定します。

  情報メモAmazon S3 バケットを Databricks ターゲットのステージング エリアとして使用する場合、[AWS PrivateLink を使用する] オプションはサポートされません。Databricks ターゲットへの接続の設定については、「[Databricks](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/TargetConnections/databricks-target.htm)」を参照してください。

### データの暗号化

次のいずれかの暗号化オプションを選択します。

* Amazon S3-Managed Keys (SSE-S3) によるサーバー側の暗号化。

  これが既定です。

* AWS KMS-Managed Keys (SSE-KMS) によるサーバー側の暗号化

  このオプションを選択する場合、 [KMS キー ID] を指定する必要があります。

  利用可能なサーバー側暗号化方式の詳細については、次を参照してください。

  [サーバー側の暗号化によるデータの保護](http://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html)

* なし

### 内部プロパティ

内部プロパティは、特殊なユース ケース向けであるため、ダイアログで公開されません。Qlik サポートによって指示があった場合にのみ使用する必要があります。

項目右側にある the 新規作成 icon と the キャンセル icon ボタンを使用して、必要に応じてプロパティを追加したり削除したりします。

### 名前

接続の表示名です。

## データ型のマッピング

次の表は、Qlik Cloudデータ型から Amazon S3 データ型への既定のマッピングを示しています。

情報メモデータ型のマッピングは、「データ レイクにデータをランディング」タスク設定の [[ターゲット フォルダにメタデータ ファイルを作成](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Replicating/landing-datalakes-settings.htm#Metadata)] オプションが有効になっている場合にのみ関連します。

### Qlik Cloud データ型から Amazon S3 へのマッピング

Qlik CloudQlik Cloud データ型と Amazon S3 データ型

| Qlik Cloud データ型 | Amazon S3 ターゲット データ型 |
| --- | --- |
| DATE | DATE |
| TIME | TIME |
| DATETIME | DATETIME |
| BYTES | BYTES (長さ) |
| BLOB | BLOB |
| REAL4 | REAL4 (7) |
| REAL8 | REAL8 (14) |
| INT1 | INT1 (3) |
| INT2 | INT2 (5) |
| INT4 | INT4 (10) |
| INT8 | INT8 (19) |
| UINT1 | UINT1 (3) |
| UINT2 | UINT2 (5) |
| UINT4 | UINT4 (10) |
| UINT8 | UINT8 (20) |
| NUMERIC | NUMERIC (p,s) |
| STRING | STRING (長さ) |
| WSTRING | STRING (長さ) |
| CLOB | CLOB |
| NCLOB | NCLOB |
| BOOLEAN | BOOLEAN (1) |

### Qlik Cloud データ型から Parquet へのマッピング

Parquet がファイル形式として設定されている場合、Parquet でサポートされるデータ型の数が限られているため、データ型のマッピングは次のようになります。

Parquet データ型のマッピング

| Qlik Cloudデータ型 | Parquet プリミティブ型 | 論理型 |
| --- | --- | --- |
| BOOLEAN | BOOLEAN |  |
| INT1 | INT32 | INT(8, true) |
| INT2 | INT32 | INT(16, true) |
| INT4 | INT32 |  |
| INT8 | INT64 |  |
| UINT1 | INT32 | INT(8, false) |
| UINT2 | INT32 | INT(16, false) |
| UINT4 | INT64 |  |
| UINT8 | INT64 | INT(64, false) |
| REAL4 | FLOAT |  |
| REAL8 | DOUBLE |  |
| NUMERIC | FIXED\_LEN\_BYTE\_ARRAY (16) | DECIMAL (精度、スケール) |
| STRING | BYTE\_ARRAY | STRING |
| WSTRING | BYTE\_ARRAY | STRING |
| BYTES | BYTE\_ARRAY |  |
| BLOB | BYTE\_ARRAY |  |
| CLOB | BYTE\_ARRAY | STRING |
| NCLOB | BYTE\_ARRAY | STRING |
| DATE | INT32 | DATE |
| TIME | INT32 | TIME (UTC=true, unit=MILLIS) |
| DATETIME | INT64 | TIMESTAMP (UTC=true, unit=MICROS) |

## 詳細を見る

* [データ レイクにデータをランディング](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Replicating/landing-datalakes.htm)
* [Amazon Redshift ターゲット](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/TargetConnections/redshift-target.htm)
* [Databricks ターゲット](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/TargetConnections/databricks-target.htm)