Class FixedLengthByteKeyAndValueComparator<INPUT>
java.lang.Object
org.apache.flink.api.common.typeutils.TypeComparator<org.apache.flink.api.java.tuple.Tuple2<byte[],INPUT>>
org.apache.flink.streaming.api.operators.sortpartition.FixedLengthByteKeyAndValueComparator<INPUT>
- All Implemented Interfaces:
Serializable
@Internal
public class FixedLengthByteKeyAndValueComparator<INPUT>
extends org.apache.flink.api.common.typeutils.TypeComparator<org.apache.flink.api.java.tuple.Tuple2<byte[],INPUT>>
The
FixedLengthByteKeyAndValueComparator is used by KeyedSortPartitionOperator to
compare records according to both the record key and record value. The length of record key must
be fixed and will be initialized when the FixedLengthByteKeyAndValueComparator is
created.- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionintcompare(org.apache.flink.api.java.tuple.Tuple2<byte[], INPUT> first, org.apache.flink.api.java.tuple.Tuple2<byte[], INPUT> second) intcompareSerialized(org.apache.flink.core.memory.DataInputView firstSource, org.apache.flink.core.memory.DataInputView secondSource) intcompareToReference(org.apache.flink.api.common.typeutils.TypeComparator<org.apache.flink.api.java.tuple.Tuple2<byte[], INPUT>> referencedComparator) org.apache.flink.api.common.typeutils.TypeComparator<org.apache.flink.api.java.tuple.Tuple2<byte[],INPUT>> booleanequalToReference(org.apache.flink.api.java.tuple.Tuple2<byte[], INPUT> candidate) intextractKeys(Object record, Object[] target, int index) org.apache.flink.api.common.typeutils.TypeComparator<?>[]intintbooleanbooleanisNormalizedKeyPrefixOnly(int keyBytes) voidputNormalizedKey(org.apache.flink.api.java.tuple.Tuple2<byte[], INPUT> record, org.apache.flink.core.memory.MemorySegment target, int offset, int numBytes) org.apache.flink.api.java.tuple.Tuple2<byte[],INPUT> readWithKeyDenormalization(org.apache.flink.api.java.tuple.Tuple2<byte[], INPUT> reuse, org.apache.flink.core.memory.DataInputView source) voidsetReference(org.apache.flink.api.java.tuple.Tuple2<byte[], INPUT> toCompare) booleanbooleanvoidwriteWithKeyNormalization(org.apache.flink.api.java.tuple.Tuple2<byte[], INPUT> record, org.apache.flink.core.memory.DataOutputView target) Methods inherited from class org.apache.flink.api.common.typeutils.TypeComparator
compareAgainstReference, supportsCompareAgainstReference
-
Method Details
-
hash
- Specified by:
hashin classorg.apache.flink.api.common.typeutils.TypeComparator<org.apache.flink.api.java.tuple.Tuple2<byte[],INPUT>>
-
setReference
- Specified by:
setReferencein classorg.apache.flink.api.common.typeutils.TypeComparator<org.apache.flink.api.java.tuple.Tuple2<byte[],INPUT>>
-
equalToReference
- Specified by:
equalToReferencein classorg.apache.flink.api.common.typeutils.TypeComparator<org.apache.flink.api.java.tuple.Tuple2<byte[],INPUT>>
-
compareToReference
public int compareToReference(org.apache.flink.api.common.typeutils.TypeComparator<org.apache.flink.api.java.tuple.Tuple2<byte[], INPUT>> referencedComparator) - Specified by:
compareToReferencein classorg.apache.flink.api.common.typeutils.TypeComparator<org.apache.flink.api.java.tuple.Tuple2<byte[],INPUT>>
-
compare
public int compare(org.apache.flink.api.java.tuple.Tuple2<byte[], INPUT> first, org.apache.flink.api.java.tuple.Tuple2<byte[], INPUT> second) - Specified by:
comparein classorg.apache.flink.api.common.typeutils.TypeComparator<org.apache.flink.api.java.tuple.Tuple2<byte[],INPUT>>
-
compareSerialized
public int compareSerialized(org.apache.flink.core.memory.DataInputView firstSource, org.apache.flink.core.memory.DataInputView secondSource) throws IOException - Specified by:
compareSerializedin classorg.apache.flink.api.common.typeutils.TypeComparator<org.apache.flink.api.java.tuple.Tuple2<byte[],INPUT>> - Throws:
IOException
-
supportsNormalizedKey
public boolean supportsNormalizedKey()- Specified by:
supportsNormalizedKeyin classorg.apache.flink.api.common.typeutils.TypeComparator<org.apache.flink.api.java.tuple.Tuple2<byte[],INPUT>>
-
getNormalizeKeyLen
public int getNormalizeKeyLen()- Specified by:
getNormalizeKeyLenin classorg.apache.flink.api.common.typeutils.TypeComparator<org.apache.flink.api.java.tuple.Tuple2<byte[],INPUT>>
-
isNormalizedKeyPrefixOnly
public boolean isNormalizedKeyPrefixOnly(int keyBytes) - Specified by:
isNormalizedKeyPrefixOnlyin classorg.apache.flink.api.common.typeutils.TypeComparator<org.apache.flink.api.java.tuple.Tuple2<byte[],INPUT>>
-
putNormalizedKey
public void putNormalizedKey(org.apache.flink.api.java.tuple.Tuple2<byte[], INPUT> record, org.apache.flink.core.memory.MemorySegment target, int offset, int numBytes) - Specified by:
putNormalizedKeyin classorg.apache.flink.api.common.typeutils.TypeComparator<org.apache.flink.api.java.tuple.Tuple2<byte[],INPUT>>
-
invertNormalizedKey
public boolean invertNormalizedKey()- Specified by:
invertNormalizedKeyin classorg.apache.flink.api.common.typeutils.TypeComparator<org.apache.flink.api.java.tuple.Tuple2<byte[],INPUT>>
-
duplicate
public org.apache.flink.api.common.typeutils.TypeComparator<org.apache.flink.api.java.tuple.Tuple2<byte[],INPUT>> duplicate()- Specified by:
duplicatein classorg.apache.flink.api.common.typeutils.TypeComparator<org.apache.flink.api.java.tuple.Tuple2<byte[],INPUT>>
-
extractKeys
- Specified by:
extractKeysin classorg.apache.flink.api.common.typeutils.TypeComparator<org.apache.flink.api.java.tuple.Tuple2<byte[],INPUT>>
-
getFlatComparators
public org.apache.flink.api.common.typeutils.TypeComparator<?>[] getFlatComparators()- Specified by:
getFlatComparatorsin classorg.apache.flink.api.common.typeutils.TypeComparator<org.apache.flink.api.java.tuple.Tuple2<byte[],INPUT>>
-
supportsSerializationWithKeyNormalization
public boolean supportsSerializationWithKeyNormalization()- Specified by:
supportsSerializationWithKeyNormalizationin classorg.apache.flink.api.common.typeutils.TypeComparator<org.apache.flink.api.java.tuple.Tuple2<byte[],INPUT>>
-
writeWithKeyNormalization
public void writeWithKeyNormalization(org.apache.flink.api.java.tuple.Tuple2<byte[], INPUT> record, org.apache.flink.core.memory.DataOutputView target) - Specified by:
writeWithKeyNormalizationin classorg.apache.flink.api.common.typeutils.TypeComparator<org.apache.flink.api.java.tuple.Tuple2<byte[],INPUT>>
-
readWithKeyDenormalization
public org.apache.flink.api.java.tuple.Tuple2<byte[],INPUT> readWithKeyDenormalization(org.apache.flink.api.java.tuple.Tuple2<byte[], INPUT> reuse, org.apache.flink.core.memory.DataInputView source) - Specified by:
readWithKeyDenormalizationin classorg.apache.flink.api.common.typeutils.TypeComparator<org.apache.flink.api.java.tuple.Tuple2<byte[],INPUT>>
-