「情報系はサマルのが当たり前」というイメージを覆したInfiniDBとはどんなデータベースなのか

EnterpriseZine / 2012年8月22日 14時0分

DBオンライン読者の皆さんなら、InfiniDBというデータベースをご存じだろう。これは、いわゆる列指向型のアーキテクチャを持つ、新しいデータベース(カラムナーデータベース)だ。情報系の分析やデータウェアハウスなどの用途で利用すると、極めて効果的と言われている。

■InfiniDBはチューニングも索引も必要ない

 「InfiniDBの特長は、Fast、Simple、Scalableの3つです」と言うのは、アシスト 情報基盤事業部データベース製品統括部 2部 主任の花谷俊英氏。OLTPトランザクション処理には適さないが、大量データの分析ならば高速に処理できる。データベースサイズは、数百ギガバイトから数テラバイト程度が最適で「数10テラバイトでもかなり高速に処理できます」と花谷氏は言う。

 InfiniDBでは、高速化するためのチューニングはほぼ必要としない。さらには、索引も必要ない。チューニングを行わないので、データベースの統計情報の収集もしなくてよい。これら索引や統計情報収集がいらないのは、日常的な高い性能を維持するためのデータベース運用管理手間を、大きく削減することになる。これが、InfiniDBがSimpleだという理由だ。

 じつは、InfiniDBのベースとなっているのは、オープンソースデータベースのMySQLだ。

 「基本的には、MySQLのストレージエンジンがInfiniDBになっていると考えてください。なので、データベースの操作性は、ほぼMySQLと同じです」(花谷氏)

 InfiniDB用にMySQLのソースコードに若干手は入っているが、MySQLとの互換性はほぼ確保されている。そのため、クライアントアダプタもMySQLのものが使用でき、MySQLで利用できるBIツールであればInfiniDBでも問題なく使える。もちろんANSI SQLにも準拠しているので、市場にあるさまざまなアクセスツールがそのまま利用できる。

 InfiniDBでは、OLTPトランザクションも可能だ。とはいえ、性能面は期待できないとのこと。それもありデータ更新は、基本的にローディングで行う。MySQL LOADももちろん利用できるが、cpimportというバルクモードでロードできるツールが用意されており、これを使うことで大量データを高速にロードできる。通常情報系のデータベースでは、データのロードを行った後には索引のメンテナンスをする必要がある。しかしながら「InfiniDBでは索引は必要ないので、そのぶん更新作業は短時間で終了します」という。さらに、InfiniDBではデータ圧縮効率もかなり高い。これと、索引を必要としないこととを併せ、実データ量に対するディスクの利用効率もかなり高くなっている。

谷川 耕一[著]

■関連記事

実際にDATABASE.COMを使ってみよう[2012年09月20日]

クラウドデータベースのdatabase.comっていったいどんなサービスですか?[2012年09月13日]

週報アプリで会議時間を削減しよう[2012年09月12日]

MongoDBの開発元、サンフランシスコの10gen社のエリックさんにインタビューしてきました[2012年09月06日]

いま注目のFusion-ioの速さの理由 [2012年08月30日]

■記事全文へ

EnterpriseZine

トピックスRSS

ランキング