题目部分

在Oracle中,什么是星型连接(Star Join)?

答案部分

星型连接(Star Join)通常用于数据仓库类型的应用,它是一种单个事实表(Fact Table)和多个维度表(Dimension Table)之间的连接。星型连接的各维度表之间没有直接的关联条件,其事实表和各维度表之间是基于事实表的外键列和对应维度表的主键列之间的连接,并且通常在事实表的外键列上还会存在对应的位图索引。星型转换可以有效改善大的事实表与多个具有良好选择率的维度表间连接的查询,从而有效避免了全表扫描的性能窘境。

星型转换由初始化参数STAR_TRANSFORMATION_ENABLED控制,该参数可以有三种选项:

① TRUE:CBO优化器自动识别语句中的事实表和约束维度表并进行星型转换。CBO优化器需要确定转换后的执行计划成本要低于不转换的执行计划.如果利用物化的临时表性能更高,那么CBO优化器还会尝试利用物化的临时表。

② FALSE:优化器不会考虑星型转换,为参数STAR_TRANSFORMATION_ENABLED的默认值。

③ TEMP_DISABLE:当一个维度表超过100个块时,如果简单地设置STAR_TRANSFORMATION_ENABLED为TRUE来启用星型变换,那么会话会创建一个内存中的全局临时表(Global Temporary Table)来保存已过滤的维度数据,这在过去会造成很多问题。这里所说的100个块其实是由隐含参数“_temp_tran_block_threshold”(number of blocks for a dimension before we temp transform)来控制的。此外,隐含参数“_temp_tran_cache”(determines if temp table is created with cache option,默认为TRUE)决定了这类临时表是否被缓存住。为了避免创建全局临时表可能带来的问题,就可以用到TEMP_DISABLE这个禁用临时表的选项,让优化器不再考虑使用物化的临时表。

参数STAR_TRANSFORMATION_ENABLED的默认值为FALSE,因为星型转换适用的场景是数据仓库环境中具有星型模型的模式,而且需要事实表的各个连接列上均有良好的索引时才能发挥其优势。如果能确定以上因素,那么就可以使用星型转换。

