Tabellenkalkulation als Oracle-Tabellen

Es ist wichtig, dass man weiß, dass man auf Oracle-Daten in Tabellenkalkulationen nicht so schnell zugreifen kann, wie auf interne Sprossendaten. Oracle kann Sprossenniveau-Verriegelung nicht garantieren, da das Betriebssystem und nicht Oracle das Sagen hat. Wenn eine Tabelle als externe Tabelle definiert ist, dann kann Oracle nicht wissen, wann einzelne Sprossendaten verändert werden. Das Betriebsystem teilt Oracle nur mit, dass die gesamte Tabelle verändert wurde.

Darüber hinaus werden Datenblöcke, die aus einer externen Tabelle gelesen werden, nicht in den Zwischenspeicher von Oracle9i gelesen. Die Abfrage unter Listing A zeigt, dass Oracle die Sprossen der externen Tabelle nicht in den RAM-Cache liest.

Wie man unter Listing B sehen kann, sind die Daten aus unserer Tabelle nach einer SQL-Abfrage nicht im Datenspeicher.

Oracle erklärt nicht, ob ein extra Speichermechanismus für externe Tabellen genutzt wird. Mit diesem Mangel muß Oracle9i jedes Mal die gesamte Tabelle lesen, wenn eine SQL-Abfrage auf die externe Tabelle zugreift.

Um Datenintegrität zu gewährleisten, muß Oracle wissen, wann die Tabelle geändert wird, aber es gibt keine Möglichkeit zu wissen, wann bestimmte Tabellenwerte geändert werden. Wenn Oracle herausfindet, dass die unverlinkte Datei aktualisiert wurde, dann werden alle Daten im RAM-Speicher ungültig, und die gesamte Tabelle muß neu gelesen werden. Das ist der Hauptgrund, warum externe Tabellen für große Datenmengen nicht sehr effizient sind.

Weil Oracle Betriebssystemdateien in Datenblöcken liest, kann man berechnen, wie oft Disk I/O erfolgt, indem man die Anzahl der Tabellenblöcke mit einer einfachen Shellscript feststellt. Für dieses Script wissen wir, dass die Oracle-Datenbank eine Blockgröße von 8 KB hat:


bytes=`ls -al|grep emp_ext.csv|awk '{ print $5 }'`
num_bytes=`expr $bytes`
blocks=`expr $num_bytes / 8192`
echo $blocks

Dieses Script sagt uns ganz genau, wie oft die Disk gelesen werden, um auf die externe Oracle-Tabelle zuzugreifen, wenn eine Veränderung vorgenommen wird.

Page: 1 2 3

ZDNet.de Redaktion

Recent Posts

Meta meldet Gewinnsprung im ersten Quartal

Der Nettoprofi wächst um 117 Prozent. Auch beim Umsatz erzielt die Facebook-Mutter ein deutliches Plus.…

5 Tagen ago

Maximieren Sie Kundenzufriedenheit mit strategischem, kundenorientiertem Marketing

Vom Standpunkt eines Verbrauchers aus betrachtet, stellt sich die Frage: Wie relevant und persönlich sind…

5 Tagen ago

Chatbot-Dienst checkt Nachrichteninhalte aus WhatsApp-Quellen

Scamio analysiert und bewertet die Gefahren und gibt Anwendern Ratschläge für den Umgang mit einer…

5 Tagen ago

Microsoft stellt kleines KI-Modell Phi-3 Mini vor

Seine Trainingsdaten umfassen 3,8 Milliarden Parameter. Laut Microsoft bietet es eine ähnliche Leistung wie OpenAIs…

5 Tagen ago

Google schließt kritische Sicherheitslücke in Chrome

Sie erlaubt eine Remotecodeausführung außerhalb der Sandbox. Betroffen sind Chrome für Windows, macOS und Linux.

5 Tagen ago

Microsoft beseitigt Fehler im März-Sicherheitsupdate für Exchange Server

Probleme treten vor allem bei Nutzern von Outlook Web Access auf. Das optionale Hotfix-Update für…

5 Tagen ago