3.2.3 分析ワークロードのためのExadataスマート・フラッシュ・キャッシュの最適化

デフォルトでは、Exadataスマート・フラッシュ・キャッシュは頻繁にアクセスされるデータのキャッシュを優先し、再利用の可能性が低いデータのキャッシュを制限します。具体的には、Exadataスマート・フラッシュ・キャッシュは、一時セグメントに関連付けられたI/Oを含む、再利用の可能性が低い大規模なI/Oによって占有されるキャッシュ領域の量を制限します。さらに、スラッシング(キャッシュから最近削除されたデータのキャッシュ)が検出されると、大規模なI/Oに関連するデータ(一時セグメント・データを含む)を削除することで、追加のキャッシュ領域が作成されます。

このアプローチは、オンライン・トランザクション処理(OLTP)ワークロードに当然適しています。ただし、大規模な結合およびソート操作を大規模な一時セグメントで処理する場合、通常、分析ワークロードではExadataスマート・フラッシュ・キャッシュのリソースが十分に活用されません。

Exadataスマート・フラッシュ・キャッシュを分析ワークロードに活用するために、Exadataでは、管理者がmain_workload_typeデータベース・インスタンス・パラメータを設定することで、各データベースおよびプラガブル・データベース(PDB)のメイン・ワークロード・タイプを指定できます。

次に例を示します:

  • コンテナ・データベース(CDB)または非CDBの場合:

    SQL> alter system set main_workload_type = [ OLTP | ANALYTICS ];

    PDBの場合:

    SQL> alter session container = <pdb_name>;
    SQL> alter system set main_workload_type = [ OLTP | ANALYTICS ];

使用可能なオプションは次のとおりです。

  • OLTP: Exadataスマート・フラッシュ・キャッシュは頻繁にアクセスされるデータのキャッシュを優先し、再利用の可能性が低いデータのキャッシュを制限します。

  • ANALYTICS: Exadataスマート・フラッシュ・キャッシュは、再利用の可能性が低いデータ・キャッシュの制限を緩和し、一時セグメントがほとんどのキャッシュを占有できるようにします。

この機能に関する次の詳細に注意してください。

  • この機能を有効にするには、Exadata I/Oリソース管理プラン(IORMPLAN)にデータベース間プラン(DBPLAN)の一部として関連付けられたデータベースが含まれている必要があり、プラン・ディレクティブにflashCacheSize属性を使用して指定されたフラッシュ・キャッシュ割当てが含まれている必要があります。たとえば、次のIORMPLANを使用するシステムでは、main_workload_type設定は、salesデータベースとそれに含まれるPDBでのみ有効です。

    CellCLI> ALTER IORMPLAN dbplan=((name=sales, share=8, flashCacheSize=20G), -
                                    (name=finance, share=8, flashCacheLimit=10G, flashCacheMin=2G), -     
                                    (name=dev, share=2, flashCacheLimit=4G, flashCacheMin=1G), -
                                    (name=test, share=1))
  • main_workload_type設定は、PDB間で、またはCDBと任意のPDB間で異なる場合があります。PDBレベルの設定は、CDB設定より優先されます。

  • PDBにmain_workload_typeが設定されていない場合は、対応するCDB設定が使用されます。CDBにmain_workload_typeが設定されていない場合、デフォルト設定はOLTPです。

  • 最小システム要件:

    • Exadata System Softwareリリース22.1.12.0.0または23.1.3.0.0。

    • パッチ35017301を適用したOracle Database 19c。