AlaSQL 4.0 DBMS Aimed at Browser and Node.js Use

Available Issue DBMS ALASQL 4.0 , designed for use in Web applications in a browser, in mobile applications based on Web technologies or in server handlers based on the Node.js. The DBMS is decorated in the form of a JavaScript library and allows you to use the SQL language. Supporting data is supported in traditional relational tables or in the form of invested JSON structures that do not require a rigid determination of storage scheme. For manipulation with data from the command line, an ALASQL utility is provided. The project code is written on JavaScript and spreads under the license mit.

In ALASQL Most of the SQL-99 language, and additions are provided for NOSQL-style processing (without determining the storage scheme) and manipulations with graphs. In SQL, you can carry out merge operations (Join), groups (Group), association (Union), use subclasses and expressions such as ANY, All and In, apply the functions of rollup (), cube () and grouping sets (). There is limited transaction support. supported Determining user functions that can be used in SQL-sales. For a quick call to call the function and SQL can be compiled (an analogue of the SQL-operator Prepare).

ALASQL DBMS is designed to use the paradigm etl (Extract, Transform, Load) and manipulations with data in the form of imports /export. For storage, export and imports, Localstorage, Indexeddb, CSV, Tab, Txt, JSON, SQLite and Excel and .xlsx) can be used, it is understood that you can directly execute the requests from data stored in the marked formats, or import and export data. It is also possible to perform Select surgery over any data in JavaScript facilities.

The library is originally designed for rapid data processing in RAM for business analytics and supports optimization such as caching in the form of compiled functions, proactive indexing of the mergers of tables and filtration of What mergers before operations. At comparison with other similar projects, Alasql turned out to be faster sql.js three times when sample with SUM, Join and Group by, faster linq by two times when using Group By and approximately at the same level as the Websql API (superstructure over SQLite, which will soon be removed from Chrome) when sample with SUM, Join and Group by.

/Reports, release notes, official announcements.