1 Oracle Exadata System Softwareの概要

この章では、Oracle Exadata System Softwareの概要について説明します。この章のトピックは、次のとおりです:

1.1 Oracle Exadata System Softwareの概要

Oracle Exadata Storage Serverは、Oracle Databaseデータを格納してそのデータにアクセスするために、Oracle Exadata System Softwareを実行する高度に最適化されたストレージ・サーバーです。

従来型のストレージでは、データはデータベース・サーバーに転送されて処理されていました。これに対し、Oracle Exadata System Softwareでは、SQLや他のデータベース処理をデータベース・サーバーからオフロードする機能など、データベース認識型ストレージ・サービスを利用できます。このサービスは、SQL処理とデータベース・アプリケーションに対して透過的に実行されます。Oracle Exadata Storage Serverは、ストレージ・レベルでデータを処理し、データベース・サーバーに必要な内容のみを渡します。

Oracle Exadata System Softwareは、ストレージ・サーバーとデータベース・サーバーの両方にインストールされます。Oracle Exadata System Softwareによって、SQL処理がデータベース・サーバーからOracle Exadata Storage Serverにオフロードされます。Oracle Exadata System Softwareでは、従来型のデータ移動に加えて、データベース・インスタンスから基礎となるストレージへ機能を移動することが可能です。機能の移動により、データベース・サーバーで必要なデータ処理の量が大幅に軽減されます。データ転送とデータベース・サーバー・ワークロードの削減は、帯域幅によって制約されることが多かった問合せ操作に非常に大きな効果をもたらします。データ転送の削減は、大規模なバッチ処理とレポート処理の操作を実行することが多いオンライン・トランザクション処理(OLTP)システムでもきわめて有効です。

Oracle Exadata Storage Serverのハードウェア・コンポーネントは、高いパフォーマンスの処理に対応できるように慎重に選択されています。セル・ソフトウェアは、ハードウェア・コンポーネントを最大限に活用できるように最適化されています。各セルでは、ディスク上の格納データに対する処理で非常に高い帯域幅が提供され、従来の方法よりも数倍優れています。

Oracle Exadata Storage Serverでは、サーバーとストレージの間で最先端のInfiniBandインターコネクトが使用されます。各InfiniBandリンクにより、従来型のストレージまたはサーバー・ネットワークよりもはるかに高速な40ギガビット/秒の帯域幅が提供されます。さらに、Oracleのインターコネクト・プロトコルでは、ダイレクト・メモリー・アクセス(DMA)とも呼ばれる直接データ配置を使用して、余分なデータ・コピーを作成せずにデータを回線からデータ・バッファに直接移動することで、CPUのオーバーヘッドを大幅に削減しています。InfiniBandネットワークは、LANネットワークの柔軟性とともに、ストレージ・エリア・ネットワーク(SAN)の効率性を備えています。Oracle Exadata Database Machineでは、InfiniBandネットワークを使用することによって、パフォーマンスを低下させる可能性のあるネットワークのボトルネックをなくしています。このInfiniBandネットワークでは、Oracle Real Application Clusters (Oracle RAC)サーバー用の高いパフォーマンスのクラスタ・インターコネクトも提供されます。

Oracle Exadata Storage Serverアーキテクチャは、パフォーマンスを任意のレベルにスケールアウトします。より高いパフォーマンスとより大きなストレージ容量を達成するには、構成にストレージ・セルを追加します。セルの数に比例して容量が増加し、パフォーマンスも向上します。データは複数のセルにミラー化されるため、1つのセルで障害が発生しても、データが失われたり、データへのアクセスが妨げられたりすることはありません。スケールアウト・アーキテクチャによってほぼ無限のスケーラビリティが実現し、必要に応じてストレージを増設できるためコスト削減も可能になります。

注意:

Oracle Exadata System SoftwareOracle Exadata Storage Serverハードウェアと併用する必要があり、Oracle Exadata Database Machineのデータベース・サーバー上のデータベースのみをサポートしています。情報は次のMy Oracle Support

http://support.oracle.com

また、Oracle Technology Networkの製品ページでも確認できます

http://www.oracle.com/technetwork/index.html

1.2 Oracle Exadata System Softwareの主な機能

Oracle Exadata System Softwareの主な機能には、次のものがあります。

1.2.1 信頼性、モジュール方式、およびコスト効率

Oracle Exadata System Softwareでは、コスト効率の高いモジュール方式のストレージ・ハードウェアをスケールアウト・アーキテクチャで使用できるため、高いレベルの可用性と信頼性が実現します。Oracle Exadata Storage Serverのアーキテクチャでは、データのミラー化、障害分離テクノロジ、およびディスクや他のストレージ・ハードウェアの障害からの保護により、すべてのシングル・ポイント障害が排除されます。

Oracle Exadata Storage Serverのアーキテクチャでは、1つ以上のストレージ・セルで1つ以上のデータベースをサポートできます。データの配置は、データベース・ユーザーとアプリケーションに対して透過的に実行されます。ストレージ・セルでは、Oracle Automatic Storage Management(Oracle ASM)を使用してデータをセル間で均等に配分します。Oracle Exadata Storage Serverでは、動的なディスク挿入および削除をサポートしているため、Oracle ASMのオンライン動的データ再配分機能により、データベース処理を中断することなく、新規追加されたディスクまたは既存のディスク間でデータを適切に配分できます。Oracle Exadata Storage Serverでは、ディスクおよびセルの障害に対するデータ保護も提供されます。

1.2.2 Oracle Databaseとの互換性

Oracle Exadata System Software 12cリリース1 (12.1)以降のリリースを使用している場合、Oracle DatabaseおよびOracle Automatic Storage Management (Oracle ASM) 12cリリース1 (12.1)以降のリリースも使用する必要があります。

Oracle Exadata System Softwareでは、Oracle Databaseのすべての機能が完全にサポートされています。Oracle Exadata System Softwareは、Oracle Databaseの単一インスタンスまたはOracle Real Application Clusters (Oracle RAC)デプロイメントで同等に機能します。Oracle Data GuardOracle Recovery Manager (RMAN)Oracle GoldenGateおよび他のデータベース機能は、従来型のストレージと同様にExadataストレージ・セルで管理されます。これにより、データベース管理者は使い慣れたツールをそのまま利用できます。

