Amazon Redshift Spectrumについて調べてみました

Pocket

こんにちは、たいしゅうです。

AWSでデータ分析、ビッグデータの分析で利用されるサービスといえば、数年前にリリースされて以来、様々な企業で利用が拡大している「Amazon Redshift」です。
今回、このRedshiftに大型アップデートが追加されました。その名も「Amazon Redshift Spectrum」です。今回は、この「Amazon Redshift Spectrum」について、紹介をしたいと思います。

【主な特徴】

Amazon Redshift Spectrumは、S3上に保存されている、膨大なデータ群に対して、Redshiftと同様の分析を実行することができます。
これにより、これまでRedshiftでは連携が難しかった既存のAWSサービスとの連携ができるようになりました。
Amazon EMRやAmazon AthenaはS3との連携に対応していましたが、Spectrumの登場でRedshiftでもS3に蓄積したデータを処理することができます。
勿論、これまで連携をしていたBIツール(Tableauなど)の利用も既存のRedshift同様に可能となっております。
Redshiftは利用できるディスク容量はインスタンスごとに上限があります。ディスクが不足した場合は、容量を増やすためにインスタンスを追加する必要がります。Redshift Spectrumは、データはS3に置くことができるため、Redshiftのように空きディスク容量を気にせずに利用できます。さらにRedshift Spectrumは、Redshift本体とは別の独立したプロセスでの処理となるためRedshift自体に負荷を掛けることなくデータを分析することができます。

https://www.slideshare.net/AmazonWebServicesJapan/201724aws から引用

【利用可能なデータフォーマット】

Redshift Spectrumで利用可能なデータフォーマットは、以下になっています。
・CSV/TSV
・Parquet(Dremel の Columnar Storage clone の列指向フォーマットです)
・SequenceFile(バイナリ形式のKey-Valueレコードを保存するためのフォーマット)
・RCFile(Record Columnar File の略で,Hive から利用できるストレージフォーマットです)

【料金】

Redshift Spectrumの料金については以下のようになります。

Redshift Spectrumの課金は、スキャンされたバイト数に応じてされます。バイト数は、メガバイト単位で切り上げられます。つまり10MB未満のバイト数は10MBとして計算されます。
■クエリあたりの料金
スキャンされたデータ 1 TB あたり 5 USD。
■料金の例
合計サイズが 8TB の、非圧縮テキストファイルとしてS3に保存されたデータをスキャンした場合
料金は 40USD となります。(スキャンされた8 TBの料金は、4*5USD/TB=20USD)

いかがだったでしょうか。これまでDWHの常識を覆し、新たな常識を築いてきたRedshiftの新たな機能Redshift Spectrumの紹介でした。残念ながら2017年7月時点では東京リージョンには対応していませんが、この機能の登場によりRedshiftのニーズがさらに増えそうな気がしました。

今回はここまでになります。
最後まで、ご覧いただきありがとうございました。

次回もお楽しみに。