下面给出一个示例:

 1SYS@orclasm > show parameter star_transformation_enabled 2 3NAME                                 TYPE        VALUE 4------------------------------------ ----------- ------------------------------ 5star_transformation_enabled          string      FALSE 6 7SYS@orclasm > conn sh/sh 8Connected. 9SH@orclasm > set autotr trace exp;10SH@orclasm > SELECT CH.CHANNEL_CLASS,11  2         C.CUST_CITY,12  3         T.CALENDAR_QUARTER_DESC,13  4         SUM(S.AMOUNT_SOLD) SALES_AMOUNT14  5    FROM SALES S, TIMES T, CUSTOMERS C, CHANNELS CH15  6   WHERE S.TIME_ID = T.TIME_ID16  7     AND S.CUST_ID = C.CUST_ID17  8     AND S.CHANNEL_ID = CH.CHANNEL_ID18  9     AND C.CUST_STATE_PROVINCE = 'CA'19 10     AND CH.CHANNEL_DESC IN ('Internet', 'Catalog')20 11     AND T.CALENDAR_QUARTER_DESC IN ('1999-Q1', '1999-Q2')21 12   GROUP BY CH.CHANNEL_CLASS, C.CUST_CITY, T.CALENDAR_QUARTER_DESC;2223Execution Plan24----------------------------------------------------------2526Plan hash value: 5934207982728-------------------------------------------------------------------------------------------------------------29| Id  | Operation                       | Name      | Rows  | Bytes | Cost (%CPU)| Time     | Pstart| Pstop |30-------------------------------------------------------------------------------------------------------------31|   0 | SELECT STATEMENT                |           |   572 | 48048 |   964   (3)| 00:00:12 |       |       |32|   1 |  HASH GROUP BY                  |           |   572 | 48048 |   964   (3)| 00:00:12 |       |       |33|*  2 |   HASH JOIN                     |           |  3116 |   255K|   963   (3)| 00:00:12 |       |       |34|*  3 |    TABLE ACCESS FULL            | CHANNELS  |     2 |    42 |     3   (0)| 00:00:01 |       |       |35|*  4 |    HASH JOIN                    |           |  6231 |   383K|   960   (3)| 00:00:12 |       |       |36|   5 |     PART JOIN FILTER CREATE     | :BF0000   |   183 |  2928 |    18   (0)| 00:00:01 |       |       |37|*  6 |      TABLE ACCESS FULL          | TIMES     |   183 |  2928 |    18   (0)| 00:00:01 |       |       |38|*  7 |     HASH JOIN                   |           | 49822 |  2286K|   941   (3)| 00:00:12 |       |       |39|*  8 |      TABLE ACCESS FULL          | CUSTOMERS |   383 |  9958 |   406   (1)| 00:00:05 |       |       |40|   9 |      PARTITION RANGE JOIN-FILTER|           |   918K|    18M|   530   (3)| 00:00:07 |:BF0000|:BF0000|41|  10 |       TABLE ACCESS FULL         | SALES     |   918K|    18M|   530   (3)| 00:00:07 |:BF0000|:BF0000|42-------------------------------------------------------------------------------------------------------------4344Predicate Information (identified by operation id):45---------------------------------------------------4647   2 - access("S"."CHANNEL_ID"="CH"."CHANNEL_ID")48   3 - filter("CH"."CHANNEL_DESC"='Catalog' OR "CH"."CHANNEL_DESC"='Internet')49   4 - access("S"."TIME_ID"="T"."TIME_ID")50   6 - filter("T"."CALENDAR_QUARTER_DESC"='1999-Q1' OR "T"."CALENDAR_QUARTER_DESC"='1999-Q2')51   7 - access("S"."CUST_ID"="C"."CUST_ID")52   8 - filter("C"."CUST_STATE_PROVINCE"='CA')show parameter star_transformation_enabled 2 3NAME                                 TYPE        VALUE 4------------------------------------ ----------- ------------------------------ 5star_transformation_enabled          string      FALSE 6 7SYS@orclasm > conn sh/sh 8Connected. 9SH@orclasm > set autotr trace exp;10SH@orclasm > SELECT CH.CHANNEL_CLASS,11  2         C.CUST_CITY,12  3         T.CALENDAR_QUARTER_DESC,13  4         SUM(S.AMOUNT_SOLD) SALES_AMOUNT14  5    FROM SALES S, TIMES T, CUSTOMERS C, CHANNELS CH15  6   WHERE S.TIME_ID = T.TIME_ID16  7     AND S.CUST_ID = C.CUST_ID17  8     AND S.CHANNEL_ID = CH.CHANNEL_ID18  9     AND C.CUST_STATE_PROVINCE = 'CA'19 10     AND CH.CHANNEL_DESC IN ('Internet', 'Catalog')20 11     AND T.CALENDAR_QUARTER_DESC IN ('1999-Q1', '1999-Q2')21 12   GROUP BY CH.CHANNEL_CLASS, C.CUST_CITY, T.CALENDAR_QUARTER_DESC;2223Execution Plan24----------------------------------------------------------2526Plan hash value: 5934207982728-------------------------------------------------------------------------------------------------------------29| Id  | Operation                       | Name      | Rows  | Bytes | Cost (%CPU)| Time     | Pstart| Pstop |30-------------------------------------------------------------------------------------------------------------31|   0 | SELECT STATEMENT                |           |   572 | 48048 |   964   (3)| 00:00:12 |       |       |32|   1 |  HASH GROUP BY                  |           |   572 | 48048 |   964   (3)| 00:00:12 |       |       |33|*  2 |   HASH JOIN                     |           |  3116 |   255K|   963   (3)| 00:00:12 |       |       |34|*  3 |    TABLE ACCESS FULL            | CHANNELS  |     2 |    42 |     3   (0)| 00:00:01 |       |       |35|*  4 |    HASH JOIN                    |           |  6231 |   383K|   960   (3)| 00:00:12 |       |       |36|   5 |     PART JOIN FILTER CREATE     | :BF0000   |   183 |  2928 |    18   (0)| 00:00:01 |       |       |37|*  6 |      TABLE ACCESS FULL          | TIMES     |   183 |  2928 |    18   (0)| 00:00:01 |       |       |38|*  7 |     HASH JOIN                   |           | 49822 |  2286K|   941   (3)| 00:00:12 |       |       |39|*  8 |      TABLE ACCESS FULL          | CUSTOMERS |   383 |  9958 |   406   (1)| 00:00:05 |       |       |40|   9 |      PARTITION RANGE JOIN-FILTER|           |   918K|    18M|   530   (3)| 00:00:07 |:BF0000|:BF0000|41|  10 |       TABLE ACCESS FULL         | SALES     |   918K|    18M|   530   (3)| 00:00:07 |:BF0000|:BF0000|42-------------------------------------------------------------------------------------------------------------4344Predicate Information (identified by operation id):45---------------------------------------------------4647   2 - access("S"."CHANNEL_ID"="CH"."CHANNEL_ID")48   3 - filter("CH"."CHANNEL_DESC"='Catalog' OR "CH"."CHANNEL_DESC"='Internet')49   4 - access("S"."TIME_ID"="T"."TIME_ID")50   6 - filter("T"."CALENDAR_QUARTER_DESC"='1999-Q1' OR "T"."CALENDAR_QUARTER_DESC"='1999-Q2')51   7 - access("S"."CUST_ID"="C"."CUST_ID")52   8 - filter("C"."CUST_STATE_PROVINCE"='CA')

