Erscheinung der relationalen Datenbank Firebird 5.0

Nach zweieinhalb Jahren Entwicklung wird die Version 5.0 der relationalen Datenbank Firebird veröffentlicht. Firebird baut auf dem Code der Datenbank InterBase 6.0 auf, der 2000 von Borland freigegeben wurde. Firebird wird unter der MPL-Lizenz verbreitet und unterstĂŒtzt die ANSI SQL-Standards, einschließlich Funktionen wie Trigger, gespeicherte Prozeduren und Replikation. Binaries sind fĂŒr Linux, Windows, macOS und Android verfĂŒgbar.

Wichtige Neuerungen:

  • Die Möglichkeit, Operationen im Multithread-Modus auszufĂŒhren, wurde implementiert. Die Parallelisierung in mehreren Threads ist anwendbar beim Erstellen von Indizes, der MĂŒllsammlung (automatische und manuelle Sweep-Operationen), beim Erstellen von Sicherungskopien und der Wiederherstellung aus diesen. gfix -sweep -parallel 4 dbname gbak -b -par 4 -user username -pass password dbname backupname
  • Die UnterstĂŒtzung von partiellen Indizes wurde hinzugefĂŒgt, die nur selektive DatensĂ€tze umfassen, die den Bedingungen entsprechen, die beim Erstellen des Index angegeben wurden. CREATE INDEX IT1_COL ON T1 (COL) WHERE COL < 100;
  • In den SELECT WITH LOCK-, UPDATE- und DELETE-Anweisungen wurde die Syntax „SKIP LOCKED“ implementiert, die es ermöglicht, DatensĂ€tze auszuschließen, fĂŒr die zum Zeitpunkt der Anfrage eine Sperre gesetzt ist (zum Beispiel, um nicht auf die Freigabe der Sperre bei Überschneidungen mit einer anderen Transaktion warten zu mĂŒssen).
  • Die Möglichkeit wurde hinzugefĂŒgt, die Datenbank auf die aktuelle Zwischenversion der Speichereinheit (ODS – On-Disk-Structure) im laufenden Betrieb (Inline-Update) zu aktualisieren, ohne eine Sicherungskopie zu erstellen und wiederherzustellen. Zum Beispiel kann jetzt eine Datenbank im Firebird 4.0-Format (ODS 13.0) im laufenden Betrieb in das Firebird 5.0-Format (ODS 13.1) konvertiert werden.
  • Ein Cache fĂŒr kompilierte SQL-Anweisungen wurde implementiert, der automatisch verwaltet wird (veraltete EintrĂ€ge werden bei Bedarf bereinigt). Die GrĂ¶ĂŸe des Caches wird ĂŒber den Parameter MaxStatementCacheSize in der firebird.conf festgelegt.
  • Eine BenutzeroberflĂ€che fĂŒr das Profiling von SQL und PSQL wurde hinzugefĂŒgt, die es ermöglicht, die AusfĂŒhrungszeit jeder Anfrage zu bewerten, Statistiken ĂŒber die Anzahl der Anfragen zu sammeln und Leistungsprobleme zu identifizieren.
  • Im MERGE-Befehl wurde die UnterstĂŒtzung fĂŒr den bedingten Block „WHEN NOT MATCHED BY SOURCE“ hinzugefĂŒgt, der ausgelöst wird, wenn der Originaleintrag keiner Zeile im Zielset entspricht. MERGE INTO customers c USING new_customers nc ON (c.id = nc.id) WHEN MATCHED THEN UPDATE SET name = nc.name WHEN NOT MATCHED BY SOURCE THEN DELETE
  • Die Möglichkeit, mehrere Zeilen mit dem Ausdruck RETURNING zurĂŒckzugeben, wurde sichergestellt, wenn das angegebene DML-Statement mehrere Zeilen abdeckt (frĂŒher wurde in solchen FĂ€llen der Fehler „multiple rows in singleton select“ angezeigt).
  • Neue integrierte Funktionen wurden hinzugefĂŒgt: UNICODE_CHAR zum RĂŒckgeben des Unicode-Zeichens, das dem angegebenen Code entspricht, und UNICODE_VAL zum RĂŒckgeben des Codes fĂŒr das angegebene Zeichen. In die Funktionen EXTRACT, FIRST_DAY und LAST_DAY wurde der Parameter QUARTER eingefĂŒgt, um die Quartalsnummer zu bestimmen.
  • Ein neues Systempaket RDB$BLOB_UTIL wurde mit einer Sammlung von Operationen fĂŒr BLOBs fĂŒr PSQL-Module hinzugefĂŒgt.
  • Der Algorithmus zur Komprimierung von DatensĂ€tzen wurde verbessert und wendet nun einen variablen LĂ€ngen-ZĂ€hler an, um wiederholte Datensequenzen effizienter zu verpacken. Die Optimierung hat die Komprimierungsrate unvollstĂ€ndig ausgefĂŒllter langer VARCHAR-Felder mit UTF-8-codierten Daten erheblich erhöht.
  • Die Möglichkeit zur Arbeit mit bidirektionalen Cursors (scrollable) wurde bei der Remote-Netzwerkansprache zu DB hinzugefĂŒgt.
  • Die Leistung beim Kopieren von Blobs wurde optimiert.
  • Die vollstĂ€ndige UnterstĂŒtzung der in SQL standardisierten String-Definitionen wurde hinzugefĂŒgt. Zum Beispiel können Strings jetzt durch Kommentare oder Leerzeichen unterbrochen werden: select ‘ab’ /* comment */ ‘cd’ from RDB$DATABASE; select ‘ab’ ‘cd’ from RDB$DATABASE;

Quelle: opennet.ru

Erwerben Sie zuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz, VPS VDS-Server đŸ”„ Kaufen Sie zuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz, VPS VDS-Server | ProHoster