Im Blog der cbo Entwickler findet sich eine Erläuterung zum neuen Feature der Join Factorization, das mit Version 11.2 eingeführt wurde. Dabei werden UNION ALL Operationen, bei denen ein Zugriff auf eine bestimmte Tabelle in beiden vereinigten Mengen stattfindet, so umgeschrieben, dass die mehrfach verwendete Tabelle außerhalb des UNION ALL an die übrigen Ergebnisteile gejoint wird. Auf diese Fälle kann der mehrfache Zugriff auf die gleichen Daten vermieden werden. Offenbar werden SET-Operationen in Oracle nicht so gut unterstützt wie Joins (was erst mal schade ist, da SET-Operationen so verständlich sind - finde ich jedenfalls); aber immerhin kann der Optimizer offenbar immer mehr clevere Umformungen einsetzen, um diese Defizite zu verkleinern.
In einem anderen Zusammenhang verweist Jonathan Lewis auf eine Präsentation von Joze Senegacnik, die sich ebenfalls mit dem Thema beschäftigt, und die über einen Link geladen werden kann (nach vorheriger Anmeldung), den Oscar de la Torre in seinem Kommentar liefert.
Keine Kommentare:
Kommentar veröffentlichen