Advanced Query Accelerator (AQUA) for Amazon Redshift とは

2019年12月3日に発表されたAdvanced Query Accelerator (AQUA) for Amazon Redshift (以下AQUA)の解説です。

以下公式サイトとプレビュー申し込みページです。
https://pages.awscloud.com/AQUA_Preview.html

AQUAができた背景

AQUAとはRedshiftが他のクラウドデータウェアハウスよりも最大10倍高速で実行できるようにする、新しい分散型ハードウェアアクセラレーションキャッシュです。

中央ストレージを備えた既存のデータウェアハウスアーキテクチャでは、処理のためにデータを計算クラスタに移動する必要があります。計算クラスタに移動する場合、ネットワーク帯域幅がボトルネックになり、速度が低下すると予想されます。

もしネットワークの速度が早くなったとしても、次のボトルネックはCPUになります。SSDストレージのスループットは2012年から比較して、12倍に増加していますがCPUがメモリ内のデータを処理する能力は2倍しか増えていません。
なのでネットワーク速度がボトルネックから外れても、今度はCPUがボトルネックになってしまいます。

AQUAが解決出来ること

まずは公式サイトからの翻訳です

AQUAは、クラウドデータウェアハウジングへの新しいアプローチを採用しています。AQUAは、革新的なキャッシュ上でデータ処理の大部分をその場で行うことにより、コンピューティングをストレージにもたらします。さらに、AWSが設計したプロセッサとスケールアウトアーキテクチャを使用して、今日の従来のCPUでできることを超えてデータ処理を高速化します。

今まではSSDからネットワークを介して持ってきたデータをCPUに渡して処理していたものを、s3から持ってきたデータをAWSが設計した高速なAQUAノードに置くことで、データの保存場所と計算クラスター間の不要なデータ移動を排除することができ、ネットワーク帯域幅の制限を回避できるという仕組みです。

Redshiftとの現在のバージョンと100%互換性があるのでコードを変更することなくAQUAのパフォーマンスの改善を活用できます。

*画像、解説等は公式サイトから引用させていただきました。