Edge Rewrite
// HTMLRewriter · presentation

This page was redesigned at the edge.

Cloudflare fetched the original article and streamed it through HTMLRewriter to apply an entirely new visual system without rebuilding the source page.

// request.cf · coarse context

A page that knows where it met you.

Only coarse request metadata is shown. This demo does not display or persist visitor IP addresses.

Country
US
Cloudflare location
CMH
Connection
HTTP/2
Language
Not provided

Ray ID: a228ea882cd170b8

Jump to content

Draft:Arrow Database Connectivity

From Wikipedia, the free encyclopedia
  • Comment: Thanks for the review. I worked to strengthen the independent sourcing. The draft has independent secondary coverage in The New Stack and SiliconANGLE, and I expanded the Adoption section with further independent adoption documented in reliable unaffiliated sources: pandas, Polars, DuckDB, ClickHouse, Microsoft, dbt, GDAL, and R's dbplyr. It also cites a dedicated chapter in Matthew Topol's In-Memory Analytics with Apache Arrow (Packt, 2024).
    I think these establish ADBC as a notable, broadly adopted connectivity standard. If more is needed, let me know what would help. Cryptonomicant (talk) 22:50, 12 July 2026 (UTC)


  • Comment: We need independent refs. Stuartyeates (talk) 09:03, 7 July 2026 (UTC)


Arrow Database Connectivity
DeveloperApache Software Foundation
ReleaseJanuary 5, 2023; 3 years ago (2023-01-05)
Stable release
1.1.0 (specification)
Written inC, C++, C#, Go, Java, JavaScript/TypeScript, Python, R, Ruby, Rust
TypeDatabase API
LicenseApache License 2.0
Websitearrow.apache.org/adbc/

Arrow Database Connectivity (ADBC) is an open application programming interface (API) specification and a set of libraries for accessing databases using the Apache Arrow columnar data format. It is a subproject of Apache Arrow, developed under the Apache Software Foundation.[1] ADBC is designed as a columnar, minimal-overhead alternative to the row-oriented JDBC and ODBC standards for analytical applications, allowing query results to be returned directly in Arrow format without intermediate data conversions.[2][3]

Overview

[edit]

ADBC provides a single, vendor-neutral API for moving Arrow data into and out of different databases.[2] Because the API exchanges data in Apache Arrow's columnar format, it enables zero-copy operations between Arrow-native systems and avoids the conversion overhead incurred when columnar data must be converted to rows and back when using traditional row-oriented drivers.[2][4][5][6] Its developers describe ADBC as complementing rather than replacing JDBC and ODBC, targeting applications that prioritize bulk columnar data access.[2]

The specification defines three core abstractions: databases, which hold state shared across connections; connections, which represent individual logical connections to a database; and statements, which manage the execution of queries and prepared statements.[7][3] Beyond executing SQL queries, ADBC supports inspecting database catalogs and table schemas, bulk data ingestion, partitioned result sets for distributed computation, query cancellation, and the retrieval of table and column statistics.[1][7]

ADBC offers implementations across multiple programming languages, including C/C++, C#/.NET, Go, Java, JavaScript/TypeScript, Python, R, Ruby, and Rust; the C header file adbc.h is considered the canonical definition of the API.[1][7]

History

[edit]

Version 1.0.0 of the ADBC specification was announced by the Apache Arrow project management committee on January 5, 2023.[2] The standard was created to address inefficiencies that arise when columnar database systems such as DuckDB, ClickHouse, and BigQuery are accessed through row-oriented APIs.[2] A subsequent revision, version 1.1.0, added features including query cancellation, additional bulk ingestion modes, richer error metadata, table and column statistics retrieval, and incremental execution.[8]

On October 29, 2025, the ADBC Driver Foundry was announced as an open-source hub for ADBC driver development, hosted separately from the central Apache Arrow repository to better accommodate the growing number of drivers. The initiative was developed by contributors from Columnar, Databricks, dbt Labs, Improving, Microsoft, Snowflake, and the Apache Arrow community, and does not alter the core ADBC specification.[9]

Drivers

[edit]