1.2.3 WriteBackフラッシュ・キャッシュ

WriteBackフラッシュ・キャッシュでは、読取りI/Oの他に、PCIフラッシュに書込みI/Oを直接キャッシュできます。

Oracle Exadataストレージ・セルのフラッシュ・キャッシュ・コンポーネントは、WriteThroughまたはWriteBackの2つの方法で構成できます。 WriteThroughキャッシュは、フラッシュ・キャッシュのIOを読み取ります。Oracle Exadataリリース11.2.3.2.0で導入されたWriteBackモードでは、すべてのI/O (読取り/書込み)がフラッシュ・キャッシュにキャッシュされるため、データベースのパフォーマンスが向上します。

ハード・ディスクに書き込むよりフラッシュ・キャッシュに書き込む方が高速であるため、WriteBackフラッシュ・キャッシュにより書込み集中型の操作が飛躍的に向上します。書込み集中型のアプリケーションの場合、「空きバッファ待機」をかなり待機している場合またはI/O回数が多い場合は、WriteBackフラッシュ・キャッシュを使用することを検討する必要があります。

1.2.4 スマート・フラッシュ・テクノロジ

1.2.4.1 フラッシュ・キャッシュ

Oracle Exadata Storage Serverには、スマート・フラッシュ・キャッシュが直接実装されています。Oracle Exadataスマート・フラッシュ・キャッシュでは、頻繁にアクセスされるデータを非常に高速のフラッシュ・ストレージに保存しますが、ほとんどのデータはコスト効率に優れたディスク・ストレージに保存されます。これは自動的に実行され、ユーザーの操作は不要です。Oracle Exadataスマート・フラッシュ・キャッシュは、再利用されないデータやキャッシュに適さないデータをキャッシュしないようにするタイミングを認識できるため、優れています。Oracle DatabaseおよびOracle Exadata System Softwareでは、データベース表、索引およびセグメントのレベルでディレクティブを提供し、特定のデータがフラッシュに保存されるようにできます。表は簡単なコマンドでフラッシュから出し入れ可能で、フラッシュ・ディスクを使用する従来のストレージのように、異なる表領域、ファイルまたはLUNに移動する必要はありません。

1.2.4.2 フラッシュ・ロギング

Oracle Exadataスマート・フラッシュ・テクノロジは、データベース・ロギングにより発生する可能性のあるパフォーマンスのボトルネックを解消して、ログ書込みI/O操作のレイテンシを減らすのにも使用されます。ユーザー・トランザクションをコミットする時間は、ログ書込み操作のレイテンシの影響を大きく受けます。また、領域管理や索引分割などのパフォーマンス・クリティカルな多くのデータベース・アルゴリズムも、ログ書込みのレイテンシにより大きな影響を受けます。

ディスク・コントローラには、高速の書込みに対応した大きなバッテリ・バックアップDRAMキャッシュが備わっていますが、高いI/O時には、ディスクに対する一部の書込み操作が低速になることがあります。REDO書込み操作の遅延が比較的少ない場合でも、パフォーマンスの問題が発生することがあります。このような状況を解決するために、Oracle Exadataスマート・フラッシュ・ログが設計されています。

Oracle Exadataスマート・フラッシュ・ログの目標は、REDO書込み操作をフラッシュ・メモリーとディスクの両方に同時に実行し、2つのうちいずれか一方の操作が最初に完了した時点で、書込み操作を完了することです。これにより、どちらのタイプのメディアでレイテンシ・スパイクが発生しても、それによる問題を回避することにより、Oracle Exadataは両者で最適なパフォーマンスを発揮します。スマート・フラッシュ・ロギングは、ディスクに書き込まれていないブロックでディスク・コントローラが一杯になり、ディスク・キャッシュのパフォーマンスに対して実際のディスク・パフォーマンスが低下してビジー状態になった場合に最も有効です。重要な点は、スマート・フラッシュ・ロギングにより、ログ書込み操作のレイテンシは改善するが、ディスクの全体のスループットは向上しないことです。アプリケーションがディスクのスループットのボトルネックになっている場合は、スマート・フラッシュ・ロギングによる利点はほとんどありません。ログの応答時間はパフォーマンスを低下させる要因ではないためです。

また、スマート・フラッシュ・ロギングは、フラッシュを使用してディスク・コントローラのパフォーマンスを確実に向上させることを目的としているわけではないことに留意してください。これは、ディスクが低速になった場合にレイテンシを短縮するための補助の宛先として使用されます。結果として、データベースのパフォーマンス低下を回避できます。

Oracle Exadataスマート・フラッシュ・ログでは、パフォーマンス・クリティカルなデータベース・アルゴリズムを高速化することによって、ユーザー・トランザクションの応答時間を短縮し、I/O集中型のワークロードに対するデータベースの全体的なスループットを向上させることができます。

関連項目:

フラッシュ・キャッシュのライト・バックおよびライト・スルーの詳細は、「ALTER CELL」を参照してください。

1.2.5 集中型ストレージ

Oracle Exadata Storage Serverを使用すると、複数のデータベースで使用可能な中央のプールに各自のストレージ要件を統合できます。Oracle Exadata System SoftwareOracle Automatic Storage Management (Oracle ASM)を併用することにより、ストレージ・プールで利用可能なディスク間で、すべてのデータベースのデータおよびI/O負荷を均等に配分できます。利用可能なすべてのディスクをすべてのデータベースで使用できるため、優れたI/Oレートが実現します。Oracle Exadata Storage Serverでは、低コストで高い効率とパフォーマンスを実現できるだけでなく、ストレージ管理のオーバーヘッドも低減できます。

1.2.6 I/Oリソース管理(IORM)

I/Oリソース管理(IORM)およびOracle Database Resource Managerでは、複数のデータベースおよびプラガブル・データベース間で同じストレージを共有できるのみならず、様々なデータベースにI/Oリソースを割り当てることができます。

