Amazon Redshiftの割高感を解消できるRA3インスタンス
パブリッククラウド市場の先頭を走るAmazon Web Services(AWS)では、さまざまなデータベースサービスを提供している。トランザクション系にはAmazon RDSやAmazon Auroraがあり、情報系の処理にはAmazon Redshiftがある。他にも用途ごとに、多様なデータベースサービスが用意されている。AWSはOracleのように1つのデータベースでさまざまなデータタイプを扱うのではなく、データタイプごとに特化したデータベースを用意し、顧客が適宜選択、組み合わせて利用する方針をとっているのだ。
AWSを利用する多くの企業は、データ分析基盤にAmazon Redshiftを使っているだろう。これはオープンソースソフトウェアのPostgreSQLをベースとしたデータウェアハウス専用のデータベースサービスだ。データを構造化して蓄積し、高速なデータ分析処理が行える。
Redshiftを使えば、AWS上で容易にデータウェアハウスが構築できる。その際にも、大規模データベースの面倒な運用管理の手間はない。そしてクラウドの特性を生かし、拡張も容易にできる。しかしながら、極めて大量のデータを高速に処理したいとの要望を満たそうとすると、Redshiftはコストが高くなるとの声も聞こえる。
これは従来のRedshiftで用意されていたSSDベースのDC2、HDDベースのDS2インスタンスは、データを処理するコンピュートノードが個別のストレージを持つアーキテクチャとなっているためだ。この構造では性能を増強するためにコンピュートノードを追加すれば、ストレージもセットで増える。またデータ容量を増やそうとすれば、性能が足りていてもコンピュートノードも追加される。つまり性能とストレージ容量が常にセットで拡張されるため、結果的にコスト高になることがあったのだ。
この課題を解決するのが、RA3インスタンスだ。「従来はサーバーとディスク部分が全部セットで、そのセットになっていたものをシンプルにデータ領域とサーバー領域に分けるようにしたのがRA3」と言うのは、株式会社アシスト クラウド技術本部 技術統括部 クラウド技術部 2課 課長の小野明洋氏だ。
たとえば、大量データを処理したいが性能要件はそれほど厳しくないことがある。RA3でサーバー領域とデータ領域が分かれたので、1ノードや2ノードの安価な構成でも大量データを扱える。このような「融通を利かせた構成」がRA3インスタンスの特長だ。ノードをたくさん並べてもディスク領域はそれほど使わない、データはそれほど多くないが多くのコンピュートノードを使い高速な処理をしたいといった要望にも柔軟な構成で対処できる。さらにRA3インスタンスのディスク領域は、利用した分だけが拡張される。結果的に余分なノードやディスクをあらかじめ確保する必要がなく、コストの最適化が図れる。