Amazon Web Service(AWS)チームがAmazon Redshiftの限定プレビューを発表した。その費用と機能で業界に波乱を巻き起こしそうなクラウドベースのデータウェアハウスだ。2タイプの大規模コンピュートインスタンスとデータ統合ツールData Pipelineも同時に発表されている。総合的にこれらのサービスは,ビジネスデータの収集,格納,解析にパブリッククラウドを用いる上で,費用対効果と効率の面でユーザ企業が持つ懸念を払拭するための第一歩となるものだ。
ラスベガスで開催された第1回 AWS re:Invent カンファレンスにおいて,AWSのCTOであるWerner Vogels氏は "高速でパワフル,そして完全に管理された,ペタバイト規模のクラウドデータウェアハウス" としてRedshiftを紹介した。Redshiftが大規模データを効率的に解析可能な理由について,氏は次のように説明している。
Amazon Redshiftは数百ギガからペタバイト単位の大規模データセットを効率よく解析するために,さまざまな革新的技術を採用しています。従来のリレーショナルデータベースが行単位のデータを連続的にディスク格納するのに対して,Amazon Redshiftでは列単位でシーケンシャルに格納します。これによってクエリ実行時に必要のない列データを読み込むことがなくなるため,行をベースとするデータベースと比較して,無駄なI/Oをはるかに少なくすることができるのです。さらに同形式のデータが連続的に格納されることから,Amazon Redshiftではデータをより効果的に圧縮できるため,結果を返すまでに必要なI/Oの数も非常に少なくなります。
Amazon Redshiftはそのアーキテクチャや基盤となるプラットフォームの面でも,データウェアハウスのワークロードに対して優れた性能を発揮するように最適化されています。Redshiftで採用された超並列処理(MPP/Massively Parallel Processing)アーキテクチャは,複数の低コストノード間でのクエリの分散化と並列化を実現します。そのノード自体もデータウェアハウスのワークロード用に特別に設計されたものです。複数スピンドルの大容量ストレージをローカル接続したノードが,オーバーサブスクライブを最小限に抑制可能な10ギガビットイーサネットで接続されています。
AWSチームのブログには,Redshiftの優れた回復能力に関する説明がある。
Amazon Redshiftは,ディスクやノードの障害時にもデータ整合性を維持できるように設計されています。最初の防御線はデータの2重複製コピーを使用するもので,これがデータハウスクラスタ内の異なるノードを対象に,最大で24ドライブに分散されます。ドライブの状態はAmazon Redshiftによって監視されていて,ドライブに障害が発生した場合にはコピーへの切り替えが行われます。この時,可能ならば正常なドライブか,必要な場合には別ノードへのデータ移動も行います。コピーの再処理中に若干のパフォーマンス低下を感じる可能性を除けば,これらすべての処理がユーザの感知しない場所で実行されるのです。
Redshiftは標準AWSの"従量制課金"価格モデルを踏襲する。大幅なコスト削減が実現可能であるため,というのがAmazonの主張だ。同社の調査によれば,通常のオンプレミスなデータウェアハウスのライセンスと維持に必要なコストは,テラバイト当たり1年間$19,000~$25,000程度である。これに対してRedshitサービスは,テラバイト当たり1年間の費用を$1,000以下にする予定だ。GigaOmのBarb Darrow氏によると,このサービスは "Oracle (だから Redshift - 赤方偏移?),IBM,Teradata に対するサイフォン事業" という位置付けであり,これまでのAWSになかった "従来の保守的なITベンダだけでなく,Amazon自身のソフトウェアパートナとも競合する高レベルなサービスの提供" である。
AWSのようなクラウドベンダは事実上無制限のストレージを提供するが,データのクラウドへの格納,およびRedshiftのような分析ツールとの統合,という課題を残している。新サービスのData Pipelineはこの後者に対処するもので,前者のソリューションについては今後の提供を待つことになる。Data Pipelineでは,グラフィカルなユーザインターフェースを使ってデータソース間の流れをモデリングすることができる。AWSチームのブログでの説明によると,Pipelineはデータソースと送付先,処理ステップ,実行スケジュールから構成されている。データソースとしてはRDSやDynamoDB,S3などAWSデータベース,EC2仮想マシン上で動作するデータベース,さらにはオンプレミスのデータセンタも使用可能だ。Data Pipelineはまだリリースされていない,ベータテストパートナの選択セットでのみ使用可能なサービスである。
ビッグデータを効率よく転送するには,相当量のネットワーク帯域が必要となる。AWSでチーフデータサイエンティストを務めるMatt Wood氏はGigaOmとのインタービューで,AWSとパートナ企業がこの問題に積極的に取り組んでいることを説明した。
データセットが巨大になれば,アップロードに必要な時間も長くなります。
Wood氏は,AWSがこの問題解消に努力していると語りました。例えばAsperaなどのパートナや,さらにはいくつかのオープンソースプロジェクトでも,インターネットを通じた大容量ファイルの高速送信をユーザに許可しています(氏は毎秒700メガビットの連続送信を行っていた例を知っている,と言っていました)。このためAWSでは,インバウンドデータのデータ転送費を廃止すると同時に,大容量ファイルの並列アップロードを可能にしています。さらにデータセンタ事業者を対象として,AWSサイトとの専用接続を提供するDirect Connectプログラムを設定しました。
これらのどの方法でもデータセットが大きすぎる場合には,AWSに物理的なディスクを送付することも可能です。"間違いなくハードウェアドライブを受け取ることになるでしょうね" とWood氏は言っていました。
"大きい"という話題では,EC2仮想マシンの最新インスタンスタイプが2つ公開された。そのひとつ “Cluster High Memory” は,240GBという大容量メモリと120GBのソリッドステートドライブ2機を持つインスタンスだ。現在のEC2で使用可能なRAM容量の最大値が60.5GBであることを考えると,これは相当な増加である。もうひとつのインスタンスタイプは "High Storage”というもので,117GBという余裕あるメモリと48TBのストレージが用意される。これらのインスタンスタイプは現在はまだ使用できないが,いずれもクラウド上で Map Reduce とビッグデータ処理を行うユーザを直接の対象とするものだ。