Class AvroRowSerializationSchema

  • All Implemented Interfaces:
    Serializable, org.apache.flink.api.common.serialization.SerializationSchema<org.apache.flink.types.Row>

    @Internal
    public class AvroRowSerializationSchema
    extends Object
    implements org.apache.flink.api.common.serialization.SerializationSchema<org.apache.flink.types.Row>
    Serialization schema that serializes Row into Avro bytes.

    Serializes objects that are represented in (nested) Flink rows. It supports types that are compatible with Flink's Table & SQL API.

    Note: Changes in this class need to be kept in sync with the corresponding runtime class AvroRowDeserializationSchema and schema converter AvroSchemaConverter.

    See Also:
    Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from interface org.apache.flink.api.common.serialization.SerializationSchema

        org.apache.flink.api.common.serialization.SerializationSchema.InitializationContext
    • Constructor Summary

      Constructors 
      Constructor Description
      AvroRowSerializationSchema​(Class<? extends org.apache.avro.specific.SpecificRecord> recordClazz)
      Creates an Avro serialization schema for the given specific record class.
      AvroRowSerializationSchema​(String avroSchemaString)
      Creates an Avro serialization schema for the given Avro schema string.
    • Constructor Detail

      • AvroRowSerializationSchema

        public AvroRowSerializationSchema​(Class<? extends org.apache.avro.specific.SpecificRecord> recordClazz)
        Creates an Avro serialization schema for the given specific record class.
        Parameters:
        recordClazz - Avro record class used to serialize Flink's row to Avro's record
      • AvroRowSerializationSchema

        public AvroRowSerializationSchema​(String avroSchemaString)
        Creates an Avro serialization schema for the given Avro schema string.
        Parameters:
        avroSchemaString - Avro schema string used to serialize Flink's row to Avro's record
    • Method Detail

      • serialize

        public byte[] serialize​(org.apache.flink.types.Row row)
        Specified by:
        serialize in interface org.apache.flink.api.common.serialization.SerializationSchema<org.apache.flink.types.Row>
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object