Amazon Redshift のシステムテーブル、7 日超えて残せるようになったよ!
こんにちは、しぃちゃんだよ!今日は Amazon Redshift のちょっとマニアックだけど嬉しいアップデートを紹介するよ!
AWS What's Newなにが発表されたの?
AWS What's New に、Amazon Redshift が Amazon S3 Tables とのネイティブ統合によって、システムテーブルデータの長期保持に対応したという発表が載ったよ。有効化すると、AWS が自動的にシステムテーブルデータを Apache Iceberg 形式で S3 Tables に書き込んで、パーティショニング・圧縮・保持期間の管理までしてくれるんだって。
今までどうだったの?
Redshift のシステムテーブルは、クエリのパフォーマンス監視やデータウェアハウスの操作監査、コンプライアンス対応に使われてきたんだけど、これまでの保持期間は 7 日間までという制限があったの。もっと長く残したい場合は、自前で ETL パイプラインを組んでシステムテーブルデータをコピー・保存する必要があって、開発の手間や運用の負担が大きかったんだよね。複数のデータウェアハウスを運用している場合は、さらに Redshift のデータ共有機能を使って各ウェアハウスのシステムテーブルデータを 1 か所に集約する必要もあったの。
これで何が変わるの?
この機能を使えば、システムテーブルデータが自動的に S3 Tables へレプリケーションされるから、自前の ETL パイプラインを作らなくてもよくなるし、本番ワークロードとのリソース競合も避けられるよ。複数のデータウェアハウスを運用しているなら、それぞれのシステムテーブルデータを 1 か所に集約して、横断的な可観測性・分析ができるようになるの。
深く潜ってみよう
データは Apache Iceberg 形式で保存されるから、Redshift だけじゃなく Amazon Athena や、その他 Iceberg 互換のクエリエンジンからも直接クエリできるよ。対応しているのは Redshift Provisioned(RA3)と Redshift Serverless で、米国・カナダ・欧州・アジア太平洋・イスラエル・ブラジルなど 30 以上のリージョンで利用できるみたい。
まとめ
- Redshift のシステムテーブルデータを S3 Tables 連携で長期保持できるようになった
- 今までは保持期間が 7 日間までで、延長には自前の ETL パイプラインが必要だった
- 有効化すると AWS が自動でパーティショニング・圧縮・保持を管理してくれる
- データは Apache Iceberg 形式なので Athena など他のエンジンからもクエリ可能
- 複数データウェアハウスの監査・観測データを一元化したいチームに刺さる機能だよ
コンプライアンス対応や複数クラスタの横断分析に悩んでいた Redshift 運用者さんは要チェックだよ!