Expand description
Embeddable export writers (Epic #682)
This module hosts writers that convert query results into external file formats so that non-CLI consumers (projection services, the Python/Node bindings, library embedders) can produce them without shelling out to the CLI.
§Feature flags
| Submodule | Feature | In defaults? |
|---|---|---|
arrow_convert | arrow | No |
parquet | parquet | No |
delta_schema | delta-scan + arrow | No |
delta_parquet | delta-scan + parquet | No |
The arrow feature pulls in the arrow crate as an optional dependency
and exposes build_arrow_schema / rows_to_record_batch for use by any
consumer that wants Arrow RecordBatches without Parquet.
The parquet feature depends on arrow and additionally pulls in the
parquet crate; it is off by default so the default build’s dependency
surface is unchanged.
The delta_parquet module (DS8, Issue #704) is compiled only when both
delta-scan and parquet are enabled. It depends on delta_schema
(DS7, Issue #703) for schema derivation and reuses the epic #682 Arrow
writer machinery — no forked writer.
§External-committer boundary
Per the decisions in docs/architecture/cassandra-sidecar-parquet-projections.md,
CQLite produces Parquet files only. Committing those files to lakehouse
table formats (Iceberg, Delta) — manifest/metadata transactions, snapshot
management — is the job of an external committer and is deliberately out of
scope for this crate.
Re-exports§
pub use arrow_convert::build_arrow_schema;pub use arrow_convert::rows_to_record_batch;pub use arrow_convert::ArrowConvertError;pub use delta_schema::derive_delta_schema;pub use delta_schema::DeltaSchemaError;pub use delta_schema::DeltaSchemaOpts;pub use delta_parquet::write_delta_records_to_bytes;pub use delta_parquet::DeltaParquetCompression;pub use delta_parquet::DeltaParquetError;pub use delta_parquet::DeltaParquetOptions;pub use delta_parquet::DeltaParquetWriter;
Modules§
- arrow_
convert - CQL → Arrow RecordBatch conversion (feature = “arrow”)
- delta_
parquet - Delta-scan Parquet writer (Epic #696, Issue #704).
- delta_
schema - Delta-scan Arrow schema derivation (Epic #696, Issue #703).
- parquet
- Parquet export writer for QueryResult (feature = “parquet”)