Пуск на СУБД SQLite 3.40

Публикувана е версия 3.40 на SQLite, лека СУБД, оформена като свързваща библиотека. Кодът на SQLite се разпространява като обществено достояние, т.е. може да се използва без ограничения и безвъзмездно за всякакви цели. Финансовата подкрепа на разработчиците на SQLite се осъществява от специално създаден консорциум, в който влизат компании като Adobe, Oracle, Mozilla, Bentley и Bloomberg.

Основни промени:

  • Реализирана е експериментална възможност за компилиране на SQLite в междинен код WebAssembly, способен да се изпълнява в уеб браузър и подходящ за работа с бази данни от уеб приложения на JavaScript. На уеб разработчиците се предоставя високостепенен обектно-ориентиран интерфейс за работа с данни в стил sql.js или Node.js, обвивка над нискоуровневния C API и API на базата на механизма Web Worker, позволяващ създаването на асинхронни обработвачи, изпълнявани в отделни потоци. Данните, които уеб приложенията запазват в WASM версията на SQLite, могат да се съхраняват на страната на клиента с помощта на OPFS (Origin-Private FileSystem) или API window.localStorage.
  • Добавено разширение recovery, предназначено за възстановяване на данни от повредени файлове с БД. В интерфейса на командния ред се използва команда «.recover» за възстановяване.
  • Подобрена е работата на планиращия запитвания. Премахнати са ограничения при използването на индекси с таблици, съдържащи повече от 63 колони (по-рано при операции с колони, чийто порядков номер надвишава 63, индексирането не се прилага). Подобрено е индексирането на стойностите, използвани в изразите. Прекратено е зареждането от диска на големи стрингове и блобове при обработка на оператори NOT NULL и IS NULL. Изключена е материализацията на представления, за които пълно сканиране се извършва само веднъж.
  • В кодовата база, вместо типа «char *» за представяне на имената на файловете, е въведен отделен тип sqlite3_filename.
  • Добавена е вътрешна функция sqlite3_value_encoding().
  • Добавен е режим SQLITE_DBCONFIG_DEFENSIVE, който забранява промяната на версията на схемата за съхранение на данни.
  • В реализацията на параметъра «PRAGMA integrity_check» са добавени допълнителни проверки. Например, в таблици без признак STRICT не трябва да съдържат числови стойности в колони с тип TEXT и стрингови стойности с числа в колони с тип NUMERIC. Също така е добавена проверка за коректността на реда на редовете в таблици с признак «WITHOUT ROWID».
  • В израза «VACUUM INTO» са взети предвид настройките на «PRAGMA synchronous».
  • Добавена е опция за компилация SQLITE_MAX_ALLOCATION_SIZE, която позволява ограничаване на размера на блоковете при разпределение на паметта.
  • Вграденото в SQLite алгоритъм за генериране на псевдослучайни числа е преминало от използване на потоков шифър RC4 към Chacha20.
  • Разрешено е използването на индекси с еднакви имена в различни схеми данни.
  • Извършени са оптимизации за производителността, които намаляват натоварването на CPU с около 1% при типична активност.

Източник: opennet.ru

Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри 🔥 Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри | ProHoster