2018.06.14
B TREE BITMAP PLANS
目次
- 1. 基本情報
- 2.注意
基本情報
パラメータ情報
Syntax : _B_TREE_BITMAP_PLANS = TRUE|FALSE 設定方法 : ・Parameter File ・ALTER SYSTEM SET “_B_TREE_BITMAP_PLANS ” = TRUE ・ALTER SESSION SET “_B_TREE_BITMAP_PLANS ” = TRUE
バージョンとデフォルト 9iR2 : TRUE 10gR1 : TRUE 10gR2 : TRUE 11g : TRUE
説明
BTree IndexについてBitmap Conversionを実行する実行計画を考慮するかの可否を指定します。Bitmap Conversionが発生した場合、Oracleでは、次のような方法でBTree IndexをBitmapに変換して処理します。
1.BTree IndexをScanしてIn Memory Bitmapを作成します。 このプロセスは、実行計画のBITMAP CONVERSION FROM ROWIDS演算で表現されます。 2.変換されたIn Memory Bitmapに対してBitmap演算を実行します。 このプロセスは、BITMAP AND/ OR/ MINUSなどの演算で表現されます。 3.Bitmap演算管の結果を利用して、これを再びRowIDに変換します。 このプロセスは、BITMAP CONVERSION TO ROWIDS演算で表現されます。
Bitmap Conversionは、ほとんどの性能に有利ですが、特定の状況では、パフォーマンスの低下の要因になることがあります。このような場合には、_B_TREE_BITMAP_PLANSパラメータの値をFalseに変換します。
注意
次の例は、Bitmap Conversionが発生した場合は、実行計画です。
------------------------------------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | ------------------------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 5 | 125 | 19 (0)| 00:00:01 | | 1 | TABLE ACCESS BY INDEX ROWID | T2 | 2 | 34 | 19 (0)| 00:00:01 | | 2 | NESTED LOOPS | | 5 | 125 | 19 (0)| 00:00:01 | | 3 | TABLE ACCESS BY INDEX ROWID | T1 | 3 | 24 | 4 (0)| 00:00:01 | |* 4 | INDEX RANGE SCAN | T1_N1 | 3 | | 1 (0)| 00:00:01 | | 5 | BITMAP CONVERSION TO ROWIDS | | | | | | | 6 | BITMAP AND | | | | | | | 7 | BITMAP CONVERSION FROM ROWIDS| | | | | | |* 8 | INDEX RANGE SCAN | T2_B2 | 60 | | 1 (0)| 00:00:01 | | 9 | BITMAP CONVERSION FROM ROWIDS| | | | | | |* 10 | INDEX RANGE SCAN | T2_B1 | 60 | | 1 (0)| 00:00:01 | -------------------------------------------------------------------------------------------