Package dev.hardwood.reader
package dev.hardwood.reader
Parquet file readers with row-oriented and column-oriented APIs.
ParquetFileReader opens one or more files and provides access to metadata
and schema. From there, create a RowReader for row-at-a-time access with
typed getters, a ColumnReader for single-column batch-oriented access, or
a ColumnReaders for multi-column projection access. FilterPredicate
enables predicate pushdown at both the row-group and page level.
For reading multiple files as a single dataset with cross-file
prefetching, use Hardwood to share a thread pool across
readers.
-
ClassDescriptionThe dictionary of a
BYTE_ARRAY,FIXED_LEN_BYTE_ARRAYorINT96column chunk, fromColumnReader.getBinaryDictionary().The dictionary of one column chunk: the distinct values a dictionary-encoded column stores once, whichColumnReader.getDictionaryIds()refers to by entry.Batch-oriented column reader for reading a single column across all row groups.Holds multipleColumnReaderinstances backed by one shared decode pipeline for batch-oriented projection reads.A predicate filtering the rows a reader returns.Predicate for a binary column over its stored bytes.Set-membership predicate for a binary column.Predicate for DATE columns.Set-membership predicate for DATE columns.Predicate for DECIMAL columns.Set-membership predicate for DECIMAL columns.Predicate for TIMESTAMP columns withisAdjustedToUTC = trueand for legacyINT96timestamp columns.Set-membership predicate for the columns anFilterPredicate.InstantColumnPredicatetakes.Predicate for spatial bounding box.Predicate for anINTERVALcolumn, comparing the twelve stored bytes as the three unsigned 32-bit components they encode.Set-membership predicate for anINTERVALcolumn.Predicate that matches rows where the column value is not null.Predicate that matches rows where the column value is null.Predicate for TIMESTAMP columns withisAdjustedToUTC = false.Set-membership predicate for TIMESTAMP columns withisAdjustedToUTC = false.Predicate for a text column, comparing the literal's UTF-8 bytes.Set-membership predicate for a text column.Predicate for TIME columns.Set-membership predicate for TIME columns.Set-membership predicate for UUID columns, each probe compared as its 16 big-endian bytes.Classifies aColumnReaderlayer between root and leaf.Reader for one or more Parquet files.Builds a single-columnColumnReaderwith an optional filter.Builds aColumnReaderscollection for batch-oriented access to a projection of columns.Builds aRowReaderwith optional projection, filter, and head/tail row limit.Thrown when a file's own bytes are wrong: the read succeeded and what it returned does not say something a Parquet file can say.Read-time behaviour knobs forParquetFileReader.Builder forReaderConfig.A predicate over row groups, used to select which row groups a reader scans.Conjunction of row-group predicates — a row group passes if and only if every child passes.Keep row groups whose midpoint falls in[startInclusive, endExclusive).Provides row-oriented iteration over a Parquet file.Thrown when a file cannot be read under the schema the read was planned against.Raised when the footer aMetadataSourcesupplied does not describe the file being read.The check the supplied footer failed.