Tables

Understand how Arrow Flights are exposed as DuckDB tables through Airport, enabling SELECT, INSERT, UPDATE, DELETE, and DDL operations.

Tables are fundamental to database systems, representing structured collections of data organized into rows with associated data types.

Apache Arrow Flight does not natively define “tables” in the traditional database sense. Instead, it provides a framework for serving “flights”—data streams with fixed schemas. The Airport extension bridges this gap by treating Arrow Flights as tables within DuckDB.

A flight can represent a table because:

  1. It has a fixed, well-defined schema
  2. It can return data either by streaming or by providing locations (URLs) to data files
  3. It can support both read and write operations

Traditional database tables support reading (SELECT) and modification (INSERT, UPDATE, DELETE) operations. While Arrow Flight servers are not required to implement all operations, the Airport extension provides a complete framework for supporting them.

Arrow Flight Server Implementation Notes

DuckDB Catalog Integration

For information about how to register an Arrow Flight as a table refer to Server Catalog Integration.

Supporting Different Operations

Select

See the details for this operation.

Insert

See the details for this operation.

Update

See the details for this operation.

Delete

See the details for this operation.