SiriDB is a highly-scalable, robust and super fast time series database. Build from the ground up SiriDB uses a unique mechanism to operate without a global index and allows server resources to be added on the fly. SiriDB's unique query language includes dynamic grouping of time series for easy analysis over large amounts of time series.
C Python Makefile Go Objective-C Roff Shell
Latest commit 753a79b Jul 20, 2017 @joente joente committed on GitHub Update README.md

README.md

SiriDB Server

SiriDB is a highly-scalable, robust and super fast time series database.



Installation

Ubuntu

For Ubuntu we have a deb package available which can be downloaded here.

Note: SiriDB requires libexpat1 and libuv1, these libraries can be easily installed using apt:

apt install libexpat1 libuv1

The .deb package installs a configuration file at /etc/siridb/siridb.conf. You might want to view or change this file before starting SiriDB.

Compile from source

From version 2.0.19 libcleri is not included as part of this source anymore and needs to be installed separately. libcleri can be found here: https://github.com/transceptor-technology/libcleri

Linux

Install the following requirements: (Ubuntu)

sudo apt install libpcre3-dev
sudo apt install libuv1-dev 
sudo apt install uuid-dev 

Compile (replace Release with Debug for a debug build):

cd ./Release
make clean
make

OSX

Install the following requirements:

brew install pcre
brew install libuv
brew install ossp-uuid

Compile (replace Release with Debug for a debug build):

cd ./Release
export CFLAGS="-I/usr/local/include"
export LDFLAGS="-L/usr/local/lib"
make clean
make

Configuration

SiriDB requires a configuration file to run. By default SiriDB will search for the configuration file in /etc/siridb/siridb.conf but alternatively you can specify a custom path by using the -c/--config argument.

$ siridb-server -c /my/path/siridb.conf

An example configuration file can be found here: https://github.com/transceptor-technology/siridb-server/blob/master/siridb.conf

Create or expand a database

SiriDB Admin is required for creating a new database or expanding an existing database with a new server. Documentation on how to install and use the admin tool can be found at the siridb-admin github project. Binaries are available for most platforms and can be downloaded from here.

Using SiriDB

SiriDB has several tools available to connect to a SiriDB database.

SiriDB Connectors

Native connectors are available for C, Python and Go. When not using C, Python or Go you can still communicate to SiriDB using SiriDB HTTP.

SiriDB HTTP

SiriDB HTTP provides a HTTP API for SiriDB and has support for JSON, MsgPack, Qpack, CSV and Socket.io. SiriDB HTTP also has an optional web interface and SSL support.

SiriDB Prompt

SiriDB Prompt can be used as a command line SiriDB client with auto-completion support and can be used to load json or csv data into a SiriDB database. Click here for more information about SiriDB Prompt.

Query language

Documentation about the query language can be found at http://siridb.net/docs.