日本オラクルは2月26日、都内で「Exadata Summit」を開催し、同社初のハードウェア製品である「Exadata Storage Server」と「Database Machine」の概要ならびに活用事例について説明した。同イベントには米OracleのExadata Storage開発責任者でシニアバイスプレジデントのJuan Loaiza(フアン・ルイーザ)氏が来日し、開発の経緯やその仕組みついて基調講演の中で説明した。
厳しい時代にこそ活きるソリューション
イベントの冒頭で日本オラクル 代表執行役社長 最高経営責任者の遠藤隆雄氏が挨拶し、Exadata Storageについて「変化の激しい、厳しい時代にこそ活きるソリューション」だと紹介した。「厳しい現状において、各社は生き残るための方法を模索している。こうしたなか、流れを把握し、それに素早く対応できた企業が生き残ることになるだろう。いろいろな切り口で商品を分析し、ダイナミックにアクションをとることが重要だ。膨大なデータをリアルタイムで処理し、それをトップに対してストレートで報告する。リアルタイムであることが重要なのだが、過去には処理能力の問題があり、結果として限定的、あるいは長い処理を経て時差のある形でしか結果が得られなかった。Exadataは他のどこにもないハイパフォーマンスな機械であり、ぜひ活用してほしい」と来場者らに訴える。
続いてメインスピーカーのLoaiza氏が登場し、Exadataの登場経緯について説明した。同製品は昨年9月に米カリフォルニア州サンフランシスコで開催されたOracle OpenWorldで、米Oracle CEOのLarry Ellison氏によってOracle初のハードウェア製品として発表されたものだ。「Oracle 30年の歴史でみてもユニーク」とLoaiza氏がいうように、これまでソフトウェア側からのアプローチでパフォーマンスの限界に挑戦していたOracleにとって、まさに前人未踏の地への挑戦と呼べるものだ。
いかに大量のデータを高速処理するか? - S/W + H/Wのアプローチ
「データウェアハウス(DWH)などを中心に、企業で処理されるデータ容量は2年で3倍のペースで膨れあがっている。何十TBや何百TBといったデータをどのように処理するのか。またこれだけの大量のデータを秒単位で実現するかが課題となる。そのうえで従来のソフトウェア的なアプローチに加え、ハードウェア的なアプローチを加えることで誕生したのがExadataだ」とLoaiza氏は開発の経緯について説明する。
同氏によれば、特に問題となるのがデータ転送に関するボトルネックで、ネットワーク帯域(特にSANのファイバチャネル)、ストレージ側のパフォーマンス、転送容量の上限に対する転送すべきデータ量の多さが足かせとなるケースがしばしば見られるという。データ容量の増加で、データのスキャン時間が極端に上昇するのもこれが原因である。問題解決のためには「転送データ量を減らす」「ストレージ - サーバ間のパイプの接続本数を増やす」「転送帯域を増やす」というアプローチがあるが、Exadataはこの両者を同時に実現することで従来比10 - 100倍というような強力なパフォーマンスを提供する。
データウェアハウス(DWH)の容量成長カーブは2年で3倍のペース。問題はデータ量の増加とともに検索クエリ処理のパフォーマンス低下が顕著となり、容量の増加ペースほどにサーバ側の処理能力が向上しないことにある。主なボトルネックの原因はサーバ - ストレージ間の転送データ容量に対して回線帯域が細いことだ |
具体的にはストレージをインテリジェント化してしまうことで、SQL構文をストレージ側で理解し、必要最低限のデータ要素のみをサーバ側に送り返すことで転送容量削減する。従来型のアプローチであれば、データベースの格納されたストレージからブロック単位でサーバ側に転送が発生するため、これだけでかなりの高速化が実現できる。転送容量が減ることでサーバ上のCPUの拘束時間も減り、それだけ負荷軽減にもなる。
ストレージはモジュラー型の「セル」の組み合わせで構成されており、これを超並列なグリッドとして利用することで一種の負荷分散も実現する。そしてセルの個数に応じて接続パイプ数が増え、帯域も増強される。グリッド化の効果は負荷分散だけでなく、冗長性の高さにも現れる。セル間では自動的にデータのミラーリングが行われ、同時に負荷分散のための最適化も行われる。ストレージに新たなセルを追加して拡張した場合でも、自動的に冗長化と負荷分散のための再構成が行われる仕組みだ。
またサーバとの接続自体も従来のファイバチャネル(FC)スイッチではなく、InfiniBandを利用する。InfiniBandは20GBpsの帯域を持ち、標準的なFCに比べて5倍近く高速だ。これをストレージ - サーバ間のインターコネクトとして利用することで、高速大容量データベース処理に適した環境が出来上がる。