Oracle Exadata System Softwareは、IORMおよびOracle Database Resource Managerと連動することにより、複数のデータベース間でグリッドを共有する場合でも、顧客定義のポリシーを満たすことができます。その結果、1つのデータベースでI/O帯域幅を占有して他のデータベースのパフォーマンスが低下することがなくなります。

IORMでは、管理者が設定した共有および優先順位のレベルに従って、すべてのデータベースの複数のアプリケーションおよびユーザー間で、ストレージ・セルのI/Oリソースを管理できます。これにより、スループットに依存するバッチ・アプリケーションよりもレイテンシに依存するオンライン・トランザクション処理(OLTP)アプリケーションにディスクおよびフラッシュI/O帯域幅を多く割り当てることができるため、OLTPとレポート処理のワークロードのバランスが改善します。Oracle Database Resource Managerを使用することにより、管理者はデータベース・ホストでのプロセッサの使用率をアプリケーション単位で制御できます。IORMOracle Database Resource Managerを組み合せることにより、管理者はより正確なポリシーを設定できます。

IORMではまた、Exadataスマート・フラッシュ・キャッシュの領域使用率も管理されます。クリティカルなOLTPワークロードには、Exadataスマート・フラッシュ・キャッシュ内の領域を保証することで、安定したパフォーマンスを提供できます。

データベース用のIORMまたはプラガブル・データベース(PDB)は、Oracle Database Resource Managerから実装および管理されます。データベース・インスタンスのOracle Database Resource Managerは、ストレージ・セル内のIORMソフトウェアと通信して、ユーザー定義のサービス・レベルのターゲットを管理します。データベース・リソース・プランはデータベースから管理されますが、データベース間のプランはストレージ・セル上で管理されます。

1.2.7 データ検索およびデータ取得処理のオフロード

Oracle Exadata System Softwareの最も強力な機能の1つは、データ検索および取得処理をストレージ・サーバーにオフロードする機能です。

Oracle Exadata System Softwareでは、条件のフィルタ処理を実行することでこの機能を実行します。条件のフィルタ処理では、データベース条件の評価を実行して、一括データ処理の特定のクラスのパフォーマンスを最適化します。

Oracle Databaseでは、表および索引スキャンを実行してOracle Exadata Storage Serverの選択条件を評価する問合せのパフォーマンスを最適化できます。これらの問合せは、データベース評価式をストレージ・セルに送信することにより、データベースで高速に実行できます。これらの式には、amount > 200などの単純なSQLコマンド条件や、SELECT customer_nameなどの列条件があります。次に例を示します。

SQL> SELECT customer_name FROM calls WHERE amount > 200;

この例では、条件を満たす行、指定された列、および条件付けられた列のみがデータベース・サーバーに返されるため、データベース・サーバーに対する不要なデータ転送が削減されます。

Oracle Exadata System Softwareでは、表および索引スキャンの条件評価操作を簡略化してストレージ・セルに転送するストレージ側の条件評価を使用します。これにより、表スキャンがディスクの近くで実行されるため帯域幅が効率化し、一致しない行をホストに送信する必要がなくなります。

図1-1 データ検索および取得のオフロード

図1-1の説明が続きます
「図1-1 データ検索および取得のオフロード」の説明

1.2.8 増分バックアップ処理のオフロード

増分バックアップのパフォーマンスを最適化するために、ブロックのフィルタ処理をデータベースからOracle Exadata Storage Serverにオフロードできます。

この最適化は、Oracle Recovery Manager(RMAN)を使用してバックアップを実行する場合にのみ可能です。オフロード処理は、ユーザー操作なしで透過的に実行されます。オフロード処理では、実行中の増分バックアップで不要なブロックがOracle Exadata System Softwareによってフィルタ処理されます。このため、バックアップに必要なブロックのみがデータベースに送信されるため、バックアップ時間が大幅に短縮します。

1.2.9 データ破損の防止

データ破損が起こるのは非常にまれですが、発生した場合は、データベース、さらには業務に壊滅的な影響を与える可能性があります。

Oracle Exadata System Softwareでは、物理ビットだけでなくビジネス・データも保護することにより、高いレベルのデータ保護を実現します。

破損データを検出および防止するための主な方法は、ストレージ・サブシステムがOracleブロック・コンテンツを検証するブロック・チェックです。Oracle Databaseでは、データベース・ブロックを検証して保護情報を追加しますが、Oracle Exadata System Softwareでは、データベースおよびストレージ間のI/Oパスに送信される破損データを検出します。Exadataセルは、破損データがディスクに書き込まれる前に停止し、ディスクの読取り時にデータを検証します。これにより、従来型のデータベース製品では防止できなかった大規模な障害を回避できます。

他の破損チェックの実装と異なり、Oracle Exadata System Softwareによるチェックは、完全に透過的に動作します。データベースやストレージ層にパラメータを設定する必要はありません。これらのチェックでは、Oracle Automatic Storage Management (Oracle ASM)ディスク・リバランス操作やディスク障害など、すべてのケースを透過的に処理します。

1.2.10 高速ファイル作成

ファイル作成操作はOracle Exadata Storage Serverにオフロードされます。ファイル作成のオフロードにより、1つ以上のファイル作成を可能にするCREATE TABLESPACEなどの操作が大幅に高速化します。

1.2.11 ストレージ索引

Oracle Exadata Storage Serverはディスク上のデータ分散のサマリーを含むストレージ索引を管理します。

ストレージ索引は自動的に管理され、Oracle Databaseに対して透過的です。インメモリー領域の索引を収集したもので、各領域索引には最大8列のサマリーが格納されています。ディスク上の各1MBの領域に領域索引が1つあります。ストレージ索引は、すべての非言語データ型で動作し、非言語索引に似た言語データ型でも動作します。

各領域索引では、表の列の最小値および最大値を管理します。最小値および最大値は、不要なI/Oの回避に使用されます。これは、I/Oフィルタリングとも呼ばれます。V$SYS_STATビューにあるストレージ索引統計別に保存されたセルの物理的なI/Oバイト数は、ストレージ索引を使用して保存されたI/Oのバイト数を示したものです。1つの領域索引に格納されているコンテンツは、その他の領域索引とは無関係です。これにより高スケーラブルとなり、ラッチの競合が回避されます。

