NECが考えるRDBな企業とHadoop活用/MariaDB、ストレージエンジンSpider:Database Watch(2013年10月版)(1/2 ページ)
今月はNECのスケールアウト型データベース「InfoFrame Relational Store」とMySQLのForkとして注目を浴びているSkySQLのMariaDBについてレポートします。
スケールアウトの鍵は3層構造にあり
ガートナージャパンが先日発表した今年のテクノロジのハイプ・サイクルによると、ビッグデータは現在ピーク期にあるとされています(リンク)。膨大なデータから新たな気付きが得られることが現実になる一方、その裏では大量のデータを高速に処理すること、分析すること、スケールするなどの要件を満たすデータベースが求められています。
NECはスケールアウトと高速トランザクション処理が両立できるデータベースとして「InfoFrame Relational Store」(以下IRS、リンク)を2012年から提供しています。2013年8月からはAWS(Amazon Web Service)用ライセンスも提供するようになり、AWSで同製品を構築するためのサンプルや設定をまとめた資料も提供しています(関連記事)。NEC システムソフトウェア事業部 シニアマネージャ 白石雅己氏がIRSについて解説してくれました。
3層に分かれたサーバ処理
IRSはKVSのようなスケールアウトというメリットも持ちつつ、RDBのSQLインターフェイスほか、トランザクション処理や信頼性というメリットも併せ持つという特徴を持っています。いいとこ取りですね。
どう実現しているのか。大きな鍵となるのが3層からなるコアエンジンです。SQLインターフェイスやセキュリティ機能を受け持つ「Partiqleサーバ」、マイクロシャーディング機構とインメモリデータベース技術を応用した「トランザクションサーバ」、Hadoop連携を行う「ストレージサーバ」と、サーバが3層に分かれています。
3層に分けることで、それぞれの層で柔軟にスケールアウトできるようになっています。昨今、顧客から要望が高いのが「スモールスタートできて柔軟にスケールアウトすること」だそうです。無駄な投資を抑え、変化に素早く対応できるようにするためです。NECは3層に分け、ボトルネックとなる層で的確にスケールアウトできるような仕組みにしています。
ただし、一般的にスケールアウトできるデータベースとなると、KVSやNoSQLとなり、SQLでアクセスしていたアプリケーションが使えないという問題が起こり得ます。
しかし、IRSはSQL89標準に準拠しており、既存のアプリケーション資産を有効活用できるようにしています。NECがBIGLOBEの画像管理サービスでIRSを先行導入してみたところ、RDBをIRSに置き換えてもアプリケーションプログラムは99%が流用できたとのことです。
性能に関してはどうでしょうか。NECの参考値ですが、Particleサーバ1台でのTPS測定値はSELECTで4万7000、INSERTで1万6000でした。前者はCPUを上限ぎりぎりまで使うなど、目一杯に稼働させられるのも特徴です。
データベースのトランザクション保証をどのように行うかによって、「楽観的」「悲観的」の2種類のトランザクション制御があります。同製品は「楽観的制御」を採用しています。これは誰かがデータをつかんだときにデータをロックするのではなく、コミットの時に先にゴールした方を勝ちとする制御法です。「待ち」時間を減らせるのがメリットです。この制御方法は、1件当たりの処理が短い場合に適しています。
Hadoop技術を活用しているのもIRSの特徴の1つ。HadoopからIRSのデータを直接アクセスできる「ダイレクトアクセス機能」が提供されているため、Hadoop用のデータベース(HDFS)の構築が不要となります。一般的にRDBからHDFSにロードをする場合、この部分がデータ処理のボトルネックになりやすいため、ダイレクトアクセス機能によってそこを解消しています。
ほかにも、Hadoop連携では必要なデータをデータベースやテーブル単位でフィルタリングできる「フィルタリングアクセス機能」や、過去にHadoopで処理したデータ以降の差分を転送する「差分アクセス機能」もあります。NECの参考値によるとデータ件数500万件として、全件を読み込むダイレクトアクセスで197秒、差分アクセスで500万件読み込むと267秒、10万件差分抽出すると45秒という結果が出ています。
スモールスタートできて柔軟にスケールできることは将来を予測しにくいビジネスではうまくリスクヘッジするために重要になります。また「オープンソースを使用したいが、何か問題が起きたときに対処できるか不安」という顧客も多いそうです。HadoopなどOSS技術を巧みに使いつつ、SQLインターフェイスも持ち、既存システムへの導入も可能としています。直近では、AWSでの利用も可能となるなど、時代の要請に見合うような進化を遂げているようです。
Copyright © ITmedia, Inc. All Rights Reserved.