Amazon Redshiftを分析ストレージとして使用する場合は、以下の点に注意してください:

  • S3 (S3LOAD) を使用したデータのロードは、標準的な JDBC プロトコルを使用した Redshift へのデータ挿入が非常に遅くなる可能性があるため、あらゆる生産的な使用に対して設定する必要があります ;
  • Redshift はBLOBまたはCLOBタイプをサポートしていません。
  • VARCHARタイプの最大長は 65534 バイトです。Redshift はVARCHARの長さをバイト単位で計算しますが、CData Virtuality Server を含む他のほとんどのSQL データベースは文字単位で計算します。
    つまり、RedShift のvarchar(X)フィールドは、特に国際的な文字が使用されている場合に、他のシステムの同等の型よりも少ない文字を格納できることがあります。
    必要に応じて、トランスレータ・プロパティ varcharReserveAdditionalSpacePercent and truncateStringsを使用して、Analytical Storage を構成してください;
  • Redshift のデフォルトのクエリ同時実行数 - 5同時クエリ - は、CData Virtuality Server では増やす必要があります。
    少なくとも15同時クエリを許可することをお勧めします。
    詳しくはAmazon Redshiftのドキュメントを参照してください:how to configure Query concurrency on Amazon Redshift .
  • Optimizationのためには、Redshiftは、VACUUMANALYZEコマンドを一定間隔で実行する必要があります。
    これは、例えば以下のSQLジョブを毎晩実行するようにスケジューリングすることで実現できます。このクエリは、Redshift データソースがネイティブクエリをサポートするように構成されていることを前提としており、これはデータソース構成にトランスレータプロパティとして"supportsNativeQueries=TRUE"を追加することで行われます。
CALL "dwh.native"( "request" => 'COMMIT; VACUUM;' );
CALL "dwh.native"( "request" => 'COMMIT; ANALYZE;' );