Struct datafusion_execution::runtime_env::RuntimeEnv
source · pub struct RuntimeEnv {
pub memory_pool: Arc<dyn MemoryPool>,
pub disk_manager: Arc<DiskManager>,
pub cache_manager: Arc<CacheManager>,
pub object_store_registry: Arc<dyn ObjectStoreRegistry>,
}Expand description
Execution runtime environment that manages system resources such as memory, disk, cache and storage.
A RuntimeEnv is created from a RuntimeConfig and has the
following resource management functionality:
MemoryPool: Manage memoryDiskManager: Manage temporary files on local diskCacheManager: Manage temporary cache data during the session lifetimeObjectStoreRegistry: Manage mapping URLs to object store instances
Fields§
§memory_pool: Arc<dyn MemoryPool>Runtime memory management
disk_manager: Arc<DiskManager>Manage temporary files during query execution
cache_manager: Arc<CacheManager>Manage temporary cache during query execution
object_store_registry: Arc<dyn ObjectStoreRegistry>Object Store Registry
Implementations§
source§impl RuntimeEnv
impl RuntimeEnv
sourcepub fn new(config: RuntimeConfig) -> Result<Self>
pub fn new(config: RuntimeConfig) -> Result<Self>
Create env based on configuration
sourcepub fn register_object_store(
&self,
url: &Url,
object_store: Arc<dyn ObjectStore>
) -> Option<Arc<dyn ObjectStore>>
pub fn register_object_store( &self, url: &Url, object_store: Arc<dyn ObjectStore> ) -> Option<Arc<dyn ObjectStore>>
Registers a custom ObjectStore to be used with a specific url.
This allows DataFusion to create external tables from urls that do not have
built in support such as hdfs://namenode:port/....
Returns the ObjectStore previously registered for this
scheme, if any.
See ObjectStoreRegistry for more details
sourcepub fn object_store(&self, url: impl AsRef<Url>) -> Result<Arc<dyn ObjectStore>>
pub fn object_store(&self, url: impl AsRef<Url>) -> Result<Arc<dyn ObjectStore>>
Retrieves a ObjectStore instance for a url by consulting the
registry. See ObjectStoreRegistry::get_store for more
details.
Trait Implementations§
source§impl Clone for RuntimeEnv
impl Clone for RuntimeEnv
source§fn clone(&self) -> RuntimeEnv
fn clone(&self) -> RuntimeEnv
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moresource§impl Debug for RuntimeEnv
impl Debug for RuntimeEnv
Auto Trait Implementations§
impl Freeze for RuntimeEnv
impl !RefUnwindSafe for RuntimeEnv
impl Send for RuntimeEnv
impl Sync for RuntimeEnv
impl Unpin for RuntimeEnv
impl !UnwindSafe for RuntimeEnv
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
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>
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>
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