databow: a Rust CLI to query any database with an ADBC driver

TL;DR

Databow is a new open-source command-line tool built in Rust that allows users to query any database with an ADBC driver. It offers a unified, modern interface for diverse SQL and analytical databases, simplifying data workflows.

Databow, an open-source command-line tool built in Rust, has been introduced to enable querying any database with an ADBC driver, providing a unified interface for diverse SQL and analytical systems.

The tool, databow, connects to over 30 databases including PostgreSQL, MySQL, SQLite, Snowflake, BigQuery, and more, all via the Arrow Database Connectivity (ADBC) standard. It offers an interactive REPL with syntax highlighting, multiline SQL input, and output formatting options, making database querying faster and more consistent. Users can export query results in various formats such as CSV, JSON, and Arrow IPC, and automate workflows through scripting capabilities. Installation involves a single binary, with database drivers installed separately via the dbc CLI. The project aims to simplify data workflows by replacing multiple CLI tools with one modern, efficient interface.

Why It Matters

This development matters because it addresses the fragmentation in database querying tools, offering a single, efficient CLI for multiple systems. It reduces the learning curve for data engineers and analysts, increases productivity, and leverages the growing ecosystem of ADBC drivers. As data stacks become more complex, tools like databow can streamline operations and improve data accessibility across organizations.

Mastering Gemini CLI: A Practical Guide to Command-Line Tools for AI Automation, Workflows, and Productivity Engineering (Gemini Engineering Toolkit Series Book 1)

Mastering Gemini CLI: A Practical Guide to Command-Line Tools for AI Automation, Workflows, and Productivity Engineering (Gemini Engineering Toolkit Series Book 1)

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Background

Current data workflows often involve switching between different CLI tools like psql, mysql, or snowsql, each with unique syntax and output formats. Existing GUI tools are heavyweight and disrupt terminal workflows. The introduction of databow, built on the emerging ADBC standard from Apache Arrow, aims to unify database access in a lightweight, consistent manner. The ADBC ecosystem is expanding, with new drivers continuously added, promising broader support in the future.

“Databow simplifies database interactions by providing a single CLI that supports multiple systems through ADBC, reducing complexity and improving efficiency.”

— an anonymous researcher

SQL for the AI Era: The Complete Handbook for Intelligent Data Systems, Machine Learning Readiness, and Real-World Automation (Foundations of Software and Data Systems in the AI Era)

SQL for the AI Era: The Complete Handbook for Intelligent Data Systems, Machine Learning Readiness, and Real-World Automation (Foundations of Software and Data Systems in the AI Era)

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

What Remains Unclear

It is still unclear how widely adopted the ADBC drivers will become across all database types, or how the tool will perform with very large datasets in production environments. The roadmap indicates upcoming features, but their release timelines are not specified.

Python in Action: 60 Mini Projects to Automate Everything (Part 1): Practical CLI Tools, File Automation, and Data Cleaning with CSV, Excel, and JSON

Python in Action: 60 Mini Projects to Automate Everything (Part 1): Practical CLI Tools, File Automation, and Data Cleaning with CSV, Excel, and JSON

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

What’s Next

Next steps include the release of additional features such as dot commands, support for more export formats, and improved handling of large result sets. Continued development will likely focus on expanding database support and enhancing automation capabilities.

Going Text: Mastering the Power of the Command Line

Going Text: Mastering the Power of the Command Line

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Key Questions

What databases can I connect to with databow?

Databow supports over 30 databases that have ADBC drivers, including PostgreSQL, MySQL, SQLite, Snowflake, BigQuery, ClickHouse, and many more.

How do I install databow?

You can install databow using the uv tool with the command uv tool install databow or via Cargo with cargo install databow.

What is ADBC and why is it important?

ADBC (Arrow Database Connectivity) is a vendor-neutral API based on Apache Arrow that enables efficient, consistent database access across different systems, supporting faster data transfer and easier integration.

Can databow be integrated into scripts and automation pipelines?

Yes, databow is designed for scripting and automation, allowing direct query execution, file reading, and piping data through standard CLI commands.

What features are planned for future releases?

Future plans include adding dot commands for quick configuration, support for additional export formats like Parquet, and features for managing large result sets and displaying data types.

Source: Hacker News

You May Also Like

Show HN: Nutrepedia – Nutrition info in 29 locales built with Clojure and Htmx

Nutrepedia, a new nutrition information site built with Clojure and Htmx, now covers 29 locales, offering localized dietary data for users worldwide.

Using Git’s rerere feature to escape recurring conflict hell

The rerere feature in Git helps developers avoid repetitive conflict resolution by recording previous resolutions, streamlining complex merges.

Angular v22

Angular v22 has been officially launched, introducing performance enhancements and new developer tools. This update impacts Angular developers and web app performance.

Show HN: Edsger – A handwritten Clojure REPL for the reMarkable 2

A developer has released Edsger, a handwritten Clojure REPL for the reMarkable 2 tablet, enabling code execution via handwritten input. The project is now available on Show HN.