@Internal public class RowDataSerializer extends AbstractRowDataSerializer<org.apache.flink.table.data.RowData>
RowData.| 限定符和类型 | 类和说明 |
|---|---|
static class |
RowDataSerializer.RowDataSerializerSnapshot
TypeSerializerSnapshot for BinaryRowDataSerializer. |
| 构造器和说明 |
|---|
RowDataSerializer(org.apache.flink.table.types.logical.LogicalType... types) |
RowDataSerializer(org.apache.flink.table.types.logical.LogicalType[] types,
org.apache.flink.api.common.typeutils.TypeSerializer<?>[] fieldSerializers) |
RowDataSerializer(org.apache.flink.table.types.logical.RowType rowType) |
| 限定符和类型 | 方法和说明 |
|---|---|
void |
copy(org.apache.flink.core.memory.DataInputView source,
org.apache.flink.core.memory.DataOutputView target) |
org.apache.flink.table.data.RowData |
copy(org.apache.flink.table.data.RowData from) |
org.apache.flink.table.data.RowData |
copy(org.apache.flink.table.data.RowData from,
org.apache.flink.table.data.RowData reuse) |
org.apache.flink.table.data.RowData |
createInstance() |
org.apache.flink.table.data.RowData |
deserialize(org.apache.flink.core.memory.DataInputView source) |
org.apache.flink.table.data.RowData |
deserialize(org.apache.flink.table.data.RowData reuse,
org.apache.flink.core.memory.DataInputView source) |
org.apache.flink.table.data.RowData |
deserializeFromPages(org.apache.flink.runtime.memory.AbstractPagedInputView source)
De-serializes a record from the given source paged input view.
|
org.apache.flink.table.data.RowData |
deserializeFromPages(org.apache.flink.table.data.RowData reuse,
org.apache.flink.runtime.memory.AbstractPagedInputView source)
Reuse version of
PagedTypeSerializer.deserializeFromPages(AbstractPagedInputView). |
org.apache.flink.api.common.typeutils.TypeSerializer<org.apache.flink.table.data.RowData> |
duplicate() |
boolean |
equals(Object obj) |
int |
getArity()
Get the number of fields.
|
int |
getLength() |
int |
hashCode() |
boolean |
isImmutableType() |
org.apache.flink.table.data.RowData |
mapFromPages(org.apache.flink.table.data.RowData reuse,
org.apache.flink.runtime.memory.AbstractPagedInputView source)
Map a reused record from the given source paged input view.
|
void |
serialize(org.apache.flink.table.data.RowData row,
org.apache.flink.core.memory.DataOutputView target) |
int |
serializeToPages(org.apache.flink.table.data.RowData row,
org.apache.flink.runtime.memory.AbstractPagedOutputView target)
Serializes the given record to the given target paged output view.
|
void |
skipRecordFromPages(org.apache.flink.runtime.memory.AbstractPagedInputView source)
Skip over bytes of one record from the paged input view, discarding the skipped bytes.
|
org.apache.flink.api.common.typeutils.TypeSerializerSnapshot<org.apache.flink.table.data.RowData> |
snapshotConfiguration() |
org.apache.flink.table.data.binary.BinaryRowData |
toBinaryRow(org.apache.flink.table.data.RowData row)
Convert
RowData into BinaryRowData. |
public RowDataSerializer(org.apache.flink.table.types.logical.RowType rowType)
public RowDataSerializer(org.apache.flink.table.types.logical.LogicalType... types)
public RowDataSerializer(org.apache.flink.table.types.logical.LogicalType[] types,
org.apache.flink.api.common.typeutils.TypeSerializer<?>[] fieldSerializers)
public org.apache.flink.api.common.typeutils.TypeSerializer<org.apache.flink.table.data.RowData> duplicate()
duplicate 在类中 org.apache.flink.api.common.typeutils.TypeSerializer<org.apache.flink.table.data.RowData>public org.apache.flink.table.data.RowData createInstance()
createInstance 在类中 org.apache.flink.api.common.typeutils.TypeSerializer<org.apache.flink.table.data.RowData>public void serialize(org.apache.flink.table.data.RowData row,
org.apache.flink.core.memory.DataOutputView target)
throws IOException
serialize 在类中 org.apache.flink.api.common.typeutils.TypeSerializer<org.apache.flink.table.data.RowData>IOExceptionpublic org.apache.flink.table.data.RowData deserialize(org.apache.flink.core.memory.DataInputView source)
throws IOException
deserialize 在类中 org.apache.flink.api.common.typeutils.TypeSerializer<org.apache.flink.table.data.RowData>IOExceptionpublic org.apache.flink.table.data.RowData deserialize(org.apache.flink.table.data.RowData reuse,
org.apache.flink.core.memory.DataInputView source)
throws IOException
deserialize 在类中 org.apache.flink.api.common.typeutils.TypeSerializer<org.apache.flink.table.data.RowData>IOExceptionpublic org.apache.flink.table.data.RowData copy(org.apache.flink.table.data.RowData from)
copy 在类中 org.apache.flink.api.common.typeutils.TypeSerializer<org.apache.flink.table.data.RowData>public org.apache.flink.table.data.RowData copy(org.apache.flink.table.data.RowData from,
org.apache.flink.table.data.RowData reuse)
copy 在类中 org.apache.flink.api.common.typeutils.TypeSerializer<org.apache.flink.table.data.RowData>public void copy(org.apache.flink.core.memory.DataInputView source,
org.apache.flink.core.memory.DataOutputView target)
throws IOException
copy 在类中 org.apache.flink.api.common.typeutils.TypeSerializer<org.apache.flink.table.data.RowData>IOExceptionpublic int getArity()
AbstractRowDataSerializergetArity 在类中 AbstractRowDataSerializer<org.apache.flink.table.data.RowData>public org.apache.flink.table.data.binary.BinaryRowData toBinaryRow(org.apache.flink.table.data.RowData row)
RowData into BinaryRowData. TODO modify it to code gen.toBinaryRow 在类中 AbstractRowDataSerializer<org.apache.flink.table.data.RowData>public int serializeToPages(org.apache.flink.table.data.RowData row,
org.apache.flink.runtime.memory.AbstractPagedOutputView target)
throws IOException
PagedTypeSerializerBinaryRowData.serializeToPages 在类中 PagedTypeSerializer<org.apache.flink.table.data.RowData>row - The record to serialize.target - The output view to write the serialized data to.IOException - Thrown, if the serialization encountered an I/O related error. Typically
raised by the output view, which may have an underlying I/O channel to which it
delegates.public org.apache.flink.table.data.RowData deserializeFromPages(org.apache.flink.runtime.memory.AbstractPagedInputView source)
throws IOException
PagedTypeSerializerBinaryRowData. Typically, the content read from source should be copied out when
de-serializing, and we are not expecting the underlying data from source is reused. If you
have such requirement, see #mapFromPages(T, AbstractPagedInputView).deserializeFromPages 在类中 PagedTypeSerializer<org.apache.flink.table.data.RowData>source - The input view from which to read the data.IOException - Thrown, if the de-serialization encountered an I/O related error.
Typically raised by the input view, which may have an underlying I/O channel from which
it reads.public org.apache.flink.table.data.RowData deserializeFromPages(org.apache.flink.table.data.RowData reuse,
org.apache.flink.runtime.memory.AbstractPagedInputView source)
throws IOException
PagedTypeSerializerPagedTypeSerializer.deserializeFromPages(AbstractPagedInputView).deserializeFromPages 在类中 PagedTypeSerializer<org.apache.flink.table.data.RowData>IOExceptionpublic org.apache.flink.table.data.RowData mapFromPages(org.apache.flink.table.data.RowData reuse,
org.apache.flink.runtime.memory.AbstractPagedInputView source)
throws IOException
PagedTypeSerializerIf you choose the zero copy way, you have to deal with the lifecycle of the pages properly.
mapFromPages 在类中 PagedTypeSerializer<org.apache.flink.table.data.RowData>reuse - the reused record to be mappedsource - The input view from which to read the data.IOException - Thrown, if the de-serialization encountered an I/O related error.
Typically raised by the input view, which may have an underlying I/O channel from which
it reads.public void skipRecordFromPages(org.apache.flink.runtime.memory.AbstractPagedInputView source)
throws IOException
PagedTypeSerializerskipRecordFromPages 在类中 PagedTypeSerializer<org.apache.flink.table.data.RowData>IOExceptionpublic boolean equals(Object obj)
equals 在类中 org.apache.flink.api.common.typeutils.TypeSerializer<org.apache.flink.table.data.RowData>public int hashCode()
hashCode 在类中 org.apache.flink.api.common.typeutils.TypeSerializer<org.apache.flink.table.data.RowData>public boolean isImmutableType()
isImmutableType 在类中 org.apache.flink.api.common.typeutils.TypeSerializer<org.apache.flink.table.data.RowData>public int getLength()
getLength 在类中 org.apache.flink.api.common.typeutils.TypeSerializer<org.apache.flink.table.data.RowData>public org.apache.flink.api.common.typeutils.TypeSerializerSnapshot<org.apache.flink.table.data.RowData> snapshotConfiguration()
snapshotConfiguration 在类中 org.apache.flink.api.common.typeutils.TypeSerializer<org.apache.flink.table.data.RowData>Copyright © 2014–2022 The Apache Software Foundation. All rights reserved.