Ich möchte wissen/lernen den Unterschied zwischen NESTED LOOPS und Hash beitreten. Zu diesem Zweck habe ich diese Frage gestellt. Der Abfrage- und EXPLAIN-Plan ist sehr lang, weshalb diese hier nicht veröffentlicht werden.Wie lese ich die Empfehlungen von DBA?
Ich habe die folgenden Empfehlungen von DBA, kann jemand erklären, was der neue Ausführungsplan benötigt?
Ich denke, die Notwendigkeit, die Nested Loops zu entfernen, wie diese geschachtelte Schleifen zu entfernen?
Haben Sie darüber nachgedacht, mit Ihrem DBA zu sprechen und sie zu fragen, was sie bedeuten? Es ist ein alter Trick, aber es könnte einfach funktionieren. – APC
welcher ist schnell? Hash oder NESTED LOOPS, warum der DBA empfiehlt, NESTED LOOPS zu entfernen? –
@Muhammad Im Allgemeinen ist NESTED LOOPs am besten, wenn Sie einen kleinen Prozentsatz der Zeilen aus einer Tabelle auswählen, und HASH JOIN ist am besten, wenn Sie einen großen Prozentsatz der Zeilen auswählen. Aber das ist ein kompliziertes Thema und viel mehr Informationen sind notwendig, um dies zu beantworten. Für den Anfang würde es hilfreich sein, den gesamten EXPLAIN-Plan im Standardformat zu veröffentlichen, mit 'explave plan for select ...' und dann 'select * from table (dbms_xplan.display);'. Auch, was ist die Abfrage und wie hat der DBA die Änderung vorgenommen? War es ein Codewechsel, Statistik, Planmanagement, etc. –