pub struct PolarsObjectStore(/* private fields */);
Available on crate feature
polars-io
only.Expand description
Polars specific wrapper for Arc<dyn ObjectStore>
that limits the number of
concurrent requests for the entire application.
Implementations§
Source§impl PolarsObjectStore
impl PolarsObjectStore
pub fn new(store: Arc<dyn ObjectStore>) -> PolarsObjectStore
pub async fn get_range( &self, path: &Path, range: Range<usize>, ) -> Result<Bytes, PolarsError>
Sourcepub async fn get_ranges_sort<K, T>(
&self,
path: &Path,
ranges: &mut [Range<usize>],
) -> Result<HashMap<K, T, RandomState>, PolarsError>
pub async fn get_ranges_sort<K, T>( &self, path: &Path, ranges: &mut [Range<usize>], ) -> Result<HashMap<K, T, RandomState>, PolarsError>
Fetch byte ranges into a HashMap keyed by the range start. This will mutably sort the
ranges
slice for coalescing.
§Panics
Panics if the same range start is used by more than 1 range.
pub async fn download( &self, path: &Path, file: &mut File, ) -> Result<(), PolarsError>
Sourcepub async fn head(&self, path: &Path) -> Result<ObjectMeta, PolarsError>
pub async fn head(&self, path: &Path) -> Result<ObjectMeta, PolarsError>
Fetch the metadata of the parquet file, do not memoize it.
Trait Implementations§
Source§impl Clone for PolarsObjectStore
impl Clone for PolarsObjectStore
Source§fn clone(&self) -> PolarsObjectStore
fn clone(&self) -> PolarsObjectStore
Returns a copy 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 PolarsObjectStore
impl !RefUnwindSafe for PolarsObjectStore
impl Send for PolarsObjectStore
impl Sync for PolarsObjectStore
impl Unpin for PolarsObjectStore
impl !UnwindSafe for PolarsObjectStore
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,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)§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