「オールフラッシュ、インメモリなど、Oracle Exadata X5の新機能は本当に使えるのか、どう使うのか?」──全ての疑問に答える製品開発と営業の担当が本音で議論(2/3 ページ)

» 2015年03月03日 07時00分 公開
[PR/@IT]
PR

インメモリデータベースでOracle Exadataが不要になる?

日本オラクルデータベース事業統括 製品戦略統括本部 営業推進本部 本部長の人見尊志氏

人見 Oracle Database 12cがインメモリデータベースをサポートしたことで、Oracle Exadataの存在意義を問う声もあるようです。ずばり伺いますが、Oracle Exadataは、もう要らなくなるのでしょうか?

田子 それは違います。インメモリデータベースとOracle Exadataは得意分野が異なりますから、適材適所で使い分けることが肝要でしょう。

 お客さまの中には、インメモリデータベース技術とOracle Exadataの高速化技術が理想的に重なり合い、システム全体の性能が劇的に高まると考える方もいらっしゃるようです。しかし、現実にはそうではありません。

 インメモリデータベースの技術は、あくまでもCPU/メモリ間でデータベース処理を行うためのものです。データベース/ディスク間のI/O性能を劇的に高めるOracle Exadataならではの技術、例えば「Smart Scan」やデータ圧縮の技術は、インメモリではほとんど効力を発揮しないのです。

人見 SQLの処理性能についてはどうでしょう。インメモリデータベースとOracle Exadataとでは、SQLの処理性能に違いが出るのでしょうか。お客さまの中には、その辺りを気にする方もいらっしゃるようです。

田子 一つのSQLを処理するだけなら、インメモリデータベースと、インメモリデータベースを使わない場合のOracle Exadataの間に性能差はほとんどありません。「Oracle Exadataが処理に100秒かかるのに対して、インメモリデータベースなら80秒で済む」といった程度です。

 ただし、SQLを多重実行すると、両者の性能に違いが出てきます。例えば、非常に高い負荷が掛かるSQLを50件多重実行する場合で両者を比較すると、Oracle Exadataでは、ストレージへの処理のオフロードが頻繁に発生するため、どうしても劣化率が大きくなり、単一SQL実行時の4倍の時間がかかったケースもあります。これに対して、インメモリデータベースの方は劣化が少なく、単一SQL実行時の2倍ほどの劣化率で済んだのです。

人見 それでは、両者をどう使い分けるのが正解なのでしょうか?

田子 例えば、Oracle Exadata X5では大量のメモリの搭載が可能とは言え、メモリは高価ですし、システムへの搭載量にはどうしても物理的な限界があります。従って、データベースの大規模化によってインメモリによる処理が不可能になる可能性が常にあるわけです。

 一方で、大規模OLTP、ETL(Extract、Transform、Load)、そしてデータウエアハウスといった情報基盤系の処理に関しては、Oracle Exadataのパフォーマンスの高さが既に実証されています。となれば、「Oracle Exadataで大規模なOLTP処理やバッチ処理、データウエアハウス処理を回しながら、データマート化したデータベースを同じOracle Exadataの筐体内でインメモリデータベースとして持つ」というのが正しい使い方だといえるわけです。

Oracle Exadata X5における「仮想化(Oracle VM)サポート」の意義は?

ユーザー企業の声を代弁した人見氏からは、田子氏に対して次々と鋭い質問が浴びせられた

人見 ところで、Oracle Exadata X5の強化ポイントの一つに、「Oracle VM」のサポートがあります。Oracle Exadataにおけるサーバー仮想化技術のサポートには、どのような意義があるのでしょうか?

田子 これは難しい質問ですね。実のところ、サーバー仮想化を導入しようとすると、ハイパーバイザーというレイヤーが新たに増えることで、どうしてもオーバーヘッドが発生してしまうのです。もちろん、Oracle Exadata X5がサポートしているのはオラクル製の仮想マシン(Oracle VM)なので、Oracle Exadata上でのオーバーヘッドを極限まで抑えるように最適化されています。しかし、それでもオーバーヘッドが生じることに変わりありません。

 とはいえ、セキュリティ上の理由から、Oracle Exadata上に他とは独立したOS空間を作り、ネットワークも他と切り離したいというニーズがないとは限りません。そうしたニーズに対応するには、サーバー仮想化技術が必要になるため、その辺りがOracle Exadata上におけるサーバー仮想化技術の使い道だといえるかもしれません。

 ただし、私たちはサーバー仮想化技術によるデータベース統合をお勧めするつもりはありません。この手法では、ハードウエアの集約化は実現できても、OSやサーバー、データベースの運用コストは下がらないからです。私たちがお勧めする最良のデータベースサーバー統合ソリューションは、やはりOracle Database 12cのマルチテナントアーキテクチャです。これを使うことで、OS/データベースの運用管理プロセスを一つに集約しながら、複数のデータベースを効率良く動かすことが可能になるのです。

Copyright © ITmedia, Inc. All Rights Reserved.


提供:日本オラクル株式会社
アイティメディア営業企画/制作:@IT 編集部/掲載内容有効期限:2015年4月2日

関連情報

驚異的なパフォーマンス、優れた運用効率、最高の可用性とセキュリティ、クラウド対応を実現するOracle Exadataとの統合、クラウド、可用性や運用管理など、次世代データベース基盤構築のために参考になる必見資料をまとめてご紹介いたします。

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。