Class PbFileFormatFactory
- java.lang.Object
-
- org.apache.flink.formats.protobuf.PbFileFormatFactory
-
- All Implemented Interfaces:
org.apache.flink.connector.file.table.factories.BulkReaderFormatFactory,org.apache.flink.connector.file.table.factories.BulkWriterFormatFactory,org.apache.flink.table.factories.DecodingFormatFactory<org.apache.flink.connector.file.src.reader.BulkFormat<org.apache.flink.table.data.RowData,org.apache.flink.connector.file.src.FileSourceSplit>>,org.apache.flink.table.factories.EncodingFormatFactory<org.apache.flink.api.common.serialization.BulkWriter.Factory<org.apache.flink.table.data.RowData>>,org.apache.flink.table.factories.Factory,org.apache.flink.table.factories.FormatFactory
@Internal public class PbFileFormatFactory extends Object implements org.apache.flink.connector.file.table.factories.BulkReaderFormatFactory, org.apache.flink.connector.file.table.factories.BulkWriterFormatFactory
Throw aValidationExceptionwhen using Protobuf format factory for file system.In practice, there is no standard for storing bulk protobuf messages. This factory is present to prevent falling back to the
DeserializationSchemaAdapter, a line-based format which could silently succeed but write unrecoverable data to disk.If your use case requires storing bulk protobuf messages on disk, the parquet file format might be the appropriate container and has an API for mapping records to protobuf messages.
-
-
Constructor Summary
Constructors Constructor Description PbFileFormatFactory()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description org.apache.flink.connector.file.table.format.BulkDecodingFormat<org.apache.flink.table.data.RowData>createDecodingFormat(org.apache.flink.table.factories.DynamicTableFactory.Context context, org.apache.flink.configuration.ReadableConfig formatOptions)org.apache.flink.table.connector.format.EncodingFormat<org.apache.flink.api.common.serialization.BulkWriter.Factory<org.apache.flink.table.data.RowData>>createEncodingFormat(org.apache.flink.table.factories.DynamicTableFactory.Context context, org.apache.flink.configuration.ReadableConfig formatOptions)StringfactoryIdentifier()Set<org.apache.flink.configuration.ConfigOption<?>>forwardOptions()Set<org.apache.flink.configuration.ConfigOption<?>>optionalOptions()Set<org.apache.flink.configuration.ConfigOption<?>>requiredOptions()
-
-
-
Method Detail
-
factoryIdentifier
public String factoryIdentifier()
- Specified by:
factoryIdentifierin interfaceorg.apache.flink.table.factories.Factory
-
requiredOptions
public Set<org.apache.flink.configuration.ConfigOption<?>> requiredOptions()
- Specified by:
requiredOptionsin interfaceorg.apache.flink.table.factories.Factory
-
optionalOptions
public Set<org.apache.flink.configuration.ConfigOption<?>> optionalOptions()
- Specified by:
optionalOptionsin interfaceorg.apache.flink.table.factories.Factory
-
forwardOptions
public Set<org.apache.flink.configuration.ConfigOption<?>> forwardOptions()
- Specified by:
forwardOptionsin interfaceorg.apache.flink.table.factories.FormatFactory
-
createDecodingFormat
public org.apache.flink.connector.file.table.format.BulkDecodingFormat<org.apache.flink.table.data.RowData> createDecodingFormat(org.apache.flink.table.factories.DynamicTableFactory.Context context, org.apache.flink.configuration.ReadableConfig formatOptions)- Specified by:
createDecodingFormatin interfaceorg.apache.flink.connector.file.table.factories.BulkReaderFormatFactory- Specified by:
createDecodingFormatin interfaceorg.apache.flink.table.factories.DecodingFormatFactory<org.apache.flink.connector.file.src.reader.BulkFormat<org.apache.flink.table.data.RowData,org.apache.flink.connector.file.src.FileSourceSplit>>
-
createEncodingFormat
public org.apache.flink.table.connector.format.EncodingFormat<org.apache.flink.api.common.serialization.BulkWriter.Factory<org.apache.flink.table.data.RowData>> createEncodingFormat(org.apache.flink.table.factories.DynamicTableFactory.Context context, org.apache.flink.configuration.ReadableConfig formatOptions)- Specified by:
createEncodingFormatin interfaceorg.apache.flink.table.factories.EncodingFormatFactory<org.apache.flink.api.common.serialization.BulkWriter.Factory<org.apache.flink.table.data.RowData>>
-
-