beam-duckdb: DuckDB backend for Beam

[ database, library, mit ] [ Propose Tags ] [ Report a vulnerability ]

Beam driver for DuckDB, an analytics-focused open-source in-process database.


[Skip to Readme]

Modules

[Index] [Quick Jump]

Downloads

Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 0.1.0.0, 0.1.1.0, 0.2.0.0
Change log CHANGELOG.md
Dependencies base (>=4.11 && <5), beam-core (>=0.10 && <0.11), beam-migrate (>=0.5 && <0.6), bytestring (>=0.10 && <0.13), dlist (>=0.8 && <1.1), duckdb-simple (>=0.1.2 && <0.1.5), free (>=4.12 && <5.3), scientific (>=0.3 && <0.4), text (>=1.0 && <2.2), time (>=1.6 && <1.16), transformers (>=0.3 && <0.7), uuid-types (>=1.0 && <1.1) [details]
License MIT
Copyright (c) Laurent P. René de Cotret
Author Laurent P. René de Cotret
Maintainer laurent.decotret@outlook.com
Uploaded by LaurentRDC at 2026-03-07T14:41:00Z
Revised Revision 2 made by LaurentRDC at 2026-03-12T13:45:50Z
Category Database
Downloads 42 total (27 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]

Readme for beam-duckdb-0.2.0.0

[back to package description]

beam-duckdb: Beam backend for the DuckDB analytics database

beam-duckdb is a beam backend for the DuckDB analytics database.

beam-duckdb extends the set of capabilities provided by beam-core in a few key ways. Most importantly, sources of data other than database tables can be loaded by DuckDB and used for queries like a regular table. Currently, beam-duckdb supports loading Parquet files, Apache Iceberg tables, and CSV files.

beam-duckdb is the most recent backend for beam; do not hesitate to raise an issue if you'd like us to add support for something that isn't currently covered!

Installation

The underlying duckdb-ffi needs to link to libduckdb. By default the installation assumes:

  • The duckdb files are in /usr/lib/duckdb
  • You're using duckdb 1.4.*

For Linux you can install a blessed version of duckdb in the correct path by cloning the duckdb-haskell repo and running make install in the duckdb-ffi cbits folder.

Example

From the project root directory, execute cabal run ./examples/ExamScores.hs.