Выпуск СКБД AlaSQL 4.0, накіраванай на выкарыстанне ў браўзэрах і Node.js

Даступны выпуск СКБД AlaSQL 4.0, прызначанай для выкарыстання ў web-прыкладаннях у браўзэры, у мабільных дадатках на базе web-тэхналогій або ў серверных апрацоўшчыках на аснове платформы Node.js. СКБД аформлена ў выглядзе JavaScript-бібліятэкі і дазваляе выкарыстоўваць мову SQL. Падтрымліваецца захоўванне дадзеных у традыцыйных рэляцыйных табліцах ці ў форме ўкладзеных JSON-структур, якія не патрабуюць цвёрдага вызначэння схемы захоўвання. Для маніпуляцыі з дадзенымі з каманднага радка падаецца ўтыліта alasql. Код праекту напісаны на JavaScript і распаўсюджваецца пад ліцэнзіяй MIT.

У AlaSQL падтрымліваецца большая частка мовы SQL-99, а таксама прадастаўляюцца дапаўненні для апрацоўкі ў стылі NoSQL (без вызначэння схемы захоўвання) і маніпуляцыі з графамі. У SQL-запытах можна вырабляць аперацыі зліцця (JOIN), групоўкі (GROUP), аб'яднанні (UNION), выкарыстоўваць подзапросы і выразы тыпу ANY, ALL і IN, ужываць функцыі ROLLUP(), CUBE() і GROUPING SETS(). Ёсць абмежаваная падтрымка транзакцый. Падтрымліваецца вызначэнне карыстацкіх функцый, якія можна выкарыстоўваць у SQL-запытах. Для хуткага выкліку функцыі і SQL-выразы могуць быць скампіляваныя (аналаг SQL-аператара PREPARE).

СКБД AlaSQL спраектавана для выкарыстання парадыгмы ETL (Extract, Transform, Load) і маніпуляцыі з дадзенымі ў форме імпарт/апрацоўка/экспарт. Для захоўвання, экспарту і імпарту могуць выкарыстоўвацца фарматы localStorage, IndexedDB, CSV, TAB, TXT, JSON, SQLite і Excel (.xls і .xlsx), маецца на ўвазе што можна напроста выконваць запыты з дадзеных, якія захоўваюцца ў адзначаных фарматах, ці імпартаваць і экспартаваць дадзеныя. Таксама магчымае выкананне аперацыі SELECT над любымі дадзенымі ў аб'ектах JavaScript.

Бібліятэка першапачаткова разлічана на хуткую апрацоўку дадзеных у аператыўнай памяці для прыкладанняў бізнес-аналітыкі і падтрымлівае такія аптымізацыі, як кэшаванне запытаў у форме скампіляваных функцый, папераджальная індэксацыя зліцця табліц і фільтраванне выразаў WHERE перад аперацыямі зліцця. Пры параўнанні з іншымі падобнымі праектамі, AlaSQL апынулася хутчэй SQL.js у тры разы пры выбарцы з аперацыямі SUM, JOIN і GROUP BY, хутчэй Linq у два разы пры выкарыстанні GROUP BY і прыкладна на тым жа ўзроўні, што і API WebSQL (надбудова над SQLite, якая хутка будзе выдаленая з Chrome) пры выбарцы з аперацыямі SUM, JOIN і GROUP BY.

Крыніца: opennet.ru

Дадаць каментар