次の比較を使用した問合せは、ストレージ索引によって改善されています。

  • 等価(=)

  • 不等価(<、!=、>)

  • 以下(<=)

  • 以上(>=)

  • IS NULL

  • IS NOT NULL

Oracle Exadata System Softwareでは、領域内の列の最大値より大きいか、最小値より小さいという比較述語が指定された問合せを受け取ったときに、ストレージ索引が存在すると効果があるとみなされる場合に、ストレージ索引が自動的に作成されます。Oracle Exadata System Softwareでは、どのストレージ索引が問合せに効果があったかを自動的に学習し、その情報に基づいてストレージ索引を自動的に作成するため、似たような問合せを今後受け取った場合に効果的です。

注意:

問合せのWHERE句に頻繁に出現する列に基づいて行を順序付けると、ストレージ索引の効果が上がります。

注意:

ストレージ索引は、圧縮されていないブロックおよびOLTPの圧縮されたブロックへの書込み操作中に管理されます。Exadataハイブリッド列圧縮によって圧縮されたブロックまたは暗号化された表領域への書込み操作は領域索引を無効化しますが、ストレージ索引は無効化しません。Exadataハイブリッド列圧縮用のストレージ索引は、後続のスキャンで再構築されます。

例1-1 ストレージ索引を使用したディスクI/Oの回避

次の図は、表および領域索引を示しています。表内の値の範囲は1から8までです。一方の領域索引には最小値として1、最大値として5が格納されています。もう一方の領域索引には、最小値として3、最大値として8が格納されています。

SELECT * FROM TABLE WHERE B<2などの問合せの場合、最初の行セットのみが一致します。2番目の行セットの最小値と最大値は問合せのWHERE句と一致しないため、ディスクI/Oが回避されます。

例1-2 ストレージ索引から得られるパーティション・プルーニングのような効果

次の図には、Order_NumberOrder_DateShip_DateおよびOrder_Item列があるOrdersという表があります。表はOrder_Date列によってレンジ・パーティションされています。

次の問合せは2015年1月1日以降のオーダーを検索します。

SELECT count (*) FROM Orders WHERE Order_Date >= to_date ('2015-01-01', \
'YYY-MM-DD')

表はOrder_Date列でパーティション化されているため、この問合せは表の不要なパーティションのスキャンを回避します。Order_Dateのパーティション化はShip_Dateに対する問合せに効果があるわけではありませんが、Ship_DateOrder_NumberOrder_Dateと密に相関しています。ストレージ索引では、パーティション化またはソート・ロードによって作成された順序付けを利用し、それを表内の他の列で使用できます。これにより、Ship_Date列およびOrder_Number列に対する問合せでパーティション・プルーニングのようなパフォーマンスが実現されます。

例1-3 ストレージ索引による結合パフォーマンスの向上

ストレージ索引を使用すると、表の結合で不要なI/O操作をスキップできます。たとえば、次の問合せでは、I/O操作を実行し、ファクト表の最初のブロックにのみブルーム・フィルタを適用しています。

SELECT count(*) FROM fact, dim WHERE fact.m=dim.m AND dim.product="Hard drive"

ファクト表の2番目のブロックに対するI/Oは、最小値/最大値の範囲(5,8)がブルーム・フィルタに存在しないため、ストレージ索引によって完全に回避されます。

1.3 Oracle Exadata System Softwareのコンポーネント

この項では、次のOracle Exadata System Softwareコンポーネントのサマリーを示します。

1.3.1 Oracle Exadata System Softwareについて

Oracle Exadata Storage Serverは、Oracle Exadata System Softwareをインストールしたネットワーク・アクセス可能なストレージ・デバイスです。このソフトウェアは、専用のiDBプロトコルを使用してデータベースと通信し、ブロック指向の読取りおよび書込みなどの単純なI/O機能と、条件のオフロードやI/Oリソース管理(IORM)などの高度なI/O機能の両方を提供します。各ストレージ・セルには、物理ディスクが含まれます。物理ディスクは、単一のディスク・ドライブ・スピンドルを構成するストレージ・セル内の実際のデバイスです。

ストレージ・セル内では、論理ユニット番号(LUN)は論理ストレージ・リソースを定義し、そこから単一のセル・ディスクを作成できます。LUNは、基礎となるハードウェアによって上位のソフトウェア・レイヤーに提示されるストレージ・リソースのアクセス・ポイントを示します。LUNの正確な属性は構成に固有です。たとえば、LUNはストライプ化、ミラー化、またはストライプ化とミラー化の両方が可能です。

セル・ディスクは、Oracle Exadata System Softwareを抽象化したもので、LUN上に構築されます。セル・ディスクは、LUNから作成された後にOracle Exadata System Softwareによって管理され、グリッド・ディスクにさらに分割できます。グリッド・ディスクは、データベースおよびOracle Automatic Storage Management (Oracle ASM)インスタンスに直接公開されます。各グリッド・ディスクは、Oracle ASMに直接公開されるセル・ディスクのパーティションで、Oracle ASMディスク・グループの作成および拡張に使用されます。グリッド・ディスクは不連続なパーティションになる場合があります。

このようなレベルの仮想化により、複数のOracle ASMクラスタおよびデータベース間で同じ物理ディスクを共有できます。この共有により、ディスク容量および帯域幅を最適に使用できます。セル・ディスクのレベルで収集される様々なメトリックと統計により、Oracle Exadata Storage Serverのパフォーマンスと容量を評価できます。IORMでは、ユーザー定義のポリシーに従ってセル・ディスクのアクセスをスケジュール管理します。

図1-2は、セルのコンポーネントがグリッド・ディスクにどのように関連するかを示しています。

  • LUNは、物理ディスクから作成されます。

  • セル・ディスクは、LUNで作成されます。セル・ディスク・ストレージのセグメントは、セル・システム領域と呼ばれるOracle Exadata System Softwareシステムで使用されます。

  • 複数のグリッド・ディスクを1つのセル・ディスク上に作成できます。

