この章では、Oracle Exadata Storage Server Softwareの監視およびチューニングについて説明します。Oracleでは、Oracle Exadata Storage Server環境のほとんどの監視タスクに対応するユーティリティを提供しています。
この章の内容は次のとおりです。
|
関連項目:
|
メトリックとアラートを使用して、Oracle Exadata Storage Server Softwareを監視できます。メトリックは、セルやセル・ディスクなどのオブジェクトに関連付けられ、cumulative、rateまたはinstantaneousにできます。メトリックを確認してアラートのしきい値を設定することにより、リソース管理をチューニングして最適化できます。
メトリックは、セル・ディスクやグリッド・ディスクなど、ストレージ・セルとそのコンポーネントの重要なランタイム・プロパティまたは内部のインスツルメンテーション値を観測して記録したものです。メトリックは、一定間隔で計算されてメモリーに保存される一連の測定値で、永続的な履歴としてディスクに格納されます。
通常、メトリック値では、特定の観測期間における累計カウンタの絶対値または累計カウンタの増減率を記録します。一部のメトリックは、状態遷移の時間の記録にも使用されます。
メトリック値としきい値を比較することにより、メトリック値がしきい値を超えた場合にアラートを送信できます。メトリックの極端な値が、管理者に注意を促す問題またはその他のイベントを示す場合、メトリックを警告およびクリティカルのしきい値に関連付けることができます。
アラートは、ストレージ・セル内で発生した重要なイベントを表し、通常はストレージ・セルの機能が損なわれているか、または障害が発生する危険性があることを示します。これらのアラートが発生した場合は是正または予防措置が必要になる可能性があるため、管理者はこれらのアラートを調べる必要があります。
アラートには、情報、警告またはクリティカルの3つのタイプがあります。通常、アラートはOracle Enterprise Managerなどの監視インフラストラクチャに伝播され、ストレージ管理者に通知されます。考えられるアラートには、物理ディスクの障害、ディスクの読取り/書込みエラー、推奨値を超えるセル温度の上昇、Oracle Exadata Storage Server Softwareの障害、過度なI/Oレイテンシなどがあります。メトリックは、警告またはクリティカルのしきい値を使用したアラートの送信に使用できます。メトリック値がしきい値を超えた場合に、アラートを送信できます。
アラートは、ステートフルまたはステートレスのいずれかになります。ステートフル・アラートは観測可能なセルの状態を表し、後で再テストして状態が変化したかどうかを検出できます。これにより、前に観測したアラートの状態が問題なくなったかどうかを確認できます。ステートレス・アラートは、永続的な状態を表さないポイント・イン・タイムのイベントを表し、発生した内容を示すだけです。
|
注意: 環境の温度について、組込みのしきい値があります。温度が高すぎる、または低すぎる場合、アラートが自動的に送信されます。 |
Oracle Exadata Storage Serverのメトリックを表示することにより、セルを監視できます。メトリックには次のタイプがあります。
cumulative: メトリックが作成されてからの統計。
instantaneous: メトリックが収集される時点の値。
rate: 特定の時間の統計を平均して計算される値。
表の説明では、「小さい」は128KB以下のサイズ、「大きい」は128KBより大きいサイズを意味します。
この項の内容は次のとおりです。
CellCLIのLISTコマンドを使用すると、セル・オブジェクトのメトリックを表示および監視できます。LISTコマンドを使用して、メトリック定義、現在のメトリック、およびメトリック履歴を表示できます。次の各項では、メトリックでLISTコマンドを使用する方法について説明します。
セルのメトリック定義を表示するには、LIST METRICDEFINITIONコマンドを使用します。メトリック定義のリストには、メトリックの構成が表示されます。例7-1は、METRICDEFINITIONオブジェクトの属性を表示する方法を示しています。
セルの現在のメトリック値を表示するには、LIST METRICCURRENTコマンドを使用します。現在のメトリックのリストには、各メトリックの現在値の観測データのセットが表示されます。例7-2は、METRICCURRENTオブジェクトの属性を表示する方法を示しています。
例7-2 現在のメトリック値の表示
CellCLI> LIST METRICCURRENT CL_TEMP DETAIL
name: CL_TEMP
alertState: normal
collectionTime: 2009-12-17T15:32:25-08:00
metricObjectName: abcd2x3
metricType: Instantaneous
metricValue: 48.0 C
objectType: CELL
CellCLI> LIST METRICCURRENT WHERE objectType = 'CELLDISK' AND -
metricValue != 0 ATTRIBUTES name, metricObjectName, -
metricValue, collectionTime
CD_IO_BY_R_LG CD_00_abcd2x3 1.9 MB 2009-12-17T15:46:52-08:00
CD_IO_BY_R_LG CD_01_abcd2x3 1.0 MB 2009-12-17T15:46:52-08:00
CD_IO_BY_R_LG CD_02_abcd2x3 4.1 MB 2009-12-17T15:46:52-08:00
CD_IO_BY_R_LG CD_03_abcd2x3 9.5 MB 2009-12-17T15:46:52-08:00
CD_IO_BY_R_LG CD_04_abcd2x3 0.1 MB 2009-12-17T15:46:52-08:00
CD_IO_BY_R_LG CD_05_abcd2x3 0.4 MB 2009-12-17T15:46:52-08:00
...
セルのメトリック履歴を表示するには、LIST METRICHISTORYコマンドを使用します。メトリック履歴のリストは、すべてのメトリック値の過去の各観測データを収集したものです。例7-3は、METRICHISTORYオブジェクトの属性を表示する方法を示しています。
例7-3 メトリック履歴の値の表示
CellCLI> LIST METRICHISTORY CD_IO_RQ_R_LG WHERE alertState='critical' DETAIL
CellCLI> LIST METRICHISTORY WHERE objectType = 'CELLDISK' AND metricValue != 0 -
AND collectionTime > '2009-08-12T09:10:51-07:00' -ATTRIBUTES name, -
metricObjectName, metricValue, collectionTime
メトリック履歴ファイルの保存期間は、metricHistoryDaysセル属性で指定されます。この設定は、CellCLIのALTER CELLコマンドで変更できます。
セルのメトリックでは、CPU使用率、メモリー、ネットワーク・インターコネクトなど、セルに関する情報が提供されます。セルのメトリックを表示するには、METRICCURRENTオブジェクト、METRICDEFINITIONオブジェクトおよびMETRICHISTORYオブジェクトでCELLと同等のオブジェクト・タイプ属性を使用します。例7-4は、セルのメトリックを表示する方法を示しています。
例7-4 セルのメトリックの表示
CellCLI> LIST METRICCURRENT CL_CPUT DETAIL
name: CL_CPUT
alertState: normal
collectionTime: 2009-12-17T15:54:25-08:00
metricObjectName: abcd2x3
metricType: Instantaneous
metricValue: 4.3 %
objectType: CELL
表7-1は、セルのメトリックのメトリック名および説明の一覧です。メトリックを表示するセルは、METRICCURRENTオブジェクトおよびMETRICHISTORYオブジェクトのmetricObjectName属性で指定されます。
|
注意: Oracle Exadata Storage Server Softwareでは、セルで利用可能なほとんどのメモリーを使用できます。Oracle Exadata Storage Server Softwareには、メモリーの過剰使用を避けるための内部コントロールが備わっています。スワップ領域が少なくなると、再起動サーバーによりアラートが生成され、Oracle Exadata Storage ServerのCELLSRVプロセスが再起動されます。これらのアラートは、Oracleサポート・サービスに報告する必要があります。Oracle Enterprise ManagerによるOracle Exadata Storage Serverのメモリー使用率の監視にその他のアラートを構成することはお薦めしません。 |
表7-1 セルのメトリックおよび説明
| メトリック | 説明 |
|---|---|
|
|
ディスク・コントローラのバッテリ充電。 |
|
|
ディスク・コントローラのバッテリの温度。 |
|
|
セルのCPU使用率(システムCPUがアイドル状態でなくなる直前の1分間のCPU使用率( |
|
|
CELLSRVが使用しているCPU時間の割合(%)。 |
|
|
MSが使用しているCPU時間の割合(%)。 |
|
|
セルで動作中のファンの回転数。 |
|
|
現在使用中のファイル・システムで使用されている合計領域の割合。このメトリックは、セルの様々なファイル・システムの領域使用率を示します。 |
|
|
データを返さなかったI/Oリクエストの数。 |
|
|
データを返さなかったI/Oリクエストの1秒当たりの数。 |
|
|
セルで使用されている合計物理メモリーの割合。 |
|
|
CELLSRVが使用している物理メモリーの割合(%)。 |
|
|
MSが使用している物理メモリーの割合(%)。 |
|
|
running(実行中)またはuninterruptible(無停止)とマークされるLinuxの実行キューの(直前の1分間の)プロセスの平均数( |
|
|
1秒当たりの読み取られたスワップ・ぺージのKB数。 |
|
|
1秒当たりの書き込まれたスワップ・ぺージのKB数。 |
|
|
使用済のスワップ領域の割合(%)。 |
|
|
|
|
|
CELLSRVが使用している仮想メモリー量(MB)。 |
|
|
MSで使用中の合計メモリー(常駐およびスワップ)(MB)。 |
|
|
セルのI/Oリソース管理目標。 |
|
|
InfiniBandインタフェースが1秒当たりに受信したMB数。 |
|
|
InfiniBandインタフェースが1秒当たりに送信したMB数。 |
|
|
イーサネット・インタフェースが1秒当たりに受信したKB数。 |
|
|
イーサネット・インタフェースが1秒当たりに送信したKB数。 |
|
|
インターコネクトによって受信されるI/Oパケットの1秒当たりの合計数。 |
|
|
インターコネクトによって送信されるI/Oパケットの1秒当たりの合計数。 |
セル・ディスクのメトリックでは、セル・ディスクからの大きいブロック読取り数など、セル・ディスクのI/O負荷に関する情報が提供されます。セル・ディスクのメトリックを表示するには、METRICCURRENTオブジェクト、METRICDEFINITIONオブジェクトおよびMETRICHISTORYオブジェクトでCELLDISKと同等のオブジェクト・タイプ属性を使用します。
表7-2は、セル・ディスクのメトリックのメトリック名および説明の一覧です。メトリックを表示するセル・ディスクは、METRICCURRENTオブジェクトおよびMETRICHISTORYオブジェクトのmetricObjectName属性で指定されます。cumulativeメトリックの場合は、様々なcollectionTime期間から値を減算することにより、特定の期間のメトリック値を算出できます。rateメトリックの場合は、メトリック値の期間は直前の1分間になります。
表7-2 セル・ディスクのメトリックおよび説明
フラッシュ・キャッシュのメトリックでは、フラッシュ・キャッシュからの1秒当たりの読取りMB数など、フラッシュ・キャッシュの使用率に関する情報が提供されます。フラッシュ・キャッシュのメトリックを表示するには、METRICCURRENTオブジェクト、METRICDEFINITIONオブジェクトおよびMETRICHISTORYオブジェクトでFLASHCACHEと同等のオブジェクト・タイプ属性を使用します。
表7-3は、フラッシュ・キャッシュのメトリックのメトリック名および説明の一覧です。メトリックを表示するフラッシュ・キャッシュは、METRICCURRENTオブジェクトおよびMETRICHISTORYオブジェクトのmetricObjectName属性で指定されます。
表7-3 フラッシュ・キャッシュのメトリックおよび説明
| メトリック | 説明 |
|---|---|
|
|
フラッシュ・キャッシュに割り当てられているMB数。 |
|
|
フラッシュ・キャッシュの未フラッシュ・データに割り当てられているMB数。 |
|
|
フラッシュ・キャッシュのOLTPデータに割り当てられているMB数。 |
|
|
グリッド・ディスクと同期されないフラッシュ・キャッシュのMB数。 |
|
|
キャッシュされたディスクにアクセスできないため、同期できないフラッシュ・キャッシュのMB数。 |
|
|
フラッシュ・キャッシュで使用されているMB数。 |
|
|
フラッシュ・キャッシュの未フラッシュkeepオブジェクトに割り当てられたMB数。 |
|
|
フラッシュ・キャッシュのOLTP keepオブジェクトのMB数。 |
|
|
|
|
|
|
|
|
フラッシュ・キャッシュの |
|
|
列フラッシュ・キャッシュで使用されているMB数。 |
|
|
列フラッシュ・キャッシュのkeepオブジェクトに使用されているMB数。 |
|
|
列フラッシュ・キャッシュから読み取られたMB数。 |
|
|
列フラッシュ・キャッシュからの読取りに適格なMB数。 |
|
|
列フラッシュ・キャッシュからの読取りに適格な1秒当たりのMB数。 |
|
|
列フラッシュ・キャッシュから読み取られた1秒当たりのMB数。 |
|
|
列フラッシュ・キャッシュからの読取りによって保存されたMB数。 |
|
|
列フラッシュ・キャッシュからの読取りによって1秒当たりに保存されたMB数。 |
|
|
読取りミスが原因で列フラッシュ・キャッシュに移入として書き込まれるMB数。 |
|
|
読取りミスが原因で列フラッシュ・キャッシュに移入として書き込まれる1秒当たりのMB数。 |
|
|
keepオブジェクトを対象として列フラッシュ・キャッシュから読み取られたMB数。 |
|
|
keepオブジェクトを対象として列フラッシュ・キャッシュから1秒当たりに読み取られたMB数。 |
|
|
列フラッシュ・キャッシュから読み取られたリクエスト数。 |
|
|
列フラッシュ・キャッシュに適格な読取りリクエスト数。 |
|
|
列フラッシュ・キャッシュに適格な1秒当たりの読取りリクエスト数。 |
|
|
列フラッシュ・キャッシュから読み取られた1秒当たりのリクエスト数。 |
|
|
読取りミスが原因で列フラッシュ・キャッシュに移入として書き込まれるリクエスト数。 |
|
|
読取りミスが原因で列フラッシュ・キャッシュに移入として1秒当たりに書き込まれるリクエスト数。 |
|
|
列フラッシュ・キャッシュからkeepオブジェクトに対して読み取られたリクエスト数。 |
|
|
列フラッシュ・キャッシュからkeepオブジェクトに対して1秒当たりに読み取られたリクエスト数。 |
|
|
フラッシュ・キャッシュのOLTPデータに割り当てられているMB数。 |
|
|
フラッシュ・キャッシュからハード・ディスクに書き込まれたMB数。 |
|
|
フラッシュ・キャッシュからハード・ディスクに1秒当たりに書き込まれたMB数。 |
|
|
フラッシュ・キャッシュから読み取られたMB数。 |
|
|
アクティブなセカンダリの読取りについてフラッシュ・キャッシュで対応できたMB数。 |
|
|
アクティブなセカンダリの読取りについてフラッシュ・キャッシュで対応できなかったMB数。 |
|
|
アクティブなセカンダリの読取りについてフラッシュ・キャッシュで対応できなかった1秒当たりのMB数。 |
|
|
アクティブなセカンダリの読取りについてフラッシュ・キャッシュで対応できた1秒当たりのMB数。 |
|
|
ディスク・ライターによってフラッシュ・キャッシュから読み取られたMB数。 |
|
|
ディスク・ライターによってフラッシュ・キャッシュから1秒当たりに読み取られたMB数。 |
|
|
フラッシュ・キャッシュから読み取られたDWデータのMB数。 |
|
|
リクエストされたデータの一部がフラッシュ・キャッシュに存在しなかったためにディスクから読み取られたMB数。 |
|
|
リクエストされたデータの一部がフラッシュ・キャッシュに存在しなかったためにディスクから読み取られたDWデータのMB数。 |
|
|
リクエストされたデータの一部がフラッシュ・キャッシュに存在しなかったためにディスクから1秒当たりに読み取られたMB数。 |
|
|
フラッシュ・キャッシュから1秒当たりに読み取られたMB数。 |
|
|
フラッシュ・キャッシュをバイパスするI/Oリクエストに対してディスクから読み取られたMB数。 フラッシュ・キャッシュをバイパスする読取りI/Oリクエストは、直接ディスクに移動します。これらのリクエストでは、リクエストされたデータを読み取った後にフラッシュ・キャッシュに移入しません。たとえば、 |
|
|
フラッシュ・キャッシュの負荷が高いためにフラッシュ・キャッシュをバイパスするI/Oリクエストに対してディスクから読み取られたMB数。 |
|
|
フラッシュ・キャッシュの負荷が高いためにフラッシュ・キャッシュをバイパスするI/Oリクエストに対してディスクから1秒当たりに読み取られたMB数。 |
|
|
I/Oサイズが大きいためにフラッシュ・キャッシュをバイパスするI/Oリクエストに対してディスクから読み取られたMB数。 |
|
|
I/Oサイズが大きいためにフラッシュ・キャッシュをバイパスするI/Oリクエストに対してディスクから1秒当たりに読み取られたMB数。 |
|
|
I/Oが非プライマリの非アクティブなセカンダリ・ミラーに対するものである場合にフラッシュ・キャッシュをバイパスするI/Oリクエストに対してディスクから読み取られたMB数。 |
|
|
フラッシュ・キャッシュをバイパスするI/Oリクエストに対してディスクから1秒当たりに読み取られたMB数。 フラッシュ・キャッシュをバイパスする読取りI/Oリクエストは、直接ディスクに移動します。これらのリクエストでは、リクエストされたデータを読み取った後にフラッシュ・キャッシュに移入しません。たとえば、 |
|
|
フラッシュ・キャッシュに書き込まれたMB数。 |
|
|
ディスク・ライターによってハード・ディスクに書き込まれたMB数。 |
|
|
ディスク・ライターによってハード・ディスクに1秒当たりに書き込まれたMB数。 |
|
|
フラッシュ・キャッシュへの初回書込みで書き込まれるMB数。 |
|
|
フラッシュ・キャッシュへの初回書込みで1秒当たりに書き込まれるMB数。 |
|
|
フラッシュ・キャッシュへの上書きで書き込まれるMB数。 |
|
|
フラッシュ・キャッシュへの上書きで1秒当たりに書き込まれるMB数。 |
|
|
読取りミスが原因でフラッシュ・キャッシュに移入として書き込まれるMB数。 |
|
|
フラッシュ・キャッシュへの読取りミスが原因でフラッシュ・キャッシュに移入として1秒当たりに書き込まれるMB数。 |
|
|
フラッシュ・キャッシュに1秒当たりに書き込まれたMB数。 |
|
|
フラッシュ・キャッシュをバイパスするI/Oリクエストに対してディスクに書き込まれたMB数。 |
|
|
フラッシュ・キャッシュの負荷が高いためにフラッシュ・キャッシュをバイパスするI/Oリクエストに対してディスクに書き込まれたMB数。 |
|
|
フラッシュ・キャッシュの負荷が高いためにフラッシュ・キャッシュをバイパスするI/Oリクエストに対してディスクに1秒当たりに書き込まれたMB数。 |
|
|
I/Oサイズが大きいためにフラッシュ・キャッシュをバイパスするI/Oリクエストに対してディスクに書き込まれたMB数。 |
|
|
I/Oサイズが大きいためにフラッシュ・キャッシュをバイパスするI/Oリクエストに対してディスクに1秒当たりに書き込まれたMB数。 |
|
|
I/Oが非プライマリの非アクティブなセカンダリ・ミラーに対するものである場合にフラッシュ・キャッシュをバイパスするI/Oリクエストに対してディスクに書き込まれたMB数。 |
|
|
フラッシュ・キャッシュをバイパスするI/Oリクエストに対してディスクに1秒当たりに書き込まれたMB数。 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
フラッシュ・キャッシュでのI/Oエラーの数。 |
|
|
フラッシュ・キャッシュからハード・ディスクに書き込まれたリクエスト数。 |
|
|
フラッシュ・キャッシュからハード・ディスクにデータを書き込むように要求する1秒当たりのリクエスト数。 |
|
|
フラッシュ・キャッシュで対応できた読取りI/Oリクエストの数。 |
|
|
アクティブなセカンダリの読取りについてフラッシュ・キャッシュで対応できたリクエスト数。 |
|
|
アクティブなセカンダリの読取りについてフラッシュ・キャッシュで対応できなかったリクエスト数。 |
|
|
アクティブなセカンダリの読取りについてフラッシュ・キャッシュで対応できなかった1秒当たりのリクエスト数。 |
|
|
アクティブなセカンダリの読取りについてフラッシュ・キャッシュで対応できた1秒当たりのリクエスト数。 |
|
|
ディスク・ライターによってフラッシュ・キャッシュから読み取られたリクエスト数。 |
|
|
ディスク・ライターによってフラッシュ・キャッシュから1秒当たりに読み取られたリクエスト数。 |
|
|
フラッシュ・キャッシュから読み取られたDWデータの読取りI/Oリクエストの数。 |
|
|
フラッシュ・キャッシュで一部のデータを見つけることができなかった読取りI/Oリクエストの数。 |
|
|
リクエストされたデータの一部がフラッシュ・キャッシュに存在しなかったためにディスクから読み取られたDWデータの読取りI/Oリクエストの数。 |
|
|
フラッシュ・キャッシュで一部のデータを見つけることができなかった1秒当たりの読取りI/Oリクエストの数。 |
|
|
フラッシュ・キャッシュで対応できた1秒当たりの読取りI/Oリクエストの数。 |
|
|
フラッシュ・キャッシュをバイパスする読取りI/Oリクエストの数。 フラッシュ・キャッシュをバイパスする読取りI/Oリクエストは、直接ディスクに移動します。これらのリクエストでは、リクエストされたデータを読み取った後にフラッシュ・キャッシュに移入しません。たとえば、 |
|
|
ディスクから読み取られたリクエストのうち、フラッシュ・キャッシュの負荷が高いためにフラッシュ・キャッシュをバイパスするリクエストの数。 |
|
|
ディスクから1秒当たりに読み取られたリクエストのうち、フラッシュ・キャッシュの負荷が高いためにフラッシュ・キャッシュをバイパスしたリクエストの数。 |
|
|
I/Oサイズが大きいためにフラッシュ・キャッシュをバイパスする読取りI/Oリクエストの数。 |
|
|
I/Oサイズが大きいためにフラッシュ・キャッシュをバイパスする1秒当たりの読取りI/Oリクエストの数。 |
|
|
ディスクから読み取られたリクエストのうち、I/Oが非プライマリの非アクティブなセカンダリ・ミラーに対するものである場合にフラッシュ・キャッシュをバイパスするリクエストの数。 |
|
|
フラッシュ・キャッシュをバイパスする1秒当たりの読取りI/Oリクエストの数。 フラッシュ・キャッシュをバイパスする読取りI/Oリクエストは、直接ディスクに移動します。これらのリクエストでは、リクエストされたデータを読み取った後にフラッシュ・キャッシュに移入しません。たとえば、 |
|
|
フラッシュ・キャッシュ内の領域の検索を試みたリクエストの数。 |
|
|
フラッシュ・キャッシュ内の領域の検索に失敗したリクエストの数。 |
|
|
フラッシュ・キャッシュにデータを移入する結果となったI/Oリクエストの数。 |
|
|
ディスク・ライターによってハード・ディスクに書き込まれたリクエスト数。 |
|
|
ディスク・ライターによってハード・ディスクに1秒当たりに書き込まれたリクエスト数。 |
|
|
フラッシュ・キャッシュへの初回書込みで書き込まれるリクエスト数。 |
|
|
フラッシュ・キャッシュへの初回書込みで1秒当たりに書き込まれるリクエスト数。 |
|
|
フラッシュ・キャッシュへの上書きで書き込まれるリクエスト数。 |
|
|
フラッシュ・キャッシュへの上書きで1秒当たりに書き込まれるリクエスト数。 |
|
|
読取りミスが原因でフラッシュ・キャッシュに移入として書き込まれるリクエスト数。 |
|
|
読取りミスが原因でフラッシュ・キャッシュに移入として1秒当たりに書き込まれるリクエスト数。 |
|
|
フラッシュ・キャッシュにデータを移入する結果となった1秒当たりのI/Oリクエストの数。 |
|
|
フラッシュ・キャッシュをバイパスする書込みI/Oリクエストの数。 |
|
|
ディスクに書き込まれたリクエストのうち、フラッシュ・キャッシュの負荷が高いためにフラッシュ・キャッシュをバイパスするリクエストの数。 |
|
|
ディスクに1秒当たりに書き込まれたリクエストのうち、フラッシュ・キャッシュの負荷が高いためにフラッシュ・キャッシュをバイパスするリクエストの数。 |
|
|
ディスクに書き込まれたリクエストのうち、I/Oサイズが大きいためにフラッシュ・キャッシュをバイパスするリクエストの数。 |
|
|
ディスクに1秒当たりに書き込まれたリクエストのうち、I/Oサイズが大きいためにフラッシュ・キャッシュをバイパスするリクエストの数。 |
|
|
ディスクに書き込まれたリクエストのうち、I/Oが非プライマリの非アクティブなセカンダリ・ミラーに対するものである場合にフラッシュ・キャッシュをバイパスするリクエストの数。 |
|
|
フラッシュ・キャッシュをバイパスする1秒当たりの書込みI/Oリクエストの数。 |
|
|
フラッシュ・キャッシュの |
|
|
|
|
|
|
|
|
|
|
|
フラッシュ・キャッシュをバイパスする フラッシュ・キャッシュをバイパスする読取りI/Oリクエストは、直接ディスクに移動します。これらのリクエストでは、リクエストされたデータを読み取った後にフラッシュ・キャッシュに移入しません。たとえば、 |
|
|
フラッシュキャッシュをバイパスする フラッシュ・キャッシュをバイパスする読取りI/Oリクエストは、直接ディスクに移動します。これらのリクエストでは、リクエストされたデータを読み取った後にフラッシュ・キャッシュに移入しません。たとえば、 |
|
|
|
|
|
|
|
|
フラッシュ・キャッシュのプリフェッチ・ヒット数。ヒットは、ページがプリフェッチされ、後からクライアントによって読取りまたは書込みのために使用されたことを意味します。プリフェッチされたページがヒットすると、そのページはプリフェッチとしてマークされなくなります。 |
|
|
フラッシュ・キャッシュのプリフェッチ・ミス数。ミスは、ページがプリフェッチされたが、クライアントによってまったく使用されずに、解放または再使用されたことを意味します。 |
|
|
フラッシュ・キャッシュのプリフェッチ・リクエスト数。 |
|
|
フラッシュ・キャッシュのスキップされたプリフェッチ・リクエスト数。エラーや抑制のため、またはバッファがないためにプリフェッチ・ディスクIOが発行されない場合、プリフェッチ・リクエストがスキップされることがあります。 |
|
|
クライアントがまだ使用していないプリフェッチ・ページを保持する、フラッシュ・キャッシュ内のMB数。 |
次の表およびビューでもフラッシュ・キャッシュのメトリックを確認できます。
V$SEGMENT_STATISTICS
V$SQL
Oracle Exadataスマート・フラッシュ・ログのメトリックでは、1秒当たりの書込みMB数など、フラッシュ・ログの使用率に関する情報が提供されます。Oracle Exadataスマート・フラッシュ・ログのメトリックを表示するには、METRICCURRENTオブジェクト、METRICDEFINITIONオブジェクトおよびMETRICHISTORYオブジェクトでFLASHLOGと同等のオブジェクト・タイプ属性を使用します。
表7-4は、Oracle Exadataスマート・フラッシュ・ログのメトリックのメトリック名および説明の一覧です。メトリックを表示するフラッシュ・ログは、METRICCURRENTオブジェクトおよびMETRICHISTORYオブジェクトのmetricObjectName属性で指定されます。
Oracle Exadataスマート・フラッシュ・ログのサイズを設定できます。サイズが小さすぎる場合は、FL_IO_W_SKIP_LARGEおよびFL_IO_W_SKIP_BUSY_MINメトリックの値を高くできます。
表7-4 Oracle Exadataスマート・フラッシュ・ログのメトリックおよび説明
| メトリック | 説明 |
|---|---|
|
|
外れしきい値を超えてフラッシュおよびディスクに書き込まれたREDO書込みの数。 |
|
|
ディスクI/Oエラーによってフラッシュに保存されたREDOデータ・バイトの数。 |
|
|
最初にディスクに書き込まれたREDO書込みの数。 |
|
|
Oracle Exadataスマート・フラッシュ・ログで発生したディスクI/Oエラーの数。 |
|
|
パーセントで表したOracle Exadataスマート・フラッシュ・ログの効率。 |
|
|
パーセントで表した過去の時間のOracle Exadataスマート・フラッシュ・ログの効率。 |
|
|
最初にフラッシュに書き込まれたREDO書込みの数。 |
|
|
Oracle Exadataスマート・フラッシュ・ログで発生したフラッシュI/Oエラーの数。 |
|
|
外れしきい値を超えてフラッシュに書き込まれたREDO書込みの数。 |
|
|
Oracle Exadataスマート・フラッシュ・ログによってハード・ディスクに書き込まれたMB数。 |
|
|
Oracle Exadataスマート・フラッシュ・ログによってハード・ディスクに1秒当たりに書き込まれたMB数。 |
|
|
Oracle Exadataスマート・フラッシュ・ログによってフラッシュに書き込まれたMB数。 |
|
|
Oracle Exadataスマート・フラッシュ・ログによってフラッシュに1秒当たりに書き込まれたMB数。 |
|
|
Oracle Exadataスマート・フラッシュ・ログがサービスを提供した書込みの数。 |
|
|
フラッシュ・ログ・ディスクに含まれるアクティブ・データ(ディスクにまだ書き込まれていないデータ、またはフラッシュ・ログによってチェックポイントが実行されたデータ)が多すぎるために、Oracle Exadataスマート・フラッシュ・ログをバイパスしたREDO書込みの数。 REDO書込みがフラッシュ・ログをバイパスする場合、次のような要因があります。
通常、 ログ・ファイル並列書込みの待機時間が長い(0.5秒超)か、 |
|
|
ディスクへの書込み前のデータが多すぎるため、最後の1分間にOracle Exadataスマート・フラッシュ・ログがサービスを提供できなかったREDO書込みの数。 |
|
|
データ・サイズがフラッシュ・ディスクの使用可能領域より大きいため、Oracle Exadataスマート・フラッシュ・ログがサービスを提供できなかった大規模なREDO書込みの数。 |
|
|
使用可能なバッファがないため、Oracle Exadataスマート・フラッシュ・ログがサービスを提供できなかったREDO書込みの数。 |
|
|
外れしきい値を超えてディスクに書き込まれたREDO書込みの数。Oracle Exadataスマート・フラッシュ・ログでない場合、これらの書込みは外れ値になります。 |
|
注意:
|
グリッド・ディスクのメトリックでは、グリッド・ディスクからの大きいブロック読取り数など、グリッド・ディスクのI/O負荷に関する情報が提供されます。グリッド・ディスクのメトリックを表示するには、METRICCURRENTオブジェクト、METRICDEFINITIONオブジェクトおよびMETRICHISTORYオブジェクトでGRIDDISKと同等のオブジェクト・タイプ属性を使用します。
表7-5は、グリッド・ディスクのメトリックのメトリック名および説明の一覧です。メトリックを表示するグリッド・ディスクは、METRICCURRENTオブジェクトおよびMETRICHISTORYオブジェクトのmetricObjectName属性で指定されます。cumulativeメトリックの場合は、様々なcollectionTime期間から値を減算することにより、特定の期間のメトリック値を算出できます。rateメトリックの場合は、メトリック値の期間は直前の1分間になります。
表7-5 グリッド・ディスクのメトリックおよび説明
| メトリック | 説明 |
|---|---|
|
|
グリッド・ディスクと同期されないフラッシュ・キャッシュにキャッシュされるMB数。 |
|
|
グリッド・ディスクから大きいブロックを読み取るときの読取りMB数の累計。 |
|
|
グリッド・ディスクから大きいブロックを読み取るときの1秒当たりの読取りMB数。 |
|
|
修正ジョブによってグリッド・ディスクから読み取られたMB数。 |
|
|
修正ジョブによってグリッド・ディスクから1秒当たりに読み取られたMB数。 |
|
|
グリッド・ディスクから小さいブロックを読み取るときの読取りMB数の累計。 |
|
|
グリッド・ディスクから小さいブロックを読み取るときの1秒当たりの読取りMB数。 |
|
|
グリッド・ディスクに大きいブロックを書き込むときの書込みMB数の累計。 |
|
|
グリッド・ディスクに大きいブロックを書き込むときの1秒当たりの書込みMB数。 |
|
|
グリッド・ディスクに小さいブロックを書き込むときの書込みMB数の累計。 |
|
|
グリッド・ディスクに小さいブロックを書き込むときの1秒当たりの書込みMB数。 |
|
|
グリッド・ディスクでのI/Oエラーの累計。 |
|
|
グリッド・ディスクでの1分当たりのI/Oエラー数。 |
|
|
修正ジョブによってグリッド・ディスクで検出された不良1MBブロックの数。 |
|
|
グリッド・ディスクからの大きいブロックの読取りリクエストの累計。 |
|
|
グリッド・ディスクからの大きいブロックの1秒当たりの読取りリクエスト数。 |
|
|
修正ジョブによってグリッド・ディスクから読み取られるリクエストの数。 |
|
|
修正ジョブによってグリッド・ディスクから1秒当たりに読み取られるリクエストの数。 |
|
|
グリッド・ディスクからの小さいブロックの読取りリクエストの累計。 |
|
|
グリッド・ディスクからの小さいブロックの1秒当たりの読取りリクエスト数。 |
|
|
グリッド・ディスクへの大きいブロックの書込みリクエストの累計。 |
|
|
グリッド・ディスクへの大きいブロックの1秒当たりの書込みリクエスト数。 |
|
|
グリッド・ディスクへの小さいブロックの書込みリクエストの累計。 |
|
|
グリッド・ディスクへの小さいブロックの1秒当たりの書込みリクエスト数。 |
|
|
グリッド・ディスクに割り当てられた物理領域のバイト数。 |
|
|
部分I/Oによって返されたバイト数。 |
|
|
部分I/Oによって返された1秒当たりのバイト数。 |
|
|
元のデータ・ブロックにリダイレクトされたスパースのバイト数。 |
|
|
元のデータ・ブロックにリダイレクトされたスパースの1秒当たりのバイト数。 |
|
|
部分データを返したI/Oリクエストの数。 |
|
|
部分データを返したI/Oリクエストの1秒当たりの数。 |
|
|
グリッド・ディスクに割り当てられた物理領域の割合(%)。領域使用率が95%を超えると警告アラートが生成されます。領域使用率が99%に達するとクリティカル・アラートが生成されます。 アラートが発生した場合、スパース・グリッド・ディスクのサイズを大きくするか、一部のスナップショット・データベースを削除して領域を解放してください。 |
ホストのインターコネクトのメトリックでは、セル・ストレージにアクセスするホストのI/O転送に関する情報が提供されます。ホストのインターコネクトのメトリックを表示するには、METRICCURRENTオブジェクト、METRICDEFINITIONオブジェクトおよびMETRICHISTORYオブジェクトでHOST_INTERCONNECTと同等のオブジェクト・タイプ属性を使用します。
表7-6は、ホストのインターコネクトのメトリックのメトリック名および説明の一覧です。メトリックを表示するホストのインターコネクトは、METRICCURRENTオブジェクトおよびMETRICHISTORYオブジェクトのmetricObjectName属性で指定されます。cumulativeメトリックの場合は、様々なcollectionTime期間から値を減算することにより、特定の期間のメトリック値を算出できます。rateメトリックの場合は、メトリック値の期間は直前の1分間になります。
表7-6 ホストのインターコネクトのメトリックおよび説明
| メトリック | 説明 |
|---|---|
|
|
特定のホストへの送信中に削除されたMB数の累計。 |
|
|
特定のホストへの送信中に1秒当たりに削除されたMB数。 |
|
|
特定のホストへのリモート・ダイレクト・メモリー・アクセス(RDMA)送信中に削除されたMB数の累計。 |
|
|
特定のホストへのRDMA送信中に1秒当たりに削除されたMB数。 |
|
|
特定のホストから受信したMB数の累計。 |
|
|
特定のホストから1秒当たりに受信したMB数。 |
|
|
特定のホストに再送信されたMB数の累計。 |
|
|
特定のホストに1秒当たりに再送信されたMB数。 |
|
|
特定のホストに送信されたMB数の累計。 |
|
|
特定のホストに1秒当たりに送信されたMB数。 |
|
|
特定のホストにRDMA送信中の再試行アクションの累積レイテンシ。 |
スマートI/Oのメトリックでは、スマートI/Oのパフォーマンスに関する情報が提供されます。スマートI/Oとは、Oracle Exadata Storage Serverのオフロード機能によって実行されるスマート・スキャンやスマート増分バックアップなどのI/O処理のことです。スマートI/Oのメトリックを表示するには、METRICCURRENTオブジェクト、METRICDEFINITIONオブジェクトおよびMETRICHISTORYオブジェクトでSMARTIOと同等のオブジェクト・タイプ属性を使用します。
表7-7は、スマートI/Oのメトリックのメトリック名および説明の一覧です。メトリックを表示するスマートI/Oは、METRICCURRENTオブジェクトおよびMETRICHISTORYオブジェクトのmetricObjectName属性で指定されます。cumulativeメトリックの場合は、様々なcollectionTime期間から値を減算することにより、特定の期間のメトリック値を算出できます。
表7-7 スマートI/Oのメトリックおよび説明
| メトリック | 説明 |
|---|---|
|
|
スマートI/Oによるオフロードの対象となるMB数の累計。 |
|
|
スマートI/Oによるオフロードの対象となる1秒当たりのMB数。 |
|
|
スマートI/Oによって返されたインターコネクトMB数の累計。 |
|
|
スマートI/Oによって返された1秒当たりのインターコネクトMB数。 |
|
|
スマートI/OによるパススルーI/OのMB数の累計。 |
|
|
スマートI/OによるパススルーI/Oの1秒当たりのMB数。 |
|
|
スマートI/Oによってフラッシュ・キャッシュから読み取られたMB数の累計。 |
|
|
スマートI/Oによってフラッシュ・キャッシュとハード・ディスクの両方から読み取られたMB数の累計。 |
|
|
スマートI/Oによってフラッシュ・キャッシュとハード・ディスクの両方から1秒当たりに読み取られたMB数。 |
|
|
スマートI/Oによってフラッシュ・キャッシュから1秒当たりに読み取られたMB数。 |
|
|
スマートI/Oによってハード・ディスクから読み取られたMB数の累計。 |
|
|
スマートI/Oによってハード・ディスクから1秒当たりに読み取られたMB数。 |
|
|
スマートI/Oによるフラッシュ・キャッシュからの読取りI/Oリクエストの累計。 |
|
|
スマートI/Oによるフラッシュ・キャッシュとハード・ディスクの両方からの読取りI/Oリクエストの累計。 |
|
|
スマートI/Oによるフラッシュ・キャッシュとハード・ディスクの両方からの1秒当たりの読取りI/Oリクエストの数。 |
|
|
スマートI/Oによるフラッシュ・キャッシュからの1秒当たりの読取りI/Oリクエストの数。 |
|
|
スマートI/Oによるハード・ディスクからの読取りI/Oリクエストの累計。 |
|
|
スマートI/Oによるハード・ディスクからの1秒当たりの読取りI/Oリクエストの数。 |
|
|
スマートI/OによってCPUのバランス調整のためにデータベース・ノードに送信されたMB数の累計。 |
|
|
スマートI/OによってCPUのバランス調整のためにデータベース・ノードに1秒当たりに送信されたMB数。 |
|
|
ストレージ索引によって保存されたMB数の累計。 |
|
|
ストレージ索引によって1秒当たりに保存されたMB数。 |
|
|
スマートI/Oによってフラッシュ・キャッシュに移入として書き込まれるMB数の累計。 |
|
|
スマートI/Oによってフラッシュ・キャッシュに移入として1秒当たりに書き込まれるMB数。 |
|
|
スマートI/Oによってハード・ディスクに書き込まれたMB数の累計。 |
|
|
スマートI/Oによってハード・ディスクに1秒当たりに書き込まれたMB数。 |
|
|
スマートI/Oによってフラッシュ・キャッシュに移入として書き込まれるように要求するI/Oリクエストの累計。 |
|
|
スマートI/Oによってフラッシュ・キャッシュに移入として書き込まれるように要求する1秒当たりのI/Oリクエストの数。 |
|
|
スマートI/Oによるハード・ディスクに対する書込みI/Oリクエストの累計。 |
|
|
スマートI/Oによるハード・ディスクに対する1秒当たりの書込みI/Oリクエストの数。 |
I/Oリソース管理(IORM)は、Oracle Exadata Storage Server Softwareのメトリックを使用して監視できます。IORMではデータベース識別子ではなくデータベース名を使用して、統計を収集し、出力を表示します。この項では、次のトピックについて説明します。
カテゴリ・メトリックでは、現在のIORMカテゴリ・プランで指定した各カテゴリからのI/O負荷のサイズに関する情報が提供されます。METRICCURRENTオブジェクト、METRICDEFINITIONオブジェクトおよびMETRICHISTORYオブジェクトのobjectType属性は、カテゴリ・メトリックのIORM_CATEGORYと同等です。
表7-8は、カテゴリのメトリックのメトリック名および説明の一覧です。メトリックを表示するカテゴリは、METRICCURRENTオブジェクトおよびMETRICHISTORYオブジェクトのmetricObjectName属性で指定されます。cumulativeメトリックの場合は、様々なcollectionTime期間から値を減算することにより、特定の期間のメトリック値を算出できます。rateメトリックの場合は、メトリック値の期間は直前の1分間になります。表の説明では、「小さい」は128KB以下のサイズ、「大きい」は128KBより大きいサイズを意味します。
表7-8 カテゴリのメトリックおよび説明
| メトリック | 説明 |
|---|---|
|
|
フラッシュ・キャッシュへのこのカテゴリの1秒当たりのI/OのMB数。 |
|
|
IORMカテゴリがフラッシュ・キャッシュに発行するI/Oリクエストの数。 |
|
|
IORMカテゴリがフラッシュ・キャッシュに発行する大きいI/Oリクエストの数。 |
|
|
IORMカテゴリがフラッシュ・キャッシュに1秒当たりに発行する大きいI/Oリクエストの数。 |
|
|
IORMカテゴリがフラッシュ・キャッシュに1秒当たりに発行するI/Oリクエストの数。 |
|
|
IORMカテゴリがフラッシュ・キャッシュに発行する小さいI/Oリクエストの数。 |
|
|
IORMカテゴリがフラッシュ・キャッシュに1秒当たりに発行する小さいI/Oリクエストの数。 |
|
|
フラッシュ・ディスクへのこのカテゴリの1秒当たりのI/OのMB数。 |
|
|
フラッシュ・ディスクへのこのカテゴリからの平均I/O負荷。I/O負荷の詳細は、「 |
|
|
IORMカテゴリがフラッシュ・ディスクに発行する大きいI/Oリクエストの数。 |
|
|
IORMカテゴリがフラッシュ・ディスクに1秒当たりに発行する大きいI/Oリクエストの数。 |
|
|
IORMカテゴリがフラッシュ・ディスクに発行する小さいI/Oリクエストの数。 |
|
|
IORMカテゴリがフラッシュ・ディスクに1秒当たりに発行する小さいI/Oリクエストの数。 |
|
|
フラッシュ・ディスクからのこのカテゴリのブロックの読取り/書込みの累積待機時間。 |
|
|
フラッシュ・ディスクからのこのカテゴリの大きいブロックの読取り/書込みの累積待機時間。 |
|
|
フラッシュ・ディスクからのこのカテゴリの大きいブロックの読取り/書込みの1リクエスト当たりの平均待機時間。 |
|
|
フラッシュ・ディスクからのこのカテゴリのブロックの読取り/書込みの1リクエスト当たりの平均待機時間。 |
|
|
フラッシュ・ディスクからのこのカテゴリの小さいブロックの読取り/書込みの累積待機時間。 |
|
|
フラッシュ・ディスクからのこのカテゴリの小さいブロックの読取り/書込みの1リクエスト当たりの平均待機時間。 |
|
|
このカテゴリから使用されているフラッシュ・リソースの割合(%)。 |
|
|
このカテゴリからの大きいリクエストによって使用されているフラッシュ・リソースの割合(%)。 |
|
|
このカテゴリからの小さいリクエストによって使用されているフラッシュ・リソースの割合(%)。 |
|
|
IORMカテゴリがフラッシュ・ディスクに発行する大きいI/OリクエストのIORM待機時間。 |
|
|
IORMカテゴリがフラッシュ・ディスクに発行する大きいI/Oリクエストのリクエスト当たりの平均IORM待機時間。 |
|
|
IORMカテゴリがフラッシュ・ディスクに発行する小さいI/OリクエストのIORM待機時間。 |
|
|
IORMカテゴリがフラッシュ・ディスクに発行する小さいI/Oリクエストのリクエスト当たりの平均IORM待機時間。 |
|
|
ハード・ディスクへのこのカテゴリの1秒当たりのI/OのMB数。 |
|
|
ハード・ディスクへのこのカテゴリからの平均I/O負荷。I/O負荷の詳細は、「 |
|
|
ハード・ディスクに対するカテゴリによって発行された大きいI/Oリクエストの累積数。大きい値は、このカテゴリからのI/Oの処理負荷が高いことを示します。 |
|
|
このメトリックは |
|
|
ハード・ディスクに対するカテゴリによって発行された小さいI/Oリクエストの累積数。大きい値は、このカテゴリからのI/Oの処理負荷が高いことを示します。 |
|
|
このメトリックは |
|
|
ハード・ディスクからのこのカテゴリの大きいブロックの読取り/書込みの累積待機時間。 |
|
|
ハード・ディスクからのこのカテゴリの大きいブロックの読取り/書込みの1リクエスト当たりの平均待機時間。 |
|
|
ハード・ディスクからのこのカテゴリの小さいブロックの読取り/書込みの累積待機時間。 |
|
|
ハード・ディスクからのこのカテゴリの小さいブロックの読取り/書込みの1リクエスト当たりの平均待機時間。 |
|
|
このカテゴリからの大きいリクエストによって使用されているディスク・リソースの割合(%)。 |
|
|
このカテゴリからの小さいリクエストによって使用されているディスク・リソースの割合(%)。 |
|
|
カテゴリがハード・ディスクに発行する大きいI/OリクエストがIORMでスケジュールされるまでの待機時間の累計(ミリ秒)。大きい値は、このカテゴリからのI/Oの処理負荷がカテゴリ・プランで指定した割当てを超えていることを示します。 |
|
|
IORMカテゴリがハード・ディスクに発行する大きいI/Oリクエストのリクエスト当たりの平均IORM待機時間。 |
|
|
カテゴリがハード・ディスクに発行する小さいI/OリクエストがIORMでスケジュールされるまでの待機時間の累計(ミリ秒)。大きい値は、このカテゴリからのI/Oの処理負荷がカテゴリ・プランで指定した割当てを超えていることを示します。 |
|
|
IORMカテゴリがハード・ディスクに発行する小さいI/Oリクエストのリクエスト当たりの平均IORM待機時間。 |
すべてのカテゴリの累積メトリックは、カテゴリ、IORMまたはデータベース・リソースのプランが変更されるとゼロにリセットされます。データベース間のプランのカテゴリ・メトリックの履歴を表示するには、次のCellCLIコマンドを使用します。
CellCLI> LIST METRICHISTORY WHERE objectType = 'IORM_CATEGORY' AND -
metricValue != 0 ATTRIBUTES name, metricObjectName, metricValue, -
collectionTime
また、カテゴリ・メトリックは、内部生成または自動的に管理される次のカテゴリで提供されます。
_ASM_: Oracle ASM関連のI/O
_ORACLE_BG_CATEGORY_: Oracle Databaseバックグラウンド・プロセスで発行される優先度の高いI/O
_ORACLE_MEDPRIBG_CATEGORY_: Oracle Databaseバックグラウンド・プロセスで発行される優先度が中位のI/O
_ORACLE_LOWPRIBG_CATEGORY_: Oracle Databaseバックグラウンド・プロセスで発行される優先度の低いI/O
プラガブル・データベース(PDB)メトリックは、コンテナ・データベース(CDB)プランで指定された各PDBのI/O負荷のサイズに関する情報を提供します。METRICCURRENTオブジェクト、METRICDEFINITIONオブジェクトおよびMETRICHISTORYオブジェクトのobjectType属性は、データベース・メトリックのIORM_PLUGGABLE_DATABASEと同等です。
表7-9は、データベースのメトリックのメトリック名および説明の一覧です。メトリックを表示するPDBは、METRICCURRENTオブジェクトおよびMETRICHISTORYオブジェクトのmetricObjectName属性で指定されます。PDB名は、CDB名とPDB名を連結した名前です。cumulativeメトリックの場合は、様々なcollectionTime期間から値を減算することにより、特定の期間のメトリック値を算出できます。rateメトリックの場合は、メトリック値の期間は直前の1分間になります。表の説明では、「小さい」は128KB以下のサイズ、「大きい」は128KBより大きいサイズを意味します。
表7-9 プラガブル・データベースのメトリックおよび説明
| メトリック | 説明 |
|---|---|
|
|
このプラガブル・データベースに対してフラッシュ・キャッシュで割り当てられるMB数。 |
|
|
フラッシュ・キャッシュへのプラガブル・データベースの1秒当たりのI/OのMB数。 |
|
|
このプラガブル・データベースがフラッシュ・キャッシュに発行するI/Oリクエストの数。 |
|
|
このプラガブル・データベースがフラッシュ・キャッシュに発行する大きいI/Oリクエストの数。 |
|
|
このプラガブル・データベースがフラッシュ・キャッシュに発行する大きいI/Oリクエストの1秒当たりの数。 |
|
|
このプラガブル・データベースがフラッシュ・キャッシュに発行する1秒当たりのI/Oリクエストの数。 |
|
|
このプラガブル・データベースがフラッシュ・キャッシュに発行する小さいI/Oリクエストの数。 |
|
|
このプラガブル・データベースがフラッシュ・キャッシュに発行する小さいI/Oリクエストの1秒当たりの数。 |
|
|
フラッシュ・ディスクへのプラガブル・データベースの1秒当たりのI/OのMB数。 |
|
|
フラッシュ・ディスクへのこのプラガブル・データベースからの平均I/O負荷。I/O負荷の詳細は、「 |
|
|
プラガブル・データベースがフラッシュ・ディスクに発行する大きいI/Oリクエストの数。 |
|
|
プラガブル・データベースがフラッシュ・ディスクに1秒当たりに発行する大きいI/Oリクエストの数。 |
|
|
プラガブル・データベースがフラッシュ・ディスクに発行する小さいI/Oリクエストの数。 |
|
|
プラガブル・データベースがフラッシュ・ディスクに1秒当たりに発行する小さいI/Oリクエストの数。 |
|
|
フラッシュ・ディスクからのこのプラガブル・データベースによるブロックの読取り/書込みの累積待機時間。 |
|
|
フラッシュ・ディスクからのこのプラガブル・データベースによる大きいブロックの読取り/書込みの累積待機時間。 |
|
|
フラッシュ・ディスクからのこのプラガブル・データベースによる大きいブロックの読取り/書込みの1リクエスト当たりの平均待機時間。 |
|
|
フラッシュ・ディスクからのこのプラガブル・データベースによるブロックの読取り/書込みの1リクエスト当たりの平均待機時間。 |
|
|
フラッシュ・ディスクからのこのプラガブル・データベースによる小さいブロックの読取り/書込みの累積待機時間。 |
|
|
フラッシュ・ディスクからのこのプラガブル・データベースによる小さいブロックの読取り/書込みの1リクエスト当たりの平均待機時間。 |
|
|
このプラガブル・データベースから使用されているフラッシュ・リソースの割合(%)。 |
|
|
このプラガブル・データベースからの大きいリクエストによって使用されているフラッシュ・リソースの割合(%)。 |
|
|
このプラガブル・データベースからの小さいリクエストによって使用されているフラッシュ・リソースの割合(%)。 |
|
|
このプラガブル・データベースがフラッシュ・ディスクに発行する大きいI/OリクエストのIORM待機時間。 |
|
|
このプラガブル・データベースがフラッシュ・ディスクに発行する大きいI/Oリクエストのリクエスト当たりの平均IORM待機時間。 |
|
|
このプラガブル・データベースがフラッシュ・ディスクに発行する小さいI/OリクエストのIORM待機時間。 |
|
|
このプラガブル・データベースがフラッシュ・ディスクに発行する小さいI/Oリクエストのリクエスト当たりの平均IORM待機時間。 |
|
|
ハード・ディスクへのプラガブル・データベースの1秒当たりのI/OのMB数。 |
|
|
ハード・ディスクへのこのプラガブル・データベースからの平均I/O負荷。I/O負荷の詳細は、「 |
|
|
プラガブル・データベースがハード・ディスクに発行する大きいI/Oリクエストの累積数。大きい値は、このプラガブル・データベースからの大きいI/Oの処理負荷が高いことを示します。 |
|
|
ハード・ディスクに対して直前の1分間にプラガブル・データベースが1秒当たりに発行した大きいI/Oリクエストの率。大きい値は、直前の1分間のこのプラガブル・データベースからの大きいI/Oの処理負荷が高いことを示します。 |
|
|
プラガブル・データベースがハード・ディスクに発行する小さいI/Oリクエストの累積数。大きい値は、このプラガブル・データベースからの小さいI/Oの処理負荷が高いことを示します。 |
|
|
ハード・ディスクに対して直前の1分間にプラガブル・データベースが1秒当たりに発行した小さいI/Oリクエストの率。大きい値は、直前の1分間にこのプラガブル・データベースが発行した小さいI/Oの処理負荷が高いことを示します。 |
|
|
ハード・ディスクからのこのプラガブル・データベースによる大きいブロックの読取り/書込みの累積待機時間。 |
|
|
ハード・ディスクからのこのプラガブル・データベースによる大きいブロックの読取り/書込みの1リクエスト当たりの平均待機時間。 |
|
|
ハード・ディスクからのこのプラガブル・データベースによる小さいブロックの読取り/書込みの累積待機時間。 |
|
|
ハード・ディスクからのこのプラガブル・データベースによる小さいブロックの読取り/書込みの1リクエスト当たりの平均待機時間。 |
|
|
このプラガブル・データベースからの大きいリクエストによって使用されているディスク・リソースの割合(%)。 |
|
|
このプラガブル・データベースからの小さいリクエストによって使用されているディスク・リソースの割合(%)。 |
|
|
このプラガブル・データベースがハード・ディスクに発行する大きいI/OリクエストのIORM待機時間。 |
|
|
このプラガブル・データベースがハード・ディスクに発行する大きいI/Oリクエストのリクエスト当たりの平均IORM待機時間。 |
|
|
このプラガブル・データベースがハード・ディスクに発行する小さいI/OリクエストのIORM待機時間。 |
|
|
このプラガブル・データベースがハード・ディスクに発行する小さいI/Oリクエストのリクエスト当たりの平均IORM待機時間。 |
データベース・メトリックでは、データベース間のプランで指定した各データベースからのI/O負荷のサイズに関する情報が提供されます。METRICCURRENTオブジェクト、METRICDEFINITIONオブジェクトおよびMETRICHISTORYオブジェクトのobjectType属性は、データベース・メトリックのIORM_DATABASEと同等です。
表7-10は、データベースのメトリックのメトリック名および説明の一覧です。メトリックを表示するデータベースは、METRICCURRENTオブジェクトおよびMETRICHISTORYオブジェクトのmetricObjectName属性で指定されます。cumulativeメトリックの場合は、様々なcollectionTime期間から値を減算することにより、特定の期間のメトリック値を算出できます。rateメトリックの場合は、メトリック値の期間は直前の1分間になります。表の説明では、「小さい」は128KB以下のサイズ、「大きい」は128KBより大きいサイズを意味します。
表7-10 データベースのメトリックおよび説明
| メトリック | 説明 |
|---|---|
|
|
このデータベースに対してフラッシュ・キャッシュで割り当てられるMB数。 |
|
|
フラッシュ・キャッシュへのこのデータベースの1秒当たりのI/OのMB数。 |
|
|
データベースがフラッシュ・キャッシュに発行するI/Oリクエストの数。 |
|
|
データベースがフラッシュ・キャッシュに発行する大きいI/Oリクエストの数。 |
|
|
データベースがフラッシュ・キャッシュに1秒当たりに発行する大きいI/Oリクエストの数。 |
|
|
データベースがフラッシュ・キャッシュに1秒当たりに発行するI/Oリクエストの数。 |
|
|
データベースがフラッシュ・キャッシュに発行する小さいI/Oリクエストの数。 |
|
|
データベースがフラッシュ・キャッシュに1秒当たりに発行する小さいI/Oリクエストの数。 |
|
|
フラッシュ・ディスクへのこのデータベースの1秒当たりのI/OのMB数。 |
|
|
フラッシュ・ディスクへのこのデータベースからの平均I/O負荷。I/O負荷の詳細は、「 |
|
|
データベースがフラッシュ・ディスクに発行する大きいI/Oリクエストの数。 |
|
|
データベースがフラッシュ・ディスクに1秒当たりに発行する大きいI/Oリクエストの数。 |
|
|
データベースがフラッシュ・ディスクに発行する小さいI/Oリクエストの数。 |
|
|
データベースがフラッシュ・ディスクに1秒当たりに発行する小さいI/Oリクエストの数。 |
|
|
フラッシュ・ディスクからのデータベースによるブロックの読取り/書込みの累積待機時間。 |
|
|
フラッシュ・ディスクからのデータベースによる大きいブロックの読取り/書込みの累積待機時間。 |
|
|
フラッシュ・ディスクからのデータベースによる大きいブロックの読取り/書込みの1リクエスト当たりの平均待機時間。 |
|
|
フラッシュ・ディスクからのデータベースによるブロックの読取り/書込みの1リクエスト当たりの平均待機時間。 |
|
|
フラッシュ・ディスクからのデータベースによる小さいブロックの読取り/書込みの累積待機時間。 |
|
|
フラッシュ・ディスクからのデータベースによる小さいブロックの読取り/書込みの1リクエスト当たりの平均待機時間。 |
|
|
このデータベースから使用されているフラッシュ・リソースの割合(%)。 |
|
|
このデータベースからの大きいリクエストによって使用されているキャッシュ・リソースの割合(%)。 |
|
|
このデータベースからの小さいリクエストによって使用されているフラッシュ・リソースの割合(%)。 |
|
|
データベースがフラッシュ・ディスクに発行する大きいI/OリクエストのIORM待機時間。 |
|
|
データベースがフラッシュ・ディスクに発行する大きいI/Oリクエストのリクエスト当たりの平均IORM待機時間。 |
|
|
データベースがフラッシュ・ディスクに発行する小さいI/OリクエストのIORM待機時間。 |
|
|
データベースがフラッシュ・ディスクに発行する小さいI/Oリクエストのリクエスト当たりの平均IORM待機時間。 |
|
|
Oracle Exadataスマート・フラッシュ・ログに書き込まれたMB数。 |
|
|
Oracle Exadataスマート・フラッシュ・ログに1秒当たりに書き込まれたMB数。 |
|
|
Oracle Exadataスマート・フラッシュ・ログに発行されたI/Oリクエストの数。 |
|
|
Oracle Exadataスマート・フラッシュ・ログに1秒当たりに発行されたI/Oリクエストの数。 |
|
|
ハード・ディスクへのこのデータベースの1秒当たりのI/OのMB数。 |
|
|
ハード・ディスクへのこのデータベースからの平均I/O負荷。I/O負荷の詳細は、「 |
|
|
データベースによってハード・ディスクに発行された大きいI/Oリクエストの累積数。大きい値は、このデータベースからのI/Oの処理負荷が非常に高いことを示します。 |
|
|
直前の1分間にデータベースがハード・ディスクに1秒当たりに発行した大きいI/Oリクエストの率。大きい値は、直前の1分間にこのデータベースから発行されたI/Oの処理負荷が非常に高いことを示します。 |
|
|
データベースによってハード・ディスクに発行された小さいI/Oリクエストの累積数。大きい値は、このデータベースからのI/Oの処理負荷が非常に高いことを示します。 |
|
|
直前の1分間にデータベースがハード・ディスクに1秒当たりに発行した小さいI/Oリクエストの率。大きい値は、直前の1分間にこのデータベースが発行する小さいI/Oの処理負荷が非常に高いことを示します。 |
|
|
ハード・ディスクからのデータベースによる大きいブロックの読取り/書込みの累積待機時間。 |
|
|
ハード・ディスクからのデータベースによる大きいブロックの読取り/書込みの1リクエスト当たりの平均待機時間。 |
|
|
ハード・ディスクからのデータベースによる小さいブロックの読取り/書込みの累積待機時間。 |
|
|
ハード・ディスクからのデータベースによる小さいブロックの読取り/書込みの1リクエスト当たりの平均待機時間。 |
|
|
このデータベースからの大きいリクエストによって使用されているハード・ディスク・リソースの割合(%)。 |
|
|
このデータベースからの小さいリクエストによって使用されているハード・ディスク・リソースの割合(%)。 |
|
|
データベースがハード・ディスクに発行する大きいI/OリクエストのIORM待機時間。 |
|
|
データベースがハード・ディスクに発行する大きいI/Oリクエストのリクエスト当たりの平均IORM待機時間。 |
|
|
データベースがハード・ディスクに発行する小さいI/OリクエストのIORM待機時間。 |
|
|
データベースがハード・ディスクに発行する小さいI/Oリクエストのリクエスト当たりの平均IORM待機時間。 |
すべてのデータベースの累積メトリックは、カテゴリ、IORMまたはデータベース・リソースのプランが変更されるとゼロにリセットされます。
データベース間のプランのデータベース・メトリックの履歴を表示するには、次のCellCLIコマンドを使用します。
CellCLI> LIST METRICHISTORY WHERE objectType = 'IORM_DATABASE' AND - metricValue != 0 ATTRIBUTES name, metricObjectName, metricValue, collectionTime
また、データベース・メトリックは、Oracle ASMおよび_OTHER_DATABASE_という名前のメトリックのすべてのデータベースで提供されます。
コンシューマ・グループ・メトリックでは、データベース・リソース・プランで指定した各コンシューマ・グループからのI/O負荷のサイズに関する情報が提供されます。データベース間プランの各データベースには、そのコンシューマ・グループごとにメトリックが設定されます。METRICCURRENTオブジェクト、METRICDEFINITIONオブジェクトおよびMETRICHISTORYオブジェクトのobjectType属性は、コンシューマ・グループ・メトリックのIORM_CONSUMER_GROUPと同等です。
表7-11は、コンシューマ・グループのメトリックのメトリック名および説明の一覧です。メトリックを表示するコンシューマ・グループおよびデータベースは、METRICCURRENTオブジェクトおよびMETRICHISTORYオブジェクトのmetricObjectName属性で指定されます。名前の書式は、データベース名の後にピリオド(.)、コンシューマ・グループ名を続ける書式で指定します。たとえば、データベース名がPRODUCTIONDBでコンシューマ・グループ名がOLTPの場合、metricObjectNameはPRODUCTIONDB.OLTPになります。
cumulativeメトリックの場合は、様々なcollectionTime期間から値を減算することにより、特定の期間のメトリック値を算出できます。rateメトリックの場合は、メトリック値の期間は直前の1分間になります。表の説明では、「小さい」は128KB以下のサイズ、「大きい」は128KBより大きいサイズを意味します。
表7-11 コンシューマ・グループのメトリックおよび説明
| メトリック | 説明 |
|---|---|
|
|
フラッシュ・キャッシュへのこのコンシューマ・グループの1秒当たりのI/OのMB数。 |
|
|
コンシューマ・グループがフラッシュ・キャッシュに発行するI/Oリクエストの数。 |
|
|
コンシューマ・グループがフラッシュ・キャッシュに発行する大きいI/Oリクエストの数。 |
|
|
コンシューマ・グループがフラッシュ・キャッシュに1秒当たりに発行する大きいI/Oリクエストの数。 |
|
|
コンシューマ・グループがフラッシュ・キャッシュに1秒当たりに発行するI/Oリクエストの数。 |
|
|
コンシューマ・グループがフラッシュ・キャッシュに発行する小さいI/Oリクエストの数。 |
|
|
コンシューマ・グループがフラッシュ・キャッシュに1秒当たりに発行する小さいI/Oリクエストの数。 |
|
|
フラッシュ・ディスクへのこのコンシューマ・グループの1秒当たりのI/OのMB数。 |
|
|
このメトリックは、このコンシューマ・グループからフラッシュ・ディスクへの平均I/O負荷を示しています。I/O負荷の詳細は、「 |
|
|
コンシューマ・グループがフラッシュ・ディスクに発行する大きいI/Oリクエストの数。 |
|
|
コンシューマ・グループがフラッシュ・ディスクに1秒当たりに発行する大きいI/Oリクエストの数。 |
|
|
コンシューマ・グループがフラッシュ・ディスクに発行する小さいI/Oリクエストの数。 |
|
|
コンシューマ・グループがフラッシュ・ディスクに1秒当たりに発行する小さいI/Oリクエストの数。 |
|
|
フラッシュ・ディスクからのコンシューマ・グループによるブロックの読取り/書込みの累積待機時間。 |
|
|
フラッシュ・ディスクからのコンシューマ・グループによる大きいブロックの読取り/書込みの累積待機時間。 |
|
|
フラッシュ・ディスクからのコンシューマ・グループによる大きいブロックの読取り/書込みの1リクエスト当たりの平均待機時間。 |
|
|
フラッシュ・ディスクからのコンシューマ・グループによるブロックの読取り/書込みの1リクエスト当たりの平均待機時間。 |
|
|
フラッシュ・ディスクからのコンシューマ・グループによる小さいブロックの読取り/書込みの累積待機時間。 |
|
|
フラッシュ・ディスクからのコンシューマ・グループによる小さいブロックの読取り/書込みの1リクエスト当たりの平均待機時間。 |
|
|
このコンシューマ・グループから使用されているフラッシュ・リソースの割合(%)。 |
|
|
このコンシューマ・グループからの大きいリクエストによって使用されているフラッシュ・リソースの割合(%)。 |
|
|
このコンシューマ・グループからの小さいリクエストによって使用されているフラッシュ・リソースの割合(%)。 |
|
|
コンシューマ・グループがフラッシュ・ディスクに発行する大きいI/OリクエストのIORM待機時間。 |
|
|
コンシューマ・グループがフラッシュ・ディスクに発行する大きいI/Oリクエストのリクエスト当たりの平均IORM待機時間。 |
|
|
コンシューマ・グループがフラッシュ・ディスクに発行する小さいI/OリクエストのIORM待機時間。 |
|
|
コンシューマ・グループがフラッシュ・ディスクに発行する小さいI/Oリクエストのリクエスト当たりの平均IORM待機時間。 |
|
|
ハード・ディスクへのこのコンシューマ・グループの1秒当たりのI/OのMB数。 |
|
|
このメトリックは、このコンシューマ・グループからハードディスクへの平均I/O負荷を示しています。I/O負荷の詳細は、「 |
|
|
コンシューマ・グループによって発行された大きいI/Oリクエストの累積数。大きい値は、このコンシューマ・グループからのI/Oの処理負荷が高いことを示します。 |
|
|
このメトリックは |
|
|
コンシューマ・グループによって発行された小さいI/Oリクエストの累積数。大きい値は、このコンシューマ・グループからのI/Oの処理負荷が高いことを示します。 |
|
|
このメトリックは |
|
|
ハード・ディスクからのコンシューマ・グループによる大きいブロックの読取り/書込みの累積待機時間。 |
|
|
ハード・ディスクからのコンシューマ・グループによる大きいブロックの読取り/書込みの1リクエスト当たりの平均待機時間。 |
|
|
ハード・ディスクからのコンシューマ・グループによる小さいブロックの読取り/書込みの累積待機時間 |
|
|
ハード・ディスクからのコンシューマ・グループによる小さいブロックの読取り/書込みの1リクエスト当たりの平均待機時間。 |
|
|
このコンシューマ・グループからの大きいリクエストによって使用されているディスク・リソースの割合(%)。 |
|
|
このコンシューマ・グループからの小さいリクエストによって使用されているディスク・リソースの割合(%)。 |
|
|
コンシューマ・グループがハード・ディスクに発行する大きいI/OリクエストのIORM待機時間。 |
|
|
コンシューマ・グループがハード・ディスクに発行する大きいI/Oリクエストのリクエスト当たりの平均IORM待機時間。 |
|
|
コンシューマ・グループがハード・ディスクに発行する小さいI/OリクエストのIORM待機時間。 |
|
|
コンシューマ・グループがハード・ディスクに発行する小さいI/Oリクエストのリクエスト当たりの平均IORM待機時間。 |
すべてのコンシューマ・グループの累積メトリックは、カテゴリ、IORMまたはデータベース・リソースのプランが変更されるとゼロにリセットされます。
コンシューマ・グループの現在のメトリックを表示するには、次のCellCLIコマンドを使用します。
CellCLI> LIST METRICCURRENT WHERE objectType = 'IORM_CONSUMER_GROUP' AND -
metricValue != 0 ATTRIBUTES name, metricObjectName, metricValue, -
collectionTime
Oracle ASMおよびそれ以外のすべてのデータベースでは、メトリックはBACKGROUNDおよびOTHERコンシューマ・グループで提供されます。BACKGROUNDコンシューマ・グループは次のとおりです。
_ORACLE_BACKGROUND_GROUP_: Oracle Databaseバックグラウンド・プロセスからの優先度の高いI/Oリクエスト
_ORACLE_MEDPRIBG_GROUP_: Oracle Databaseバックグラウンド・プロセスからの優先度が中位のI/Oリクエスト
_ORACLE_LOWPRIBG_GROUP_: Oracle Databaseバックグラウンド・プロセスからの優先度の低いI/Oリクエスト
OLTPワークロードとDSSワークロードがOracle Exadata Storage Serverを共有する場合は、短いレイテンシまたは高スループットのいずれに対して最適化するかがIORMにより決定されます。短いレイテンシに対して最適化するには、ディスクの使用率がフルにならないように大きいI/Oリクエストを分散する必要があります。高いスループットに対して最適化するには、各Oracle Exadata Storage Serverで多くの大きい同時I/Oリクエストを処理し、最適化アルゴリズムを適用中にセルをフルに使用できるようにする必要があります。ただし、セルに多くの大きい同時I/Oリクエストがある場合は、各I/Oは他の多くのI/Oの後でキューに入れられるため、I/Oレイテンシは長くなります。
データベース、PDBおよびコンシューマ・グループからのI/Oリクエストの使用率メトリックは、データベース、PDBまたはコンシューマ・グループがセルを使用した時間に対応します。大きいI/Oリクエストは小さいI/Oリクエストよりセルを多く使用します。次は、IORM最適化を決定する使用率メトリックを示したものです。
CG_IO_UTIL_LG
CG_IO_UTIL_SM
PDB_IO_UTIL_LG
PDB_IO_UTIL_SM
CT_IO_UTIL_LG
CT_IO_UTIL_SM
DB_IO_UTIL_LG
DB_IO_UTIL_SM
I/Oリソース割当てで使用したI/Oリソース量を比較して、データベース管理者はIORMをレイテンシまたはスループットに切り替える必要があるかどうかを判断できます。IORMメトリックIORM_MODEは、IORMのモードを示しています。メトリック値は1から3の範囲内です。値の定義は次のとおりです。
1はセルのIORM目標がlow_latencyに設定されていたことを示します。
2はセルのIORM目標がbalancedに設定されていたことを示します。
3はセルのIORM目標がhigh_throughputに設定されていたことを示します。
1から2または2から3の間の値は、IORM目標がメトリック期間中同じでなかったことを示し、値は指定目標への近接度を示します。ワークロードの組合せが絶えず変化することも示しています。
I/Oリソース管理(IORM)に関連するOracle Exadata Storage Server Softwareのメトリックは複数の方法で使用できます。メトリックを使用すると、I/Oの処理負荷の全体のサイズおよび各カテゴリ、データベースまたはコンシューマ・グループのI/Oの処理負荷の割合を確認できます。たとえば、特定のデータベースが予想以上に高いI/Oの処理負荷を発行していることがメトリックからわかります。
また、カテゴリ、データベース、PDBまたはコンシューマ・グループの中で、リソース割当てを使用していないものや、リソース割当てを超えているものもメトリックから確認できます。例:
アクティブ・リクエストでは、セルで処理中のクライアントI/Oリクエストのクライアント集中型またはアプリケーション集中型のビューが提供されます。アラートは、セル内で発生した重要なイベントを表します。通常、アラートはOracle Exadata Storage Serverの機能が損なわれているか、または障害が発生する危険性があることを示します。セルのアクティブ・リクエストおよびアラートを監視できます。また、アラートの電子メール通知を受信することもできます。通知を受信するには、ALTER CELLコマンドを使用します。
この項の内容は次のとおりです。
セルのアクティブ・リクエストを表示するには、LIST ACTIVEREQUESTコマンドを使用します。例7-5は、指定したリクエストのI/Oタイプの属性の詳細リストを表示する方法を示しています。
ACTIVEREQUEST属性を表示するには、DESCRIBE ACTIVEREQUESTコマンドを使用します。
セルのアラート定義を表示するには、LIST ALERTDEFINITIONコマンドを使用します。アラート定義では、セルで生成可能なすべてのアラートの定義が提供されます。
例7-6は、アラート定義の属性の詳細リストを表示する方法を示しています。
例7-6 アラート定義属性の表示
CellCLI> LIST ALERTDEFINITION ADRAlert DETAIL
name: ADRAlert
alertShortName: ADR
alertSource: "Automatic Diagnostic Repository"
alertType: Stateless
description: "CELLSRV Incident Error"
metricName:
例7-7は、アラート定義の指定した属性のリストを表示する方法を示しています。
例7-7 アラート定義名および説明の属性の表示
CellCLI> LIST ALERTDEFINITION ATTRIBUTES name, metricName, description
ADRAlert "Incident Alert"
HardwareAlert "Hardware Alert"
StatefulAlert_CD_IO_ERRS_MIN CD_IO_ERRS_MIN "Threshold Alert"
StatefulAlert_CG_IO_RQ_LG CG_IO_RQ_LG "Threshold Alert"
StatefulAlert_CG_IO_RQ_LG_SEC CG_IO_RQ_LG_SEC "Threshold Alert"
StatefulAlert_CG_IO_RQ_SM CG_IO_RQ_SM "Threshold Alert"
StatefulAlert_CG_IO_RQ_SM_SEC CG_IO_RQ_SM_SEC "Threshold Alert"
StatefulAlert_CG_IO_WT_LG CG_IO_WT_LG "Threshold Alert"
StatefulAlert_CG_IO_WT_LG_RQ CG_IO_WT_LG_RQ "Threshold Alert"
StatefulAlert_CG_IO_WT_SM CG_IO_WT_SM "Threshold Alert"
StatefulAlert_CG_IO_WT_SM_RQ CG_IO_WT_SM_RQ "Threshold Alert"
StatefulAlert_CL_FSUT CL_FSUT "Threshold Alert"
StatefulAlert_CL_MEMUT CL_MEMUT "Threshold Alert"
StatefulAlert_CT_IO_RQ_LG CT_IO_RQ_LG "Threshold Alert"
StatefulAlert_CT_IO_RQ_LG_SEC CT_IO_RQ_LG_SEC "Threshold Alert"
StatefulAlert_CT_IO_RQ_SM CT_IO_RQ_SM "Threshold Alert"
StatefulAlert_CT_IO_RQ_SM_SEC CT_IO_RQ_SM_SEC "Threshold Alert"
StatefulAlert_CT_IO_WT_LG CT_IO_WT_LG "Threshold Alert"
StatefulAlert_CT_IO_WT_LG_RQ CT_IO_WT_LG_RQ "Threshold Alert"
StatefulAlert_CT_IO_WT_SM CT_IO_WT_SM "Threshold Alert"
StatefulAlert_CT_IO_WT_SM_RQ CT_IO_WT_SM_RQ "Threshold Alert"
StatefulAlert_DB_IO_RQ_LG DB_IO_RQ_LG "Threshold Alert"
StatefulAlert_DB_IO_RQ_LG_SEC DB_IO_RQ_LG_SEC "Threshold Alert"
StatefulAlert_DB_IO_RQ_SM DB_IO_RQ_SM "Threshold Alert"
StatefulAlert_DB_IO_RQ_SM_SEC DB_IO_RQ_SM_SEC "Threshold Alert"
StatefulAlert_DB_IO_WT_LG DB_IO_WT_LG "Threshold Alert"
StatefulAlert_DB_IO_WT_LG_RQ DB_IO_WT_LG_RQ "Threshold Alert"
StatefulAlert_DB_IO_WT_SM DB_IO_WT_SM "Threshold Alert"
StatefulAlert_DB_IO_WT_SM_RQ DB_IO_WT_SM_RQ "Threshold Alert"
StatefulAlert_GD_IO_ERRS_MIN GD_IO_ERRS_MIN "Threshold Alert"
Stateful_HardwareAlert "Hardware Stateful Alert"
Stateful_SoftwareAlert "Software Stateful Alert"
この例には、アラート名、メトリック名および説明が表示されます。メトリック名では、アラートの基準となるメトリックを識別します。ADRAlert、HardwareAlert、Stateful_HardwareAlertおよびStateful_SoftwareAlertはメトリックに基づいていないため、メトリック名はありません。
Oracle Exadata Storage Server Softwareの管理者は、電子メールまたはSimple Network Management Protocol (SNMP) トラップ・アラートでアラート通知を受信できます。SNMPアラートを使用すると、Oracle Enterprise Managerなどの管理アプリケーションでOracle Exadata Storage Serverを監視できるようになります。電子メール・メッセージまたはSNMPトラップ・アラートを送信するようにOracle Exadata Storage Serverを構成するには、ALTER CELLコマンドを使用します。
|
注意: SNMPアラートは、Oracle Exadata Storage Server Softwareの各インストールに含まれているMIB(管理情報ベース)に準拠しています。Oracle Exadata Storage ServerのMIBファイルは、/opt/oracle/cell/cellsrv/deploy/config/cell_alert.mibにあります。SNMPアラートとMIBはSNMPバージョン 1(SNMPv1)に準拠しています。 |
デフォルトで、ストレージ・サーバーのsyslogメッセージは論理ログ・ファイルに書き込まれます。loghostサーバーと呼ばれる独立した管理サーバーでは、Oracle Exadata Storage Serverからsyslogメッセージを受信できます。syslogメッセージをリモートで監視するには、loghostサーバーの/etc/sysconfig/syslogファイルでSYSLOGD_OPTIONS -rを設定し、loghostサーバーのsyslogサービスが着信syslogメッセージをリスニングするように構成します。また、ALTER CELLコマンドを使用して各Oracle Exadata Storage Serverを構成し、指定されたsyslogメッセージがloghostサーバーに転送されるようにします。Oracle Exadata Storage Serverの構成は、再起動や更新を行っても維持されます。ALTER CELL VALIDATE SYSLOGCONFコマンドを使用すると、セルが送信したメッセージをloghostサーバーが受信するかどうかをテストできます。
セルで発生したアラートの履歴を表示するには、LIST ALERTHISTORYコマンドを使用します。
例7-8は、severity属性がcriticalに設定され、examinedBy属性が設定されていないアラート履歴エントリの属性の詳細リストを表示する方法を示しています。
アラート履歴エントリは、最大で100日間保持されます。アラート履歴エントリの数が500を超えると、アラート履歴エントリは7日間のみ保持されます。ステートフル・アラートがクリアされると(つまり、基礎となるメトリック、ハードウェアまたはソフトウェアの状態がnormalに戻ると)、そのステートフル・アラートは、アラート履歴エントリの数に応じて100日間または7日間保持されます。クリアされていないステートフル・アラートは、経過期間にかかわらず保持されます。
セルのアラート履歴を更新するには、ALTER ALERTHISTORYコマンドを使用します。
例7-9は、アラートを確認した管理者のユーザーIDをexaminedBy属性に設定する方法を示しています。examinedBy属性は、変更可能な唯一のALERTHISTORY属性です。
複数の動的V$ビューを使用して、Oracle Exadata Storage Server環境を監視できます。この項の内容は次のとおりです。
V$CELLビューおよびGV$CELLビューを使用したOracle Exadata Storage Serverの識別情報の表示
Oracle Exadata Storage Server SoftwareでのV$SEGMENT_STATISTICSの使用
V$CELL_STATEを使用したOracle Exadata Storage Server Softwareのパフォーマンス統計の表示
V$CELL_THREAD_HISTORYを使用したOracle Exadata Storage Server Softwareのスレッドの表示
Oracle Exadata Storage Server SoftwareでのV$CELL_REQUEST_TOTALSの使用
V$ASM_DISK_SPARSE and V$ASM_DISKGROUP_SPARSEを使用したスパース・ディスクの監視
V$CELLビューでは、セルの識別情報が提供されます。表7-12は、ビュー列の一覧です。
表7-12 V$CELLビュー列および説明
| 列 | 説明 |
|---|---|
|
|
セルのハッシュ数値。例: 138889696 注意: |
|
|
セルのIPアドレスを指定する文字列(最大400文字)。これらは、 |
|
|
ストレージ・セルのタイプ。 |
GV$CELLビューには、V$CELLビューと同じ列およびINST_ID列が含まれます。INST_ID列にはインスタンス番号が表示され、この番号に基づいて関連するV$ビュー情報が取得されます。GV$ビュー問合せを実行すると、条件を満たすすべてのインスタンスからV$ビュー情報が取得されます。
V$BACKUP_DATAFILEビューには、Oracle Recovery Manager (RMAN)増分バックアップ時のOracle Exadata Storage Serverに関連する列が含まれます。表7-13は、ビュー列の一覧です。
表7-13 V$BACKUP_DATAFILE列および説明
| 列 | 説明 |
|---|---|
|
|
バックアップのデータ・ファイルのブロック・サイズ。 |
|
|
このバックアップの実行中にスキャンされたブロック数。このバックアップが増分バックアップで、バックアップの最適化にブロック・チェンジ・トラッキングが使用された場合、この列の値は |
|
|
RMAN増分バックアップを最適化するために、Oracle Exadata Storage Serverで読み取られてフィルタ処理されたブロック数。 |
|
|
バックアップ時のデータ・ファイルのブロック・サイズ。この値は、このバックアップから再起動されたデータ・ファイルによって取得されたブロック数にもなります。 |
Oracle Exadata Storage Server Softwareでスキップされるブロックの割合は次のように計算されます。
(BLOCKS_SKIPPED_IN_CELL / BLOCKS_READ) * 100
この数は、ブロック・チェンジ・トラッキングに基づいて大幅に変化します。
高速の増分バックアップ用にブロック・チェンジ・トラッキングが使用されている場合、ほとんどのフィルタ処理は変更トラッキング・ファイルを使用してデータベースで実行され、ブロックはI/Oリクエストをセルに発行するまでスキップされます。ブロック・チェンジ・トラッキングが使用されていない場合は、すべてのブロックがセルでフィルタ処理されます。
|
関連項目:
|
V$SYSSTATビュー問合せを実行すると、Oracle Exadata Storage Server Softwareの有効性の計算に使用できる統計を取得できます。表7-14は、統計の一覧です。
表7-14 V$SYSSTATビューのキー統計
| 統計 | 説明 |
|---|---|
|
|
Exadataフラッシュ・キャッシュでキャッシュ・ヒットした読取りリクエストの数。 |
|
|
セルで処理された非圧縮データの合計サイズ。ハイブリッド列圧縮表に対するスキャンでは、この統計が解凍後のデータのサイズになります。 |
|
|
ディスクに書き込まれていなかったExadataスマート・フラッシュ・キャッシュの既存のミラーを上書きしたミラー書込みリクエストの合計数。この統計はミラー書込みが1回行われるたびに増分されます。 |
|
|
Exadataスマート・フラッシュ・キャッシュとディスクの両方に書き込まれたミラー書込みリクエストの合計数。データの一部はフラッシュに書き込まれ、残りはディスクに書き込まれました。この統計はミラー書込みが1回行われるたびに増分されます。 |
|
|
処理がセルにオフロードされたときに物理ディスクで処理されたI/Oバイト数の合計。 |
|
|
ストレージ索引によって保存されたバイト数。 |
|
|
ファイル作成操作をセルにオフロードして、データベース・ホストで保存されたI/Oバイト数。この統計は、最適化されたファイル作成操作がOracle Exadata Storage Server Softwareに有効であることを示します。 |
|
|
RMANのファイル・リストア操作をセルにオフロードして、データベース・ホストで保存されたI/Oバイト数。この統計は、最適化されたRMANのファイル・リストア操作がOracle Exadata Storage Server Softwareに有効であることを示します。 |
|
|
Oracle Exadata Storage ServerでのCPU使用率が原因でデータベース・サーバーに処理のために戻されたI/Oバイト数。 |
|
|
インターコネクト(データベース・ホストとセル間)で交換されたI/Oバイト数。 |
|
|
スマート・スキャンのみを対象にセルによって返されたバイト数。他のデータベースI/Oのバイト数は含まれません。 |
|
|
Exadataスマート・フラッシュ・キャッシュに完全に書き込まれたミラー書込みリクエストの合計数。この統計はミラー書込みが1回行われるたびに増分されます。 |
|
|
Exadataスマート・フラッシュ・キャッシュまたはハード・ディスクの両方で対応できた読取りリクエストの合計数。データの一部はフラッシュ上でダーティであり、残りはディスクから取得されます。 |
|
|
Exadataスマート・フラッシュ・キャッシュまたはストレージ索引で対応できた読取りリクエストの合計数。 |
|
|
子ファイル・レベルで物理I/Oが行われない物理読取りI/Oリクエストの数。 |
|
|
ベース・レベルでの物理I/Oの数。 |
|
|
任意のスナップショット階層での物理I/Oの数。 |
|
|
ベースからの読取りバイト数。 |
|
|
スナップショットからの読取りバイト数。 |
|
|
スナップショットでの新規割当ての合計数。 |
|
|
物理ディスクで処理された読取りのI/Oバイト数の合計。処理がセルにオフロードされた場合とオフロードされなかった場合を含みます。 |
|
|
Exadataスマート・フラッシュ・キャッシュまたはストレージ索引から読取られた合計バイト数。 |
|
|
すべてのインスタンス・アクティビティ(アプリケーション、バックアップ、リカバリおよびその他のユーティリティを含む)で1つ以上のデータベース・ブロックを読み取る読取りリクエストの数。 |
|
|
Exadataスマート・フラッシュ・キャッシュにすべてのミラーが書き込まれた書込みリクエストの合計数。 |
|
|
物理ディスクで処理された書込みのI/Oバイト数の合計。処理がセルにオフロードされた場合とオフロードされなかった場合を含みます。 |
|
|
Exadataスマート・フラッシュ・キャッシュに最初に書き込まれる合計バイト数。これらのバイトはレイジー方式でディスクと同期され、フラッシュ・キャッシュに空き領域が作成されます。 |
|
|
すべてのインスタンス・アクティビティ(アプリケーション・アクティビティ、バックアップ、リカバリおよびその他のユーティリティを含む)により1つ以上のデータベース・ブロックに書き込まれる書込みリクエストの数。 |
例7-10は、V$SYSSTATの統計を示しています。
例7-10 V$SYSSTATビューでのセル統計の問合せ
SQL> SELECT name, value/1024/1024 MB from v$sysstat a WHERE
a.name = 'physical read total bytes' OR
a.name = 'physical write total bytes' OR
a.name = 'cell physical IO interconnect bytes' OR
a.name = 'cell physical IO bytes eligible for predicate offload' OR
a.name = 'cell physical IO bytes saved during optimized file creation' OR
a.name = 'cell physical IO bytes saved during optimized RMAN file restore'
OR
a.name = 'cell IO uncompressed bytes' OR
a.name = 'cell physical IO interconnect bytes returned by smart scan' OR
a.name = 'cell physical IO bytes saved by storage index';
NAME MB
----------------------------------------------------------------------------------
physical read total bytes 5425.11
physical write total bytes 26.24
cell physical IO interconnect bytes 550.94
cell physical IO bytes saved during optimized file creation 0
cell physical IO bytes saved during optimized RMAN file restore 0
cell physical IO bytes eligible for predicate offload 5372.53
cell physical IO bytes saved by storage index 0
cell physical IO interconnect bytes returned by smart scan 472.12
cell IO uncompressed bytes 5372.53
9 rows selected.
次の計算を行うことで、実行されたディスクI/Oの量を特定できます。
physical read total bytes + physical write total bytes - cell physical IO bytes saved by storage index
|
関連項目: V$SYSSTATの詳細は、『Oracle Databaseリファレンス』を参照してください。 |
Exafusion Direct-to-Wireプロトコルを使用すると、Oracle Real Applications Cluster (Oracle RAC)インターコネクト全体にわたるキャッシュ・ブロックを読み取って処理するプロセスがInfiniBandネットワークを介してメッセージを直接送受信できるようになります。書込み統計は、V$SYSSTATビューを使用して監視できます。表7-15は、セルの書込み統計の一覧です。
表7-15 セルの監視用の書込み統計
V$SEGMENT_STATISTICSビューは、セグメント・ベースの統計を示したものです。セグメント・レベルの統計は、セルから最適化読取りを実行中の表または索引などの固有のオブジェクトの検出に使用できます。optimized physical readセグメント統計は、Exadataスマート・フラッシュ・キャッシュまたはストレージ索引から読取られたオブジェクトの読取りリクエスト数を提供します。optimized physical read統計は、Exadataスマート・フラッシュ・キャッシュに最初に実行されたオブジェクトの書込みリクエスト数を提供します。これらの書込みリクエストは、後でレイジー方式でディスクと同期し、フラッシュに空き領域を作成できます。
例7-11は、セルから1000を超える最適化読取りを実行したすべてのオブジェクトを返す問合せを示しています。同様な問合せを使用して、ほとんど最適化読取りを実行しなかったオブジェクトを特定できます。
V$SQLビューでは、共有SQL領域の統計が表示され、入力した元のSQLテキストの子が1行ずつ表示されます。V$SQLビューの次の列を問い合せて、physical I/O read disk bytes、physical I/O write disk bytes、cell physical I/O interconnect bytes、cell physical I/O bytes eligible for predicate offload、cell uncompressed bytes、cell interconnect bytes returned for Smart Scan、およびExadataスマート・フラッシュ・キャッシュまたはストレージ索引によって返された物理的な読取りリクエスト数を確認できます。
PHYSICAL_READ_BYTES
PHYSICAL_WRITE_BYTES
IO_INTERCONNECT_BYTES
IO_CELL_OFFLOAD_ELIGIBLE_BYTES
IO_CELL_UNCOMPRESSED_BYTES
IO_CELL_OFFLOAD_RETURNED_BYTES
OPTIMIZED_PHY_READ_REQUESTS
ビューで返される値は、特定のインスタンスのパラレル問合せで読み取られるバイト数になります。
|
注意: 前述の列は、次のビューでも使用できます。
|
例7-12は、Oracle Exadata Storage Server Softwareのオフロード処理のパフォーマンス・データを返す問合せを示しています。WHERE条件は、対象のV$SQLコマンドのみを選択するために使用されています。この問合せでは、SALES表がスキャンされています。問合せでV$SQLに格納されるパフォーマンス・データは、SALES表のデータ(約5GB)がすべてオフロード処理に使用されていることを示しています。Oracle Exadata Storage Server Softwareのオフロード処理が有効なため、データベース・ホストにはネットワーク経由で417MBのデータしか配信されていません。
例7-12 V$SQLビューの問合せ
SELECT sql_text,
io_cell_offload_eligible_bytes/1024/1024 cell_offload_eligible_mb,
io_cell_uncompressed_bytes/1024/1024 io_uncompressed_mb,
io_interconnect_bytes/1024/1024 io_interconnect_mb,
io_cell_offload_returned_bytes/1024/1024 cell_return_bytes_mb,
(physical_read_bytes + physical_write_bytes)/1024/1024 io_disk_mb
FROM v$sql WHERE
sql_text LIKE '%from sales%';
SQL_TEXT CELL_OFFLOAD_ELIGIBLE_MB IO_UNCOMPRESSED_MB IO_INTERCONNECT_MB CELL_RETURN_BYTES_MB
IO_DISK_MB
---------------------------------------------------------------------------------------------
select count(*) from sales
5283.06 5283.06 520.34 417.65 5385.75
|
関連項目:
|
V$CELL_STATEビューでは、データベース・クライアントからアクセス可能なすべてのセルの状態を表示します。状態には、セル・サーバー(CELLSRV)のネットワーク・レイヤー情報、スケジューリング・レイヤー情報、セル・サーバーの構成情報などのキー・パフォーマンス統計が含まれます。このビューはOracleサポート・サービスで使用されます。表7-16は、ビュー列の一覧です。
表7-16 V$CELL_STATE列および説明
| 列 | 説明 |
|---|---|
|
|
セルのIPアドレスを指定する文字列(最大400文字)。これらは、 例: 172.16.50.28 |
|
|
統計タイプ( |
|
|
特定の統計タイプのキー(例: |
|
|
XML文書の実際の統計値(属性と値のペア)。 |
例7-13は、読取り可能な形式のSTATISTICS_VALUE列の情報を取得する方法を示しています。
V$CELL_THREAD_HISTORYビューには、データベース・クライアントに表示されるセルのスレッドからセル・サーバーによって取得されるサンプルが含まれます。このビューはOracleサポート・サービスで使用されます。表7-17は、ビュー列の一覧です。
表7-17 V$CELL_THREAD_HISTORY列および説明
| 列 | 説明 |
|---|---|
|
|
セルのIPアドレスを指定する文字列(最大400文字)。これらは、 例: 172.16.50.28 |
|
|
スナップショットのID(NUMBER)。 |
|
|
スナップショットの日時。 |
|
|
スレッドID(NUMBER)。 |
|
|
スナップショットの取得時にスレッドで実行されていたジョブ。 |
|
|
待機場所が存在する場合にその場所を示す一意の状態。 |
|
|
待機対象のオブジェクト(存在する場合)。たとえば、mutex名があります。 |
|
|
実行中のジョブでクライアントが処理していたSQLコマンドの識別子。 |
|
|
データベースのID(NUMBER)。 |
|
|
インスタンスのID(NUMBER)。 |
|
|
セッションのID(NUMBER)。 |
|
|
セッション・シリアル番号(NUMBER)。 |
V$CELL_REQUEST_TOTALSビューには、セルで実行中のリクエストのタイプおよび頻度の履歴ビューが含まれています。セル・サーバーでは、これらのリクエストを定期的にサンプリングし、このビューで使用できるように格納します。このビューはOracleサポート・サービスで使用されます。表7-18は、ビュー列の一覧です。
V$ASM_DISK_SPARSEビューおよびV$ASM_DISKGROUP_SPARSEビューにはスパース・ディスクに関する情報が含まれます。表7-19は、V$ASM_DISK_SPARSEのビュー列の一覧です。
表7-19 V$ASM_DISK_SPARSE列および説明
| 列 | 説明 |
|---|---|
|
GROUP_NUMBER |
ディスクを含むディスク・グループの番号。 |
|
|
このディスク・グループ内のディスクに割り当てられた番号。 |
|
|
ディスクのインカネーション番号。 |
|
|
ディスク上の使用済物理容量およびマテリアライズド容量の合計。 |
|
|
ディスク上の物理容量の合計。 |
|
|
ディスクの非マテリアライズド・リージョンのI/O読取りリクエストの合計。 |
|
|
ディスクの非マテリアライズド・リージョンから読み取ったバイト数の合計。 |
|
|
スパース読取りI/O操作にかかった時間。 |
表7-20は、V$ASM_DISKGROUP_SPARSEのビュー列の一覧です。
Oracle Exadata Storage Server用に設計された待機イベントでは、アクセス中のセルおよびグリッド・ディスクが直接表示されるため、従来型のストレージに対するディスクI/Oではなく、Oracle Exadata Storage Serverに対するディスクI/Oの待機イベントのセットを使用します。この情報は、従来型のストレージの待機イベントで提供されるデータベースのfile#およびblock#の情報よりも、パフォーマンスおよび診断の用途に便利です。待機イベントに関する情報は、V$動的パフォーマンス・ビューに表示されます。
|
注意: V$SESSION_ACTIVE_HISTORYビューは、待機イベントの分析に使用できます。このビューでは、発生したイベント、問合せの実行時期、および問合せの実行方法が表示されます。また、問合せが待機する必要のあったイベントも表示されます。 |
この項の内容は次のとおりです。
|
関連項目: V$SESSION_WAIT、V$SYSTEM_EVENTおよびV$SESSION_EVENTの詳細は、『Oracle Databaseリファレンス』を参照してください。 |
表7-21は、セルの監視に役立つ待機イベントの一覧です。
表7-21 セルの監視に役立つ待機イベント
これらの待機イベントにセルのハッシュ番号またはディスクのハッシュ番号が関連付けられている場合は、値をV$CELLのCELL_HASHVAL列およびV$ASM_DISKのHASH_VALUE列と結合することにより、遅いセルまたはディスクを識別できます。
V$SESSION_WAITビューには、各セッションの現在または最新の待機イベントが表示されます。例7-14は、V$SESSION_WAITビュー問合せを実行する方法を示しています。2番目のSELECT問合せで、セルのパスおよびディスク名が表示されます。
例7-14 V$SESSION_WAITビューの使用
SELECT w.event, w.p1, w.p2, w.p3 FROM V$SESSION_WAIT w, V$EVENT_NAME e
WHERE e.name LIKE 'cell%' AND e.wait_class_id = w.wait_class_id;
SELECT w.event, c.cell_path, d.name, w.p3 FROM V$SESSION_WAIT w,
V$EVENT_NAME e, V$ASM_DISK d, V$CELL c
WHERE e.name LIKE 'cell%' AND e.wait_class_id = w.wait_class_id
AND w.p1 = c.cell_hashval AND w.p2 = d.hash_value;
V$SYSTEM_EVENTビューには、待機イベントの合計数に関する情報が表示されます。例7-15は、V$SYSTEM_EVENTビュー問合せを実行する方法を示しています。
V$SESSION_EVENTビューには、セッション別の待機イベントに関する情報が表示されます。例7-16は、V$SESSION_EVENTビュー問合せを実行する方法を示しています。
この項では、Oracle Exadata Storage Server Softwareのパフォーマンスを最適化するための設定について説明します。この項の内容は次のとおりです。
Exadataハイブリッド列圧縮では、行のグループの同じ列がまとめてデータベースに格納されます。データベースの列値をまとめて格納することで、圧縮アルゴリズムの効率性が向上します。行は、データ・ブロックに行優先形式で格納されません。データベースでは、任意のSQL操作によって処理されるデータを圧縮しますが、ダイレクト・パス・ロードでは圧縮レベルがより高くなります。
Exadataハイブリッド列圧縮により、サイズを大幅に削減できます。データベース操作は圧縮オブジェクトに対して透過的に実行されるため、アプリケーションを変更する必要はありません。
ユーザーの要件に応じて、次のタイプのExadataハイブリッド列圧縮を指定できます。
ウェアハウス圧縮: このタイプの圧縮は、問合せパフォーマンス用に最適化されており、データ・ウェアハウス・アプリケーション向けです。
アーカイブ圧縮: このタイプの圧縮は、最大の圧縮レベル用に最適化されており、履歴データおよび変更されないデータ向けです。
たとえば、Exadataハイブリッド列圧縮をdaily_sales表に適用するとします。1日の終わりに、品目と販売数が表に移入され、品目IDと日付がコンポジット主キーになります。表7-22は、行のサブセットを示しています。
表7-22 サンプル表daily_sales
| Item_ID | Date | Num_Sold | Shipped_From | Restock |
|---|---|---|---|---|
|
1000 |
01-JUN-07 |
2 |
WAREHOUSE1 |
Y |
|
1001 |
01-JUN-07 |
0 |
WAREHOUSE3 |
N |
|
1002 |
01-JUN-07 |
1 |
WAREHOUSE3 |
N |
|
1003 |
01-JUN-07 |
0 |
WAREHOUSE2 |
N |
|
1004 |
01-JUN-07 |
2 |
WAREHOUSE1 |
N |
|
1005 |
01-JUN-07 |
1 |
WAREHOUSE2 |
N |
データベースでは、圧縮ユニットと呼ばれる内部構造に行のセットを格納します。たとえば、表7-22の行が1つのユニットに格納されるとします。Exadataハイブリッド列圧縮では、値を行にマップするメタデータとともに、列4の一意の値をそれぞれ格納します。概念上は、圧縮値は次のように表現されます。
WAREHOUSE1WAREHOUSE3WAREHOUSE2
次に、データベースでは、この値で繰り返されているWAREHOUSEという語を圧縮するために、この語を1回だけ格納し、その各出現箇所を参照で置き換えます。参照のサイズが元の語より小さければ、データベースは圧縮に成功したことになります。圧縮の利点は、一意の値が1つのみ含まれるDate列で特に明らかです。
図7-1に示すように、各圧縮ユニットは、複数のデータ・ブロックにまたがることができます。特定の列の値は、複数のブロックにまたがる場合とまたがらない場合があります。
Exadataハイブリッド列圧縮では、暗黙的に行がロックされます。非圧縮のデータ・ブロックで行の更新が発生した場合、更新される行のみがロックされます。これに対して、更新が圧縮ユニットのいずれかの行で発生した場合、データベースではそのユニットのすべての行をロックする必要があります。Exadataハイブリッド列圧縮を使用して行を更新すると、ROWIDが変更されます。
|
注意: 表でExadataハイブリッド列圧縮を使用する場合、Oracle DMLでは、比較的大きなデータ・ブロック(圧縮ユニット)がロックされるため、同時実行性が低下する可能性があります。 |
Oracle Databaseでは、表の圧縮で4つの方法がサポートされます。表7-23は、各方法の概要を示しています。
表7-23 表の圧縮方法
| 表の圧縮方法 | 圧縮レベル | CPUオーバーヘッド | アプリケーション |
|---|---|---|---|
|
基本圧縮 |
高い |
最低 |
DSS |
|
OLTP圧縮 |
高い |
最低 |
OLTP、DSS |
|
ウェアハウス圧縮 |
より高い脚注1 |
より高い脚注2 |
DSS |
|
アーカイブ圧縮 |
最高脚注1 |
最高脚注2 |
アーカイブ |
脚注1 圧縮レベルは、指定された圧縮レベル(LOWまたはHIGH)に応じて変化します。
脚注2 CPUオーバーヘッドは、指定された圧縮レベル(LOWまたはHIGH)に応じて変化します。
ウェアハウス圧縮とアーカイブ圧縮では、Exadataハイブリッド列圧縮テクノロジが使用されるため、最高の圧縮レベルが実現します。Exadataハイブリッド列圧縮テクノロジでは、行優先ストレージではなく、修正された形式の列指向ストレージが使用されます。これにより、データベースでは、同様のデータをまとめて格納できるため、圧縮アルゴリズムの効率性が向上します。Exadataハイブリッド列圧縮では、DMLでCPUオーバーヘッドが多く必要とされるため、更新頻度の低いデータにのみこの圧縮機能を使用してください。
より高い圧縮レベルのExadataハイブリッド列圧縮は、ダイレクト・パス・インサートが行われるデータでのみ実現されます。従来の挿入および更新もサポートされますが、その場合はより低い圧縮形式となり、圧縮レベルも低下します。
表7-24は、表の各圧縮方法の特徴を示しています。
表7-24 表の圧縮の特徴
| 表の圧縮方法 | CREATE/ALTER TABLEの構文 | ダイレクト・パス・インサート | DML |
|---|---|---|---|
|
基本圧縮 |
|
可 |
可脚注2 |
|
OLTP圧縮 |
|
可 |
可 |
|
ウェアハウス圧縮 |
|
可 |
|
|
アーカイブ圧縮 |
|
可 |
脚注1 COMPRESSとCOMPRESS BASICは同等です。
脚注2 挿入および更新された行は圧縮されません。
脚注3 CPUオーバーヘッドが高くなります。
脚注4 挿入および更新された行は、より低い圧縮形式でブロックに配置されるため、圧縮レベルは低下します。
COMPRESS FOR QUERY HIGHオプションは、デフォルトのデータ・ウェアハウス圧縮モードです。これにより、適切な圧縮およびパフォーマンスが実現します。COMPRESS FOR QUERY LOWオプションは、ロード・パフォーマンスが非常に重要な環境で使用する必要があります。このオプションでは、COMPRESS FOR QUERY HIGHオプションで圧縮されたデータより高速にロードが行われます。
COMPRESS FOR ARCHIVE LOWオプションは、デフォルトのアーカイブ圧縮モードです。これにより、高い圧縮レベルと適切な問合せパフォーマンスが実現します。このオプションは、アクセス頻度の低いデータに適しています。めったにアクセスされないデータに対しては、COMPRESS FOR ARCHIVE HIGHオプションを使用する必要があります。
DBMS_COMPRESSIONパッケージで提供される圧縮アドバイザを使用すると、特定の表に特定の圧縮方法を適用したときに予想される圧縮レベルを確認できます。
表の圧縮は、CREATE TABLEコマンドのCOMPRESS句で指定します。既存の表で圧縮を有効にするには、ALTER TABLE文でこれらの句を使用します。この場合、圧縮の有効後に挿入または更新されたデータのみが圧縮されます。同様に、既存の圧縮表で表の圧縮を無効にするには、ALTER TABLE...NOCOMPRESSコマンドを使用します。この場合、すでに圧縮されているすべてのデータは圧縮されたままですが、新規データは圧縮されずに挿入されます。
*_TABLESデータ・ディクショナリ・ビューで、圧縮表にはCOMPRESSION列にENABLEDと表示されます。パーティション表では、この列はNULLですが、*_TAB_PARTITIONSビューのCOMPRESSION列に、圧縮されているパーティションが表示されます。また、COMPRESS_FOR列には、表またはパーティションで使用中の圧縮方法が表示されます。
SQL> SELECT table_name, compression, compress_for FROM user_tables; TABLE_NAME COMPRESSION COMPRESS_FOR ---------------- ------------ ----------------- T1 DISABLED T2 ENABLED BASIC T3 ENABLED OLTP T4 ENABLED QUERY HIGH T5 ENABLED ARCHIVE LOW
SQL> SELECT table_name, partition_name, compression, compress_for FROM user_tab_partitions; TABLE_NAME PARTITION_NAME COMPRESSION COMPRESS_FOR ----------- ---------------- ----------- ------------------------------ SALES Q4_2004 ENABLED ARCHIVE HIGH ... SALES Q3_2008 ENABLED QUERY HIGH SALES Q4_2008 ENABLED QUERY HIGH SALES Q1_2009 ENABLED OLTP SALES Q2_2009 ENABLED OLTP
Exadataハイブリッド列圧縮表が更新されると、行はCOMP_FOR_QUERY_HIGHからCOMP_FOR_OLTPまたはCOMP_NOCOMPRESSなどの低レベルの圧縮に変更されます。行の圧縮レベルを確認するには、次の問合せを使用します。
DBMS_COMPRESSION.GET_COMPRESSION_TYPE ( ownname IN VARCHAR2, tabname IN VARCHAR2, row_id IN ROWID) RETURN NUMBER;
表の行をサンプリングすることで、高レベルの圧縮ではなくなった行の割合を確認できます。ALTER TABLEまたはMOVE PARTITIONを使用すると、行をより高い圧縮レベルに設定できます。たとえば、行の10%が最高の圧縮レベルでなくなった場合、それらの行をより高い圧縮レベルに変更または移行できます。
|
関連項目: GET_COMPRESSION_TYPEの詳細は、『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』を参照してください。 |
パーティション、表または表領域の圧縮レベルは、変更できます。たとえば、ある企業でその売上データにウェアハウス圧縮を使用している一方で、6か月より古い売上データにはめったにアクセスしないとします。売上データがその経過時間に基づいてパーティション化された表に格納されている場合、古いデータの圧縮レベルをアーカイブ圧縮に変更して、ディスク領域を解放できます。
表がパーティション化されている場合、DBMS_REDEFINITIONパッケージを使用して表の圧縮レベルを変更できます。このパッケージでは、表の再定義をオンラインで実行するために、再定義中に表のデータを保持する一時コピーを作成します。再定義される表は、再定義中でも引き続き問合せやDML文に対応できます。オンラインでの表の再定義に使用される空き領域の容量は、既存の表と新しい表の相対的な圧縮レベルに応じて変化します。DBMS_REDEFINITIONパッケージを使用する前に、システム上に十分なハード・ディスク領域が存在することを確認してください。
表がパーティション化されていない場合、ALTER TABLE...MOVE...COMPRESS FOR...コマンドを使用して圧縮レベルを変更できます。ALTER TABLE...MOVEコマンドでは、コマンドの実行中に表に対するDML文は許可されません。
パーティションの圧縮レベルを変更するには、ALTER TABLE...MODIFY PARTITIONコマンドを使用します。表領域の圧縮レベルを変更するには、ALTER TABLESPACEコマンドを使用します。
|
関連項目:
|
Exadataハイブリッド列圧縮表は、データ・ポンプのインポート・ユーティリティのimpdpコマンドを使用してインポートできます。デフォルトでは、impdpコマンドは表プロパティを保存し、インポートされた表はExadataハイブリッド列圧縮表となります。表はexpdpコマンドでエクスポートすることもできます。
Exadataハイブリッド列圧縮をサポートしていない表領域では、impdpコマンドは失敗し、次のエラーが表示されます。
ORA-6430: hybrid columnar compression is only supported in tablespaces residing on Exadata storage
Exadataハイブリッド列圧縮表は、 impdpコマンドのTRANSFORM:SEGMENT_ATTRIBUTES=nオプション句を使用して、非圧縮表としてインポートできます。
非圧縮表またはOLTP圧縮表は、インポート中にExadataハイブリッド列圧縮形式に変換できます。Exadata以外のハイブリッド列圧縮表をExadataハイブリッド列圧縮表に変換するには、次のようにします。
ALTER TABLESPACE ... SET DEFAULT COMPRESSコマンドを使用して、表領域のデフォルト圧縮を指定します。
インポート中にインポートされた表のSEGMENT_ATTRIBUTESオプションを上書きします。
|
関連項目:
|
Exadataハイブリッド列圧縮表をバックアップからリストアする必要がある場合があります。表はExadataハイブリッド列圧縮をサポートしているシステム、またはExadataハイブリッド列圧縮をサポートしていないシステムにリストアできます。Exadataハイブリッド列圧縮が含まれる表をExadataハイブリッド列圧縮をサポートしているシステムにリストアする場合は、通常どおり、Oracle Recovery Manager (RMAN) を使用してファイルをリストアします。
Exadataハイブリッド列圧縮表がExadataハイブリッド列圧縮をサポートしていないシステムにリストアされている場合は、表をExadataハイブリッド列圧縮からOLTP圧縮形式または非圧縮形式に変換する必要があります。表をリストアするには、次のようにします。
Oracle Exadata Storage Server以外の環境に、非圧縮形式またはOLTP圧縮形式のデータを保存するのに十分なストレージがあることを確認します。
RMANを使用して、Exadataハイブリッド列圧縮表領域をリストアします。
次のコマンドを使用して、データ圧縮をExadataハイブリッド列圧縮からNOCOMPRESSに変更します。
ALTER TABLE table_name MOVE NOCOMPRESS
各パーティションを変更するには、次のコマンドを使用します。
ALTER TABLE table_name MOVE PARTITION partition_name NOCOMPRESS
各パーティションは個別に変更します。
次のコマンドを使用して、データを並列で移動します。
ALTER TABLE table_name MOVE NOCOMPRESS PARALLEL
次のコマンドを使用して、データ圧縮をExadataハイブリッド列圧縮からOLTP COMPRESSに変更します。
ALTER TABLE table_name MOVE COMPRESS for OLTP
|
関連項目:
|
表スキャンおよび索引スキャンを実行する問合せのパフォーマンスを最適化するために、データベースではデータ検索および取得処理をストレージ・セルにオフロードできます。この機能は、初期化パラメータのCELL_OFFLOAD_PROCESSINGおよびCELL_OFFLOAD_PLAN_DISPLAYで管理されます。
CELL_OFFLOAD_PROCESSING初期化パラメータでは、SQL処理をOracle Exadata Storage Serverにオフロードできます。パラメータの値をTRUEに設定すると、条件評価をセルにオフロードできます。このパラメータのデフォルト値はTRUEです。セッション・レベルまたはシステム・レベルでパラメータの値をFALSEに設定すると、データベースでは、ブロックを使用するセルですべての条件評価が実行されます。SQLのALTER SYSTEMコマンドまたはALTER SESSIONコマンドを使用すると、CELL_OFFLOAD_PROCESSINGを動的に設定できます。例:
SQL> ALTER SESSION SET CELL_OFFLOAD_PROCESSING = TRUE;
OPT_PARAMオプティマイザ・ヒントを使用してCELL_OFFLOAD_PROCESSINGパラメータを設定することもできます。これにより、特定のSQLコマンドで条件のフィルタ処理の有効/無効を切り替えることができます。例:
-- to disable cell_offload_processing for a SQL command
SELECT /*+ OPT_PARAM('cell_offload_processing' 'false') */ COUNT(*) FROM EMPLOYEES;
-- to enable cell_offload_processing for a SQL command
SELECT /*+ OPT_PARAM('cell_offload_processing' 'true') */ COUNT(*) FROM EMPLOYEES;
|
注意: CELL_OFFLOAD_PROCESSING初期化パラメータを使用して、Oracle Exadata Storage Serverと従来型のストレージのパフォーマンスを比較することはできません。CELL_OFFLOAD_PROCESSINGをFALSEに設定した場合でも、Oracle Exadata Storage Serverには従来型のストレージよりも多くの利点があります。Oracle Exadata Storage Serverは、サイズの大きい問合せを高速に処理できるように最適化されています。セル内にコントローラまたはその他のレベルのボトルネックが発生することはありません。Oracle Exadata Storage Server Softwareでは、最新のスケールアウト・アーキテクチャと、従来型のストレージ・ネットワークよりも非常に高いスループットを可能にするInfiniBandネットワークを使用しています。Oracle Exadata Storage Server SoftwareはOracle Databaseと密接に統合されており、設定、実行、監視、診断、リソース管理および破損防止のための独自の機能が用意されています。 |
|
関連項目: ヒントの使用の詳細は、『Oracle Database SQL言語リファレンス』を参照してください。 |
データベース・パラメータのCELL_OFFLOAD_PLAN_DISPLAYでは、Oracle Exadata Storage Server Softwareで評価可能な条件を、SQLコマンドのSTORAGE条件としてSQL EXPLAIN PLANコマンドで表示するかどうかを指定します。
CELL_OFFLOAD_PLAN_DISPLAYパラメータの値は、AUTO、ALWAYS、NEVERです。デフォルト値はAUTOです。
AUTOでは、SQL EXPLAIN PLANコマンドに、STORAGEとして評価できる条件を表示するように指示します(セルが存在する場合で、そのセルに表がある場合のみ)。
ALWAYSでは、Oracle Exadata Storage Server Softwareが存在するかどうか、または表がセル上にあるかどうかに関係なく、Oracle Exadata Storage Server Softwareに基づいてSQL EXPLAIN PLANコマンドが変更されます。この設定を使用して、Oracle Exadata Storage Serverに移行する前にOracle Exadata Storage Serverにオフロード可能な内容を確認できます。
NEVERでは、Oracle Exadata Storage Server Softwareに関してSQL EXPLAIN PLANコマンドは変更されません。
SQLのALTER SYSTEMコマンドまたはALTER SESSIONコマンドを使用すると、CELL_OFFLOAD_PLAN_DISPLAYパラメータを動的に設定できます。例:
SQL> ALTER SESSION SET CELL_OFFLOAD_PLAN_DISPLAY = ALWAYS;
|
関連項目: EXPLAIN PLANコマンドの使用方法の詳細は、「Oracle Exadata Storage Server SoftwareでのSQL EXPLAIN PLANコマンドの使用」を参照してください。 |
CELL_OFFLOAD_DECRYPTION初期化パラメータでは、復号化をOracle Exadata Storage Serverにオフロードできます。この復号化は、暗号化された表領域と列の両方に適用されます。パラメータの値をTRUEに設定すると、復号化をセルにオフロードできます。このパラメータのデフォルト値はTRUEです。システム・レベルでパラメータの値をFALSEに設定すると、データベースでは、ブロックを使用するセルですべての復号化が実行されます。SQL ALTER SYSTEMコマンドを使用すると、CELL_OFFLOAD_DECRYPTIONを動的に設定できます。例:
SQL> ALTER SYSTEM SET CELL_OFFLOAD_DECRYPTION = FALSE;
SQLチューニング・アドバイザでは、1つ以上のSQL文を入力として使用し、自動チューニング・オプティマイザを使用してSQL文のチューニングを実行します。SQLチューニング・アドバイザの実行結果は、アドバイスまたは推奨事項の形式で出力され、推奨事項ごとに論理的根拠および予想される利点が示されます。SQLチューニング・アドバイザでは、次の情報が提供されます。
データ不足の統計や古い統計
最適な実行プラン
最適なアクセス・パスおよびオブジェクト
最適なSQL文
Oracle Exadata Storage Server Software固有の統計を収集すると、オプティマイザでOracle Exadataスキャン速度を認識できます。スキャン操作の速度を正確に把握することで、オプティマイザでOracle Exadata環境の最適なプランを選択できるようになります。
Oracle Exadata固有の統計を収集しているかどうかを確認するには、次のコマンドを使用します。
select pname, PVAL1 from aux_stats$ where pname='MBRC';
PVAL1がNULLまたは設定されていない場合、統計は収集されていません。Oracle Exadata固有のシステム統計を収集するには、次のコマンドを使用します。
exec dbms_stats.gather_system_stats('EXADATA');
|
注意: Oracle Exadata Storage Server Softwareが最新のパッチ・バンドルを使用している必要があります。 |
|
関連項目:
|
Oracle Databaseには、実行中のSQL文を監視できるSQLモニターがあります。SQLモニターでは、問合せに関する広範囲な統計が提供され、シリアルまたはパラレル問合せを処理できます。SQLモニターは、SQL文でパラレル問合せが実行された場合や、1回の実行でSQL文が5秒以上のCPUまたはI/O時間を消費した場合にデフォルトで起動します。短い問合せを監視するには、MONITORヒントを使用します。
REPORT_SQL_MONITOR関数では、SQL文の実行に関して収集した監視情報のレポートをテキスト、HTMLまたはXML形式で生成します。
|
関連項目:
|
Oracle Exadata Quality of Service Management (QoS Management) を使用すると、システム管理者はOracle Exadata Database Machines上でホストされているアプリケーションのサービス・レベルを管理できます。QoS Managementはポリシー・ベースのアーキテクチャを使用して、正確なランタイム・パフォーマンスとリソース・メトリックを相互に関連付け、エキスパート・システムによってデータを分析してボトルネックを特定し、動的な負荷状態でパフォーマンス目標を満たして維持する推奨リソース調整を作成します。十分なリソースを使用できない場合、QoS Managementはあまりクリティカルではない目標を犠牲にして最も業務上クリティカルな目標を保持します。
QoS Management Memory GuardはOracle Clusterware Cluster Health Monitorと組み合せることで、メモリーのオーバーコミットにより障害の危険性があるサーバーを検出します。新しい接続を自動回避し、既存のワークロードを保持することで、そのような状態に対応します。QoS Managementは十分なメモリーを使用できるときに接続をリストアします。
|
関連項目: 『Oracle Database Quality of Service Managementユーザーズ・ガイド』 |
Oracle Exadata Storage Server Softwareには、過去のイベントから学習して潜在的な致命的エラーを回避する機能があります。たとえば、過去に不完全なSQL文によってサーバーがクラッシュした場合、Oracle Exadata Storage Server SoftwareはSQL文を検疫し、再度不完全なSQL文が発生した場合は、SQL文がスマート・スキャンを実行できないようにします。これによって、サーバー・ソフトウェアがクラッシュする可能性が減り、ストレージ機能が改善されます。使用できる検疫タイプは、次のとおりです。
SQLプラン: SQL文にスマート・スキャンを実行中にOracle Exadata Storage Server Softwareがクラッシュすると作成されます。その結果、SQL文のSQLプランが検疫され、SQL文のスマート・スキャンは無効化されます。
ディスク領域: ディスク領域のスマート・スキャンを実行中にOracle Exadata Storage Server Softwareがクラッシュすると作成されます。その結果、1 MBのディスク領域が検疫され、ディスク領域のスマート・スキャンは無効化されます。
データベース: Oracle Exadata Storage Server Softwareが特定のデータベースがセルの不安定性を引き起こしていることを検出すると作成されます。不安定性検出は、データベースのSQLプラン検疫数に基づきます。データベースのスマート・スキャンは無効化されます。
セル・オフロード: Oracle Exadata Storage Server Softwareが一部のオフロード機能がセルの不安定性を引き起こしたことを検出すると作成されます。不安定性検出はセルのデータベース検疫数に基づきます。すべてのデータベースのスマート・スキャンは無効化されます。
検疫が作成されると、何が検疫され、検疫が作成された理由、検疫を手動で削除できるタイミングと方法、検疫が自動で削除されるタイミングが管理者にアラートで通知されます。セルにパッチが適用またはアップグレードされると、検疫はすべて自動的に削除されます。
CellCLIコマンドは手動で検疫を処理する場合に使用します。たとえば、管理者は検疫を手動で作成、削除、検疫の属性を変更、検疫を表示できます。
高速ディスク・スキャン率を実現するには、最低4MBの連続領域でセグメントをレイアウトすることが重要です。これにより、ディスク・スキャンでは、ディスク上の異なる場所で別の検索を実行する前に、4MBのデータを読み取ることができます。4MBの連続領域でセグメントをレイアウトするには、Oracle ASMの割当て単位のサイズを4MBに設定し、データ・ファイルのエクステントも最低4MBにする必要があります。割当て単位は、ディスク・グループの作成時にディスク・グループ属性のAU_SIZEで設定できます。
次のSQLコマンドでは、割当て単位のサイズを4MBに設定してディスク・グループを作成します。リリース11.2.0.2およびリリース11.2.0.3の両方のデータベースを統合環境でサポートするために、compatible.rdbms属性は11.2.0.2に設定されます。
SQL> CREATE DISKGROUP data NORMAL REDUNDANCY
DISK 'o/*/data_CD*'
ATTRIBUTE 'compatible.rdbms' = '11.2.0.2',
'compatible.asm' = '11.2.0.3',
'content.type' = 'data',
'cell.smart_scan_capable' = 'TRUE',
'au_size' = '4M';
|
関連項目: CREATE_DISKGROUPの詳細は、『Oracle Database SQL言語リファレンス』を参照してください。 |
適切なパフォーマンスを得るには、従来はストレージに索引が必要でした。Oracle Exadata Storage Server Softwareでは、索引を使用しなくても高いスキャン率を実現できます。Oracle Exadata Storage Server Softwareのスキャンを使用して実行プランが高速になるかどうかを判断するには、索引を使用するアプリケーションの実行プランを確認します。索引がなくてもスキャンが高速になるかどうかを判断するには、オプティマイザで索引を認識できないようにします。認識されない索引はDML操作によって管理されますが、オプティマイザでは使用されません。索引が認識されないようにするには、次のコマンドを使用します。
ALTER INDEX index_name INVISIBLE;
このコマンドのndex_nameは、索引の名前です。
表のエクステント・サイズは、AUTOALLOCATEオプションを使用すると、ローカル管理の表領域で自動的に管理されます。このオプションを指定すると、セグメントのサイズ、表領域で使用可能な空き領域、およびその他の要因に応じてサイズが自動的に増加します。セグメントでのエクステントの開始サイズは64KBで、1MBまで増加します。セグメントのサイズが64MBを超えた場合は、エクステントを8MBまで増加できます。大きい表の場合、エクステントのサイズは、表のサイズまで自動的に増加します。
|
関連項目: storage_clauseの詳細は、『Oracle Database SQL言語リファレンス』を参照してください。 |
エクステントのサイズは、表ではなくセグメントのサイズに基づきます。多くのパーティションで構成される大きい表には、小さいセグメントを多く格納できます。たとえば、1000個のパーティションに分割された100GBの表の平均のセグメント・サイズは100MBです。このため、多くのパーティションで構成される大きい表では、大きいエクステントを使用するのが最適です。この場合は、表の作成時にデータベースにヒントを指定するか、インスタンス・レベルの初期化パラメータを使用できます。表で大きいエクステントを割り当てるようにデータベースにヒントを指定するには、次のオプションを使用できます。
INITIALストレージ・パラメータでは、ローカル管理の表領域の表の開始エクステント・サイズを設定します。データベースでは、セグメントのすべてのエクステントのサイズが、INITIALストレージ・パラメータで定義したエクステント・サイズ以上になるように設定されます。大きい表の場合は、INITIALを8MBに設定します。このストレージ・パラメータは、新規作成されるセグメントに適用されます。作成済のオブジェクトでは、INITIALパラメータを変更することはできません。
|
関連項目: storage_clauseの詳細は、『Oracle Database SQL言語リファレンス』を参照してください。 |
データのパラレル・ロードにSQL*Loaderを使用すると、サーバーではデータのロードに一時セグメントが使用され、トランザクションのコミット中にセグメントがベース・セグメントにマージされます。多くのパーティションに分割された表の場合は、データのロードにSQL*Loaderを使用しないでください。かわりに、データをフラット・ファイルに置き、パラレルのINSERTダイレクト・ロードを使用し、データベースの外部表の機能を使用してフラット・ファイルからロードします。
|
関連項目: INSERTの詳細は、『Oracle Database SQL言語リファレンス』を参照してください。 |
表のサイズに対して表に小さいエクステントの数が増えると、表は断片化したとみなされます。小さいエクステントの数が増えると、セグメント領域のマッピングに使用されるメタデータが増大し、ユーザー・データがディスク上に最適にレイアウトされなくなります。これにより、後続のロード、スキャン、DDL、DMLの操作を含むほとんどの操作でパフォーマンスが低下します。エクステントのサイズが8MBを大きく下回ると、セグメントの再編成が必要になります。大きいオブジェクトでは、エクステントのサイズが少なくとも8MB必要です。オブジェクトを再編成するには、複数の方法があります。再編成では、ターゲットのオブジェクトでストレージ・パラメータのINITIALを8MB以上に設定する必要があります。表がパーティション化されておらず、非常に大きい場合は、パーティション化することを検討してください。
|
関連項目: 次の詳細は、『Oracle Database管理者ガイド』を参照してください。
|
ファイルはすべてのディスクで均等になるようにしてください。次の問合せおよびスクリプトを使用すると、ディスク・グループのバランスをチェックできます。
I/Oバランスをチェックするには、大きいSQL文の実行前後にV$ASM_DISK_IOSTATビュー問合せを実行します。たとえば、大きい問合せで読取り数が多い場合は、ディスク・グループのすべてのディスクでread列とread_bytes列をほぼ同じにしてください。
マウントされたすべてのディスク・グループをチェックするには、My Oracle Supportのノート367445.1で入手可能なスクリプトを実行します。My Oracle Supportは、次の場所にあります。
Oracle ASMディスク修復タイマーは、Oracle ASMで削除される前にディスクをオフラインのままにできる時間を表します。ディスクがオフラインの場合、オンラインに戻ったときにディスクを再同期できるように、変更されたエクステントがOracle ASMによって追跡されます。デフォルトのディスク修復時間は3.6時間です。デフォルト値では十分でない場合は、ASMで一時的なディスク障害を検出して修復するまでの最大時間まで属性値を変更できます。次のコマンドは、DATAディスク・グループのディスク修復タイマーの値を8.5時間に変更する例です。
ALTER DISKGROUP data SET ATTRIBUTE 'disk_repair_time' = '8.5h'
disk_repair_time属性では、オフライン中のディスクの修復タイマーは変更されません。このようなオフライン状態のディスクの修復タイマーは、デフォルトの修復タイマー、またはディスクが手動でオフラインに設定されたときにコマンドラインで指定した修復タイマーのいずれかになります。オフライン中のディスクの修復タイマーを変更するには、OFFLINEコマンドを使用して修復タイマーの値を指定します。次のコマンドは、オフラインのディスクのディスク修復タイマーの値を変更する例です。
ALTER DISKGROUP data OFFLINE DISK data_CD_06_cell11 DROP AFTER 20h;
|
注意: ディスク修復時間の値を増やすと、二重障害の発生する危険性が高まります。 |
|
関連項目: Oracle ASMディスク修復タイマーの詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。 |
SQL EXPLAIN PLANコマンドは、Oracle Exadata Storage Serverで評価される条件を表示できるように拡張されています。Oracle Exadata Storage Serverに配置される条件をEXPLAIN PLANで表示するには、データベース・パラメータのCELL_OFFLOAD_PLAN_DISPLAYをAUTOまたはALWAYSに設定する必要があります。
次の場合、条件評価はOracle Exadata Storage Serverにオフロードされません。
CELL_OFFLOAD_PROCESSINGパラメータがFALSEに設定されている場合。
スキャンを実行中の表またはパーティションのサイズが小さい場合。
オプティマイザがダイレクト・パス読取りを使用しない場合。
クラスタ表でスキャンが実行される場合。
索引構成表でスキャンが実行される場合。
圧縮型索引で高速全スキャンが実行される場合。
逆キー索引で高速全スキャンが実行される場合。
表で行の依存性が有効になっている場合や、rowscnがフェッチされている場合。
オプティマイザでスキャンを実行してROWIDの順で行を返す場合。
オプティマイザがダイレクト・パス読取りを使用しない場合。
コマンドがnosortを使用するCREATE INDEXである場合。
LOB列またはLONG列を選択または問合せ中の場合。
表でSELECT ... VERSIONS問合せを実行する場合。
255を超える列が参照される問合せで、ヒープ表が圧縮されていないか、基本圧縮またはOLTP圧縮である場合。ただし、Exadataハイブリッド列圧縮で圧縮された表に対するこのような問合せは、オフロードされます。
表領域が暗号化されており、CELL_OFFLOAD_DECRYPTIONパラメータがFALSEに設定されている場合。Oracle Exadata Storage Server Softwareで復号化を実行するには、Oracle DatabaseからOracle Exadata Storage Serverに復号化キーを送信する必要があります。ネットワークを介してOracle Exadata Storage Serverにキーを送信することに関してセキュリティ上の懸念がある場合は、復号化機能を無効にしてください。
表領域がOracle Exadata Storage Serverに完全に格納されない場合。
条件評価が仮想列にある場合。
例7-17では、プラン出力のstorage条件はOracle Exadata Storage Server Softwareで評価される条件を示しています。storage条件は、太字で示されています。
例7-17 EXPLAIN PLANコマンドの使用
SQL> EXPLAIN PLAN FOR
SELECT t.prod_id, v.exp1, t2_prod_id, t2_amount_sold
FROM sales t, v1 v
WHERE t.prod_id = v.prod_id and t.cust_id = v.cust_id
AND t.prod_id != 45
AND v.amount_sold * v.quantity_sold > 10000;
Explained.
SQL>
SQL> SELECT PLAN_TABLE_OUTPUT FROM TABLE(DBMS_XPLAN.DISPLAY());
PLAN_TABLE_OUTPUT
---------------------------------------------------------------------------------------------------
Plan hash value: 2267424675
--------------------------------------------------
| Id | Operation | Name |
--------------------------------------------------
| 0 | SELECT STATEMENT | |
|* 1 | HASH JOIN | |
|* 2 | HASH JOIN | |
|* 3 | TABLE ACCESS STORAGE FULL| SALES |
|* 4 | TABLE ACCESS STORAGE FULL| SALES |
|* 5 | TABLE ACCESS STORAGE FULL | SALES |
--------------------------------------------------
Predicate Information (identified by operation id):
---------------------------------------------------
1 - access("T"."CUST_ID"="T2"."CUST_ID" AND
"T1"."PROD_ID"="T2"."PROD_ID" AND "T1"."CUST_ID"="T2"."CUST_ID")
2 - access("T"."PROD_ID"="T1"."PROD_ID")
3 - storage("T1"."PROD_ID"<200 AND
"T1"."AMOUNT_SOLD"*"T1"."QUANTITY_SOLD">10000 AND "T1"."PROD_ID"<>45)
filter("T1"."PROD_ID"<200 AND
"T1"."AMOUNT_SOLD"*"T1"."QUANTITY_SOLD">10000 AND "T1"."PROD_ID"<>45)
4 - storage("T"."PROD_ID"<200 AND "T"."PROD_ID"<>45)
filter("T"."PROD_ID"<200 AND "T"."PROD_ID"<>45)
5 - storage("T2"."PROD_ID"<200 AND "T2"."PROD_ID"<>45)
filter("T2"."PROD_ID"<200 AND "T2"."PROD_ID"<>45)
例7-18は、UTLXPLPを使用し、CELL_OFFLOAD_PLAN_DISPLAYを有効にしてEXPLAIN PLANコマンドを実行した場合の出力例を示しています。
例7-18 UTLXPLPを使用したEXPLAIN PLANコマンドの表示
SQL> ALTER SESSION SET CELL_OFFLOAD_PLAN_DISPLAY = ALWAYS;
Session altered.
SQL> EXPLAIN PLAN FOR SELECT COUNT(*),SUM(creditlim) FROM s_customer1, s_region1
WHERE s_customer1.zip = s_region1.zip AND region_code = 'NE' ;
Explained.
SQL> @?/rdbms/admin/utlxplp
...
Predicate Information (identified by operation id):
---------------------------------------------------
PLAN_TABLE_OUTPUT
--------------------------------------------------------------------------------
5 - access("S_CUSTOMER1"."ZIP"="S_REGION1"."ZIP")
10 - storage("REGION_CODE"='NE')
filter("REGION_CODE"='NE')
15 - storage(SYS_OP_BLOOM_FILTER(:BF0000,"S_CUSTOMER1"."ZIP"))
filter(SYS_OP_BLOOM_FILTER(:BF0000,"S_CUSTOMER1"."ZIP"))
|
関連項目:
|
CELL_FLASH_CACHE STORAGE句属性では、COMPATIBLEパラメータが11.2.0.2以上である場合に、自動キャッシュ・ポリシーを上書きできます。また、このSTORAGE句属性を使用して、Exadataスマート・フラッシュ・キャッシュに特定のデータベース・オブジェクトをキャッシュする方法を指定できます。CELL_FLASH_CACHE storage_clauseオプションでは、次の値がサポートされます。
NONE: この値を指定すると、データベース・オブジェクト・バッファは、Exadataスマート・フラッシュ・キャッシュにキャッシュされません。これにより、頻繁にアクセスされる有益なオブジェクト用にフラッシュ・キャッシュ領域を確保できます。
DEFAULT: この値を指定すると、データベース・オブジェクトは、Exadataスマート・フラッシュ・キャッシュのデフォルトのLRU(最低使用頻度)に基づいてキャッシュされます。これは、コマンドにSTORAGE句が指定されない場合のCELL_FLASH_CACHEのデフォルト値です。
KEEP: この値を指定すると、データベース・オブジェクト・バッファは、フラッシュ・キャッシュが十分に大きいかぎり、フラッシュ・キャッシュにキャッシュされ続けます。
STORAGE句は、表または他のオブジェクトに対するCREATEおよびALTERコマンドの実行時に指定できます。例7-19は、STORAGE句でCELL_FLASH_CACHEを使用するCREATE TABLEコマンドの例を示しています。
例7-19 CELL_FLASH_CACHEと組み合せたCREATE TABLEの使用
CREATE TABLE ptable (c1 number, c2 clob) TABLESPACE TBS_1
PARTITION BY RANGE(c1) ( PARTITION p1 VALUES LESS THAN (100)
TABLESPACE TBS_2 STORAGE (CELL_FLASH_CACHE DEFAULT),
PARTITION p2 VALUES LESS THAN (200) TABLESPACE TBS_3
STORAGE (CELL_FLASH_CACHE KEEP));
CREATE TABLE tkbcsrbc (c1 number, l1 clob)
lob (l1) STORE AS securefile
(cache nologging STORAGE (CELL_FLASH_CACHE NONE))
PCTFREE 0 TABLESPACE tbs_93 STORAGE
(initial 128K next 128K pctincrease 0);
STORAGE句の変更が許可されるオブジェクトの場合、例7-20に示すように、CELL_FLASH_CACHEと組み合せてALTERコマンドを使用できます。
例7-20 CELL_FLASH_CACHEと組み合せたALTER TABLEの使用
ALTER TABLE tkbcsrbcSTORAGE( CELL_FLASH_CACHE DEFAULT); ALTER TABLE tkbcsrbc MODIFY LOB (l1)(STORAGE (CELL_FLASH_CACHE KEEP));
CELL_FLASH_CACHE STORAGE句属性は、例7-21に示すように、関連するオブジェクトに基づいたデータベース・ビューを使用して問い合せることができます。
例7-21 ビューを使用したCELL_FLASH_CACHE STORAGE句の問合せ
SELECT TABLESPACE_NAME, TABLE_NAME,CELL_FLASH_CACHEFROM user_tables WHERE table_name='TKBCSRBC'; SELECTCELL_FLASH_CACHEFROM ALL_INDEXES WHERE index_name='TKBCIDX';
|
関連項目: storage_clauseの詳細は、『Oracle Database SQL言語リファレンス』を参照してください。 |
Oracle Exadata Storage Server Softwareで条件評価が実行されるかどうかを判断する場合の主な要素の1つは、条件で参照されるSQL演算子または関数です。Oracle Exadata Storage Server Softwareでは、多くのSQL演算子および関数がサポートされます。ただし、サポートされない演算子もあります。動的パフォーマンス・ビューのV$SQLFN_METADATAは、特定のSQL演算子または関数がOracle Exadata Storage Server Softwareによってサポートされるかどうかを示すように拡張されています。この情報を提供するために、ビューにOFFLOADABLE列が追加されました。YESの値は演算子がサポートされることを示し、NOの値は演算子がサポートされないことを示します。
|
関連項目: V$SQLFN_METADATAビューの詳細は、『Oracle Databaseリファレンス』を参照してください。 |