このページの本文へ

最大64TBのメモリ、4096スレッドを実現する「SGI UV」の存在意義

SGIのCTOが語る「ビッグデータにビッグメモリが必要な理由」

2013年11月06日 14時00分更新

文● 大谷イビサ/TECH.ASCII.jp

  • この記事をはてなブックマークに追加
  • 本文印刷

ビッグデータの台頭はビジネス、テクノロジーという両面でITに大きな影響を与えている。シリコンバレーの名門SGIで12年間CTOを務めているイン・リム・ゴー氏(Dr. Eng Lim Goh)に、SGIがビッグデータ向け製品として展開している共有メモリアーキテクチャ「SGI UV」の存在意義とコンセプトについて聞いた。

検索とクラスタ化だけではニーズを満たせない

 長らくスーパーコンピューターに手がけるSGIだが、近年はHPC、クラウド、ビッグデータを手がけている。このうちビッグデータに関しては、複数のメモリを単一のビッグメモリとして扱える「SGI UV」というユニークな共有メモリアーキテクチャーを採用したサーバークラスターを提供している。SGI UVは各ブレードに搭載されているSGIの独自チップが複数のメモリを直結することで、OSからは最大512ソケットのサーバーに見えるという技術だ。これにより、最新のIAアーキテクチャーをはるかに凌駕する最大64TBを単一のメモリとして利用でき、シングルシステムイメージを最大2048コア(4096スレッド)まで拡張することが可能になる。ビッグデータのための、ビッグメモリというわけだ。

64TBのビッグメモリを実現するSGI UV

 なぜビッグデータで巨大なメモリが必要になるのか? 博士号を持つゴー氏の“ビッグデータの講義”にしばしおつきあい願いたい。

 ゴー氏は、古典的な定義である3つのV(Volume、Variation、Velocity)の要件に照らして、最新のビッグデータを分類する。「たとえば、15mの望遠鏡2000台を1k㎡四方に置いているSquare Kilometer Arrayが完成すると、1日あたり1EB(エクサバイト)のデータが生成されることになる。SNSではYouTube、Amazon、Facebookがトータルで1EBのボリュームを扱っている。これらはVolumeという面でまさに巨大なデータだ。一方、Googleのデータは多様性(Variation)に富んでおり、10億人が一斉に生成するテキストメッセージはスピード(Velocity)が速い」(ゴー氏)。これらのデータをコンピューターに“摂取(injest)”し、意思決定に役立つ答えを導き出すのが、いわゆるソリューションとしてのビッグデータだ。

 ゴー氏は、従来のビッグデータのアプローチを「たとえば、巨大なわらのヤマの中に針が潜んでいるというケースだ。針があることは分かっているので、わらの山が大きいのが問題になる」と表現する。この場合に有効なのは、クラスタリングと検索というアプローチだという。つまり、巨大なわらの山を複数に分割し、分割したわらの束から針を探すという作業だ。典型的なHadoopのクラスターが行なっていることは、まさにこの作業といえる。

米SGI CTO イン・リム・ゴー氏

 しかし、こうしたビッグデータのアプローチには限界がある。「たとえば、“答えがそこにあるかわからない”という点だ。違うところを見ているか、あるいはそこにないことを知らないわけだ」(ゴー氏)。典型的な例としては、不正なクレジットカードやコンピューターウイルスの検出が挙げられる。既存のシグネチャであれば、ウイルスは検出できる。しかし、シグネチャにないものは、あくまで予測するしかないわけだ。

 こうした予測するために用いられるのは、関係性をグラフ化するアプローチだという。前述の例であれば、わらとわらの関係性を見える化し、なにを求めたいのかを調べるアプローチになる。検索のように質問が分かっている場合と異なり、グラフの場合はあとから質問が出てくるという特徴がある。こうしたタイプのビッグデータには検索の演算ではなく、グラフ化するための演算が必要になる。

データ分割せずに迅速な意思決定が実現する

 こうしたグラフを作るために有効なのが、冒頭のSGIのUVだ。検索を前提とした既存のクラスターは相互の関係性を“絶つ”ことが前提としているが、SGI UVではグラフを切断しないで単一メモリで扱える。ビッグメモリにビッグデータを置き、高速なプロセッサーで迅速に処理してしまう。これにより、データ分割に時間を割く必要がなく、素早く結果を得られるという。

 ゴー氏は、「ダイアモンドを最適にカットするには通常6ヶ月くらいかかるが、データ分析にそんな時間はかけていられない。確かにクラスターのほうが安価だが、時間を短縮するのであればSGI UVも1つのアプローチだ」と語る。同一種類のデータを大量に処理する場合はHadoopクラスターが有効だが、SGI UVはデータの多様性やリアルタイム性にフォーカスしているというわけだ。しかもメモリなので超高速。「フラッシュと比べれば、少なくともメモリの方が100倍高速だ」とゴー氏はアピールする。

 さらに重要なのは、Linuxカーネルで扱えることだ。ゴー氏は「標準のLinuxディストリビューションが動作するので、あらゆるOSSのソフトウェアを動かせることのがポイントだ」と語る。SGIが開発したコードをLinuxのコミュニティに戻すことで、標準のLinuxカーネルで大容量メモリをサポートすることが可能になったという。

Google Glassを使って、SGI UVにリモートログインするゴー氏

データ集約型コンピューティングの時代へ

 SGI UVの用途は意思決定支援やゲノム、バイオ科学、化学、材料学、物理学、防衛、製品設計などを想定している。現状、学術用途がメインだが、今後商業分野での利用も増えてくるとゴー氏は予想する。「検索をベースにしてきた商業用途においても、今後は不確実性な状況で意思決定する必要がある。あるいは不正検出やセキュリティなどでも利用されてくるだろう」(ゴー氏)。

 SGIはHPCにも古くからフォーカスしているが、昨今はビッグデータとコンバージしつつある。ゴー氏は、「HPCが大量のデータを作るようになっていて、今までは別のところに送っていたが、大量になると送るだけでコストがかかる。そのため、今後はHPC自体でビッグデータの解析に対応するようになるだろう。演算集約的だけではなく、データ集約的なコンピューティングになっていくはずだ」と語る。

■関連サイト

カテゴリートップへ

  • 角川アスキー総合研究所
  • アスキーカード