図1-2 Oracle Exadata Storage Serverのコンポーネント

図1-2の説明が続きます。
「図1-2 Oracle Exadata Storage Serverのコンポーネント」の説明

図1-3は、Oracle Exadata Storage Server環境のソフトウェア・コンポーネントを示しています。

図1-3 Oracle Exadata Storage Server環境のソフトウェア・コンポーネント

図1-3の説明が続きます
「図1-3 Oracle Exadata Storage Server環境のソフトウェア・コンポーネント」の説明

この図に示されている環境は、次のとおりです。

  • 単一インスタンスまたはOracle RACデータベースでは、iDBプロトコルを使用し、InfiniBandネットワークを介してストレージ・セルにアクセスします。

  • データベース・サーバー・ソフトウェアには、Oracle Exadata System Softwareの機能が含まれます。

  • ストレージ・セルには、セル・ベースのソフトウェアが含まれます。

  • ストレージ・セルは、ネットワーク上で構成され、Oracle Exadata System SoftwareCellCLIユーティリティで管理されます。

1.3.2 Oracle Automatic Storage Managementについて

Oracle Automatic Storage Management (Oracle ASM)は、Oracle Exadata Storage Serverのリソース管理に使用されるクラスタ・ボリューム・マネージャおよびファイル・システムです。Oracle ASMでは、次の処理を実行してストレージ管理を拡張します。

  • 最適なパフォーマンスが得られるように、利用可能なすべてのストレージ・セルおよびディスク間でデータベース・ファイルを均等にストライプ化。

  • ミラー化および障害グループを使用してシングル・ポイント障害を回避。

  • 動的追加および削除機能により、セルおよびディスクの割当て、割当て解除および再割当てを透過的に実行。

  • 複数のデータベース間でストレージ・セルおよびディスクを共有。

関連項目:

Oracle自動ストレージ管理の追加情報は、Oracle自動ストレージ管理管理者ガイドを参照

1.3.2.1 Oracle ASMディスク・グループ

Oracle Automatic Storage Management (Oracle ASM)ディスク・グループは、Oracle ASM内で抽象化されたプライマリ・ストレージで、1つ以上のグリッド・ディスクで構成されます。

Oracle Exadata Storage Serverのグリッド・ディスクは、Oracle ASMディスク・グループのメンバーシップに使用可能な個々のディスクとして、Oracle ASMに認識されます。グリッド・ディスク名とOracle ASMディスク・グループ名は、Oracle ASMOracle Exadata System Software間で問題が発生した場合に容易に診断できるように、できるだけ関連性のある名前にすることをお薦めします。

Oracle ASMディスク・グループは、次のとおりです。

  • DATAはデータ・ディスク・グループです。

  • RECOはリカバリ・ディスク・グループです。

  • DBFS (Oracle Database File System)は、ファイル・システム・ディスク・グループです。

  • SPARSEは、スナップショット・ファイルを保持するためのスパース・ディスク・グループです。

条件処理のオフロードなどのOracle Exadata System Softwareの機能を利用するには、ディスク・グループにOracle Exadata Storage Serverのグリッド・ディスクのみが含まれており、表がこれらのディスク・グループ内に完全に収まっている必要があります。

注意:

スパース・グリッド・ディスクを使用する場合は、Oracle DatabaseおよびOracle Grid Infrastructureソフトウェアはリリース12.1.0.2.0 BP3以上である必要があります。

1.3.2.2 Oracle ASMの障害グループ

Oracle ASM障害グループは、同じハードウェアを共有するために同時に停止する可能性があるOracle ASMディスク・グループのディスクのサブセットです。

Oracle ASMでは、冗長性について決定する場合に障害グループを考慮します。

Oracle Exadata Storage Serverでは、ストレージ・セルに障害が発生すると、Oracle ASMディスク・グループのメンバーおよび候補で構成されるすべてのグリッド・ディスクが同時に停止する可能性があります。このようなシナリオのため、ストレージ・セルが関連するすべてのOracle ASMグリッド・ディスクには、そのセルを表す障害グループを1つ割り当てる必要があります。

たとえば、2つのストレージ・セル(AおよびB)が関連するすべてのグリッド・ディスクが「標準」の冗長性で1つのOracle ASMディスク・グループに追加されている場合、ストレージ・セルAのすべてのグリッド・ディスクとストレージ・セルBのすべてのグリッド・ディスクには、それぞれ別の障害グループが指定されます。これにより、いずれかのストレージ・セルで障害が発生しても、Oracle Exadata System SoftwareおよびOracle ASMでフォルト・トレランスが実行されるようになります。

Oracle Exadata Storage Serverのグリッド・ディスクの障害グループは、単一のセル上のディスクが同じ障害グループに属するようにデフォルトで設定されているため、Oracle Exadata Storage Serverに関する正しい障害グループ構成は簡単になっています。

Oracle ASMディスク・グループの冗長性レベルは、ディスク・グループの作成時に定義できます。Oracle ASMディスク・グループは、「標準」または「高」の冗長性で指定できます。「標準」の冗長性では、エクステントを二重にミラー化し、「高」の冗長性では、エクステントを三重にミラー化します。Oracle ASMの「標準」の冗長性では、1つのセルまたはそのセル内のディスク・セットに障害が発生した場合にフォルト・トレランスが実行されます。Oracle ASMの「高」の冗長性では、2つのセルまたはそのセル内のディスク・セットに障害が発生した場合にフォルト・トレランスが実行されます。冗長性の設定基準は、必要とする保護レベルです。冗長性レベルを選択する場合は、障害後のI/O容量が冗長性の要件およびパフォーマンス・サービス・レベルを十分に満たすようにします。「標準」の冗長性で3つのセルを使用することをお薦めします。これにより、セルに障害が発生しても完全な冗長性でリストアが可能になります。次の点を考慮してください。

  • セルまたはディスクに障害が発生した場合、セルまたはディスクの内容はOracle ASMによってディスク・グループの残りのディスクに自動的に再配分されます(データを格納する十分な領域があることが条件)。Oracle ASMの冗長性を使用する既存のディスク・グループでは、V$ASM_DISGKROUPビューのUSABLE_FILE_MB列に使用可能領域の容量が表示され、REQUIRED_FREE_MIRROR_MB列に冗長性のための領域の容量が表示されます。

  • セルまたはディスクに障害が発生した場合は、パフォーマンス・サービス・レベル合意を満たすために必要なIOPSを残りのディスクで生成できるようにしてください。