发现上面的执行计划与三个表连接时都是全表扫描,下面打开星形转换后再执行同样的SQL语句:

 1SYS@orclasm > alter system set star_transformation_enabled=true; 2 3System altered. 4 5SH@orclasm > SH@orclasm > set autotr trace exp; 6SH@orclasm > SELECT CH.CHANNEL_CLASS, 7  2         C.CUST_CITY, 8  3         T.CALENDAR_QUARTER_DESC, 9  4         SUM(S.AMOUNT_SOLD) SALES_AMOUNT10  FROM SALES S, TIMES T, CUSTOMERS C, CHANNELS CH11 WHERE S.TIME_ID = T.TIME_ID12   AND S.CUST_ID = C.CUST_ID13   AND S.CHANNEL_ID = CH.CHANNEL_ID14   AND C.CUST_STATE_PROVINCE = 'CA'15   AND CH.CHANNEL_DESC IN ('Internet', 'Catalog')16   AND T.CALENDAR_QUARTER_DESC IN ('1999-Q1', '1999-Q2')17 GROUP BY CH.CHANNEL_CLASS, C.CUST_CITY, T.CALENDAR_QUARTER_DESC;1819Execution Plan20----------------------------------------------------------2122Plan hash value: 4788865102324----------------------------------------------------------------------------------------------------------------------------------25| Id  | Operation                           | Name                       | Rows  | Bytes | Cost (%CPU)| Time     | Pstart| Pstop |26----------------------------------------------------------------------------------------------------------------------------------27|   0 | SELECT STATEMENT                    |                            |   253 | 20493 |   556   (1)| 00:00:07 |       |       |28|   1 |  TEMP TABLE TRANSFORMATION          |                            |       |       |            |          |       |       |29|   2 |   LOAD AS SELECT                    | SYS_TEMP_0FD9D660D_466CBF7 |       |       |            |          |       |       |30|*  3 |    TABLE ACCESS FULL                | CUSTOMERS                  |   383 |  9958 |   406   (1)| 00:00:05 |       |       |31|   4 |   HASH GROUP BY                     |                            |   253 | 20493 |   150   (2)| 00:00:02 |       |       |32|*  5 |    HASH JOIN                        |                            |   253 | 20493 |   149   (2)| 00:00:02 |       |       |33|*  6 |     TABLE ACCESS FULL               | CHANNELS                   |     2 |    42 |     3   (0)| 00:00:01 |       |       |34|*  7 |     HASH JOIN                       |                            |   253 | 15180 |   146   (2)| 00:00:02 |       |       |35|*  8 |      HASH JOIN                      |                            |   253 | 11385 |   143   (1)| 00:00:02 |       |       |36|*  9 |       TABLE ACCESS FULL             | TIMES                      |   183 |  2928 |    18   (0)| 00:00:01 |       |       |37|  10 |       VIEW                          | VW_ST_62EEF96F             |   254 |  7366 |   125   (1)| 00:00:02 |       |       |38|  11 |        NESTED LOOPS                 |                            |   254 | 14478 |   101   (0)| 00:00:02 |       |       |39|  12 |         PARTITION RANGE SUBQUERY    |                            |   254 |  7117 |    55   (2)| 00:00:01 |KEY(SQ)|KEY(SQ)|40|  13 |          BITMAP CONVERSION TO ROWIDS|                            |   254 |  7117 |    55   (2)| 00:00:01 |       |       |41|  14 |           BITMAP AND                |                            |       |       |            |          |       |       |42|  15 |            BITMAP MERGE             |                            |       |       |            |          |       |       |43|  16 |             BITMAP KEY ITERATION    |                            |       |       |            |          |       |       |44|  17 |              BUFFER SORT            |                            |       |       |            |          |       |       |45|* 18 |               TABLE ACCESS FULL     | CHANNELS                   |     2 |    26 |     3   (0)| 00:00:01 |       |       |46|* 19 |              BITMAP INDEX RANGE SCAN| SALES_CHANNEL_BIX          |       |       |            |          |KEY(SQ)|KEY(SQ)|47|  20 |            BITMAP MERGE             |                            |       |       |            |          |       |       |48|  21 |             BITMAP KEY ITERATION    |                            |       |       |            |          |       |       |49|  22 |              BUFFER SORT            |                            |       |       |            |          |       |       |50|* 23 |               TABLE ACCESS FULL     | TIMES                      |   183 |  2928 |    18   (0)| 00:00:01 |       |       |51|* 24 |              BITMAP INDEX RANGE SCAN| SALES_TIME_BIX             |       |       |            |          |KEY(SQ)|KEY(SQ)|52|  25 |            BITMAP MERGE             |                            |       |       |            |          |       |       |53|  26 |             BITMAP KEY ITERATION    |                            |       |       |            |          |       |       |54|  27 |              BUFFER SORT            |                            |       |       |            |          |       |       |55|  28 |               TABLE ACCESS FULL     | SYS_TEMP_0FD9D660D_466CBF7 |   383 |  1915 |     2   (0)| 00:00:01 |       |       |56|* 29 |              BITMAP INDEX RANGE SCAN| SALES_CUST_BIX             |       |       |            |          |KEY(SQ)|KEY(SQ)|57|  30 |         TABLE ACCESS BY USER ROWID  | SALES                      |     1 |    29 |    70   (0)| 00:00:01 | ROWID | ROWID |58|  31 |      TABLE ACCESS FULL              | SYS_TEMP_0FD9D660D_466CBF7 |   383 |  5745 |     2   (0)| 00:00:01 |       |       |59----------------------------------------------------------------------------------------------------------------------------------6061Predicate Information (identified by operation id):62---------------------------------------------------6364   3 - filter("C"."CUST_STATE_PROVINCE"='CA')65   5 - access("ITEM_1"="CH"."CHANNEL_ID")66   6 - filter("CH"."CHANNEL_DESC"='Catalog' OR "CH"."CHANNEL_DESC"='Internet')67   7 - access("ITEM_2"="C0")68   8 - access("ITEM_3"="T"."TIME_ID")69   9 - filter("T"."CALENDAR_QUARTER_DESC"='1999-Q1' OR "T"."CALENDAR_QUARTER_DESC"='1999-Q2')70  18 - filter("CH"."CHANNEL_DESC"='Catalog' OR "CH"."CHANNEL_DESC"='Internet')71  19 - access("S"."CHANNEL_ID"="CH"."CHANNEL_ID")72  23 - filter("T"."CALENDAR_QUARTER_DESC"='1999-Q1' OR "T"."CALENDAR_QUARTER_DESC"='1999-Q2')73  24 - access("S"."TIME_ID"="T"."TIME_ID")74  29 - access("S"."CUST_ID"="C0")7576Note77-----78   - star transformation used for this statementalter system set star_transformation_enabled=true; 2 3System altered. 4 5SH@orclasm > SH@orclasm > set autotr trace exp; 6SH@orclasm > SELECT CH.CHANNEL_CLASS, 7  2         C.CUST_CITY, 8  3         T.CALENDAR_QUARTER_DESC, 9  4         SUM(S.AMOUNT_SOLD) SALES_AMOUNT10  FROM SALES S, TIMES T, CUSTOMERS C, CHANNELS CH11 WHERE S.TIME_ID = T.TIME_ID12   AND S.CUST_ID = C.CUST_ID13   AND S.CHANNEL_ID = CH.CHANNEL_ID14   AND C.CUST_STATE_PROVINCE = 'CA'15   AND CH.CHANNEL_DESC IN ('Internet', 'Catalog')16   AND T.CALENDAR_QUARTER_DESC IN ('1999-Q1', '1999-Q2')17 GROUP BY CH.CHANNEL_CLASS, C.CUST_CITY, T.CALENDAR_QUARTER_DESC;1819Execution Plan20----------------------------------------------------------2122Plan hash value: 4788865102324----------------------------------------------------------------------------------------------------------------------------------25| Id  | Operation                           | Name                       | Rows  | Bytes | Cost (%CPU)| Time     | Pstart| Pstop |26----------------------------------------------------------------------------------------------------------------------------------27|   0 | SELECT STATEMENT                    |                            |   253 | 20493 |   556   (1)| 00:00:07 |       |       |28|   1 |  TEMP TABLE TRANSFORMATION          |                            |       |       |            |          |       |       |29|   2 |   LOAD AS SELECT                    | SYS_TEMP_0FD9D660D_466CBF7 |       |       |            |          |       |       |30|*  3 |    TABLE ACCESS FULL                | CUSTOMERS                  |   383 |  9958 |   406   (1)| 00:00:05 |       |       |31|   4 |   HASH GROUP BY                     |                            |   253 | 20493 |   150   (2)| 00:00:02 |       |       |32|*  5 |    HASH JOIN                        |                            |   253 | 20493 |   149   (2)| 00:00:02 |       |       |33|*  6 |     TABLE ACCESS FULL               | CHANNELS                   |     2 |    42 |     3   (0)| 00:00:01 |       |       |34|*  7 |     HASH JOIN                       |                            |   253 | 15180 |   146   (2)| 00:00:02 |       |       |35|*  8 |      HASH JOIN                      |                            |   253 | 11385 |   143   (1)| 00:00:02 |       |       |36|*  9 |       TABLE ACCESS FULL             | TIMES                      |   183 |  2928 |    18   (0)| 00:00:01 |       |       |37|  10 |       VIEW                          | VW_ST_62EEF96F             |   254 |  7366 |   125   (1)| 00:00:02 |       |       |38|  11 |        NESTED LOOPS                 |                            |   254 | 14478 |   101   (0)| 00:00:02 |       |       |39|  12 |         PARTITION RANGE SUBQUERY    |                            |   254 |  7117 |    55   (2)| 00:00:01 |KEY(SQ)|KEY(SQ)|40|  13 |          BITMAP CONVERSION TO ROWIDS|                            |   254 |  7117 |    55   (2)| 00:00:01 |       |       |41|  14 |           BITMAP AND                |                            |       |       |            |          |       |       |42|  15 |            BITMAP MERGE             |                            |       |       |            |          |       |       |43|  16 |             BITMAP KEY ITERATION    |                            |       |       |            |          |       |       |44|  17 |              BUFFER SORT            |                            |       |       |            |          |       |       |45|* 18 |               TABLE ACCESS FULL     | CHANNELS                   |     2 |    26 |     3   (0)| 00:00:01 |       |       |46|* 19 |              BITMAP INDEX RANGE SCAN| SALES_CHANNEL_BIX          |       |       |            |          |KEY(SQ)|KEY(SQ)|47|  20 |            BITMAP MERGE             |                            |       |       |            |          |       |       |48|  21 |             BITMAP KEY ITERATION    |                            |       |       |            |          |       |       |49|  22 |              BUFFER SORT            |                            |       |       |            |          |       |       |50|* 23 |               TABLE ACCESS FULL     | TIMES                      |   183 |  2928 |    18   (0)| 00:00:01 |       |       |51|* 24 |              BITMAP INDEX RANGE SCAN| SALES_TIME_BIX             |       |       |            |          |KEY(SQ)|KEY(SQ)|52|  25 |            BITMAP MERGE             |                            |       |       |            |          |       |       |53|  26 |             BITMAP KEY ITERATION    |                            |       |       |            |          |       |       |54|  27 |              BUFFER SORT            |                            |       |       |            |          |       |       |55|  28 |               TABLE ACCESS FULL     | SYS_TEMP_0FD9D660D_466CBF7 |   383 |  1915 |     2   (0)| 00:00:01 |       |       |56|* 29 |              BITMAP INDEX RANGE SCAN| SALES_CUST_BIX             |       |       |            |          |KEY(SQ)|KEY(SQ)|57|  30 |         TABLE ACCESS BY USER ROWID  | SALES                      |     1 |    29 |    70   (0)| 00:00:01 | ROWID | ROWID |58|  31 |      TABLE ACCESS FULL              | SYS_TEMP_0FD9D660D_466CBF7 |   383 |  5745 |     2   (0)| 00:00:01 |       |       |59----------------------------------------------------------------------------------------------------------------------------------6061Predicate Information (identified by operation id):62---------------------------------------------------6364   3 - filter("C"."CUST_STATE_PROVINCE"='CA')65   5 - access("ITEM_1"="CH"."CHANNEL_ID")66   6 - filter("CH"."CHANNEL_DESC"='Catalog' OR "CH"."CHANNEL_DESC"='Internet')67   7 - access("ITEM_2"="C0")68   8 - access("ITEM_3"="T"."TIME_ID")69   9 - filter("T"."CALENDAR_QUARTER_DESC"='1999-Q1' OR "T"."CALENDAR_QUARTER_DESC"='1999-Q2')70  18 - filter("CH"."CHANNEL_DESC"='Catalog' OR "CH"."CHANNEL_DESC"='Internet')71  19 - access("S"."CHANNEL_ID"="CH"."CHANNEL_ID")72  23 - filter("T"."CALENDAR_QUARTER_DESC"='1999-Q1' OR "T"."CALENDAR_QUARTER_DESC"='1999-Q2')73  24 - access("S"."TIME_ID"="T"."TIME_ID")74  29 - access("S"."CUST_ID"="C0")7576Note77-----78   - star transformation used for this statement

