quasardb

QuasarDB is a high-performance, distributed, column-oriented database with native time series support. Transfers, computations, and aggregations are so fast that analysts can work interactively on their data, regardless of the amount stored.

History

An informal history of the origins of quasardb: http://blog.quasardb.net/quasardb-2-0-beta-5/

System Architecture

Shared-Nothing

The data is stored on multiple nodes that are linked together into a cluster. This is a peer-to-peer distributed hash table based on Chord in which the nodes self-organize to share data and handle client requests.

Data Model

Key/Value

quasardb is a distributed key-value store technology.

Storage Model

Decomposition Storage Model (Columnar)

QuasarDB is a column-oriented time series database. The time series are column oriented and can have an arbitrary number of columns, each column has an unique name.

Query Interface

Custom API

quasardb supports rich set of APIs in various languages. Currently APIs are supported in C, C++, Go, Hadoop integration, Java, .NET, Node.js, PHP, Python, REST API, Spark connector

Isolation Levels

Repeatable Read

Transactions in quasardb are snapshot based and provide repeatable reads.

Query Compilation

Not Supported

Stored Procedures

Not Supported

quasardb interface is not in SQL and so it does not support stored procedures.

Storage Architecture

In-Memory

Entries are often kept resident in a write cache so the daemon can rapidly serve a large amount of simultaneous requests. When a user adds or updates an entry on the cluster the entry’s value may not be synced to the disk immediately. However, quasardb guarantees the data is consistent at all times, even in case of hardware or software failure.

Concurrency Control

Multi-version Concurrency Control (MVCC) Two-Phase Locking (Deadlock Prevention)

If two transactions attempt to write to the same entry, the first transaction to operate on the entry wins and the other transaction is canceled. When a transaction writes to an entry, other transactions may access the previous value of the entry.

quasardb Logo
Website

https://quasardb.net/

Tech Docs

https://doc.quasardb.net/

Developer

quasardb SAS

Country of Origin

FR

Start Year

2008

Project Type

Commercial

Written in

C++

Supported languages

C, C++, Go, Java, PHP, Python

Operating Systems

BSD, Linux, OS X, Windows

Licenses

Proprietary