ディスク・グループを作成した後は、ディスク・グループの冗長性レベルを変更することはできません。ディスク・グループの冗長性を変更するには、別のディスク・グループを作成して冗長性を指定し、ファイルを移動する必要があります。

各Exadataセルは、障害グループです。標準冗長性のディスク・グループには、少なくとも2つの障害グループが含まれる必要があります。Oracle ASMでは、異なる障害グループに配置されたミラー化されたエクステントを使用して、ファイル・エクステントの2つのコピーを自動的に格納します。高い冗長性のディスク・グループには3つ以上の障害グループが含まれている必要があります。Oracle ASMでは、個別の障害グループの各ファイル・エクステントを使用して、ファイル・エクステントの3つのコピーを自動的に格納します。

使用環境における障害グループの数が十分でない場合、システムの信頼性が損われる可能性があります。障害グループの数が少ない場合や、障害グループの容量が均等でない場合は、利用可能なすべてのストレージを十分に活用できない割当ての問題につながる場合があります。

1.3.2.3 Oracle ASMの最大可用性

高冗長性のOracle ASMディスク・グループと、Oracle Exadata Deployment Assistantを使用して自動的にデプロイ可能なファイルの配置構成をお薦めします。少なくともストレージ・セルが3つあるDATA、RECOまたは他の任意のOracle ASMグループに対して高冗長性を構成できます。Exadata Softwareリリース12.1.2.3.0以降では、投票ディスクを高冗長性ディスク・グループに含め、Exadataストレージ・セルが5つ未満の場合にはquorumディスクを(実質的に投票ディスクと同じ)をデータベース・サーバーに追加できます。

最大可用性アーキテクチャ(MAA)のベスト・プラクティスでは、DATA、RECOおよびDBFSという3つのOracle ASMディスク・グループを使用します。ディスク・グループ次のように配置されます。

  • I/O帯域幅とパフォーマンスを最大化し、管理を簡素化するため、ディスク・グループはすべてのディスクおよびOracle Exadata Storage Server全体でストライプ化されます。
  • DATAディスク・グループは、すべてのディスクの外側の領域に配置されます。これは物理デプロイメントの場合にのみ該当します。Oracle VMデプロイメントには該当しません。
  • RECOディスク・グループは、すべてのディスクの外側または内側の領域に配置されます。これは物理デプロイメントの場合にのみ該当します。Oracle VMデプロイメントには該当しません。
  • DBFSディスク・グループは、すべてのディスクの内側の領域に配置されます。
  • DATAおよびRECOのディスク・グループは、高冗長性で構成されます。

この属性では、Oracle ASMディスク・グループごとに最適なファイル配置が確保されます。また、すべての操作で全I/O帯域幅にアクセスできます(必要な場合)。リソースの過剰な消費を防止するには、 I/Oリソース管理、Oracle Database Resource Managerおよびインスタンス・ケージングを使用します。

高い冗長性のディスク・グループの利点については、次の停止シナリオに示します。

  • 二重パートナ・ディスク障害: ディスク障害に続く、2番目のパートナ・ディスクの障害による、データベースおよびOracle ASMディスク・グループの損失防止。
  • Oracle Exadata Storage Serverのオフライン時のディスク障害: ストレージ・サーバーがオフラインであり、そのいずれかのストレージ・サーバーのパートナ・ディスク障害が発生した場合の、データベースおよびOracle ASMディスク・グループの損失防止。ストレージ・サーバーは、Exadataローリング・ストレージ・サーバーのパッチ適用など、Exadataストレージの計画メンテナンスによってオフラインになる場合があります。
  • ディスクのセクター破損によるディスク障害: 潜在的なディスク・セクター破損が存在し、計画メンテナンスまたはディスク障害のいずれかが原因でパートナ・ストレージ・ディスクを使用できない場合の、データの損失およびI/Oエラーの防止。

デフォルトのExadata高冗長性デプロイメントの一部である高冗長性ディスク・グループに投票ディスクが含まれている場合、前述の障害シナリオでもクラスタおよびデータベースの可用性は失われません。投票ディスクが標準冗長性ディスク・グループに含まれている場合は、データベース・クラスタで障害が発生します。データベースを再起動する必要があります。このようなリスクは、投票ディスクを高冗長性ディスク・グループに移動し、データベース・サーバーに追加のquorumディスクを作成することで排除できます。

ストレージ障害に対する最大のアプリケーションの可用性を提供し、ストレージ停止時の運用を簡素化するために、すべて(DATAおよびRECO)を高冗長性ディスク・グループにすることをお薦めします。対照的に、すべてのディスク・グループが標準冗長性で構成されている場合に2つのパートナ・ディスクで障害が発生すると、Exadata上のすべてのクラスタとデータベースで障害が発生し、すべてのデータが失われます(標準冗長性では二重パートナ・ディスク障害の際に存続できません)。ストレージ保護が向上する以外に、高冗長性と標準冗長性との主な違いは、使用可能なストレージ容量と書込みI/Oにあります。高冗長性ではより多くの領域が必要で、2つではなく3つの書込みI/Oが発生します。追加で発生する書込みI/OがExadataスマート・ライトバック・フラッシュ・キャッシュに与える影響はごくわずかです。

次の表では、冗長性オプション、その他のオプション、および相対的な高可用性のトレードオフについて説明します。次の表は、投票ディスクが高冗長性ディスク・グループに含まれていることを前提としています。既存の高冗長性ディスク・グループ構成の高冗長性グループに投票ディスクを移行するには、『Oracle Exadata Database Machineメンテナンス・ガイド』を参照してください。

