・・・データウェアハウス(DWH)サービス。
・サービスのジャンル:リレーショナル(データウェアハウス)
・特徴:
- MPP(Massively Parallel Processing、超並列処理)アーキテクチャ
- 列指向ストレージとデータ圧縮により、ストレージ効率とクエリ性能を高めている
- プロビジョンド型(クラスターを常設)とRedshift Serverless(使った分だけ課金)の2つの提供形態があり、ワークロードの性質によってコスト効率が大きく変わる
・使用用途:
- 企業のデータ分析、BI(ビジネスインテリジェンス)、機械学習のためのデータ基盤
- 大量・高頻度のクエリを、継続的に実行するワークロード(常設クラスターの分、Athenaのようなスキャン量課金より有利になりやすい)
Amazon Redshift の機能
アーキテクチャ(ノード構成)
- Leader Node:SQLクライアントなどが接続するインターフェース。クエリの計画・調整を行うノード
- Compute Node:実際にデータを保持し、計算処理を行う、スケールする側のノード
- クライアントはリーダーノードとだけやりとりし、コンピューティングノードは外部アプリケーションから見えず、基本的にAWS(Amazon)が管理する
自動テーブル最適化
列圧縮
データ保存時に列を圧縮する
→ディスクI/Oを減らし、処理を高速化しつつストレージコストも削減できる
データ分散
テーブルの行を、どのコンピューティングノードのスライスに配るかを決める、テーブル単位の設定。
<分散スタイル>
| スタイル | 配り方 | 使いどころ |
|---|---|---|
| AUTO | テーブルのサイズに応じて、Redshiftが選ぶ | 基本 |
| KEY | 指定した列の値で配る。同じ値の行が同じ場所に集まる | 大きなテーブル同士を、結合キーで揃えたいとき |
| ALL | 全ノードにテーブル全体のコピーを置く | 更新の少ない、小さめの参照用テーブル |
| EVEN | ラウンドロビンで均等に配る | 結合しないテーブル、KEYとALLで迷うとき |
Redshift Serverless
・・・クラスターのプロビジョニング・管理なしで、データウェアハウス機能を利用できるサービス。
- リソースは自動的にプロビジョニングされ、データウェアハウス容量は自動でスケーリングされる
- クエリが動いていないときは、コンピューティング容量に課金されない(ストレージは保存量に応じて別途課金される)
- 計算容量の単位は**RPU(Redshift Processing Unit)**で、1 RPUは16GBのメモリに相当する
サービスコスト
プロビジョンド型
- クラスターが稼働している時間に対して課金される(ビジー状態かどうかは関係ない)
- オンデマンド料金は、1時間あたり0.543 USDから(ノードタイプ・リージョンにより変動)
- RA3ノードでは、コンピューティング(ノード時間)とは別に、**マネージド型ストレージ(GB月あたり)**が課金される
- **リザーブドインスタンス(RI)**を使うと、1年または3年のコミットと引き換えに、オンデマンドから割引を受けられる
Redshift Serverless
- 実際に使用したRPU時間に対して課金される(1秒単位、最低60秒)
- クエリが動いていない間(アイドル状態)は、コンピューティング容量に課金されない
- マネージドストレージ(RMS)は、保存しているデータ量に対して別途課金される
- サーバーレス予約を使うと、1年間RPU数をコミットすることで、割引を受けられる
コスト最適化の考え方
- ワークロードが安定・継続的 → **プロビジョンド型(+リザーブドインスタンス)**のほうが、長期的にはコストを抑えやすい
- ワークロードが断続的・スパイクが大きい → Serverlessのほうが、クエリが動いていない時間にコンピューティング容量が課金されない分、無駄がない
- ごく低頻度・単発の分析であれば、Redshiftを常設するよりAthenaのほうがコスト効率がよい場合も多い
参考
- Amazon Redshift アーキテクチャ
- Amazon Redshift の概要
- サーバーレス予約に対する請求 - Amazon Redshift
- Amazon Redshift Serverless での請求
- Amazon Redshift の料金
- Billing for on-demand compute capacity - Amazon Redshift
- Billing for serverless reservations - Amazon Redshift
- Reserved nodes - Amazon Redshift
- Amazon Redshift pricing
- Compute capacity for Amazon Redshift Serverless - Amazon Redshift
- What is Amazon Redshift Serverless? - Amazon Redshift
- Announcing Serverless Reservations - AWS What’s New
- Data warehouse system architecture - Amazon Redshift
- Automatic database optimization - Amazon Redshift
