Nadchodzi SQLite 3.40 z oficjalnym wsparciem dla Wasm i nie tylko

SQLite

SQLite to lekki silnik bazy danych

ten wydanie nowej wersji popularnego DBMS „SQLite 3.40”, lekki DBMS zaprojektowany jako biblioteka wtyczek.

SQLite to lekki silnik relacyjnej bazy danych dostępny przez język SQL. W przeciwieństwie do tradycyjnych serwerów bazodanowych, takich jak MySQL czy PostgreSQL, jego szczególną cechą nie jest odtworzenie zwykłego schematu klient-serwer, ale bezpośrednia integracja z programami. W rzeczywistości cała baza danych (instrukcje, tabele, indeksy i dane) jest przechowywana w pliku niezależnym od platformy.

Dzięki swojej wyjątkowej lekkości SQLite jest jednym z najczęściej używanych silników baz danych na świecie. Wykorzystywana jest w wielu programach konsumenckich, jest też bardzo popularna w systemach wbudowanych, w tym w większości nowoczesnych smartfonów.

Główne nowe funkcje SQLite 3.40

W prezentowanej nowej wersji podkreśla się, że a eksperymentalna możliwość kompilacji SQLite do kodu WebAssembly Pośredni, który można uruchomić w przeglądarce internetowej i nadaje się do organizowania pracy bazodanowej z poziomu aplikacji webowych w języku JavaScript.

Twórcy stron internetowych mają zorientowany obiektowo interfejs wysokiego poziomu do pracy z danymi w stylu sql.js lub Node.js, łączący niskopoziomowe API C i API oparte na mechanizmie Web Worker, który umożliwia tworzenie kontrolerów asynchronicznych że działają na osobnych wątkach. Dane, które aplikacje internetowe przechowują w wersji SQLite WASM, mogą być przechowywane po stronie klienta przy użyciu OPFS (Origin-Private FileSystem) lub interfejsu API window.localStorage.

Kolejną zmianą, która wyróżnia się w tej nowej wersji, jest poprawiona wydajność planowania zapytań, Ponadto usunięto ograniczenia przy stosowaniu indeksów z tabelami powyżej 63 kolumn (wcześniej nie stosowano indeksowania dla operacji na kolumnach, których liczba porządkowa przekracza 63).

SQLite 3.40 wprowadza również a poprawione indeksowanie wartości używanych w wyrażeniach, Zatrzymano również ładowanie dużych ciągów znaków i obiektów blob z dysku podczas przetwarzania operatorów NOT NULL i IS NULL. Materializacja wykluczona z widoków, dla których pełne skanowanie wykonywane jest tylko raz.

Do implementacji parametru „PRAGMA Integrity_check” dodano dodatkowe kontrole. Na przykład tabele bez atrybutu STRICT nie powinny zawierać wartości liczbowych w kolumnach tekstowych oraz wartości łańcuchowych z liczbami w kolumnach liczbowych.

Oprócz tego podkreśla się również, że dodano rozszerzenie odzyskiwania, przeznaczony do odzyskiwania danych z uszkodzonych plików bazy danych. Interfejs wiersza poleceń używa polecenia „.recover” do przywrócenia.

Z innych zmian które wyróżniają się na tle nowej wersji:

  • W kodzie zamiast typu „char *” do reprezentowania nazw plików używany jest osobny typ sqlite3_filename.
  • Dodano funkcję wewnętrzną sqlite3_value_encoding().
  • Dodano tryb SQLITE_DBCONFIG_DEFENSIVE, aby zapobiec zmianie wersji schematu magazynu.
  • Dodano również w celu sprawdzenia poprawności kolejności wierszy w tabelach ze znakiem „BEZ ROWID”.
  • Wyrażenie „VACUUM INTO” uwzględnia ustawienia „PRAGMA synchronous”.
  • Dodano opcję kompilatora SQLITE_MAX_ALLOCATION_SIZE, która pozwala ograniczyć rozmiar bloków podczas alokacji pamięci.
  • Algorytm generowania liczb pseudolosowych wbudowany w SQLite został przeniesiony z szyfrowania strumieniowego RC4 do Chacha20.
  • Dozwolone jest stosowanie indeksów o tej samej nazwie w różnych schematach danych.
  • Wprowadzono optymalizacje wydajności, aby zmniejszyć obciążenie procesora o około 1% podczas typowej aktywności.

Wreszcie, jeśli chcesz dowiedzieć się więcej na ten temat Powinieneś wiedzieć, że kod SQLite jest rozpowszechniany w domenie publicznej, to znaczy można go używać bez ograniczeń i bezpłatnie w dowolnym celu.

Wsparcie finansowe dla programistów SQLite zapewnia specjalnie utworzone konsorcjum, w skład którego wchodzą takie firmy jak Adobe, Oracle, Mozilla, Bentley czy Bloomberg.

Możesz sprawdzić więcej szczegółów na temat tej nowej wersji pod adresem poniższy link.


Bądź pierwszym który skomentuje

Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: Miguel Ángel Gatón
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.