Which two options are true about the execution plan and the set of statements?
A.
The query uses a partial partition-wise join.
B.
The degree of parallelism is limited to the number of partitions in the EMP_RANGE_DID table.
C.
The DEPT table id dynamically distributed based on the partition keys of the
EMP_RANGE_DID table.
D.
The server process serially scans the entire DEPT table for each range partition on the
EMP_RANGE_DID table.
E.
The query uses a full partition-wise join.
Explanation:
Note the “px partition range all” in the execution plan.
Note:
* PX PARTITION RANGE (ALL)
Description
Parallel execution – iterate over all range partitioned table* Full partition-wise joins can occur if two tables that are co-partitioned on the same key are joined
in a query. The tables can be co-partitioned at the partition level, or at the subpartition level, or at a
combination of partition and subpartition levels. Reference partitioning is an easy way to
guarantee co-partitioning. Full partition-wise joins can be executed serially and in parallel.
* Oracle Database can perform partial partition-wise joins only in parallel. Unlike full partition-wise
joins, partial partition-wise joins require you to partition only one table on the join key, not both
tables. The partitioned table is referred to as the reference table. The other table may or may not
be partitioned. Partial partition-wise joins are more common than full partition-wise joins.
To execute a partial partition-wise join, the database dynamically partitions or repartitions the other
table based on the partitioning of the reference table. After the other table is repartitioned, the
execution is similar to a full partition-wise join.
Answers are A and C
Agree.
There can’t be full partition-wise join as table dept is not partitioned.
It is patial partition-wise.
As for answer C – not sure.
B seems correct.
About B:
The number of partitions determines the maximum degree of parallelism, because the partition is the smallest granule of parallelism for partial partition-wise join operations.
From here
http://docs.oracle.com/cd/E11882_01/server.112/e25523/part_avail.htm
Ok but the parallel are set to 2 for each table during their creation. So DOP will be 2 unless an hint overwritte this behaviour. But this is not the case.
So i keep on A and C
The query use PWJ because of line 8 ( PX Send Partition (Key) )