Release van de database Firebird 5.0

Na het tweeƫnhalf jaar durende ontwikkelingsproces is de release van de relationele database Firebird 5.0 gepresenteerd. Firebird blijft de ontwikkeling van de databasecode InterBase 6.0 voortzetten, die in 2000 werd vrijgegeven door Borland. Firebird wordt verspreid onder de open licentie MPL en ondersteunt de ANSI SQL-normen, inclusief mogelijkheden zoals triggers, opgeslagen procedures en replicatie. Binaire pakketten zijn beschikbaar voor Linux, Windows, macOS en Android.

Belangrijke vernieuwingen:

  • De mogelijkheid om bewerkingen in meerdere threads uit te voeren is geĆÆmplementeerd. Parallelisatie in meerdere threads is van toepassing bij het aanmaken van indexen, het opruimen van ongebruikte gegevens (automatische en handmatige sweep-operaties), het maken van back-ups en het herstellen daarvan. gfix -sweep -parallel 4 dbname gbak -b -par 4 -user username -pass password dbname backupname
  • Ondersteuning voor gedeeltelijke indexen is toegevoegd, die alleen selectieve records bevatten die voldoen aan de voorwaarden die zijn opgegeven bij het maken van de index. CREATE INDEX IT1_COL ON T1 (COL) WHERE COL < 100;
  • In de expressies SELECT WITH LOCK, UPDATE en DELETE is de syntaxis 'SKIP LOCKED' geĆÆmplementeerd, waarmee records kunnen worden uitgesloten waarvoor tijdens het verzenden van het verzoek een blokkering is ingesteld (bijvoorbeeld om te voorkomen dat men wacht op het vrijgeven van een blokkering tijdens een andere transactie).
  • De mogelijkheid om de database live bij te werken naar de nieuwste tussentijdse versie van de opslagstructuur (ODS - On-Disk-Structure) is toegevoegd zonder een back-up te maken of te herstellen. Bijvoorbeeld, nu is het mogelijk om de database in Firebird 4.0-formaat (ODS 13.0) live te converteren naar Firebird 5.0-formaat (ODS 13.1).
  • Een cache van gecompileerde SQL-expressies is geĆÆmplementeerd, die automatisch wordt beheerd (verouderde records worden indien nodig gewist). De grootte van de cache wordt ingesteld via de parameter MaxStatementCacheSize in firebird.conf.
  • Er is een interface toegevoegd voor het profileren van SQL en PSQL, waarmee de uitvoeringstijd van elke query kan worden beoordeeld, statistieken over het aantal queries kan worden verzameld en prestatieproblemen kunnen worden geĆÆdentificeerd.
  • In de MERGE-expressie is ondersteuning voor een voorwaardelijk blok 'WHEN NOT MATCHED BY SOURCE' toegevoegd, dat wordt geactiveerd wanneer de oorspronkelijke record niet overeenkomt met een record in de doelset. 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
  • De mogelijkheid om meerdere rijen terug te geven met de RETURNING-expressie is gegarandeerd, als de opgegeven DML-expressie meerdere rijen dekt (vroeger werd in dergelijke situaties de foutmelding 'multiple rows in singleton select' weergegeven).
  • Nieuwe ingebouwde functies toegevoegd: UNICODE_CHAR om het unicode-teken te retourneren dat overeenkomt met de gegeven code, en UNICODE_VAL om de code voor een gegeven teken te retourneren. In de functies EXTRACT, FIRST_DAY en LAST_DAY is de parameter QUARTER toegevoegd om het kwartaalnummer te bepalen.
  • Er is een nieuw systeempakket RDB$BLOB_UTIL toegevoegd met een reeks bewerkingen voor BLOB's voor PSQL-modules.
  • Het algoritme voor het comprimeren van records is verbeterd en past nu een variabele lengte teller toe voor een efficiĆ«ntere verpakking van herhaalde datasequenties. Deze optimalisatie heeft de compressiegraad van niet volledig gevulde lange VARCHAR-velden met UTF-8-gegevens aanzienlijk verhoogd.
  • Er is ondersteuning toegevoegd voor bidirectionele cursors (scrollable) bij externe netwerkverzoeken naar de database.
  • De prestaties van het kopiĆ«ren van BLOB's zijn geoptimaliseerd.
  • Volledige ondersteuning toegevoegd voor de syntaxis van tekstdefinities zoals beschreven in de SQL-standaard. Bijvoorbeeld, tekst kan nu worden onderbroken door opmerkingen of spaties: select ā€˜ab’ /* comment */ ā€˜cd’ from RDB$DATABASE; select ā€˜ab’ ā€˜cd’ from RDB$DATABASE;

Bron: opennet.ru

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers šŸ”„ Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster