The cost-based optimizer
also considers statistics on remote databases. Improvements to the Oracle8i
optimizer included optimizing for join and set operations to be performed on the
nodes offering the best performance and also minimizing the amount of data sent
between systems. Since Oracle Database 10g, the cost-based optimizer is Oracle??™s
only recommended optimizer for single and for distributed databases.
When a user wants to write data back to a distributed database, the issue becomes a
bit more complicated. As we??™ve mentioned before, a transaction is an atomic logical
unit of work that typically contains one or more SQL statements. These statements
write data to a database and must either be committed or rolled back as a unit. Distributed
transactions can take place across multiple database servers. When distributed
transactions are committed via the SQL COMMIT statement, Oracle uses a two-phase
commit protocol to ensure transaction integrity and consistency across multiple systems.
This protocol is further described in this chapter??™s ???Two-Phase Commits??? section.
Pages:
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666