前回の連載までは主にOracle Real Application Clusters(RAC)の仕組みを解説しました。今回はOracle Databaseのストレージ管理を行うOracle Automatic Storage Management(ASM)のアーキテクチャについて解説します。RACのノードを追加するということはCPUとメモリを追加するという意味合いがありますが、ストレージの増設はASMの役割です。
データベースのストレージ管理
Oracle Databaseを構成するファイルにはデータファイルや制御ファイル、オンラインREDOログ・ファイルがありますが、ほかにもサーバー・パラメータ・ファイルやアーカイブREDOログ・ファイルも重要です。
一般的に、データベースのサイズは運用時間が経過するにつれ増加する傾向にあります。表や索引を格納する表領域の容量が不足したら、データファイルのサイズの拡張を行ったり、スモール・ファイル表領域の場合はデータファイルの追加を行ったりすることで容量を拡張します。
Oracle Databaseのオブジェクトを格納する領域は表領域という階層で抽象化されていますが、表領域を拡張する場合の物理デバイスの挙動を考えてみましょう。表領域を拡張するために、RAID1などで冗長化されたストレージを増設したとします。すると、この増設したストレージに新しい表ブロックや索引ブロックが格納されていきます。しかし、一般的なデータ・アクセス頻度の傾向として、新しく追加された最近のデータほどアクセス頻度が高くなる傾向があります(図1)。すると、新しく増設したストレージ・デバイスのアクセス頻度は高くなりますが、既存のストレージ・デバイスのアクセス頻度はそれほど高くないという現象が起こりえます。また、ストレージ上に配置されているオブジェクトが占める容量とアクセス頻度が比例しているとは限りません。さらに、業務要件の複雑化やアプリケーション改修の短期化に伴い、オブジェクト単位の配置の個別最適化を達成するのは難しくなっています。

ストレージ・デバイスを追加することでストレージ・サブシステム全体のI/O処理能力は上がっているはずなのですが、アクセスは新しく追加したストレージ・デバイスに集中するため、データベース・システムの性能としてはこの追加されたストレージ・デバイスの処理能力に依存してしまうという現象が起こりえます。特定のストレージ・デバイスにアクセスが集中すると、そこを「ホットスポット」と言います。
ホットスポットを解消するためには、ストレージを増設した際にデータ配置のリバランスを行い、すべてのストレージ・デバイスに均等にアクセスされるようにすることが望ましいです。
この記事は参考になりましたか?
- イチから学ぶデータベース最新技術 - Oracle Real Application Clusters編連載記事一覧
-
- Oracle Automatic Storage Managementのアーキテクチャ
- Oracleクライアントから見た障害フェイルオーバー
- RACの障害リカバリ
- この記事の著者
-
日下部 明(クサカベ アキラ)
日本オラクル データベース担当。Oracle GRID Centerのラインマネージャとしてオラクルの持つ最新技術をパートナー各社と共同で検証し、多くのホワイトペーパーを執筆・レビュー。以後、その経験を元にミッションクリティカルな案件のソリューションデザインの提案などを担当。データベースセキュリティ...
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
この記事は参考になりましたか?
この記事をシェア