「ネットワークがボトルネック? なら最高速度のバスを使えばいいじゃない」という発想から生まれたBonetのユニークさ
ビッグデータ分析プラットフォームのボトルネックはネットワーク? でも高価で特殊なネットワーク機器を採用するのは気が重い……。ならば、PCIeがあるではないですか。
「Bonet」という製品をご存じだろうか。BonetはAkib Systemsという企業が開発したPCI Express直結のネットワークカードを搭載した製品だ。既に国内でも主要な展示会などで注目を集め、2009年、2011年にはIT機器の総合展示会であるInterop Tokyoにおいて、Best of Show Award 特別賞を受賞している。
Bonetシリーズは、PCI Expressをノード間接続などにそのまま利用できるユニークな製品だ。2013年2月27〜28日に開催されたクラウド関連のテクノロジを集めた展示会「Cloud Days Tokyo 2013春」(東京)では、同社の製品も展示されていた。本稿ではそのブースと、開発元のAkib Systemsのセミナーから、同製品の可能性、そのユニークさを紹介する。
Bonetがビッグデータに最適な理由
Bonetは、大規模かつ高速な演算を必要とする大学などの研究機関での採用が既に進んでおり、国内ではジャパン ケーブルキャストが総販売代理店になっている。ジャパン ケーブルキャストは、コンテンツを全国のケーブルテレビ局に配信するための共通プラットフォームや通信システムなどを提供している企業だ。
「当社の顧客は、個々のデータ量が大きなコンテンツを扱う企業が多いのです。制作や編集の場面では、少しでもデータの読み出しを早くしたい、というニーズが非常に高い。ですから、通信部分でPCI Expressを採用しているBonetは非常に魅力的でした」(ジャパン ケーブルキャスト 技術本部 ネットワークサービス部 担当課長 寺島広道氏)
この製品の実際のセールスは、各種サーバ機器の販売を行っているサードウェーブテクノロジーズが行っている。両者はBonetをきっかけに2011年8月から共同で製品プロモーションを進めているという。
「Bonetはサーバ間の通信速度を高速化する製品。さまざまな利用方法が考えられることから、両社共同で展示会などの場においてテーマに応じたデモを行っているのです」(河合氏)
ビッグデータというと、手頃なハードウェアで大量に並列処理させる傾向がある一方で、クリティカルなデータを非常に高いスペックのハードウェアの中に集約して運用しようとする動きもある。いずれにしても、大量データを処理させる仕組みだが、こうした処理でもっとも課題となっているのはI/O性能である。
デモブースでは、BonetのI/Oパフォーマンスが分かるよう、Apache Hadoopの分散処理システムを乗せたデモを実施していた。マルチノードサーバとストレージ、スイッチを組み合わせ、ネットワーク部分にボトルネックが存在しないことを示す内容だ。ハードウェアだけではなかなか伝わらないかもしれないが、実際にはコンソール上で演算結果などの数値をリアルタイムで見せてくれた。
SSD16基搭載のストレージ「G3 StorageServer S16/SMC-U2」と3U 8ノードのサーバ機「R-300-8MC」を「Bonet」で接続し、Hadoopによる大規模データ分散処理を行うデモだ。
展示会ブースに出展していたBonetのスイッチはPCI Express 2.0 8レーンに32ポート接続可能なもので、ホットプラグにも対応している。電源は1250W×3で予備電源1つを持つことも可能である。
ストレージシステムG3 StorageServer S16/SMC-U2側も接続部分はBonetを採用している。いずれも、データ転送速度はTCP/UDP通信の帯域幅計測ツールiperfを使った実測値で14Gbpsとなっている。
「今回のデモでは実測値でサーバ間の転送速度は14GBps程度ですが、Akib Systems台湾のラボではすでに18Gbps程度までパフォーマンスを高めているという話も聞いています」(サードウェーブ テクノロジーズ 製品開発部 製品推進課 河合圭一氏)
ビッグデータ処理ではインテル® Xeon®プロセッサがコストと性能のバランスが良い
同社がビッグデータソリューションとして示したハードウェアは、インテル® Xeon® プロセッサ E5ファミリー(以降、E5)、インテル® Xeon® プロセッサ E3ファミリー(以降、E3)を採用したものだ。
「PCサーバ向けチップの中では信頼性が高いラインアップです。その中でも必要に応じてE5とE3のラインアップを使い分けています」(河合氏)
Apache Hadoopのスレーブノードは個々のスペックは一定程度必要だが、それよりも個々のI/Oやネットワーク性能が全体のパフォーマンスに影響する。「その意味で、今回の展示でスレーブノードとして使用している『R-300-8MC』は、E3で構成しても十分。BonetとストレージのI/Oの速さを共有できる帯域を持っている。フルで使ってもネットワーク帯域がボトルネックになることがない構成になっている」(河合氏)
一方で、Hadoopデモシステムのデータ格納ストレージとして展示していたサードウェーブテクノロジーズが提供する「G3 StorageServer S16/SMC-U2」では、E5を採用している。ストレージ側ではHadoopの個々の計算ノードよりも性能が求められるため、ソケット数の多いE5を採用しているのだという。こちらもスピードを重視したSSDを搭載したモデルである。デモ環境の構成図は下図の通りだ。
「Hadoopのような分散処理環境を構築する際は、手頃なノードを大量に使う場合がありますが、エントリーレベルのチップでは、やはり期待した性能は望みにくい。Xeonプロセッサであれば、コストとパフォーマンスの面で非常にバランスが良い」(河合氏)
通常通りの手順で構築すれば高速なシステムが立てられる
Hadoopのような分散処理システムでは、ノード間通信をTCP/IP経由で行う場合がほとんどだ。しかし、データセンターなどのラックマウント機では、各ノード間は物理的に非常に近い位置にある。であれば、既存のネットワーク規格にこだわらず、もっとも速度の出るバスを利用する方が効率が良い。
「PCI express バス規格はそもそもデータ転送速度が速い。それを、同社が提供するドライバによって、OS側から見た場合に通常のイーサネットデバイスと見せかける仕掛けになっているのです。ドライバを用意するだけで、通常のイーサネット接続環境と同等に扱えることから、Hadoop環境を構築する際にも、通常通りの手順で構築すれば問題なく動作する」(河合氏)
同製品では、Red Hat 6.2以降、Windows Server 2008 R2以降の環境向けのドライバを提供している。
Hadoop環境でなくても、「レスポンスタイムを早くしたい」という要求に対して、このハードウェア環境を用意するだけで高速化が狙える。例えば仮想化など、通信負荷や I/O 負荷がボトルネックになりやすいシステムでもサーバ間、ストレージ間をこうした環境に置き換えることで、パフォーマンス改善の可能性があるだろう。
過去にサードウェーブテクノロジーズとジャパン ケーブルキャストが共同で行った仮想化環境向けの展示では、ハイパーバイザとしてKVMを使い、ゲスト OS 上でWindows Serverを2台動作させ、この2台の仮想サーバを外部環境と通信させるというデモを行ったこともあるという。
仮想化環境を使った場合のネットワーク構成は、物理ネットワーク構成以外にも仮想化環境下でのネットワーク設定も考慮しなくてはならず、仮想化環境下でもきちんと動作させられるハードウェアを検討する必要がある。
同製品は過去の展示デモで、KVM環境下上のゲストOS と実環境サーバとの通信デモを示すことで、サーバ仮想化環境向けソリューションとしての有効性も示したようだ。現在は、KVMだけでなくVMware向けのドライバ提供も準備を進めているところだという。
日本発 Akib Systemsのユニークさ
このようなユニークな製品はどのようにして生まれたのだろうか。Akib Systemsの講演からそのヒントを探ってみよう。
Akib Systemsはもともと東京・秋葉原を拠点としていた日本企業。今年で設立6年を迎える。日本企業ではあるが研究開発拠点を台湾に置いている。
「当社は、日本発の技術で尖ったものを何か出せないか、という思いを持って製品を作っている」と語るのは、Bonetの開発元であるAkib Systems CTO 岩澤剣太郎氏だ。
台湾にはハードウェアの技術者が比較的多く、また世界的なEMS企業やファブレス企業も拠点を構えており、製品開発を行うには最適なのだという。現在12人の同社では、製品開発部門の約半分を現地技術者が占めている。
岩澤氏が登壇したセミナーでは、ビッグデータ処理のボトルネックに対応する技術革新に向けた同社の意気込みが感じられる内容だった。
ビッグデータ処理で重要なのは処理を早く正確に行うことにある。処理にボトルネックを作らないためには極力「データを動かさないこと」。
しかし、記憶媒体ごとに性質が異なるうえ、処理のためのプロセッサやメモリ間でのデータの受け渡しがなくなることはない。システムの中では、メモリやプロセッサ接続インターコネクト、ノード間接続などが各々で行われている。大量データ分析などでは、こうした個々の通信部分の速度差がパフォーマンスに大きな影響を与える。
岩澤氏は、あるデータベースアプライアンス製品を例に、システム内の通信帯域の比較検証結果を示した。
本稿では具体的な実測値の紹介は控えるが、例として示されたシステムでは、メモリからリモートメモリへ、あるいはメモリからストレージに接続する帯域がボトルネックになりやすいことが示された。
メインメモリのI/Oが高いパフォーマンスを示す一方、InfiniBand QDRやSAS RAIDなどは、メインメモリよりもずっとI/O性能が低い。システム全体のパフォーマンスはこの最もI/Oパフォーマンスの低いデバイスに依存してしまう。
イーサネット接続は最大で100Gbpsだが、まだ非常に高価な製品が多い。また、InfiniBandは40Gbps(QDR)ないし56Gbps(FDR)だ。一方、PCI Express 2.0であれば、リンク幅×16であれば64Gbpsとなり、かなり高い性能を期待できる。
そこで、同社ではPCI Expressをコンピューティングネットワークの部分で採用できる仕組みとして「Bonet」を開発したのだという。
「ただし、PCI Expressそのものの規格は通常、1対1の通信を想定しているが、Bonetでは、コンピューティングネットワークに対応できるよう、独自にN対Nの通信が可能になるような仕掛けを用意している」(岩澤氏)
これが、独自に設計したBonetのコアとなる部分だ。セミナー冒頭で岩澤氏は、IT機器そのものはコモディティ化が進み、もはやハードウェアに差別化要因を求めることが難しく、ソフトウェアでの差別化を重視しなければならない、と語ったが、このBonetの発想と、そのハードウェアの性能を市場ニーズに合わせて活用させるためのドライバ提供こそが、Bonetをユニークなものたらしめているといえよう。
現在、PCI Expressの最新規格である3.0に対応した製品を開発中だ。2013年後半にも、より高速化したBonetの新ラインアップが登場する予定だという。新製品では、現行の4Uサイズよりも小さな2Uでの展開を考えているという。
日本の技術者が発信するビッグデータソリューションに期待したい。
おすすめホワイトペーパー
【検証報告】HadoopのボトルネックとなるI/O問題を解決する方法
Hadoopの分散処理基板として注目を集める、PCI Express Bus直結型のIPネットワークデバイス「Bonet」。そのユニークさから、Interop TokyoでBest of Show Award特別賞を受賞した同製品の実力を検証する。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- 10GbE? それとも40Gbps QDR InfiniBand?:いま知っておくべきWebサービスのための高速ネットワーク技術(前編)
- ボトルネックの解決が新たなボトルネックを顕在化:いま知っておくべきWebサービスのための高速ネットワーク技術(後編)
- PCI Expressの概要と高速化を支える技術
関連リンク
提供:株式会社サードウェーブテクノロジーズ/インテル株式会社
アイティメディア営業企画/制作:@IT 編集部/掲載内容有効期限:2013年3月31日