duckdb-analytics

Configure DuckDB memory limits, run ClickBench benchmarks, and export results.

1|1|Updated Mar 25, 2026
One-click install
npx skills add https://github.com/penghang1223/niannian-workspace --skill duckdb-analytics-penghang1223
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: duckdb-analytics
Source: https://github.com/penghang1223/niannian-workspace/tree/main/skills/duckdb-analytics
Command: npx skills add https://github.com/penghang1223/niannian-workspace --skill duckdb-analytics-penghang1223

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires duckdb, psutil, and includes scripts (resource) components.

What problem does it solve?

Automates memory-aware analytics with DuckDB by controlling memory limits, benchmarking performance, and exporting results.

Core Features & Use Cases

  • Memory management: configure DuckDB memory limits for OOM protection and stability in large analyses.
  • Benchmarking: run ClickBench-style benchmarks to evaluate query performance on big datasets.
  • Export: export analytic results to parquet/csv/json for downstream reporting and sharing.

Quick Start

Run the Python module to initialize a DuckDB connection with memory management and run a sample benchmark.

Frequently Asked Questions about duckdb-analytics

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I prevent out-of-memory errors when running DuckDB analytics on large datasets?

DuckDB analytics can be protected from out-of-memory errors by configuring explicit memory limits. This Skill automates memory-aware analytics by setting memory limits for OOM protection, optionally utilizing psutil for dynamic memory sizing to ensure stability.

How do I benchmark query performance on large CSV and Parquet datasets?

To benchmark query performance on large datasets, you run ClickBench-style benchmarks. This Skill automates performance benchmarking to evaluate query execution times on big data, providing repeatable metrics for analytical workloads.

Can I export DuckDB query results to Parquet, CSV, and JSON for reporting?

Yes, you can export DuckDB query results to Parquet, CSV, and JSON formats. This Skill provides an export_analytics_report function that writes analytic outputs to these formats, enabling downstream reporting and data sharing.

Does this DuckDB analytics tool require psutil for memory management?

No, psutil is an optional dependency for memory management. This Skill configures DuckDB memory limits by default, but can optionally use psutil-based memory sizing to dynamically allocate resources based on available system memory.

What is the best way to establish a memory-safe connection for DuckDB in Python?

The best way to establish a memory-safe DuckDB connection is using a dedicated Python API. This Skill exposes a get_connection function that initializes DuckDB with configured memory limits, ensuring repeatable and memory-safe analytics.