Skip to main content

RemoteSource

Trait RemoteSource 

Source
pub trait RemoteSource: Send + Sync {
    // Required method
    fn query_arrow<'life0, 'life1, 'life2, 'async_trait>(
        &'life0 self,
        sql: &'life1 str,
        params: &'life2 [DbValue],
    ) -> Pin<Box<dyn Future<Output = Result<Vec<RecordBatch>, DbkitError>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait,
             'life2: 'async_trait;
}
Expand description

An external analytical database queried over the network, returning Arrow.

Object-safe (only query_arrow), so Box<dyn RemoteSource> works. Typed reads are provided by the RemoteSourceExt extension trait.

Required Methods§

Source

fn query_arrow<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, sql: &'life1 str, params: &'life2 [DbValue], ) -> Pin<Box<dyn Future<Output = Result<Vec<RecordBatch>, DbkitError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Run an analytical query against the remote store, returning Arrow batches.

Parameter support is source-dependent; sources that don’t support bind parameters return an error if any are supplied.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§