2.162 INMEMORY_FORCE
INMEMORY_FORCE
では、INMEMORY
として指定される表、マテリアライズド・ビュー、パーティションなどのオブジェクトがインメモリー列ストア(IM列ストア)に移入されるかどうかを指定できます。
特性 | 説明 |
---|---|
パラメータ・タイプ |
文字列 |
構文 |
|
デフォルト値 |
|
変更可能 |
このパラメータは、次のように
このパラメータに対するその他すべての変更には、初期化ファイルの更新とインスタンスの再起動が必要になります。 |
PDBで変更可能 |
はい |
基本 |
いいえ |
Oracle RAC |
すべてのインスタンスには同じ値を使用する必要がある。 |
設定可能な値は次のとおりです。
-
DEFAULT
IM列ストアには、
INMEMORY
として指定されたオブジェクトが移入されます。 -
OFF
このインスタンスに対してIM列ストアが構成されていても、オブジェクトはメモリー内に移入されません。
-
BASE_LEVEL
Database In-Memoryのベース・レベルを有効にします。ベース・レベルでは、Oracle Database In-Memoryオプションを購入することなく、Oracle Database In-Memoryの機能を試用できます。
ベース・レベルが有効化されていると、CDBごとの
INMEMORY_SIZE
初期化パラメータの値が16GBに制限されます。Oracle RAC環境では、INMEMORY_SIZE
の値が、インスタンスごとに16GBに制限されます。すべてのオブジェクトと列に対する圧縮レベルは、自動的および透過的にQUERY
LOW
に設定されます。自動インメモリーが無効になり、インメモリー列ストア機能追跡は、「インメモリー列ストア」ではなく「インメモリー・ベース・レベル」で追跡されます。CellMemory機能は、Oracle Exadataに対して無効化されます。 -
CELLMEMORY_LEVEL
CellMemoryは、Exadataスマート・フラッシュ・キャッシュを使用してインメモリー列形式でデータを移入できるExadata機能です。旧リリースのOracle Databaseでは、CellMemory機能を使用するために、IM列ストアを使用する予定がない場合でも(
INMEMORY_SIZE
を0
より大きい値に設定して) IM列ストアを有効化する必要がありました。このため、IM列ストアを利用しないのに、有効化によるオーバーヘッドが発生していました。Oracle Databaseリリース19c、バージョン19.8以降では、INMEMORY_FORCE=CELLMEMORY_LEVEL
およびINMEMORY_SIZE=0
を設定することで、IM列ストアを有効にせずにCellMemory機能を使用できます。これらの設定を使用すると、IM列ストアは有効化されませんが、問合せでCellMemoryを使用してオブジェクトをスキャンできます。INMEMORY_SIZE
の値が0
より大きい場合、INMEMORY_FORCE=CELLMEMORY_LEVEL
の設定がINMEMORY_FORCE=DEFAULT
の設定と等価になることに注意してください。CellMemoryのみを使用している場合でも、IM列ストアが有効になります。
関連項目:
-
IM列ストアの概要は、『Oracle Database In-Memoryガイド』を参照してください。
-
IM列ストアの詳細は、『Oracle Database In-Memoryガイド』を参照してください。
-
Database In-Memoryのベース・レベル機能をサポートするデータベース製品を学習するには、『Oracle Databaseライセンス情報ユーザー・マニュアル』を参照してください