Class AvroRowDataSerializationSchema

  • All Implemented Interfaces:
    Serializable, org.apache.flink.api.common.serialization.SerializationSchema<org.apache.flink.table.data.RowData>

    public class AvroRowDataSerializationSchema
    extends Object
    implements org.apache.flink.api.common.serialization.SerializationSchema<org.apache.flink.table.data.RowData>
    Serialization schema that serializes RowData into Avro bytes.

    Serializes objects that are represented in (nested) Flink RowData. It support 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 AvroRowDataDeserializationSchema 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
      AvroRowDataSerializationSchema​(org.apache.flink.table.types.logical.RowType rowType)
      Creates an Avro serialization schema with the given record row type.
      AvroRowDataSerializationSchema​(org.apache.flink.table.types.logical.RowType rowType, org.apache.flink.api.common.serialization.SerializationSchema<org.apache.avro.generic.GenericRecord> nestedSchema, RowDataToAvroConverters.RowDataToAvroConverter runtimeConverter)
      Creates an Avro serialization schema with the given record row type, nested schema and runtime converters.
    • Constructor Detail

      • AvroRowDataSerializationSchema

        public AvroRowDataSerializationSchema​(org.apache.flink.table.types.logical.RowType rowType)
        Creates an Avro serialization schema with the given record row type.
      • AvroRowDataSerializationSchema

        public AvroRowDataSerializationSchema​(org.apache.flink.table.types.logical.RowType rowType,
                                              org.apache.flink.api.common.serialization.SerializationSchema<org.apache.avro.generic.GenericRecord> nestedSchema,
                                              RowDataToAvroConverters.RowDataToAvroConverter runtimeConverter)
        Creates an Avro serialization schema with the given record row type, nested schema and runtime converters.
    • Method Detail

      • open

        public void open​(org.apache.flink.api.common.serialization.SerializationSchema.InitializationContext context)
                  throws Exception
        Specified by:
        open in interface org.apache.flink.api.common.serialization.SerializationSchema<org.apache.flink.table.data.RowData>
        Throws:
        Exception
      • serialize

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

        public int hashCode()
        Overrides:
        hashCode in class Object