ADBC defines a driver-based architecture in which language-neutral drivers connect the standard API to specific database backends. Drivers are distributed as shared libraries that can be loaded at runtime and reused across the different language bindings. Drivers maintained within the Apache Arrow project include those for Arrow Flight SQL, PostgreSQL, SQLite, and a generic JDBC adapter.[1] Additional drivers are maintained at the ADBC Driver Foundry, among them those for BigQuery, Snowflake, Trino, Microsoft SQL Server, MySQL, and Amazon Redshift.[10] Individual database projects also distribute their own ADBC drivers; for example, DuckDB and ClickHouse each provide one.[11][6] Columnar, a data-infrastructure company that contributes to the standard, develops dbc, a package manager for installing ADBC drivers on Linux, macOS, and Windows.[12][13]

Adoption

[edit]

ADBC has been adopted by several data platforms and tools. Microsoft began transitioning the data-source connections in Power BI and Microsoft Fabric from legacy embedded ODBC drivers to ADBC drivers, citing more efficient retrieval of large datasets and security enhancements such as memory safety; affected connectors include those for Databricks, Snowflake, and Google BigQuery, with the removal of ODBC drivers scheduled to begin in late 2026.[14] dbt Labs uses ADBC as the unified driver layer in its dbt Fusion engine, replacing the bespoke connection logic previously required for each data platform.[15] The geospatial data-access library GDAL includes a vector driver built on ADBC.[16] The pandas data-analysis library added support for reading SQL query results through ADBC drivers in version 2.2.0, describing ADBC as providing "high performance I/O with native type support".[17] The Polars DataFrame library likewise supports ADBC as one of its database engines for reading and writing data.[18] In the R ecosystem, the adbi package exposes ADBC drivers through the standard DBI interface,[19] and the dbplyr package added support for ADBC connections in version 2.6.0.[20]

See also

[edit]

References

[edit]
  1. ^ a b c d "ADBC: Arrow Database Connectivity". Apache Arrow. Apache Software Foundation. Retrieved 2026-07-05.
  2. ^ a b c d e f Apache Arrow PMC (2023-01-05). "Introducing ADBC: Database Access for Apache Arrow". Apache Arrow. Retrieved 2026-07-05.
  3. ^ a b Topol, Matthew (2024-09-30). "Understanding Arrow Database Connectivity (ADBC)". In-Memory Analytics with Apache Arrow (2nd ed.). Packt Publishing. ISBN 978-1-83546-122-8.
  4. ^ Jackson, Joab (2025-11-03). "Apache Arrow's Final Frontier: Replacing Outdated Database Drivers". The New Stack. Retrieved 2026-07-05.
  5. ^ Holanda, Pedro (2023-08-04). "ADBC: Arrow Database Connectivity". DuckDB. Retrieved 2026-07-12.
  6. ^ a b Gannon, Luke (2026-07-10). "Introducing the ClickHouse ADBC driver". ClickHouse. Retrieved 2026-07-12.
  7. ^ a b c "ADBC Specification". Apache Arrow. Apache Software Foundation. Retrieved 2026-07-05.
  8. ^ "ADBC Specification — Changelog". Apache Arrow. Apache Software Foundation. Retrieved 2026-07-05.
  9. ^ "Announcing the ADBC Driver Foundry". ADBC Drivers. 2025-10-29. Retrieved 2026-07-05.
  10. ^ "Updated ADBC drivers". ADBC Drivers. 2026-03-11. Retrieved 2026-07-05.
  11. ^ "ADBC Client". DuckDB. Retrieved 2026-07-12.
  12. ^ Dotson, Kyt (2025-10-29). "Columnar launches to redefine data connectivity with Arrow-powered ADBC drivers". SiliconANGLE. Retrieved 2026-07-05.
  13. ^ "dbc". Columnar. Retrieved 2026-07-05.
  14. ^ "Transition from ODBC to ADBC drivers in Power BI and Microsoft Fabric". Microsoft Learn. Microsoft. 2026-05-14. Retrieved 2026-07-05.
  15. ^ "Arrow ADBC and Fusion". dbt Developer Hub. dbt Labs. Retrieved 2026-07-12.
  16. ^ "ADBC -- Arrow Database Connectivity". GDAL documentation. Retrieved 2026-07-12.
  17. ^ "pandas.read_sql". pandas documentation. Retrieved 2026-07-12.
  18. ^ "Databases". Polars user guide. Retrieved 2026-07-12.
  19. ^ "DBI backends". r-dbi.org. Retrieved 2026-07-12.
  20. ^ Wickham, Hadley (2026-06-17). "dbplyr 2.6.0". Posit Open Source Blog. Posit. Retrieved 2026-07-12.
[edit]

Category:Apache Software Foundation projects Category:Application programming interfaces Category:Database APIs Category:Data management