cwida / duckdb
- вторник, 26 мая 2020 г. в 00:24:08
C++
DuckDB is an embeddable SQL OLAP Database Management System
DuckDB requires CMake to be installed and a C++11
compliant compiler. GCC 4.9 and newer, Clang 3.9 and newer and VisualStudio 2017 are tested on each revision.
Run make
in the root directory to compile the sources. For development, use make debug
to build a non-optimized debug version. You may run make unit
and make allunit
to verify that your version works properly after making changes.
A command line utility based on sqlite3
can be found in either build/release/duckdb_cli
(release, the default) or build/debug/duckdb_cli
(debug).
As DuckDB is an embedded database, there is no database server to launch or client to connect to a running server. However, the database server can be embedded directly into an application using the C or C++ bindings. The main build process creates the shared library build/release/src/libduckdb.[so|dylib|dll]
that can be linked against. A static library is built as well.
For examples on how to embed DuckDB into your application, see the examples folder.
After compiling, benchmarks can be executed from the root directory by executing ./build/release/benchmark/benchmark_runner
.
DuckDB is implemented in C++ 11, should compile with GCC and clang, uses CMake to build and Catch2 for testing. DuckDB uses some components from various Open-Source databases and draws inspiration from scientific publications. Here is an overview: