This is a forked repository of DuckDB to support the DuckPGQ extension. Do not clone this repository directly to use the DuckPGQ extension. To build the extension from source, see the DuckPGQ repository and the documentation page for instructions.
As of DuckDB v1.1.* we support loading DuckPGQ as a community extension.
install duckpgq from community;
load duckpgq;
For availability please see the DuckPGQ extension availability section.
Since this is a third-party extension, DuckDB must be started in unsigned
mode to load it. The extension can be loaded with the following commands:
For CLI:
duckdb -unsigned
set custom_extension_repository = 'http://duckpgq.s3.eu-north-1.amazonaws.com';
force install 'duckpgq'; # ensures any existing DuckPGQ version already installed is overwritten
load 'duckpgq';
For Python:
import duckdb
conn = duckdb.connect(config = {"allow_unsigned_extensions": "true"})
conn.execute("set custom_extension_repository = 'http://duckpgq.s3.eu-north-1.amazonaws.com';")
conn.execute("force install 'duckpgq';")
conn.execute("load 'duckpgq';")
The documentation contains a SQL introduction and reference.
For development, DuckDB requires CMake, Python3 and a C++11
compliant compiler. Run make
in the root directory to compile the sources. For development, use make debug
to build a non-optimized debug version. You should run make unit
and make allunit
to verify that your version works properly after making changes. To test performance, you can run BUILD_BENCHMARK=1 BUILD_TPCH=1 make
and then perform several standard benchmarks from the root directory by executing ./build/release/benchmark/benchmark_runner
. The details of benchmarks are in our Benchmark Guide.