Wir sind ein ETL-Shop und verwenden stark externe Tabellen. In der Regel werden diese Tabellen auf bevölkerte Staging-Tabellen abgefragt. Es überrascht mich, wie lange es dauert, bis Abfragen Daten aus den externen Tabellen zurückgeben.Warum so langsam Daten von Oracle externen Tabellen zurückgeben?
Normalerweise gibt es eine Verzögerung von etwa 15 Sekunden, bevor ein Ergebnis zurückgegeben wird. Dies gilt auch in den Fällen, in denen die Datendatei keine Daten enthält und wenn die Datendatei nicht vorhanden ist. Die Verzögerung scheint nicht mit der Anzahl der Zeilen in der Datei zusammenzuhängen.
Ich melde mich am Datenbankserver selbst an, auf dem sich die Datendateien der externen Tabelle befinden.
Ist das erwartete Verhalten?
Dateisystem-Operationen (ls, vim) zumindest auf kleineren Dateien passieren ohne Verzögerung.
Alle Dateien auf lokaler Festplatte.
Oracle 12.1.
Oracle Linux Server Version 6,6
Was passiert, wenn Sie die Dateien außerhalb der DB anzeigen, z. mit vim; sind sie langsam zu öffnen, und/oder ist es langsam, die Dateien im Verzeichnis aufzulisten? Ist die Festplatte lokal oder über ein Netzwerk bereitgestellt? Und welches Betriebssystem und welche Datenbankversion verwenden Sie? –
Verwendet das System [externe Tabellen-Präprozessoren] (http://www.oracle.com/technetwork/issue-archive/2011/11-mar/o21nanda-312277.html)? Vielleicht laufen diese Präprozessor-Skripte langsam. –
Nein, keine Präprozessoren. – user2567544