冗長性のオプション 可用性の意味 推奨事項

すべて(DATAおよびRECO)を高冗長性にする

投票ディスクが高冗長性ディスク・グループに存在している場合、前述のストレージ停止のシナリオでは、アプリケーションのダウンタイムおよびデータ損失はゼロです。

現在投票ディスクが標準冗長性ディスク・グループに含まれている場合、それらを高冗長性ディスク・グループに移行するには『Oracle Exadata Database Machineメンテナンス・ガイド』を参照してください。

ミッション・クリティカルなアプリケーションのための最高のストレージ保護および運用の簡素化のために、このオプションを使用します。冗長性を高めるには、より多くの領域が必要です。

DATAのみを高冗長性にする

前述のストレージ停止のシナリオでは、アプリケーションのダウンタイムおよびデータ損失はゼロです。このオプションでは、別のアーカイブ先が必要です。

8TBのディスクによる新しいデフォルトのデプロイメント構成。

運用の複雑性が若干高いDATAのための最高のストレージ保護には、このオプションを使用します。すべてを高冗長化する場合よりも使用可能な領域が増えます。

詳細は、My Oracle Supportノート2059780.1「RECOディスク・グループまたは高速リカバリ領域の失敗での高可用性のための構成の前提条件および操作手順」を参照してください。

RECOのみを高冗長性にする

前述のストレージ停止のシナリオでは、データ損失はゼロです。

前述のストレージ停止のシナリオで長時間のリカバリが許容される場合は、このオプションを使用します。リカバリ・オプションは次のとおりです。

  • リストアとリカバリ:

    - DATAディスク・グループの再作成

    - RECOからのリストアおよびテープ・ベースのバックアップ(必要な場合)

    - データベースのリカバリ

  • スイッチとリカバリ:

    - RMANスイッチを使用してコピー

    データベースのリカバリ

すべて(DATAおよびRECO)を標準冗長性にする

注意: ASMディスク・グループのコンテンツ・タイプを使用したディスク間ミラー分離では、物理ディスクとストレージ・サーバーを共有する標準冗長性グループの2つのディスク・パートナが失われたとき、1つのディスク・グループに停止が制限されます。

前述のストレージ停止のシナリオでは、すべてのOracle ASMディスク・グループに障害が発生しました。ただし、ディスク間ミラー分離を使用すると、停止対象は1つのディスク・グループに制限されます。

注意: このオプションは、エイスまたはクオータ・ラックには使用できません。

最低でもDATAのみを高冗長性にすることをお薦めします。

すべてを標準冗長性にするオプションは、別のOracle Exadata Database MachineにデプロイされたOracle Data Guardのスタンバイ・データベースによってプライマリ・データベースが保護されているか、Oracle Exadata Database Machineが開発またはテスト・データベースにのみサービスを提供している場合に使用します。Oracle Data Guardでは、ストレージ障害に対してリアルタイムのデータ保護および高速のフェイルオーバーを提供します。

Oracle Data Guardが使用できず、DATAまたはRECOディスク・グループが失われている場合は、My Oracle Supportノート1339373.1に記載されているリカバリ・オプションを利用してください。

MAAの設定のための最適なファイル配置は次のとおりです。

  • Oracle Databaseファイル — DATAディスク・グループ
  • フラッシュバック・ログ・ファイル、アーカイブREDOファイルおよびバックアップ・ファイル — RECOディスク・グループ
  • REDOログ・ファイル — 最初の高冗長性ディスク・グループ。高冗長性のディスク・グループが存在しない場合は、REDOログファイルがDATAおよびRECOディスク・グループ間に配置されます。
  • 制御ファイル — 最初の高冗長性ディスク・グループ。高冗長性のディスク・グループが存在しない場合は、DATAディスク・グループで1つの制御ファイルを使用します。バックアップ制御ファイルがRECOディスク・グループ内に存在するようにし、RMAN CONFIGURE CONTROLFILE AUTOBACKUP ONを設定する必要があります。
  • サーバー・パラメータ・ファイル(SPFILE) — 最初の高冗長性ディスク・グループ。高冗長性のディスク・グループが存在しない場合は、SPFILEがDATAディスク・グループ内に存在するようにします。SPFILEバックアップがRECOディスク・グループ内に存在するようにします。
  • Oracle Exadata Database Machineフル・ラックおよびOracle Exadata Database Machineハーフ・ラック用のOracle Cluster Registry (OCR)および投票ディスク - 最初の高冗長性ディスク・グループ。高冗長性のディスク・グループが存在しない場合は、ファイルがDATAディスク・グループ内に存在するようにします。
  • Oracle Exadata Database Machineクオータ・ラックまたはエイス・ラックの投票ディスク — 最初の高冗長性ディスク・グループ'(そうでなければ、標準冗長性ディスク・グループ)。高冗長性ディスク・グループのExadataストレージ・セルが5つ未満である場合は、OEDAデプロイメント中にquorumディスクをExadataデータベース・サーバーに追加できます。既存の高冗長性ディスク・グループ構成の高冗長性グループに投票ディスクを移行するには、『Oracle Exadata Database Machineメンテナンス・ガイド』を参照してください。
  • 一時ファイル — 最初の高冗長性ディスク・グループ。すべてを高冗長性にするオプションを使用する場合は、最初の高冗長性ディスク・グループを使用します。
  • ステージングおよび非データベース・ファイル — DBFSディスク・グループ

1.3.3 グリッドRAIDについて

グリッドのRedundant Array of Independent Disks(RAID)構成では、Oracle ASMミラー化機能を使用します。グリッドRAIDを使用するには、「標準」または「高」の冗長性レベルでグリッド・ディスクをOracle ASMディスク・グループに配置し、すべてのグリッド・ディスクを同じセルに設定して、同じOracle ASM障害グループにします。これにより、Oracle ASMがセル内のディスクを使用してデータ・エクステントをミラー化することがなくなります。様々なセルからディスクを使用するため、個々のセルで障害が発生してもデータが利用できなくなることはありません。

