Utgivelsen av databasesystemet Firebird 5.0

Etter to og et halvt år med utvikling er relisen av den relasjonelle DBMS Firebird 5.0 lansert. Firebird fortsetter utviklingen av DBMS-koden InterBase 6.0, som ble åpnet av Borland i 2000. Firebird distribueres under den frie lisensen MPL og støtter ANSI SQL-standarder, inkludert funksjoner som triggere, lagrede prosedyrer og replikering. Binære bygg er tilgjengelige for Linux, Windows, macOS og Android.

Nøkkelnyheter:

  • Muligheten for å utføre operasjoner i flertrådet modus er blitt implementert. Parallellisering med flere tråder kan brukes ved indeksopprettelse, søppeltømming (automatiske og manuelle sweep-operasjoner), oppretting av sikkerhetskopier og gjenoppretting fra dem. gfix -sweep -parallel 4 dbname gbak -b -par 4 -user username -pass password dbname backupname
  • Støtte for partielle indekser er blitt lagt til, som inkluderer bare utvalgte poster som oppfyller betingelsene angitt ved oppretting av indeksen. CREATE INDEX IT1_COL ON T1 (COL) WHERE COL < 100;
  • I SELECT WITH LOCK-, UPDATE- og DELETE-uttrykk er syntaksen 'SKIP LOCKED' implementert, noe som lar deg ekskludere poster for hvilke det er satt en lås på tidspunktet for forespørselen (for eksempel for å unngå å vente på at låsen blir frigitt ved kryssing med en annen transaksjon).
  • Mulighet for å oppdatere databasen til den nyeste mellomversjonen av lagringssystemet (ODS — On-Disk-Structure) på farten (inline update) uten å måtte opprette og gjenopprette fra sikkerhetskopi er nå mulig. For eksempel kan man nå på farten konvertere en database i Firebird 4.0-format (ODS 13.0) til Firebird 5.0-format (ODS 13.1).
  • Et automatisk cache for kompilerte SQL-uttrykk er implementert (utgåtte poster renses etter behov). Størrelsen på cachen angis via parameteren MaxStatementCacheSize i firebird.conf.
  • Et grensesnitt for profilering av SQL og PSQL er lagt til, som gjør det mulig å vurdere tiden det tar å kjøre hver forespørsel, samle statistikk om antall forespørsel og identifisere ytelsesproblemer.
  • I MERGE-uttrykket er støtte for betinget blokken 'WHEN NOT MATCHED BY SOURCE' lagt til, som aktiveres når den opprinnelige posten ikke samsvarer med noen poster i målsettet. 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
  • Muligheten for å returnere flere rader med RETURNING-uttrykket er sikret, hvis det angitte DML-uttrykket dekker flere rader (tidligere ble det gitt en feil 'multiple rows in singleton select' i slike tilfeller).
  • Nye innebygde funksjoner er lagt til: UNICODE_CHAR for å returnere unicode-tegnet som svarer til en gitt kode, og UNICODE_VAL for å returnere koden for et gitt tegn. Parameteren QUARTER for å bestemme kvartalnummeret er lagt til i funksjonene EXTRACT, FIRST_DAY og LAST_DAY.
  • Det er lagt til en ny systempakke RDB$BLOB_UTIL med en samling av operasjoner for BLOB-er for PSQL-moduler.
  • Algoritmen for komprimering av poster er forbedret, og den bruker nå en variabel lengdeteller for mer effektiv pakkering av gjentatte datasekvenser. Optimaliseringen har ført til en betydelig økning i kompresjonsgraden for delvis fylte lange VARCHAR-felter med data i UTF-8-koding.
  • Støtte for toveis (scrollable) markører ved ekstern nettverks tilgang til databasen er lagt til.
  • Ytelsesoptimalisering av kopiering av BLOB-er er gjennomført.
  • Full støtte for syntaksen for strengdefinisjon som beskrevet i SQL-standarden er lagt til. For eksempel kan strenger nå brytes av kommentarer eller mellomrom: select ‘ab’ 2F* comment *2F ‘cd’ from RDB$DATABASE; select ‘ab’ ‘cd’ from RDB$DATABASE;

Kilde: opennet.ru

Kjøp pålitelig hosting for nettsteder med DDoS-beskyttelse, VPS VDS-servere 🔥 Kjøp pålitelig hosting for nettsteder med DDoS-beskyttelse, VPS VDS-servere | ProHoster