Ich dachte mir, ich würde meine wichtigsten neuen Funktionen für die kürzlich veröffentlichte Oracle 12c-Datenbank angeben. Ich denke, eines der interessantesten neuen Features ist die Pluggable Database, aber es scheint, als würden alle darüber sprechen. Daher konzentriere ich mich auf andere neue Funktionen, die mich interessieren. Diese Liste ist in keiner bestimmten Reihenfolge.
- Standardwerte für Spalten basierend auf Oracle-Sequenzen – Dies vereinfacht die Codierung, da Sie keinen Trigger für eine neue Zeile erstellen müssen. Dies führt zu …
- IDENTITÄTSspalten – Ich arbeite mit vielen Entwicklern zusammen, die einen SQL Server-Hintergrund haben und diese Funktionalität zu schätzen wissen.
- Adaptive Abfrageoptimierung – Die Fähigkeit des CBO zu erkennen, dass er den Plan falsch verstanden hat, und ohne Eingreifen des DBA zu einem neuen Plan zu wechseln, ist ein großer Sprung für die SQL-Ausführung von Oracle. Dies führt zu …
- Dynamische Statistiken – Oracle kann erkennen, dass die Statistiken zu einem schlechten Ausführungsplan geführt haben, und bei der nächsten Ausführung der Abfrage neue Statistiken verwenden. Bei vielen Gelegenheiten stelle ich fest, dass der nächtliche Autotask Stats Gathering die Statistiken der Tabellen nicht aktualisiert, weil sie nicht als „veraltet“ gelten, obwohl sie es sein sollten. Allzu oft repariere ich schlecht funktionierendes SQL, indem ich einfach die Statistiken einer Tabelle und ihrer Indizes aktualisiere, obwohl dies automatisch für mich erledigt werden sollte.
- Gleichzeitige Ausführung von UNION und UNION ALL – Die Möglichkeit, diese Zweige zu parallelisieren, führt zu viel schnelleren Ausführungen. In meinem Shop verwenden wir UNION und UNION ALL an vielen Stellen in unserer Anwendung.
- Automatische Datenoptimierung (ADO) – Die Möglichkeit, ältere Daten automatisch auf eine andere Speicherebene zu verschieben, reduziert die Arbeitsbelastung des DBA.
- Datenbankinterne Archivierung – Die Möglichkeit, Zeilen als „archiviert“ zu markieren und sie vor Anwendungsbenutzern zu verbergen, ohne sie zu verschieben, wird von meinem Unternehmen gut angenommen. Wir haben ein paar Prozesse, bei denen wir Datensätze von einer Tabelle in eine andere verschieben, um sie zu archivieren.
- LOGTIME-Parameter für Data Pump – Zeitstempel-Protokolleinträge von einem Data Pump-Lauf sollten von Anfang an enthalten sein.
- Eine Datendatei online verschieben – Die Möglichkeit, eine Datendatei zu verschieben, während der Tablespace noch ONLINE und READ WRITE ist, bedeutet keine Ausfallzeit für diesen Tablespace.
- Data Guard Fast Sync – Dies könnte genau die Verbesserung sein, die es uns ermöglicht, den MAX PROTECT-Modus zu implementieren, ohne die Anwendungsleistung zu beeinträchtigen. Ich habe damit noch nicht gespielt, aber Active Data Guard Far Sync sieht auch vielversprechend aus.
- PGA_AGGREGATE_LIMIT – um die gesamte PGA-Größe wirklich zu begrenzen.
- Abfragebares Patch-Inventar – Sie müssen „opatch lsinventory“ nicht mehr verwenden, wenn Sie mit DBMS_QOPATCH abfragen können.
- Zeit der letzten Anmeldung – jetzt verfügbar in SYS.USER$ ist die Zeit, zu der sich jemand zuletzt mit dieser Benutzer-ID angemeldet hat.
Ich freue mich darauf, jedes davon genauer zu untersuchen.