pub struct LiquidCacheClientBuilder { /* private fields */ }Expand description
The builder for LiquidCache client state.
§Example
ⓘ
use datafusion::execution::object_store::ObjectStoreUrl;
use datafusion::prelude::SessionConfig;
use liquid_cache_datafusion_client::LiquidCacheClientBuilder;
use std::collections::HashMap;
let mut s3_options = HashMap::new();
s3_options.insert("access_key_id".to_string(), "your-access-key".to_string());
s3_options.insert("secret_access_key".to_string(), "your-secret-key".to_string());
s3_options.insert("region".to_string(), "us-east-1".to_string());
let ctx = LiquidCacheClientBuilder::new("localhost:15214")
.with_object_store(ObjectStoreUrl::parse("s3://my_bucket").unwrap(), Some(s3_options))
.build(SessionConfig::from_env().unwrap())
.unwrap();
ctx.register_parquet("my_table", "s3://my_bucket/my_table.parquet", Default::default())
.await?;
let df = ctx.sql("SELECT * FROM my_table").await?.show().await?;
println!("{:?}", df);Implementations§
Source§impl LiquidCacheClientBuilder
impl LiquidCacheClientBuilder
Sourcepub fn new(cache_server: impl AsRef<str>) -> Self
pub fn new(cache_server: impl AsRef<str>) -> Self
Create a new builder for LiquidCache client state.
Sourcepub fn with_object_store(
self,
url: ObjectStoreUrl,
object_store_options: Option<HashMap<String, String>>,
) -> Self
pub fn with_object_store( self, url: ObjectStoreUrl, object_store_options: Option<HashMap<String, String>>, ) -> Self
Add an object store to the builder. Checkout https://docs.rs/object_store/latest/object_store/fn.parse_url_opts.html for available options.
Sourcepub fn build(self, config: SessionConfig) -> Result<SessionContext>
pub fn build(self, config: SessionConfig) -> Result<SessionContext>
Build the SessionContext.
Auto Trait Implementations§
impl Freeze for LiquidCacheClientBuilder
impl RefUnwindSafe for LiquidCacheClientBuilder
impl Send for LiquidCacheClientBuilder
impl Sync for LiquidCacheClientBuilder
impl Unpin for LiquidCacheClientBuilder
impl UnsafeUnpin for LiquidCacheClientBuilder
impl UnwindSafe for LiquidCacheClientBuilder
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request