Utgivelse av Firebird 5.0 DBMS

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

Nøkkelinnovasjoner:

  • Muligheten til å utføre operasjoner i flertrådsmodus er implementert. Parallellisering i flere tråder er aktuelt når du oppretter indekser, samler søppel (automatiske og manuelle sveipeoperasjoner), oppretter sikkerhetskopier og gjenoppretter fra dem. gfix -sweep -parallel 4 dbname gbak -b -par 4 -bruker brukernavn -pass passord dbname backupname
  • Lagt til støtte for delvise indekser som kun inkluderer utvalgte poster som oppfyller betingelsene som er spesifisert ved opprettelse av indeksen. LAG INDEKS IT1_COL PÅ T1 (COL) HVOR COL < 100;
  • SELECT WITH LOCK-, UPDATE- og DELETE-setningene implementerer "SKIP LOCKED"-syntaksen, som lar deg ekskludere poster som har en lås på tidspunktet forespørselen sendes (for eksempel for ikke å vente på at låsen frigjøres når du krysser en annen transaksjon).
  • Lagt til muligheten til å oppdatere databasen til den gjeldende mellomversjonen av lagringen (ODS - On-Disk-Structure) på farten (innebygd oppdatering) uten å opprette og gjenopprette fra en sikkerhetskopi. For eksempel kan du nå konvertere en database i Firebird 4.0 (ODS 13.0)-formatet til Firebird 5.0 (ODS 13.1)-formatet på farten.
  • Implementerte en hurtigbuffer med kompilerte SQL-setninger som vedlikeholdes automatisk (foreldede oppføringer slettes etter behov). Bufferstørrelsen settes via parameteren MaxStatementCacheSize i firebird.conf.
  • Et grensesnitt er lagt til for profilering av SQL og PSQL, slik at du kan estimere utførelsestiden for hver spørring, samle statistikk over antall spørringer og identifisere ytelsesproblemer.
  • Lagt til støtte til MERGE-uttrykket for den betingede blokken "WHEN NOT MATCHED BY SOURCE", som utløses når kildeposten ikke samsvarer med noen poster i målsettet. SLÅ TIL KUNDER c BRUKE new_customers nc PÅ (c.id = nc.id) NÅR MATCHED, SÅ OPPDATER SET name = nc.name NÅR DET IKKE KOMMER SAMMEN AV KILDE, SLETT SÅ
  • Det er nå mulig å returnere flere rader ved å bruke et RETURNING-uttrykk hvis et gitt DML-uttrykk spenner over flere rader (tidligere ble feilen "flere rader i singleton select" vist i slike situasjoner).
  • Nye innebygde funksjoner er lagt til: UNICODE_CHAR for å returnere unicode-tegnet som tilsvarer den gitte koden, og UNICODE_VAL for å returnere koden for det gitte tegnet. QUARTER-parameteren er lagt til funksjonene EXTRACT, FIRST_DAY og LAST_DAY for å bestemme kvartalsnummeret.
  • En ny systempakke RDB$BLOB_UTIL er lagt til med et utvalg operasjoner med BLOB-er for PSQL-moduler.
  • Rekordkomprimeringsalgoritmen er forbedret for å bruke en teller med variabel lengde for mer effektivt å pakke gjentatte datasekvenser. Optimaliseringen har betydelig forbedret komprimeringsforholdet til ufullstendig fylte lange VARCHAR-felt med UTF-8-kodede data.
  • Lagt til muligheten til å arbeide med toveis markører (rullbare) når du får ekstern tilgang til en database over et nettverk.
  • Ytelsen til blob-kopiering er optimert.
  • Lagt til full støtte for strengdefinisjonssyntaksen beskrevet i SQL-standarden. For eksempel kan linjer nå brytes av kommentarer eller mellomrom: velg 'ab' /* comment */ 'cd' fra RDB$DATABASE; velg 'ab' 'cd' fra RDB$DATABASE;

Kilde: opennet.ru

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