Package com.linkedin.venice.serializer
Class AvroSerializer<K>
java.lang.Object
com.linkedin.venice.serializer.AvroSerializer<K>
- All Implemented Interfaces:
RecordSerializer<K>
- Direct Known Subclasses:
FastAvroSerializer
,MapOrderPreservingFastSerializer
,MapOrderPreservingSerializer
,VsonAvroGenericSerializer
AvroSerializer
provides the functionality to serialize objects by using Avro.-
Constructor Summary
ModifierConstructorDescriptionprotected
AvroSerializer
(org.apache.avro.io.DatumWriter<K> genericDatumWriter, org.apache.avro.io.DatumWriter<K> specificDatumWriter) protected
AvroSerializer
(org.apache.avro.io.DatumWriter<K> genericDatumWriter, org.apache.avro.io.DatumWriter<K> specificDatumWriter, boolean buffered) AvroSerializer
(org.apache.avro.Schema schema) AvroSerializer
(org.apache.avro.Schema schema, boolean buffered) -
Method Summary
Modifier and TypeMethodDescriptionbyte[]
byte[]
serializeObjects
(Iterable<K> objects) byte[]
serializeObjects
(Iterable<K> objects, ByteBuffer prefix) Serialize a list of objects and put the prefix before the serialized objects.protected byte[]
serializeObjects
(Iterable<K> objects, org.apache.avro.io.BinaryEncoder reusedEncoder, ByteArrayOutputStream outputStream) protected void
-
Constructor Details
-
AvroSerializer
public AvroSerializer(org.apache.avro.Schema schema) -
AvroSerializer
public AvroSerializer(org.apache.avro.Schema schema, boolean buffered) -
AvroSerializer
-
AvroSerializer
-
-
Method Details
-
serialize
- Specified by:
serialize
in interfaceRecordSerializer<K>
- Throws:
VeniceException
-
serializeObjects
- Specified by:
serializeObjects
in interfaceRecordSerializer<K>
- Throws:
VeniceException
-
serializeObjects
Serialize a list of objects and put the prefix before the serialized objects. This function could avoid unnecessary byte array copy when you want to serialize two different kinds of objects together. Essentially, the will be the serialized byte array of the first kind of objects.- Specified by:
serializeObjects
in interfaceRecordSerializer<K>
- Parameters:
objects
-prefix
-- Returns:
- Throws:
VeniceException
-
serializeObjects
protected byte[] serializeObjects(Iterable<K> objects, org.apache.avro.io.BinaryEncoder reusedEncoder, ByteArrayOutputStream outputStream) throws VeniceException - Throws:
VeniceException
-
write
- Throws:
IOException
-