Class AvroReaders
java.lang.Object
dev.hardwood.avro.AvroReaders
Factory for creating AvroRowReader instances from a
ParquetFileReader.
try (ParquetFileReader fileReader = ParquetFileReader.open(inputFile);
AvroRowReader reader = AvroReaders.createRowReader(fileReader)) {
while (reader.hasNext()) {
GenericRecord record = reader.next();
long id = (Long) record.get("id");
}
}
-
Method Summary
Modifier and TypeMethodDescriptionstatic AvroRowReadercreateRowReader(ParquetFileReader reader) Create an AvroRowReader that reads all rows and columns.static AvroRowReadercreateRowReader(ParquetFileReader reader, FilterPredicate filter) Create an AvroRowReader with predicate pushdown.static AvroRowReadercreateRowReader(ParquetFileReader reader, ColumnProjection projection) Create an AvroRowReader with column projection.static AvroRowReadercreateRowReader(ParquetFileReader reader, ColumnProjection projection, FilterPredicate filter) Create an AvroRowReader with column projection and predicate pushdown.
-
Method Details
-
createRowReader
Create an AvroRowReader that reads all rows and columns.- Parameters:
reader- the opened ParquetFileReader- Returns:
- a new AvroRowReader
-
createRowReader
Create an AvroRowReader with predicate pushdown.- Parameters:
reader- the opened ParquetFileReaderfilter- the filter predicate for row group pruning- Returns:
- a new AvroRowReader
-
createRowReader
Create an AvroRowReader with column projection.- Parameters:
reader- the opened ParquetFileReaderprojection- the columns to read- Returns:
- a new AvroRowReader
-
createRowReader
public static AvroRowReader createRowReader(ParquetFileReader reader, ColumnProjection projection, FilterPredicate filter) Create an AvroRowReader with column projection and predicate pushdown.- Parameters:
reader- the opened ParquetFileReaderprojection- the columns to readfilter- the filter predicate for row group pruning- Returns:
- a new AvroRowReader
-