Package io.trino.plugin.iceberg
Class IcebergPageSourceProvider
java.lang.Object
io.trino.plugin.iceberg.IcebergPageSourceProvider
- All Implemented Interfaces:
ConnectorPageSourceProvider
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final class -
Constructor Summary
ConstructorsConstructorDescriptionIcebergPageSourceProvider(TrinoFileSystemFactory fileSystemFactory, FileFormatDataSourceStats fileFormatDataSourceStats, OrcReaderConfig orcReaderConfig, ParquetReaderConfig parquetReaderConfig, TypeManager typeManager) -
Method Summary
Modifier and TypeMethodDescriptioncreateDataPageSource(ConnectorSession session, TrinoInputFile inputFile, long start, long length, int partitionSpecId, String partitionData, IcebergFileFormat fileFormat, org.apache.iceberg.Schema fileSchema, List<IcebergColumnHandle> dataColumns, TupleDomain<IcebergColumnHandle> predicate, Optional<org.apache.iceberg.mapping.NameMapping> nameMapping, Map<Integer, Optional<String>> partitionKeys) createPageSource(ConnectorTransactionHandle transaction, ConnectorSession session, ConnectorSplit connectorSplit, ConnectorTableHandle connectorTable, List<ColumnHandle> columns, DynamicFilter dynamicFilter) static Optional<ReaderColumns>projectBaseColumns(List<IcebergColumnHandle> columns) Creates a mapping between the inputcolumnsand base columns if required.
-
Constructor Details
-
IcebergPageSourceProvider
@Inject public IcebergPageSourceProvider(TrinoFileSystemFactory fileSystemFactory, FileFormatDataSourceStats fileFormatDataSourceStats, OrcReaderConfig orcReaderConfig, ParquetReaderConfig parquetReaderConfig, TypeManager typeManager)
-
-
Method Details
-
createPageSource
public ConnectorPageSource createPageSource(ConnectorTransactionHandle transaction, ConnectorSession session, ConnectorSplit connectorSplit, ConnectorTableHandle connectorTable, List<ColumnHandle> columns, DynamicFilter dynamicFilter) - Specified by:
createPageSourcein interfaceConnectorPageSourceProvider
-
createDataPageSource
public IcebergPageSourceProvider.ReaderPageSourceWithRowPositions createDataPageSource(ConnectorSession session, TrinoInputFile inputFile, long start, long length, int partitionSpecId, String partitionData, IcebergFileFormat fileFormat, org.apache.iceberg.Schema fileSchema, List<IcebergColumnHandle> dataColumns, TupleDomain<IcebergColumnHandle> predicate, Optional<org.apache.iceberg.mapping.NameMapping> nameMapping, Map<Integer, Optional<String>> partitionKeys) -
projectBaseColumns
Creates a mapping between the inputcolumnsand base columns if required.
-