Oracle 参数 CREATE_BITMAP_AREA_SIZE 官方解释,作用,如何配置最优化建议
本站中文解释
CREATE_BITMAP_AREA_SIZE是Oracle定义每个SGA中用于创建和维护位图的内存区域的一个参数,它的值默认为0MB,也就是说,在默认条件下,Oracle没有在SGA中专门分配用于位图的内存区域。如果该参数被设置为非0值,那么Oracle将会在SGA中创建一个名为“Create Bitmap”的内存区域,来储存位图;而且,Oracle会优先在该区域中创建和维护位图。
正确设置CREATE_BITMAP_AREA_SIZE参数需要考虑两个因素:
(1)SGA大小:你应该根据Oracle开启的系统进程,以及你需要使用的SQL语句,来计算SGA的合理大小,然后确定CREATE_BITMAP_AREA_SIZE参数的合理值;
(2)SGA内存分配:根据你的硬件、可用内存以及容量的要求,确定各个内存区域在整个SGA中所占比例,然后设置各个内存区域的大小,包括CREATE_BITMAP_AREA_SIZE参数。 一般可以将CREATE_BITMAP_AREA_SIZE设置为128M,以免影响数据库性能。
官方英文解释
CREATE_BITMAP_AREA_SIZE
specifies the amount of memory (in bytes) allocated for bitmap creation.
Property | Description |
---|---|
Parameter type |
Integer |
Default value |
|
Modifiable |
No |
Modifiable in a PDB |
Yes |
Range of values |
Operating system-dependent |
Basic |
No |
This parameter is relevant only for systems containing bitmap indexes.
Note:
Oracle does not recommend using the CREATE_BITMAP_AREA_SIZE
parameter unless the instance is configured with the shared server option. Oracle recommends that you enable automatic sizing of SQL working areas by setting PGA_AGGREGATE_TARGET
instead. CREATE_BITMAP_AREA_SIZE
is retained for backward compatibility.
A larger value may speed up index creation.
Cardinality is the number of unique values in a column in relation to the number of rows in the table. If cardinality is very small, you can set a small value for this parameter. For example, if cardinality is only 2, then the value can be in kilobytes rather than megabytes. As a general rule, the higher the cardinality, the more memory is needed for optimal performance.
See Also:
Oracle Database SQL Tuning
Guide for more information on using bitmap indexes