Skip to main content

Crate exarrow_rs

Crate exarrow_rs 

Source
Expand description

§exarrow-rs

ADBC-compatible driver for Exasol with Apache Arrow data format support.

This library provides high-performance database connectivity for Exasol using the ADBC (Arrow Database Connectivity) interface. It enables efficient data transfer using the Apache Arrow columnar format, making it ideal for analytical workloads and data science applications.

§Features

  • ADBC Interface: Standard Arrow Database Connectivity driver
  • Query Execution: Execute SQL queries and retrieve results as Arrow RecordBatches
  • Bulk Import: Import data from CSV, Parquet, and Arrow RecordBatches
  • Bulk Export: Export data to CSV, Parquet, and Arrow RecordBatches
  • Streaming: Memory-efficient streaming for large datasets
  • Compression: Support for gzip, bzip2, snappy, lz4, and zstd compression

§Query Example

§CSV Import Example

§CSV Export Example

§Parquet Import/Export Example

§Arrow RecordBatch Import/Export Example

Re-exports§

pub use adbc::Connection;
pub use adbc::Database;
pub use adbc::Driver;
pub use adbc::Statement;
pub use arrow_conversion::ArrowConverter;
pub use error::ConnectionError;
pub use error::ConversionError;
pub use error::ExasolError;
pub use error::QueryError;
pub use types::ExasolType;
pub use types::TypeMapper;
pub use import::import_from_arrow_ipc;
pub use import::import_from_callback;
pub use import::import_from_file;
pub use import::import_from_iter;
pub use import::import_from_parquet;
pub use import::import_from_parquet_stream;
pub use import::import_from_record_batch;
pub use import::import_from_record_batches;
pub use import::import_from_stream;
pub use import::ArrowImportOptions;
pub use import::ArrowToCsvWriter;
pub use import::CsvImportOptions;
pub use import::CsvWriterOptions;
pub use import::DataPipeSender;
pub use import::ImportError;
pub use import::ParquetImportOptions;
pub use export::csv_to_record_batches;
pub use export::exasol_types_to_arrow_schema;
pub use export::export_to_arrow_ipc;
pub use export::export_to_callback;
pub use export::export_to_file;
pub use export::export_to_list;
pub use export::export_to_parquet;
pub use export::export_to_parquet_stream;
pub use export::export_to_parquet_via_transport;
pub use export::export_to_record_batches;
pub use export::export_to_stream;
pub use export::ArrowExportOptions;
pub use export::CsvExportOptions;
pub use export::CsvToArrowReader;
pub use export::DataPipeReceiver;
pub use export::ExportError;
pub use export::ParquetCompression;
pub use export::ParquetExportOptions;
pub use query::export::Compression;
pub use query::export::DelimitMode;
pub use query::export::ExportQuery;
pub use query::export::ExportSource;
pub use query::export::RowSeparator;
pub use query::import::Compression as ImportCompression;
pub use query::import::ImportQuery;
pub use query::import::RowSeparator as ImportRowSeparator;
pub use query::import::TrimMode;
pub use query::statement::Parameter;
pub use query::statement::StatementType;
pub use query::PreparedStatement;
pub use query::QueryMetadata;
pub use query::ResultSet;
pub use query::ResultSetIterator;

Modules§

adbc
ADBC (Arrow Database Connectivity) interface implementation.
arrow_conversion
Arrow data format conversion utilities.
connection
Connection management for Exasol database connections.
error
Error types for exarrow-rs.
export
Export functionality for exporting data from Exasol.
import
Import functionality for Exasol data.
query
Query execution and result handling.
transport
Transport layer for Exasol database communication.
types
Type mapping between Exasol and Arrow data types.