データウェアハウスのような大規模データベースでは、高性能化するハードウェアの性能をいかに活かしきるかが、重要な課題となってきている。高性能なハードウェアの性能をOracle Databaseの機能でフルに使い切っている好例が「Oracle Exadata」だ。今回は、Oracle Exadataの技術検証を担当するエンジニアが、Oracle Databaseのパフォーマンスアップ機能を紹介する。

テクノロジー製品事業統括本部
データベースソリューション本部
Exadata技術部
プリンシパルエンジニア
柴田竜典氏
「サーバーは高性能化している。しかし、CPUのマルチコア化、HDDの大容量化が、アンバランスなデータベース・システムを増やしている。それが、データベースのパフォーマンスを悪くする要因となっている」と柴田氏は説明する。どういうことだろうか。
ストレージの高性能化が進んでいるとはいえ、CPUの性能向上に比して速度は向上していない。しかも大容量化、低コスト化が進んでいるため、ストレージは少ないディスク本数で構成される傾向にある。CPUのマルチコア化で複数スレッドを高速に処理できるようになったが、その相手となるストレージのディスク本数が少ない。データベース・システムにおいて、CPUが遊んでしまい、せっかくの高性能が生かされていないというのだ。「この傾向は、国内だけではない。例えば米国でも同じ。ITのトレンドとしてそうなっている」と柴田氏は言う。
パフォーマンスのボトルネックはCPUにあるのではない。CPUを使い切れていないことに実は問題がある。
解決策としてはOracle Databaseの「ASM」(Automatic Storage Management)を使って、ストレージのパフォーマンスを上げてCPUの性能とのバランスを取る方法がある。
さらには、「パラレル処理を使うことで、マルチコアを生かすことができる」(柴田氏)。
複数のディスクを抽象化しスループットを上げる「ASM」
「データウェアハウスのような大規模データベースでは、RACで複数のOracleインスタンスを一つにまとめるとともに、ストレージにおいても複数ディスクをディスク・グループとしてまとめて管理し、スループットを向上させたい」(柴田氏)。
データベースを構成するファイルの管理をユーザー自らが行うのではなく、Oracle Databaseに任せることで可用性とパフォーマンスを向上させる機能がASMだ。これはOracle Database 10gから提供されている機能だ。
ASMによって、ディスクI/Oのスループットを向上させることができるので、CPUの利用効率も上げることができる。さらにASMは、ディスク管理の高い柔軟性を提供する。運用するうちに、データ量の増加によってディスクを追加したり、故障等によって交換したいケースが出てくる。「ASMを使うと、ディスクを追加すると動的に再配置が行われる。ディスクが故障すればリバランスする。ストレージ移行の場合でもリバランスが活用できる。非常に使い勝手がよく、性能の向上と柔軟な運用が両立できる。しかも、ASMはOracle Databaseを使っていれば無償で利用できる機能だ」(柴田氏)。
例えばOracle Exadataでは、RAC構成とASM管理をフル活用している。「最大で8ノードのRAC構成を持ち、ASM管理で168本のディスクを1つの大きなストレージに見せている」(柴田氏)
オラクルエンジニア通信:「Oracle ASMを1から学ぶ - マニュアル、インストール・構築、設定・管理」
この記事は参考になりましたか?
- この記事の著者
-
oracletech.jp編集部(オラクルテックジェイピーヘンシュウブ)
oracletech.jpは、オラクル・データベースと関連製品をお使いいただいている皆様、開発に携わっているエンジニアの皆様、オラクル製品を販売いただいている皆様すべてにとって有益な情報源となることを目指しています。エンタープライズ系ITを中心に、製品情報や技術情報からテクノロジー・トレンド、キャンペーンやイベント/セミナー情報まで多岐にわたります。日本オラクルの社員だけでなく...
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
この記事は参考になりましたか?
この記事をシェア