|
|
|
|
1.
|
Define Transaction ? |
|
|
A Transaction is a logical unit of work that comprises
one or more SQL statements executed by a single user.
|
|
2.
|
When does a Transaction end ? |
|
|
When it is committed or Rollbacked.
|
|
3.
|
What does COMMIT do ? |
|
|
COMMIT makes permanent the changes resulting from all
SQL statements in the transaction. The changes made by
the SQL statements of a transaction become visible to
other user sessions transactions that start only after
transaction is committed.
|
|
4.
|
What does ROLLBACK do ? |
|
|
ROLLBACK retracts any of the changes resulting from the
SQL statements in the transaction.
|
|
5.
|
What is SAVE POINT ? |
|
|
For long transactions that contain many SQL statements,
intermediate markers or savepoints can be declared which
can be used to divide a transaction into smaller parts.
This allows the option of later rolling back all work
performed from the current point in the transaction to a
declared savepoint within the transaction.
|
|
6.
|
What is Read-Only Transaction ? |
|
|
A Read-Only transaction ensures that the results of each
query executed in the transaction are consistent with
respect to the same point in time.
|
|
7.
|
What is the function of Optimizer ? |
|
|
The goal of the optimizer is to choose the most
efficient way to execute a SQL statement.
|
|
8.
|
What is Execution Plan ? |
|
|
The combinations of the steps the optimizer chooses to
execute a statement is called an execution plan.
|
|
9.
|
What are the different approaches used by Optimizer in
choosing an execution plan ? |
|
|
Rule-based and Cost-based.
|
|
10. |
What are the factors that affect OPTIMIZER in choosing
an Optimization approach ? |
|
|
The OPTIMIZER_MODE initialization parameter Statistics
in the Data Dictionary the OPTIMIZER_GOAL parameter of
the ALTER SESSION command hints in the statement.
|
|
11. |
What are the values that can be specified for OPTIMIZER
MODE Parameter ? |
|
|
COST and RULE.
|
|
12. |
Will the Optimizer always use COST-based approach if
OPTIMIZER_MODE is set to "Cost'? |
|
|
Presence of statistics in the data dictionary for at
least one of the tables accessed by the SQL statements
is necessary for the OPTIMIZER to use COST-based
approach. Otherwise OPTIMIZER chooses RULE-based
approach.
|
|
13. |
What is the effect of setting the value of
OPTIMIZER_MODE to 'RULE' ? |
|
|
This value causes the optimizer to choose the rule_based
approach for all SQL statements issued to the instance
regardless of the presence of statistics.
|
|
14. |
What are the values that can be specified for
OPTIMIZER_GOAL parameter of the ALTER SESSION Command ? |
|
|
CHOOSE,ALL_ROWS,FIRST_ROWS and RULE.
|
|
15. |
What is the effect of setting the value "CHOOSE" for
OPTIMIZER_GOAL, parameter of the ALTER SESSION Command ? |
|
|
The Optimizer chooses Cost_based approach and optimizes
with the goal of best throughput if statistics for at
least one of the tables accessed by the SQL statement
exist in the data dictionary. Otherwise the OPTIMIZER
chooses RULE_based approach.
|
|
16. |
What is the effect of setting the value "ALL_ROWS" for
OPTIMIZER_GOAL parameter of the ALTER SESSION command ? |
|
|
This value causes the optimizer to the cost-based
approach for all SQL statements in the session
regardless of the presence of statistics and to optimize
with a goal of best throughput.
|
|
17. |
What is the effect of setting the value 'FIRST_ROWS' for
OPTIMIZER_GOAL parameter of the ALTER SESSION command ? |
|
|
This value causes the optimizer to use the cost-based
approach for all SQL statements in the session
regardless of the presence of statistics and to optimize
with a goal of best response time.
|
|
18. |
What is the effect of setting the 'RULE' for
OPTIMIER_GOAL parameter of the ALTER SESSION Command ? |
|
|
This value causes the optimizer to choose the rule-based
approach for all SQL statements in a session regardless
of the presence of statistics.
|
|
19. |
What is RULE-based approach to optimization ? |
|
|
Choosing an executing plan based on the access paths
available and the ranks of these access paths.
|
|
20. |
What is COST-based approach to optimization ? |
|
|
Considering available access paths and determining the
most efficient execution plan based on statistics in the
data dictionary for the tables accessed by the statement
and their associated clusters and indexes.
|