pub struct LakehouseContext { /* private fields */ }Expand description
Bundles all runtime resources needed for lakehouse query execution.
This struct holds the data lake connection, metadata cache, file cache, and DataFusion runtime, providing a single context object that can be passed through the query path.
Implementations§
Source§impl LakehouseContext
impl LakehouseContext
Sourcepub async fn from_env() -> Result<Arc<LakehouseContext>, Error>
pub async fn from_env() -> Result<Arc<LakehouseContext>, Error>
Reads MICROMEGAS_SQL_CONNECTION_STRING and MICROMEGAS_OBJECT_STORE_URI, connects to the data lake, runs lakehouse migrations, and creates the runtime environment.
Sourcepub fn new(
lake: Arc<DataLakeConnection>,
runtime: Arc<RuntimeEnv>,
) -> LakehouseContext
pub fn new( lake: Arc<DataLakeConnection>, runtime: Arc<RuntimeEnv>, ) -> LakehouseContext
Creates a new lakehouse context with default-sized metadata and file caches.
Sourcepub fn with_caches(
lake: Arc<DataLakeConnection>,
runtime: Arc<RuntimeEnv>,
metadata_cache: Arc<MetadataCache>,
file_cache: Arc<FileCache>,
) -> LakehouseContext
pub fn with_caches( lake: Arc<DataLakeConnection>, runtime: Arc<RuntimeEnv>, metadata_cache: Arc<MetadataCache>, file_cache: Arc<FileCache>, ) -> LakehouseContext
Creates a new lakehouse context with custom metadata and file caches.
Sourcepub fn lake(&self) -> &Arc<DataLakeConnection>
pub fn lake(&self) -> &Arc<DataLakeConnection>
Returns the data lake connection.
Sourcepub fn metadata_cache(&self) -> &Arc<MetadataCache>
pub fn metadata_cache(&self) -> &Arc<MetadataCache>
Returns the metadata cache.
Sourcepub fn file_cache(&self) -> &Arc<FileCache>
pub fn file_cache(&self) -> &Arc<FileCache>
Returns the file cache.
Sourcepub fn reader_factory(&self) -> &Arc<ReaderFactory>
pub fn reader_factory(&self) -> &Arc<ReaderFactory>
Returns the shared ReaderFactory.
Trait Implementations§
Source§impl Clone for LakehouseContext
impl Clone for LakehouseContext
Source§fn clone(&self) -> LakehouseContext
fn clone(&self) -> LakehouseContext
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for LakehouseContext
impl !RefUnwindSafe for LakehouseContext
impl Send for LakehouseContext
impl Sync for LakehouseContext
impl Unpin for LakehouseContext
impl !UnwindSafe for LakehouseContext
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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 more§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Applies the layer to a service and wraps it in [
Layered].