Izdaja DBMS SQLite 3.45

Objavljen je izdan SQLite 3.45, lagane SGBD, koja je predstavljena kao dinamička biblioteka. Kod SQLite-a se distribuira kao javno dobro (public domain), što znači da se može koristiti bez ograničenja i besplatno u razne svrhe. Finansijsku podršku razvoju SQLite-a pruža posebno formirani konzorcijum, u kojem su uključene kompanije kao što su Bentley, Bloomberg, Expensify i Navigation Data Standard.

Glavne spremembe:

  • Sve SQL funkcije za rad sa JSON formatom su prepisane i prevedene na novi unutrašnji format JSONB stabla, koje se serializuje i može se čuvati u bazi podataka kako bi se izbeglo ponovo parsiranje prilikom korišćenja JSON vrednosti. Nove verzije funkcija za generisanje JSON-a sada generišu binarni format JSONB umesto tekstualnog. U funkciju json_valid() dodat je opcioni drugi argument, putem kojeg se može odrediti bitna maska koja definiše karakteristike ispravnog JSON-a (na primer, kada se koristi 0x04, ispravnim će se smatrati blob JSONB, kada se koristi 0x01 tekstualni JSON u RFC-8259 formatu, a kada se koristi 0x05 oba varijante).
  • U virtuelnu tabelu FTS5, koja se koristi za puntekstualno pretraživanje, dodata je opcija tokendata, koja omogućava korišćenje sopstvenih tokenizatora.
  • Podrazumevano je uključena optimizacija SQLITE_DIRECT_OVERFLOW_READ, pri kojoj se overflow stranice, koje su veće od standardne veličine b-tree stranice, čitaju direktno iz datoteke, zaobilazeći keš. Za isključivanje tokom kompilacije može se koristiti opcija "-DSQLITE_DIRECT_OVERFLOW_READ=0".
  • U planeru zahteva poboljšana je efikasnost optimizacije tranzitivnih ograničenja (transitive constraint) i unapređeno je ignorisanje indeksa koji su ocenjeni kao niskokvalitetni tokom izvršavanja operacije ANALYZE.
  • U komandnoj liniji poboljšano je prikazivanje sadržaja u UTF-8 kodiranju na Windows platformi. Osigurano je automatsko prepoznavanje korišćenja CLI interfejsa prilikom reprodukcije "dump" skripti i unošenje odgovarajućih promena u podešavanja, kao što su "dbconfig defensive off" i "dbconfig dqs_dll on".
  • U SQL funkcijama definisanim na strani aplikacije dodata je osobina SQLITE_RESULT_SUBTYPE, koja omogućava pozivanje funkcije sqlite3_result_subtype() za inspekciju podtipova argumenata.

Dodatno se može istaknuti razvoj u eksperimentalnim gradnjama SQLite novog načina vođenja dnevnika transakcija — WAL2 («PRAGMA journal_mode = wal2»), pri čemu se koriste dva wal-datoteke («database-wal» i «database-wal2») umesto jedne. Kada se podaci beleže u Bazu podataka, dodaju se novi podaci u prvu wal-datoteku. Ako prva wal-datoteka dostigne dovoljno veliku veličinu, vrši se prebacivanje na unos u drugu datoteku. Nakon prebacivanja na drugu wal-datoteku, prva postaje dostupna za fiksiranje izmena (checkpoint) i prepisivanje. Tako, kada druga wal-datoteka dostigne veliku veličinu, vrši se prebacivanje na prvu i tako dalje, što rešava problem sa nekontrolisanim povećanjem wal-datoteke u situacijama kada dugo ne dolazi do fiksiranja transakcije ili se izvode dugotrajni procesi čitanja.

Izvor: opennet.ru

Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki 🔥 Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki | ProHoster