其实经过星形转换后,Oracle对上面的SQL语句进行了查询重写。以上SQL需要在相关的事实表上有位图索引,否则依然不能使用星型转换:

1create bitmap index cust_id_ind on sh.sales(cust_id) local;2create bitmap index time_id_ind on sh.sales(time_id) local;3create bitmap index channel_id_ind on sh.sales(channel_id) local;create bitmap index cust_id_ind on sh.sales(cust_id) local;2create bitmap index time_id_ind on sh.sales(time_id) local;3create bitmap index channel_id_ind on sh.sales(channel_id) local;

本文选自《Oracle程序员面试笔试宝典》,作者:李华荣。

---------------优质麦课------------

详细内容可以添加麦老师微信或QQ私聊。

About Me:小麦苗

● 本文作者:小麦苗,只专注于数据库的技术,更注重技术的运用

● 作者博客地址:http://blog.itpub.net/26736162/abstract/1/

● 本系列题目来源于作者的学习笔记,部分整理自网络,若有侵权或不当之处还请谅解

● 版权所有,欢迎分享本文,转载请保留出处

● QQ:646634621  QQ群:618766405

● 提供OCP、OCM和高可用部分最实用的技能培训

● 题目解答若有不当之处,还望各位朋友批评指正,共同进步

DBA宝典

