1. Installation#
1.1. System Requirements#
QuasarDB runs on several architectures, and requirements differ depending on which architecture you’re targeting.
As a general note, it is strongly advised to have a homogenous hardware configuration within a cluster.
1.1.1. x64 build#
Our main build is optimized for modern CPUs.
An Intel Haswell or better microarchitecture (AMD Bulldozer or better)
End-to-end ECC memory highly recommended (motherboard, CPU and memory)
At least 512 MB of RAM
At least 1 GiB of disk
1.1.2. Core2 build#
Our Core2 build is optimized for older CPUs, at a slight cost of performance, you will need it for architectures older than Haswell.
An Intel Core or better microarchitecture
End-to-end ECC memory highly recommended (motherboard, CPU and memory)
At least 512 MB of RAM
At least 1 GiB of disk
1.1.3. ARM64 build#
Note
Our ARM builds may need special tuning to give you the best experience. Please contact your Solution Architect for configuration recommendations.
ARM64 architecture
At least 512 MB of RAM
At least 1 GiB of disk
1.2. Installation#
The installation instruction may differ, depending on the operating system you are installing on.
Available images
QuasarDB hosts various Docker images on the official docker hub:
Image |
Description |
Tags |
Core2 |
---|---|---|---|
QuasarDB daemon |
|
|
|
QuasarDB shell |
|
|
|
QuasarDB replication tool |
|
|
|
QuasarDB dashboard |
|
N/A |
|
QuasarDB dashboard |
|
N/A |
Available tags
All images follow the following tag format:
Tag |
Description |
QuasarDB version |
---|---|---|
latest |
Latest officially supported image |
3.13.7 |
beta |
Latest beta version |
3.13.7 |
stable |
Latest stable version |
3.14.0 |
3.14 |
Latest version in the 3.14 branch. |
3.14.0 |
3.13 |
Latest version in the 3.13 branch. |
3.13.7 |
*-core2 |
Core2 variant of a build. Use this version if you’re getting CPU instruction errors on the main branch. |
E.g. 3.13.7-core2, 3.14.0-core2, etc. |
For each of these images, these are the currently supported tags and features:
Example usage
You can use these images to launch a QuasarDB daemon as follows:
$ docker run -d --name qdb-server bureau14/qdb
$ docker run -d -p 40000:40000 --link qdb-server:qdb-server -e QDB_URI=qdb://qdb-server:2836 bureau14/qdb-dashboard
You can now navigate with your browser to http://localhost:40000/#anonymous to open the dashboard.
You can also connect with the QuasarDB shell as follows:
$ docker run -ti --link qdb-server:qdb-server bureau14/qdbsh --cluster qdb://qdb-server:2836
quasardb shell version 3.4.3 build 3a2c17b 2019-10-15 07:56:15 +0000
Copyright (c) 2009-2019 quasardb. All rights reserved.
Need some help? Check out our documentation here: https://doc.quasardb.net
qdbsh >
Environment variables
The QuasarDB docker containers provide several environment variables you can use to configure the most common settings. For more information, see the docker configuration manual.
Download quasardb server installer for Windows from quasardb download site.
Alternatively, you can directly download necessary files from https://download.quasardb.net/ (for experienced users).
Run the setup executable.
Add repository
Add the https://repo.quasardb.net/apt/
repository to your apt sources:
$ echo "deb [trusted=yes] https://repo.quasardb.net/apt/ /" > /etc/apt/sources.list.d/quasardb.list
$ apt install apt-transport-https ca-certificates
$ apt update
...
Get:15 https://repo.quasardb.net/apt Packages [1,068 B]
...
Tip
If you wish to subscribe to our beta release channel, you can add https://repo.beta.quasardb.net/apt/
as an additional source.
Install packages
$ apt search qdb
c qdb-api
c qdb-rest
c qdb-server
c qdb-utils
$ apt install qdb-server qdb-api qdb-rest qdb-utils
Lock versions (Optional)
apt
will automatically upgrade your QuasarDB application when new updates arrive. As we
recommend caution before upgrading, and as such we recommend locking the version you install
as follows:
$ echo "qdb-server hold" | dpkg --set-selections
$ echo "qdb-rest hold" | dpkg --set-selections
$ echo "qdb-utils hold" | dpkg --set-selections
$ echo "qdb-api hold" | dpkg --set-selections
File locations
The Debian package for the QuasarDB server installs files as the qdb user and group in the following locations:
Files type |
Location |
---|---|
Configuration files |
|
Logs |
|
Database depot |
|
Cluster public key (default) |
|
Add repository
Add https://repo.quasardb.net/yum/
as one of your available yum repositories:
$ echo $'[quasardb]\nname=QuasarDB repo\nbaseurl=https://repo.quasardb.net/yum/\nenabled=1\ngpgcheck=0' > /etc/yum.repos.d/quasardb.repo
$ yum update
Tip
If you wish to subscribe to our beta release channel, you can add https://repo.beta.quasardb.net/yum/
as an additional source.
Install packages
$ yum --disablerepo=* --enablerepo=quasardb list available
Available Packages
qdb-api.x86_6 3.4.3-1 quasardb
qdb-rest.x86_6 3.4.3-1 quasardb
qdb-server.x86_6 3.4.3-1 quasardb
qdb-utils.x86_6 3.4.3-1 quasardb
$ yum install -y qdb-server qdb-api qdb-rest qdb-utils
File locations
The RPM package for the QuasarDB server installs files as the qdb user and group in the following locations:
Files type |
Location |
---|---|
Configuration files |
|
Logs |
|
Database depot |
|
Cluster public key (default) |
|
Lock versions (Optional)
Yum will automatically upgrade your QuasarDB application when new updates arrive. We recommend careful consideration before upgrading, and as such we recommend locking the version you install as follows:
$ yum install -y yum-plugin-versionlock
$ yum versionlock qdb-*
Download and extract archives
Download quasardb tarballs for Linux from quasardb download site, or download them directly as follows:
$ curl -sS http://download.quasar.ai/quasardb/3.14/3.14.0/server/qdb-3.14.0-linux-64bit-server.tar.gz | tar -xzvf - $ curl -sS http://download.quasar.ai/quasardb/3.14/3.14.0/api/c/qdb-3.14.0-linux-64bit-c-api.tar.gz | tar -xzvf - $ curl -sS http://download.quasar.ai/quasardb/3.14/3.14.0/utils/qdb-3.14.0-linux-64bit-utils.tar.gz | tar -xzvf -
The archives will be extracted in your current working directory, which should now look like this:
$ ls
bin examples include lib share
The application binaries are extracted into bin/
.
Install libqdb_api (optional)
If you are planning on using the tools and/or any of the language APIs, you probably want to install the QuasarDB C API library and headers globally on your system. To do this, we will move some of the extracted assets to the correct locations:
$ sudo mv lib/libqdb_api.so /usr/lib
$ sudo mv lib/libqdb_api.so /usr/lib
$ sudo mv include/qdb /usr/include
$ sudo ldconfig
$ ldconfig -p | grep qdb
libqdb_api.so (libc6,x86-64) => /usr/lib/libqdb_api.so
This tells us that we now have the libqdb_api.so shared library installed globally on the system.
1.3. Next steps#
If everything went successfully, you now have a ready-to-use QuasarDB installation. You can continue reading with the following chapters, depending on what you’re trying to achieve:
If you’re a developer or data scientist looking to write code that interacts with QuasarDB, please continue with our API tutorial.
If you’re a systems administrator looking to configure and tune QuasarDB, please continue with our configuration manual.
If you’re a systems administrator looking for more information around common operational tasks, please continue with our maintenance manual.