インメモリやHadoop、Hitachi Advanced Data Binderなど多様な高速DB
既存のDBシステムに近い構成が可能なのが、「DB専用アプライアンス製品」の導入だ。DBアプライアンスは、サーバとストレージのハードウェアを一体化させたものであり、構成の自由度が制限される代わりに、サーバやI/O、ストレージなどの各ハードウェア要素間の性能があらかじめ最適化された形で提供される。前項で挙げたような、各ハードウェア要素間での性能のアンバランスが是正されているため、高速な処理性能が期待できる。また運用効率化の面でも、DBとストレージの管理が一元化されていたり、あるいは運用を自動化できる各種機能が搭載されているといったメリットがある。
一方、DBシステム自体を性能重視の製品に移行するなら、「インメモリDB」という選択肢がある。インメモリDBとはその名の通り、データをメモリ上に置くため、HDDをストレージとして利用する一般的なDBシステムと比較して極めて高速なRead/Write性能を発揮する。ただし、揮発するメモリ内にデータを格納するため、可用性の面では若干の課題が残る。また、システムに搭載可能なメモリ容量には限界があるため、大量データの保管用途には向いていない。
また最近では、データ検索の高速化を実現する別のアプローチとして、「分散DB」が注目を集めている。その代表格とも言える製品が、ビッグデータのリアルタイム処理などでの活用例が増えてきた「Hadoop」だ。Hadoopは、独自のファイルシステム上で動作する「HBase」という分散DBの仕組みを利用し、データを分割配置してバッチ処理を並列実行することで、超巨大テーブルを高速に処理できる。
このほか、従来のDB技術の延長線上にはない、全く新たな高速処理技術を採用したDB製品も登場してきている。例えば、日立製作所が製品化したデータアクセス基盤「Hitachi Advanced Data Binderプラットフォーム(HADB)」(※1)は、「非順序型実行原理」(※2)というこれまでにないまったく新たな技術を取り入れたエンジンに、SSD搭載ストレージを組み合わせることで、標準のSQLに対応しながら従来のDBと比べて劇的な高速化を実現しているという。
直近の課題の解決にはI/Oとストレージのハードウェア性能の見直しを
ここまで、DBを高速化するためのさまざまな方法を紹介してきたが、「今動いている業務システムのDBを高速化したい」「バッチ処理を朝までに確実に終えたい」といった直近の課題を、できる限り容易に解決する方法としては、やはり既に述べたようにI/Oとストレージのハードウェア性能の見直しが最も確実かつ有効だと言えるだろう。
実は、この「I/Oとストレージの見直しによるDB高速化」というソリューション分野は、現在各ベンダーがさまざまな製品やサービスを次々と投入しつつある、大注目の市場なのだ。そこで次回は、そうした製品の代表格とも言える、日立製作所の「DB 高速化ソリューションfor Oracle RAC on SSD」を紹介してみたいと思う。
※1 内閣府の最先端研究開発支援プログラム「超巨大データベース時代に向けた最高速データベースエンジンの開発と当該エンジンを核とする戦略的社会サービスの実証・評価」(中心研究者は東京大学の喜連川優教授)の成果を利用して開発
※2 東京大学の喜連川優教授および合田和生特任准教授が考案した原理