Wydanie AlaSQL 4.0 DBMS przeznaczone do użytku w przeglądarkach i Node.js

Dostępna jest wersja systemu AlaSQL 4.0 DBMS, przeznaczona do stosowania w aplikacjach webowych w przeglądarce, w aplikacjach mobilnych bazujących na technologiach webowych lub w procesorach serwerowych bazujących na platformie Node.js. DBMS został zaprojektowany jako biblioteka JavaScript i pozwala na użycie języka SQL. Przechowywanie danych obsługiwane jest w tradycyjnych tabelach relacyjnych lub w formie zagnieżdżonych struktur JSON, które nie wymagają sztywnej definicji schematu przechowywania. Do manipulowania danymi z wiersza poleceń służy narzędzie alasql. Kod projektu napisany jest w języku JavaScript i rozpowszechniany na licencji MIT.

AlaSQL obsługuje większość języka SQL-99, a także zapewnia rozszerzenia do przetwarzania w stylu NoSQL (bez określania schematu przechowywania) i manipulacji wykresami. W zapytaniach SQL można wykonywać operacje JOIN, GROUP, UNION, używać podzapytań i wyrażeń, takich jak ANY, ALL i IN, a także używać funkcji ROLLUP(), CUBE() i GROUPING SETS(). Obsługa transakcji jest ograniczona. Obsługuje definicję funkcji zdefiniowanych przez użytkownika, których można używać w zapytaniach SQL. Aby szybko wywoływać funkcje i wyrażenia SQL, można skompilować je (analogicznie do operatora SQL PREPARE).

AlaSQL DBMS został zaprojektowany do wykorzystania paradygmatu ETL (Extract, Transform, Load) i manipulowania danymi w formie importu/przetwarzania/eksportu. Do przechowywania, eksportowania i importowania można używać formatów LocalStorage, IndexedDB, CSV, TAB, TXT, JSON, SQLite i Excel (.xls i .xlsx), co oznacza, że ​​dane przechowywane w wymienionych formatach można bezpośrednio przeglądać lub importować i eksportować. . Możliwe jest także wykonanie operacji SELECT na dowolnych danych w obiektach JavaScript.

Biblioteka jest natywnie zaprojektowana do szybkiego przetwarzania w pamięci dla aplikacji Business Intelligence i obsługuje optymalizacje, takie jak buforowanie zapytań w postaci skompilowanych funkcji, proaktywne indeksowanie łączenia tabel i filtrowanie klauzul WHERE przed operacjami scalania. W porównaniu z innymi podobnymi projektami, AlaSQL okazał się trzy razy szybszy niż SQL.js przy wybieraniu za pomocą operacji SUM, JOIN i GROUP BY, dwa razy szybszy niż Linq przy użyciu GROUP BY i mniej więcej na tym samym poziomie co API WebSQL ( dodatek do SQLite, który wkrótce zostanie usunięty z Chrome) podczas wybierania za pomocą operacji SUM, JOIN i GROUP BY.

Źródło: opennet.ru

Dodaj komentarz