oracle星形联结转换参数star_transformation_enabled

发布时间:2021-03-17 00:00:00

查看数据库参数时,发现了一个未曾见过的参数:star_transformation_enabled
查看Oracle性能优化求生指南了解了一下这参数相关的信息:
star query transformation是oracle的一个优化器:星型转换,在oracle8i中引入
STAR_TRANSFORMATION_ENABLED determines whether a cost-based query transformation will be applied to star queries.
这个参数有3个值:
1)FALSE
The transformation will not be applied.
不应用星型转换
2)TRUE
The optimizer will consider performing a cost-based query transformation on the star query.
优化器将会考虑对星型查询执行基于成本的查询转换
3)TEMP_DISABLE
The optimizer will consider performing a cost-based query transformation on the star query but will not use temporary tables in the star transformation.
优化器将考虑对星型查询执行基于成本的查询转换,但不会在星型转换中使用临时表
重庆思庄.jpg

Star query(星型查询)是一个事实表(fact table)和一些维度表(dimension)的join。每个维度表都跟事实表通过主外键join,且每个维度表之间不join。
称谓源于该种模型以图形化表现时看起来形似一颗海星。这颗星的中央会由一个或多个事实表(fact tables)组成,而各个触角上则分布着多个维度表(dimension tables)。
星型模式设计的好处:
1) 提供了直接、直观的业务实体与终端用户schema设计的映射。
2) 对典型的star query提供了高性能的优化。
3) 通过大量的商业智能工具的广泛支持,可能会期望甚至要求数据仓库架构包含维度表。

如果要选择优化Star Query:
1) 在fact table的每个外键列上建立bitmap index。
2) 初始化参数STAR_TRANSFORMATION_ENABLED 应被设为TRUE,默认false

<<