长按下图识别二维码或微信扫描下图二维码来关注小麦苗的微信公众号:xiaomaimiaolhr,学习最实用的数据库技术。

喜欢就点击“好看”吧

【DB笔试面试591】在Oracle中,什么是星型连接(Star Join)?相关推荐

  1. 【DB笔试面试164】在Oracle中,如何彻底停止expdp数据泵进程?

    [DB笔试面试164]在Oracle中,如何彻底停止expdp数据泵进程? 真题1. 如何彻底停止 expdp 进程? 答案:许多同事在使用expdp命令时,不小心按了CTRL+C组合键,然后又输入e ...

  2. oracle中sql语句(+)符号代表连接

    oracle中sql语句(+)符号代表连接 (+)在=前边为右连接 (+)在=后边为左连接 SELECT a.*, b.* from a(+) = b就是一个右连接,等同于select a.*, b. ...

  3. oracle sql连接符号,Oracle中sql语句(+)符号代表连接的使用讲解

    oracle中sql语句(+)符号代表连接 (+)在=前边为右连接 (+)在=后边为左连接 SELECT a.*, b.* from a(+) = b就是一个右连接,等同于select a.*, b. ...

  4. Oracle优化器:星型转换(Star Query Transformation )

     Oracle优化器:星型转换(Star Query Transformation )  Star query是一个事实表(fact table)和一些维度表(dimension)的join.每个维度 ...

  5. 【DB笔试面试594】在Oracle中,关键字NOLOGGING、APPEND和PARALLEL提高DML性能方面有什么差别?...

    ♣题目部分 在Oracle中,关键字NOLOGGING.APPEND和PARALLEL提高DML性能方面有什么差别? ♣答案部分 众所周知,表模式(LOGGING/NOLOGGING).插入模式(AP ...

  6. 【DB笔试面试608】在Oracle中,如何使用STA来生成SQL Profile?

    ♣题目部分 在Oracle中,如何使用STA来生成SQL Profile? ♣答案部分 利用STA对语句进行优化后,STA会对语句进行分析,采用最优的优化策略,并给出优化后的查询计划.可以按照STA给 ...

  7. 【DB笔试面试622】在Oracle中,说说COUNT(*)计算行数有哪些优化手段?

    ♣ 题目部分 在Oracle中,说说COUNT(*)计算行数有哪些优化手段? ♣ 答案部分 手段 命令 执行计划 主要原理 详细说明 性能情况 全表扫描 TABLE ACCESS FULL 全表扫描 ...

  8. 【DB笔试面试606】在Oracle中,coe_xfr_sql_profile.sql脚本的作用是什么?

    ♣题目部分 在Oracle中,coe_xfr_sql_profile.sql脚本的作用是什么? ♣答案部分 使用coe_xfr_sql_profile.sql脚本生成sqlprof_attr数据 最麻 ...

  9. 【DB笔试面试597】在Oracle中,获取执行计划有哪几种方法?

    ♣题目部分 在Oracle中,获取执行计划有哪几种方法? ♣答案部分 一般来说,有如下几种获取执行计划的方式: 1.AUTOTRACE方式 AUTOTRACE是Oracle自带的客户端工具SQL*Pl ...

最新文章

  1. 使用Windows live Writer 2012发布ChinaUnix博客
  2. DevOps滚动部署
  3. 这才是数据挖掘领域常用的机器学习算法!
  4. 怎么让datagridview中的某一行不可编辑
  5. 记录今天登录oracle时遇到的一个小问题--不能登录
  6. 收藏 | 深度学习19个损失函数汇总
  7. 《Linux4.0设备驱动开发详解》笔记--第五章:Linux文件系统与设备文件
  8. 站在巨人的肩膀上学习Android开发
  9. maven ...../.m2/settings.xml
  10. 中国天气预报网接口及城市代码
  11. 魅族15android 8.0,Flyme 8体验版已上线:魅族15/16系列可直接升级
  12. CAS (5) —— Nginx代理模式下浏览器访问CAS服务器配置详解
  13. C++线索二叉树(中序线索二叉树及遍历)
  14. nginx部署访问phpadmin
  15. 抽象类可以继承具体类吗?
  16. 工作经验分享:Spark调优【优化后性能提升1200%】
  17. 线上线下模式暗藏专利风险?
  18. 【谷粒商城】ElasticSearch、上架与检索
  19. java网络加载协议JNLP的应用
  20. 数字化转型中的大数据治理架构

热门文章

  1. BGP高防服务器与普通高防服务器有什么区别?
  2. 距离度量与相似度度量
  3. Smart3D系列教程7之 《手动配置S3C索引加载全部的瓦片数据》
  4. 12035徐波:PMBOK融会贯通:会议一览
  5. python对人工智能的看法_为什么人工智能用python
  6. 【10月31日】机器学习实战(二)决策树:隐形眼镜数据集
  7. Kylin - 框架介绍
  8. 季冠携“闪星服务”受邀参加2021连锁企业轻资产论坛
  9. linux 网络编程相关知识
  10. 2020蓝天杯论文评比系统_2020年杭州市初中数学核心组教师高级研修培训系列视频(十一)...