Airport Extension for Data-as-a-Service
Build powerful Data-as-a-Service (DaaS) platforms with Airport - deliver queryable data over the Internet without managing infrastructure or ETL pipelines.
The Airport extension for DuckDB enables you to build and deliver powerful Data-as-a-Service (DaaS) solutions.
What is Data-as-a-Service?
Data-as-a-Service (DaaS) delivers clean, structured, queryable data over the Internet on demand—similar to Software-as-a-Service (SaaS), but for data instead of software. Data consumers don’t need to manage infrastructure, storage, or ETL pipelines—they simply connect and start querying.
Leveraging Arrow Flight, Airport can stream datasets or provide data locations with minimal client-side effort.
Key Benefits
- Zero Infrastructure Burden
- Clients only need DuckDB—no custom SDKs or platform dependencies.
- Scalable & Real-Time
- Efficient data delivery with near real-time updates.
- Easy Integration
- Seamlessly integrates with applications, dashboards, and analytics platforms.
- Flexible Delivery
- Clients can query data in place or download it locally using standard
COPY TOstatements.
- Clients can query data in place or download it locally using standard
- Cost Efficiency
- Data can be stored in the cloud or on-premises. Clients are automatically directed to the most efficient location. Data can be served from CDNs or streamed directly from Arrow Flight servers as needed.
Architecture
A typical DaaS deployment using Airport looks like this:
Component Overview
- DuckDB as the Client
- Requires version 1.3.0 or newer. It can run standalone or be embedded.
- Load Balancer
- Distributes requests across multiple Arrow Flight server instances. Must support HTTP/2.
- Arrow Flight Server
- Built using any Arrow-compatible language (Python, Java, Rust, C++, Go). Handles query requests.
- Data Store
- The source of the data. The Arrow Flight server can:
- Stream data directly from the server in the Arrow IPC format.
- Return a reference via a
data://URI. (e.g., URL to Parquet or CSV on a CDN).
- The source of the data. The Arrow Flight server can:
Additional Elements
These components enhance security, observability, and monetization:
- Authentication & Authorization
- Validate requests and enforce access rules. Column and row level filtering is possible.
- Observability & Logging
- Log all requests for auditing, debugging, and performance insights.
- Subscription Management
- Enable paid access models by integrating billing with authorization logic.