Viyadb
ViyaDB in-memory columnar analytical data store
Install / Use
/learn @viyadb/ViyadbREADME
<img src="http://viyadb.com/img/logo.svg" height="100px" />
ViyaDB
ViyaDB is in-memory columnar analytical data store, featuring:
- Fast ad-hoc analytical queries
- Random access update pattern
- Built-in cardinality protection
- Real-time query compilation to machine code
- Dynamic period based rollup
- REST API interface with intuitive JSON-based language
- Basic SQL (DML) support
Quickstart
- Learn about ViyaDB through Mobile Attribution Tracking Sample.
- Read more on ViyaDB Usage.
- Deep dive into ViyaDB Clustering Architecture and Real-Time Analytics Infrastructure based on ViyaDB.
For more information please visit the official Website: http://viyadb.com
Building
In order to pull all third party dependencies, either clone ViyaDB sources using --recursive flag, or run this command afterwards:
git submodule update --init --recursive
The easiest way to build ViyaDB is using viyadb/devenv Docker image:
docker run --rm -v $(pwd):/viyadb viyadb/devenv:latest /viyadb/scripts/travis-build.sh
If for some reason you'd like to use your own system tools, please read on.
Prerequisites
The following components are required for building ViyaDB:
- CMake >= 3.10
- Boost >= 1.65.1
- Flex >= 2.6.1
- Bison >= 2:3.0.4
- g++ >= 8.3
Additional third party dependencies are included into the project as Git submodules.
Building
To build the project, run:
mkdir build/
cd build/
cmake ..
make -j4
Testing
Unit tests are built as part of the main build process. To invoke all unit tests, run:
GLOG_logtostderr=1 ./test/unit_tests
