DuckDB
Overview
DuckDB is an in-process SQL OLAP database management system and this destination is meant to use locally if you have multiple smaller sources such as GitHub repos, some social media and local CSVs or files you want to run analytics workloads on. This destination writes data to the MotherDuck service, or to a file on the local filesystem on the host running Airbyte.
Use with MotherDuck
This DuckDB destination is compatible with MotherDuck.
Specifying a MotherDuck Database
To specify a MotherDuck-hosted database as your
destination, simply provide your database uri with
the normal md:
database prefix in the
destination_path
configuration option.
We do not recommend providing your API token in
the md:
connection string, as this
may cause your token to be printed to execution
logs. Please use the
MotherDuck API Key
setting instead.
Authenticating to MotherDuck
For authentication, you can can provide your
MotherDuck Service Credential
as the motherduck_api_key
configuration
option.
Sync Overview
Output schema
Each table will contain 3 columns:
-
_airbyte_ab_id
: a uuid assigned by Airbyte to each event that is processed. -
_airbyte_emitted_at
: a timestamp representing when the event was pulled from the data source. -
_airbyte_data
: a json blob representing with the event data.
Features
Feature | Supported | |
---|---|---|
Full Refresh Sync | Yes | |
Incremental - Append Sync | Yes | |
Incremental - Append + Deduped | No | |
Namespaces | No |
Performance consideration
This integration will be constrained by the speed at which your filesystem accepts writes.
Troubleshooting
Error message
Request failed: (UNAVAILABLE, RPC
'GET_WELCOME_PACK')
This error may indicate that you are connecting with
a 0.10.x
DuckDB client (as per DuckDB
Destination connector versions
>=0.4.0
) and your database has not
yet been upgraded to a version
>=0.10.x
. To resolve this,
you'll need to manually upgrade your database
or revert to a previous version of the DuckDB
Destination connector.