Duckdb Alternatives
Similar projects and alternatives to duckdb
-
-
-
Scout APM
Less time debugging, more time building. Scout APM allows you to find and fix performance issues with no hassle. Now with error monitoring and external services monitoring, Scout is a developer's best friend when it comes to application development.
-
sqlite-worker
A simple, and persistent, SQLite database for Web and Workers.
-
octosql
OctoSQL is a query tool that allows you to join, analyse and transform data from multiple databases and file formats using SQL.
-
-
metabase-clickhouse-driver
ClickHouse database driver for the Metabase business intelligence front-end
-
-
SonarLint
Deliver Cleaner and Safer Code - Right in Your IDE of Choice!. SonarLint is a free and open source IDE extension that identifies and catches bugs and vulnerabilities as you code, directly in the IDE. Install from your favorite IDE marketplace today.
-
LevelDB
LevelDB is a fast key-value storage library written at Google that provides an ordered mapping from string keys to string values.
-
-
TimescaleDB
An open-source time-series SQL database optimized for fast ingest and complex queries. Packaged as a PostgreSQL extension.
-
-
tsbs
Time Series Benchmark Suite, a tool for comparing and evaluating databases for time series data
-
-
budibase
Budibase is an open-source low code platform that helps you build internal tools in minutes 🚀
-
grammars-v4
Grammars written for ANTLR v4; expectation that the grammars are free of actions.
-
alasql
AlaSQL.js - JavaScript SQL database for browser and Node.js. Handles both traditional relational tables and nested JSON data (NoSQL). Export, store, and import data from localStorage, IndexedDB, or Excel.
-
miller
Miller is like awk, sed, cut, join, and sort for name-indexed data such as CSV, TSV, and tabular JSON
-
duckdb reviews and mentions
-
Friendlier SQL with DuckDB
Fugue has a DuckDB back end and I believe they can actually use Dask and DuckDB in combination for what I believe is similar to what you are looking for! There is also a way to map Python functions in DuckDB using the relational (dataframe-like) API.
https://fugue-tutorials.readthedocs.io/tutorials/integration...
Good questions! You are correct that it depends. We do have indexes to help with point queries, but they are not going to be quite as fast as SQLite because DuckDB stores data in a columnar format. (Soon they will be persistent - see comments above!) That columnar format is really great for scanning many items, but not optimal for grabbing all of a single row.
With DuckDB, bulk inserts are your friend and are actually super fast.
Definitely let us know what you find! Just open up a discussion on Github if you'd like to share what you find out: https://github.com/duckdb/duckdb/discussions
-
Holy Uck Fast Analysis with DuckDB and Pyarrow
We have a Relational API in addition to SQL! Here are some examples for the Python Relational API client:
https://github.com/duckdb/duckdb/blob/master/examples/python...
Plus, if you are working in Python, you can use DuckDB as the engine underneath Ibis, Fugue, Siuba, or anything that works with SQLAlchemy (using the DuckDB-engine driver)! In R, you can use dplyr or dbplyr.
DuckDB's file format is one way to persist data (it uses a single file), but you can also write out to Parquet, or write out to Apache Arrow and then parquet (in a partitioned format I believe).
Disclaimer - I write docs for DuckDB!
- Open Source SQL Parsers
-
Chaos after "poetry install"
Looks like the error you’re seeing is due to a fix in 0.3.2: https://github.com/duckdb/duckdb/pull/2611 (PR referenced in the v0.3.2 release notes). Basically, what you’re doing without error in the older version(s) is not properly supported and can cause issues, so 0.3.2 correctly throws an error (based on the PR messaging).
-
data manipulation: jq vs Miller
View on GitHub
-
I searched for 1.18 seeds so you don't have to
The CSV is sorted descending by mushroom by default. You can easily do postfiltering/other sorting using SQL, e.g. using https://github.com/duckdb/duckdb. For example:
-
Fast Moving Holistic Aggregates
https://github.com/duckdb/duckdb/pull/1569
In general, I also think that SQL is still abstracting a lot of the complexity you would have to handle in an imperative language. These holistic moving averages are actually a great example of why I love SQL! I just learn the WINDOW functions syntax once and it works for many queries.
- ClickHouse, Inc
-
The search for a better persistent cache (SQLite)
I'm not sure if it would help in your case, but could you process all categories at once with a larger SQL query?
If so, DuckDB can process bulk queries about 20x faster than SQLite per CPU core because it is vectorized and column oriented. Then with multiple cores you can easily reach 100x SQLite speed. DuckDB has node bindings and is an in-process DB like SQLite.
If reading from disk is your bottleneck, I would recommend storing your data in compressed parquet files and reading them with DuckDB's parquet reader.
One drawback is that indexes are not persistent to the filesystem in DuckDB yet, but full table scans are much faster than SQLite since it is columnar.
-
Build a OLAP database using Rust for fun
Recently I'm building a [rust client](https://github.com/wangfenjin/duckdb-rs) for [duckdb](https://github.com/duckdb/duckdb) , and after that finished I plan to build a PostgreSQL protocol compatible server based on that, and even support Raft and distributed cluster.
- Hosting SQLite databases on GitHub Pages (or any static file hoster)
-
Query Engines: Push vs. Pull
The DuckDB folks are migrating from pull to push and put together this interesting documentation of their reasoning! They use a vectorized model instead of a compiled one, so it's another interesting comparison point. It seems like push will simplify how they handle parallelism.
Stats
duckdb/duckdb is an open source project licensed under MIT License which is an OSI approved license.
Popular Comparisons
Are you hiring? Post a new remote job listing for free.