AlaSQL

AlaSQL is a relational DBMS designed to run in web browsers and JavaScript-based application servers (Node.js). It supports both relational tables and document-oriented collections (JSON).

History

The author of AlaSQL is Andrey Gershun, a Russian developer. The initial commit for AlaSQL on Github was on October 26, 2014.

Indexes

Hash Table

AlaSQL uses hash tables for its indexes. Upon index creation, all entries in the table are hashed and stored in a JavaScript object.

Query Interface

SQL

Currently, AlaSQL is only available for JavaScript. AlaSQL uses standard SQL interfaces. However, like many other database management systems, AlaSQL is not fully compliant with any revisions of the SQL database query language. For example, the ALLOCATE keyword, which is available since SQL-92, is not supported by AlaSQL. Full details of SQL compatibility can be found at https://github.com/agershun/alasql/wiki/SQL-keywords

Joins

Hash Join

All SQL join types are supported. Prior to executing a join, both tables are pre-indexed, and WHERE predicates are evaluated.

Logging

Not Supported

Storage Architecture

In-Memory

AlaSQL is an in-memory database that is intended for Node.js and in-browser usage.

Data Model

Relational Document / XML

AlaSQL supports the relational model, but can also act as a document store. Most standard SQL data types are supported, in additional to a number of JavaScript data types, like JSON objects.

Checkpoints

Not Supported

Sample list - p1 - p2 - p3

Concurrency Control

Not Supported

Concurrency control is not supported, nor is parallel execution.

AlaSQL Logo
Website

http://alasql.org

Source Code

https://github.com/agershun/alasql

Tech Docs

https://github.com/agershun/alasql/wiki

Developer

Andrey Gershun

Country of Origin

RU

Start Year

2014

Project Type

Open Source

Written in

JavaScript

Supported languages

JavaScript

Licenses

MIT