MEGAZONEブログ
Amazon Redshift ServerlessのAIによるスケーリングと最適化
AI-powered scaling and optimization for Amazon Redshift Serverless
Pulisher : Mass Migration & DR Center ギルジュンボム Description : Amazon Redshift ServerlessのAIベースのスケーリングと最適化技術について紹介セッション
はじめに
このセッションでは、Amazon Redshift Serverlessユーザーを対象にAIベースのスケーリング及び最適化技術について紹介しました。 既存の問題点のうち、スケーリングに関する改善及び解決策を提示しました。
Redshiftをショッピングカートに例えた時、多くのクエリが来る時、空きスペースがあればそこでクエリが処理され、これを収容できる量だけ来る時は問題がありませんでした。ただ、ショッピングカートに入れることができない非常に大きな大規模なクエリが来る場合には、すべてのクエリを遅延させたり、Lockがかかるほど正常に処理されないというユーザーのフィードバックがありました。
このようなユーザーからのフィードバックを解決するために開発した様々なワークロードの特性に対応するAIベースの最適化及びスケーリング技術を紹介し、既存の問題を解決する方法について説明しました。
既存のリソースで処理できる基本的なクエリなのか、それとも追加的なリソース割り当てが必要なクエリなのかを判断する予測モデルを活用して、クエリの性能及び容量要件を予測します。
これに基づいて大規模なクエリが来るとき、新しいAI最適化技術はこれを分析し、必要に応じて追加リソースを自動的に割り当てたり、適切なサイズにスケールアップします。
ユーザーはRedshiftを使用する際、コスト削減/バランス化/性能最大化の中から好きなオプションを選択して、個人の希望する方向に最適な分析環境を設定することができます。これにより、Linear ScalingやSuper Linear Scalingが可能な場合、コストを増やさずにパフォーマンスを向上させることができます。
最適化されたデータソートは、データを多次元レイアウトで構成することで、一部のクエリでパフォーマンスが向上します。これにより、予測モデルの性能を高め、クエリ実行時にリソースを効果的に使用できるようになりました。
新しいスケーリング技術を適用してデモを行いました。
複雑なクエリ処理/大容量データロード/自動ダウンスケーリングの状況をデモし、新しいAI技術がこのようなクエリにどのように反応し、どの程度の容量を使用し、どの程度のコストがかかり、どのように最適化されるかをデモしました。
ユーザーが望む方向性に合わせて自動的に容量が調整され、コストが最適化される過程を結果的に確認することができました。
セッションを終えて
AI技術がRedshiftでどのように動作するかを紹介し、性能とコストの二兎を追うことができるこの技術を積極的に使ってみることをお勧めします。Redshiftのように大容量分析を必要とする環境ではビッグクエリが存在するしかなく、これを実行するために他のクエリがすべて中断される問題が発生することがありました。 AIを通じてユーザーが感じていた不便な点が改善され、コスト管理の大きな負担なしにユーザーの意図を込めた運営が可能なので、多くのメリットを得ることができると思います。