グリッドRAIDでは、セル・ディスクを簡単に作成することもできます。Oracleソフトウェアでは必要なLUNが自動的に作成されるため、グリッドRAIDを使用することにより、利用可能な物理ディスクからLUNが自動的に作成されます。

1.3.4 セルのセキュリティについて

Exadataセルのセキュリティは、各セルおよびグリッド・ディスクのアクセス権限を設定したクライアントを指定することにより設定されます。クライアントには、Oracle ASMインスタンス、データベース・インスタンスおよびクラスタがあります。グリッド・ディスクを作成または変更する場合は、グリッド・ディスクの使用権限を設定したOracle ASM所有者およびデータベース・クライアントを構成できます。

1.3.5 iDBプロトコルについて

iDBプロトコルは、Oracle ASM、データベース・インスタンスおよびストレージ・セル間の通信プロトコルとして機能するOracle固有のデータ転送プロトコルです。汎用のデータ転送プロトコルは、下位レベルのディスク・ブロックでのみ動作します。これに対し、iDBプロトコルは、Oracleの内部データ表現を認識し、条件処理のオフロードなど、Exadataセル固有の機能に必要な補助機能です。

また、iDBプロトコルでは、インターコネクト帯域幅の集約とフェイルオーバーを提供します。

1.3.6 セル・ソフトウェア・プロセスについて

Oracle Exadata System Softwareには、次のソフトウェア・プロセスが含まれます。

  • セル・サーバー(CELLSRV)は、条件処理のオフロードなど、iDBによるディスクI/OリクエストやOracle Exadata Storage Serverの拡張サービスを実行します。CELLSRVは、マルチスレッド・プロセスとして実行され、ストレージ・セルのプロセッサ・サイクルの大部分を使用するように設計されています。

  • 管理サーバー(MS)は、スタンドアロンのストレージ・セル管理および構成機能です。MSは、Oracle WebLogic Serverで実行されます。

  • 再起動サーバー(RS)は、CELLSRVおよびMSのプロセスを監視し、必要に応じて再起動します。

1.3.7 セル管理について

Oracle Exadata Storage Serverグリッドの各セルは、セル・コントロール・コマンドライン・インタフェース(CellCLI)で個別に管理されます。

CellCLIユーティリティには、セルの初期構成、セル・ディスクおよびグリッド・ディスクの作成、パフォーマンスの監視など、セル管理機能のためのコマンドライン・インタフェースが用意されています。CellCLIユーティリティはセル上で実行され、ストレージ・セルにネットワーク・アクセスするクライアント・コンピュータまたは直接セルに接続されるクライアント・コンピュータからアクセスできます。CellCLIユーティリティは、管理サーバーと通信してストレージ・セルを管理します。

セルにアクセスするには、Secure Shell(SSH)アクセス、またはKVMスイッチ(キーボード、ビデオ、視覚的表示装置、マウス用スイッチ)などを介したローカル・アクセスのいずれかを使用する必要があります。SSHではリモート・アクセスが可能ですが、セルがネットワークにまだ構成されていない場合は、初期構成でローカル・アクセスが必要になる場合があります。ローカル・アクセスを使用すると、セルのオペレーティング・システムのシェル・プロンプトにアクセスできるため、CellCLIユーティリティなどの各種ツールを使用してセルを管理できます。

dcliユーティリティを使用すると、複数のセルで同じCellCLIコマンドをリモートで実行できます。

セルを計算ノードからリモートで管理するために、ExaCLIユーティリティを使用できます。ExaCLIにより、ほとんどのCellCLIコマンドをセルで実行できます。これが必要になるのは、セルに直接アクセスしてCellCLIを実行できない場合、またはセルでSSHサービスが無効になっている場合です。複数のセルでリモートでコマンドを実行するために、exadcliユーティリティを使用できます。

関連項目:

1.3.8 データベース・サーバー・ソフトウェアについて

Oracle Exadata System Softwareは、Oracle Databaseとシームレスに連携します。データベース・サーバー上のソフトウェアは次のとおりです。

  • Oracle Databaseインスタンス。格納データ上で動作するOracle Databaseバックグラウンド・プロセスおよびそのプロセスで使用される共有割当てメモリーのセットが含まれます。

  • Oracle Automatic Storage Management (Oracle ASM)。データベースおよびOracle Exadata Storage Server用に最適化されたストレージ管理を提供します。Oracle ASMは、Oracle Grid Infrastructureに含まれます。

    Oracle ASMインスタンスでは、ディスク上のデータ・ファイルの配置を処理し、メタデータ・マネージャとして動作します。Oracle ASMインスタンスがアクティブになるのは、主にファイルの作成および拡張中、または構成変更後のディスクのリバランス中です。ランタイムI/O操作は、Oracle ASMインスタンスを介して渡されずに、データベースからストレージ・セルに直接送信されます。

  • Oracle Database Resource Manager。I/Oリソースがデータベース内で適切に割り当てられるようにします。

  • iDBプロトコル。セルとの通信にデータベース・インスタンスで使用され、データベース・サーバーに静的に関連付けられるOracle提供のライブラリに実装されます。

1.3.9 Oracle Enterprise Manager for Oracle Exadata Database Machineについて

Oracle Enterprise Manager 12cには、構成やパフォーマンスを含む、Oracle Exadata Database Machineをグラフィカル・ユーザー・インタフェース(GUI)で監視できる完全なターゲットが用意されています。

次の図は、Oracle Exadata Storage Serverホームページを示しています。このページを表示すると、ストレージ・セルの状態、セルの主要なパフォーマンス特性、およびストレージのリソース使用率をデータベース別に迅速に表示できます。

図1-4 Oracle Enterprise ManagerのOracle Exadata Storage Serverホームページ

図1-4の説明が続きます
「図1-4 Oracle Enterprise ManagerのOracle Exadata Storage Serverホームページ」の説明

Oracle Exadata Storage Server用のOracle Enterprise Managerでは、レポートに加えて、アラートのメトリックしきい値を設定したり、ストレージ・セルの状態を判断するためのメトリック値を監視することもできます。