

 Amazon Redshift は、パッチ 198 以降、新しい Python UDF の作成をサポートしなくなります。既存の Python UDF は、2026 年 6 月 30 日まで引き続き機能します。詳細については、[ブログ記事](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/)を参照してください。

# マニフェストを使用し、データファイルを指定する
<a name="loading-data-files-using-manifest"></a>

COPY コマンドにより必要なすべてのファイルのみがロードされるように、データロードにマニフェストを使用できます。マニフェストを使用し、異なるバケットからファイルをロードしたり、同じプレフィックスを共有しないファイルをロードしたりできます。この場合、COPY コマンドにオブジェクトパスを指定する代わりに、ロードするファイルのリストを JSON 形式のテキストファイルに明示的に指定します。マニフェスト内の URL ではプレフィックスだけでなく、バケットの名前とファイルの完全なオブジェクトパスを指定しておく必要があります。

マニフェストファイルの詳細については、「[マニフェストを使用し、データファイルを指定する](r_COPY_command_examples.md#copy-command-examples-manifest)」を参照してください。

次の例では、バケットが異なり、ファイル名が日付スタンプで始まるファイルをロードする JSON を示しています。

```
{
  "entries": [
    {"url":"s3://amzn-s3-demo-bucket1/2013-10-04-custdata", "mandatory":true},
    {"url":"s3://amzn-s3-demo-bucket1/2013-10-05-custdata", "mandatory":true},
    {"url":"s3://amzn-s3-demo-bucket2/2013-10-04-custdata", "mandatory":true},
    {"url":"s3://amzn-s3-demo-bucket2/2013-10-05-custdata", "mandatory":true}
  ]
}
```

ファイルが見つからない場合に、オプションの `mandatory` フラグによって COPY コマンドがエラーを返すかどうかを指定します。`mandatory` のデフォルトは `false` です。mandatory 設定と関係なく、どのファイルも見つからない場合、COPY は終了します。

次の例では、前の例にあった「`cust.manifest`」という名前のマニフェストで COPY コマンドを実行しています。

```
COPY customer
FROM 's3://amzn-s3-demo-bucket/cust.manifest' 
IAM_ROLE 'arn:aws:iam::0123456789012:role/MyRedshiftRole'
MANIFEST;
```

## UNLOAD で作成されたマニフェストの使用
<a name="loading-data-files-using-unload-manifest"></a>

MANIFEST パラメータを使用して [UNLOAD](r_UNLOAD.md) オペレーションで作成したマニフェストには、COPY オペレーションに必要ないキーが含まれている場合があります。例えば、次の `UNLOAD` マニフェストには、Amazon Redshift Spectrum の外部テーブルと `ORC` または `Parquet` ファイル形式でデータファイルをロードするのに必要な `meta` キーが含まれています。`meta` キーには、ファイルの実際のサイズの値 (バイト) の `content_length` キーが含まれます。COPY オペレーションに必要なのは `url` キーとオプションの `mandatory` キーのみです。

```
{
  "entries": [
    {"url":"s3://amzn-s3-demo-bucket/unload/manifest_0000_part_00", "meta": { "content_length": 5956875 }},
    {"url":"s3://amzn-s3-demo-bucket/unload/unload/manifest_0001_part_00", "meta": { "content_length": 5997091 }}
 ]
}
```

マニフェストファイルについて詳しくは、「[マニフェストを使用し、データファイルを指定する](r_COPY_command_examples.md#copy-command-examples-manifest)」を参照してください。