关于bitmap conversion to ROWID

Question:  I have a query against tables without a bitmap index, and get I see "bitmap conversion to ROWID" in the execution plan.  How does bitmap conversion to ROWIDS work?  I want to understand optimizer behavior i.e. BITMAP CONVERSION TO ROWIDS and BITMAP CONVERSION FROM ROWIDS. What does this mean and how can i change it to simple rowid access?     Answer: The "bitmap conversion to ROWIDS" execution plan step was generally introduced in Oracle 9i when the default for _b_tree_bitmap_plans changed from "false" to "true".  The "BITMAP CONVERSION (TO ROWIDS)" plan is not always an optimal step when converting from b-tree indexes, and it can be very inefficient access plan in some cases.  Bitmap conversion to ROWIDS does not require bitmap indexes, and it's sometimes found in cases of SQL with complex WHERE clause conditions.   The bitmap conversion to rowids is sometimes seen with star transformations (by setting star_transformation_enabled = true).  You can also turn-off bitmap conversion to ROWIDS in your init.ora by re-setting this hidden parm:   _b_tree_bitmap_plans=false   You can also turn-off bitmap conversion at the session level, for testing:   alter session set "_b_tree_bitmap_plans"=false  As always, notify Oracle technical support before employing any hidden parameters, as they can make your database unsupported. Notes: There is some Oracle 9i bugs ( bug 2546446 and bug 2742886 ) that invoke inappropriate "BITMAP conversion to ROWID" access path.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值