みなさん、こんばんは。サニービュー事業部の小寺です。

Amazon Redshiftで同時実行スケーリングが書き込み処理でもGAになりました。
https://aws.amazon.com/jp/about-aws/whats-new/2022/11/amazon-redshift-concurrency-scaling-write-workloads/

Amazon Redshiftについてどのようなサービスなのか、また今回のアップデートについてお伝えします!

Amazon Redshiftとは

Amazon Redshiftは、高速、シンプル、スケーラブルで費用対効果が高く、データレイクまでクエリを拡張可能なデータウェアハウスです。
Amazon Redshiftを使うことで、機械学習を用いた高度なデータ分析も可能です。拡張性・パフォーマンスに優れたデータウェアハウスが構築できるため、
企業のデジタルトランスフォーメーションの加速には欠かせないサービスです。

今回のアップデートのメリット

今回のアップデートは規模に応じたパフォーマンスに該当するアップデートです。Redshiftの特徴としてRedshiftデータウェアハウスのデータをクエリする場合でも、Amazon S3 データレイクを直接クエリする場合でも、
数千の同時実行クエリがにも耐えうる高速のパフォーマンスが備わっています。Amazon Redshift の同時実行スケーリングでは、実質、無制限の同時実行ユーザーと同時実行クエリをサポートし、同時実行数の増加に応じて
数秒で一時的な容量を追加することで、安定したサービスレベルが維持されています。

今までは、Amazon Redshift の同時実行スケーリングは、読み取りクエリがサポートされてました。実際の書き込みクエリについての同時実行スケーリングはサポート対象外でした。

このアップデートにより、同時実行スケーリングでは、COPY、INSERT、DELETE、UPDATE の各ステートメントをサポートしています。場合によっては、CREATE などの DDL ステートメントの後に、同じコミットブロック内の書き込みステートメントが置かれることがあります。このような場合、書き込みステートメントは同時スケーリングクラスターに送信されません。
また、同時実行スケーリングのクレジットは、読み取りと書き込み両方のオペレーションに適用されます。

さらに、キューに対して、同時実行スケーリングが有効になっている場合、メインの Amazon Redshift クラスターでリソースが解放されるのを待たなくても、適切な書き込みクエリが同時実行スケーリングクラスターに送信されます。メインの Amazon Redshift クラスターを 24 時間使用するごとに同時実行スケーリングで発生する時間単位のクレジットを利用して、書き込みクエリのスケーリングに対応することもできます。

同時実行スケーリングの制限事項

・インターリーブソートキーを使用するテーブルに対するクエリはサポートされていません。
・一時テーブルに対するクエリはサポートされていません。
・制限のあるネットワークまたは仮想プライベートクラウド (VPC) 構成で保護されている、外部リソースにアクセスするクエリはサポートされません。
・Python のユーザー定義関数 (UDF) を含むクエリはサポートされていません。
・システムテーブル、PostgreSQL のカタログテーブル、またはバックアップ用ではないテーブルにアクセスするクエリはサポートされていません。
・制限されたリソースポリシーを持つ外部リソースにアクセスする、COPY または UNLOAD クエリはサポートされていません。この外部リソースには、Amazon S3 バケットまたは DynamoDB テーブルも含まれます。ポリシーでは、特定のソース VPC (aws:sourceVpc)、ソース VPC エンドポイント (aws:sourceVpce)、またはソース IP アドレス (aws:SourceIp)へのアクセスを制限することができます。一部のケースでは、外部リソース上のポリシーを削除する必要が生じることがあります。これを実行すると、このリソースにアクセスする COPY クエリまたは UNLOAD クエリが、同時実行スケーリングクラスターに送信されます。
・書き込みオペレーションの Amazon Redshift の同時実行スケーリングでは、CREATE TABLE や ALTER TABLE などの DDL (書き込み) オペレーションはサポートしていません。
・COPY コマンドでの ANALYZE の使用はサポートされていません。
・DISTSTYLE に ALL が設定されているターゲットテーブルに対する書き込みオペレーションは、サポートしていません。
・Amazon Redshift Spectrum もしくは Amazon EMR からの COPY はサポートしていません。
・ID 列を持つテーブルに対する書き込みオペレーションはサポートしていません。
・Amazon Redshift は、Amazon Redshift RA3 ノード、具体的には ra3.16xlarge、ra3.4xlarge、ra3.xlplus のみで、書き込みオペレーションの同時実行スケーリングをサポートしています。
他のノードタイプでは、書き込みオペレーションの同時実行スケーリングはサポートされていません。

対象リージョンや前提条件は?

書き込みの同時実行スケーリングは、GA時点の2022年11月では、以下の AWS リージョンのみで利用可能です。

・米国東部 (オハイオ) リージョン (us-east-2)
・米国西部 (北カリフォルニア) リージョン (us-west-1)
・アジアパシフィック (ムンバイ) リージョン (ap-south-1)
・欧州 (フランクフルト) リージョン (eu-central-1)
・アジアパシフィック (東京) リージョン (ap-northeast-1)
・アジアパシフィック (シンガポール) リージョン (ap-southeast-1)
・アジアパシフィック (シドニー) リージョン (ap-southeast-2)
・欧州 (ロンドン) リージョン (eu-west-2)
・欧州 (パリ) リージョン (eu-west-3)
・南米 (サンパウロ) リージョン (sa-east-1)