@Internal public final class RowDataKinesisDeserializationSchema extends Object implements KinesisDeserializationSchema<RowData>
KinesisDeserializationSchema
adaptor for RowData
records that delegates
physical data deserialization to an inner DeserializationSchema
and appends requested
metadata to the end of the deserialized RowData
record.Modifier and Type | Class and Description |
---|---|
protected static class |
RowDataKinesisDeserializationSchema.Metadata
Internal type for enumerating available metadata.
|
Constructor and Description |
---|
RowDataKinesisDeserializationSchema(DeserializationSchema<RowData> physicalDeserializer,
TypeInformation<RowData> producedTypeInfo,
List<RowDataKinesisDeserializationSchema.Metadata> requestedMetadataFields) |
Modifier and Type | Method and Description |
---|---|
RowData |
deserialize(byte[] recordValue,
String partitionKey,
String seqNum,
long approxArrivalTimestamp,
String stream,
String shardId)
Deserializes a Kinesis record's bytes.
|
TypeInformation<RowData> |
getProducedType()
Gets the data type (as a
TypeInformation ) produced by this function or input format. |
void |
open(DeserializationSchema.InitializationContext context)
Initialization method for the schema.
|
public RowDataKinesisDeserializationSchema(DeserializationSchema<RowData> physicalDeserializer, TypeInformation<RowData> producedTypeInfo, List<RowDataKinesisDeserializationSchema.Metadata> requestedMetadataFields)
public void open(DeserializationSchema.InitializationContext context) throws Exception
KinesisDeserializationSchema
KinesisDeserializationSchema.deserialize(byte[], java.lang.String, java.lang.String, long, java.lang.String, java.lang.String)
and thus suitable for one time setup work.
The provided DeserializationSchema.InitializationContext
can be used to access
additional features such as e.g. registering user metrics.
open
in interface KinesisDeserializationSchema<RowData>
context
- Contextual information that can be used during initialization.Exception
public RowData deserialize(byte[] recordValue, String partitionKey, String seqNum, long approxArrivalTimestamp, String stream, String shardId) throws IOException
KinesisDeserializationSchema
null
may
be returned. This informs the Flink Kinesis Consumer to process the Kinesis record without
producing any output for it, i.e. effectively "skipping" the record.deserialize
in interface KinesisDeserializationSchema<RowData>
recordValue
- the record's value as a byte arraypartitionKey
- the record's partition key at the time of writingseqNum
- the sequence number of this record in the Kinesis shardapproxArrivalTimestamp
- the server-side timestamp of when Kinesis received and stored
the recordstream
- the name of the Kinesis stream that this record was sent toshardId
- The identifier of the shard the record was sent tonull
if the message cannot be
deserialized).IOException
public TypeInformation<RowData> getProducedType()
ResultTypeQueryable
TypeInformation
) produced by this function or input format.getProducedType
in interface ResultTypeQueryable<RowData>
Copyright © 2014–2024 The Apache Software Foundation. All rights reserved.