Rilaxx ta' SQLite 3.40

Ir-rilaxx ta 'SQLite 3.40, DBMS ħafif iddisinjat bħala librerija plug-in, ġie ppubblikat. Il-kodiċi SQLite huwa mqassam fid-dominju pubbliku, i.e. jistgħu jintużaw mingħajr restrizzjonijiet u mingħajr ħlas għal kwalunkwe skop. L-appoġġ finanzjarju għall-iżviluppaturi SQLite huwa pprovdut minn konsorzju maħluq apposta, li jinkludi kumpaniji bħal Adobe, Oracle, Mozilla, Bentley u Bloomberg.

Bidliet ewlenin:

  • Ġiet implimentata karatteristika sperimentali biex tikkompila SQLite f'kodiċi intermedju tal-WebAssembly, kapaċi taħdem f'web browser u adattata għall-organizzazzjoni tax-xogħol mad-database minn applikazzjonijiet tal-web f'JavaScript. L-iżviluppaturi tal-web huma pprovduti b'interface orjentata lejn l-oġġetti ta' livell għoli biex jaħdmu b'dejta fl-istil ta' sql.js jew Node.js, rabta fuq l-API C ta' livell baxx u API bbażata fuq il-mekkaniżmu tal-Web Worker, li jippermetti inti toħloq handlers asinkroniċi esegwiti f'ħjut separati. Dejta li l-applikazzjonijiet tal-web jaħżnu fil-verżjoni WASM ta 'SQLite tista' tinħażen fuq in-naħa tal-klijent billi tuża OPFS (Origin-Private FileSystem) jew l-API window.localStorage.
  • Miżjud estensjoni ta 'rkupru, iddisinjata biex tirkupra data minn fajls bil-ħsara mid-database. Fl-interface tal-linja tal-kmand, il-kmand ".recover" jintuża għall-irkupru.
  • Prestazzjoni mtejba tal-ippjanar tal-mistoqsijiet. Ir-restrizzjonijiet tneħħew meta jintużaw indiċi b'tabelli b'aktar minn 63 kolonna (preċedentement, l-indiċjar ma kienx applikat meta operazzjonijiet b'kolonni li n-numru ordinali tagħhom jaqbeż it-63). Indiċjar imtejjeb tal-valuri użati fl-espressjonijiet. Waqaf tagħbija kordi kbar u blobs mid-disk meta tipproċessa l-operaturi NOT NULL u IS NULL. Il-materjalizzazzjoni tal-veduti li għalihom isir skan sħiħ darba biss hija eskluża.
  • Fil-codebase, minflok it-tip "char *", jintuża tip separat sqlite3_filename biex jirrappreżenta l-ismijiet tal-fajls.
  • Miżjud funzjoni interna sqlite3_value_encoding ().
  • Modalità miżjuda SQLITE_DBCONFIG_DEFENSIVE, li tipprojbixxi t-tibdil tal-verżjoni tal-iskema tal-ħażna tad-dejta.
  • Verifiki addizzjonali ġew miżjuda mal-implimentazzjoni tal-parametru “PRAGMA integrity_check”. Pereżempju, tabelli mingħajr l-attribut STRICT m'għandux ikun fihom valuri numeriċi f'kolonni ta 'tip TEXT u valuri ta' string b'numri f'kolonni ta 'tip NUMERIC. Miżjud ukoll kontroll għall-ordni korretta tar-ringieli fit-tabelli bl-attribut "MINGĦAJR ROWID".
  • L-espressjoni "VACUUM INTO" tqis is-settings "PRAGMA synchronous".
  • Miżjud għażla ta 'assemblaġġ SQLITE_MAX_ALLOCATION_SIZE, li tippermettilek tillimita d-daqs tal-blokki meta talloka l-memorja.
  • L-algoritmu ta' ġenerazzjoni ta' numri psewdo-random integrat ta' SQLite ġie mċaqlaq mill-użu taċ-ċifra tal-fluss RC4 għal Chacha20.
  • Huwa permess li jintużaw indiċijiet bl-istess ismijiet fi skemi ta' data differenti.
  • Saru ottimizzazzjonijiet tal-prestazzjoni biex titnaqqas it-tagħbija tas-CPU b'madwar 1% waqt attività tipika.

Sors: opennet.ru

Żid kumment