メニュー
Amazon Redshift
データベース開発者ガイド (API Version 2012年12月1日)

データのロード操作

次のパラメータを指定して、トラブルシューティングの際のロード操作のデフォルトの動作を管理したり、ロード時間を短縮します。

Parameters

COMPROWS numrows

圧縮分析のサンプルサイズとして使用される行数を指定します。分析は各データスライスの行に対して実行されます。たとえば、COMPROWS 1000000 (1,000,000) を指定し、システムに合計 4 つのスライスが含まれている場合、スライスごとに 250,000 行のみが読み取られ、分析されます。

COMPROWS を指定しない場合、サンプルサイズはデフォルトでスライスごとに 100,000 になります。COMPROWS の値がスライスごとに 100,000 行のデフォルト値より小さい場合、自動的にデフォルト値にアップグレードされます。ただし、ロードされるデータの量が有意のサンプルとしては不十分な場合、自動圧縮は実行されません。

COMPROWS 数が入力ファイルの行数より大きい場合でも、COPY コマンドは続行し、利用可能なすべての行で圧縮分析を実行します。この引数の許容範囲は 1000~1000000000 (1,000,000,000) の数値です。

COMPUPDATE [ { ON | TRUE } | { OFF | FALSE } ]

COPY 実行中に圧縮エンコードを自動的に適用するかどうかを制御します。

COPY コマンドは、入力データのサンプルに基づいてターゲットテーブルの各列の最適な圧縮エンコードを自動的に選択します。詳細については、「自動圧縮ありでテーブルをロードする」を参照してください。

COMPUPDATE を省略した場合、ターゲットテーブルが空であり、テーブルのすべての列に RAW エンコードがあるかまったくエンコードがないときにのみ、COPY は自動圧縮を適用します。この動作がデフォルトです。

COMPUPDATE ON (または TRUE) の場合、テーブル列に RAW 以外のエンコードがある場合も、テーブルが空であれば COPY は自動圧縮を適用します。既存のエンコードは置き換えられます。COMPUPDATE を指定した場合、これがデフォルトの動作です。

COMPUPDATE OFF (または FALSE) の場合、自動圧縮は無効になります。

MAXERROR [AS] error_count

ロードのエラー数が error_count 以上である場合、ロードは失敗します。ロードのエラーがそれより少ない場合、処理は続行され、ロードできなかった行数を示す INFO メッセージが返されます。データの形式エラーやその他の不整合のために一部の行をテーブルにロードできないときにロードを継続するには、このパラメータを使用します。

最初のエラーが発生したときにロードを失敗させる場合、この値を 0 または 1 に設定します。AS キーワードはオプションです。MAXERROR のデフォルト値は 0、そしてその限度は 100000 です。

Amazon Redshift の並列処理のため、報告される実際のエラー数が指定された MAXERROR より大きくなることがあります。Amazon Redshift クラスターのノードで MAXERROR を超えたことが検出された場合、各ノードは発生したすべてのエラーを報告します。

NOLOAD

データを実際にロードせずにデータファイルの有効性をチェックします。実際にデータロードを実行せずに、エラーなしでデータファイルがロードされることを確認するには、NOLOAD パラメータを使用します。NOLOAD パラメータと共に COPY を実行すると、ファイルを解析するだけであるため、データのロードよりはるかに高速になります。

STATUPDATE [ { ON | TRUE } | { OFF | FALSE } ]

COPY コマンドが成功したとき最後に行う自動計算とオプティマイザ統計の更新を制御します。デフォルトでは、STATUPDATE パラメータを使用しない場合、テーブルが最初は空ならば、統計は自動的に更新されます。

データを空ではないテーブルに入れるとテーブルのサイズが大きく変化する場合は、常に ANALYZE コマンドを実行するか STATUPDATE ON 引数を使用して統計を更新することをお勧めします。

STATUPDATE ON (または TRUE) の場合、テーブルが最初に空であるかどうかに関係なく、統計は自動的に更新されます。STATUPDATE を使用する場合、現在のユーザーはテーブル所有者またはスーパーユーザーであることが必要です。STATUPDATE を指定しない場合、INSERT 権限のみ必要です。

STATUPDATE OFF (または FALSE) を使用すると、統計は更新されません。

詳細については、「テーブルを分析する」を参照してください。