|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.thrift.protocol.TProtocol
org.apache.hadoop.hive.serde2.thrift.TBinarySortableProtocol
public class TBinarySortableProtocol
An implementation of the Thrift Protocol for binary sortable records. The data format: NULL: a single byte \0 NON-NULL Primitives: ALWAYS prepend a single byte \1, and then: Boolean: FALSE = \1, TRUE = \2 Byte: flip the sign-bit to make sure negative comes before positive Short: flip the sign-bit to make sure negative comes before positive Int: flip the sign-bit to make sure negative comes before positive Long: flip the sign-bit to make sure negative comes before positive Double: flip the sign-bit for positive double, and all bits for negative double values String: NULL-terminated UTF-8 string, with NULL escaped to \1 \1, and \1 escaped to \1 \2 NON-NULL Complex Types: Struct: first the single byte \1, and then one field by one field. List: size stored as Int (see above), then one element by one element. Map: size stored as Int (see above), then one key by one value, and then the next pair and so on. Binary: size stored as Int (see above), then the binary data in its original form Note that the relative order of list/map/binary will be based on the size first (and elements one by one if the sizes are equal). This protocol takes an additional parameter SERIALIZATION_SORT_ORDER which is a string containing only "+" and "-". The length of the string should equal to the number of fields in the top-level struct for serialization. "+" means the field should be sorted ascendingly, and "-" means descendingly. The sub fields in the same top-level field will have the same sort order. This is not thrift compliant in that it doesn't write out field ids so things cannot actually be versioned.
Nested Class Summary | |
---|---|
static class |
TBinarySortableProtocol.Factory
Factory for TBinarySortableProtocol objects. |
Field Summary | |
---|---|
protected byte[] |
escapedNull
The escaped byte sequence for the null byte. |
protected byte[] |
escapedOne
The escaped byte sequence for the "\1" byte. |
protected byte[] |
nonNullByte
|
protected byte[] |
nullByte
|
Fields inherited from class org.apache.thrift.protocol.TProtocol |
---|
trans_ |
Constructor Summary | |
---|---|
TBinarySortableProtocol(org.apache.thrift.transport.TTransport trans)
|
Method Summary | |
---|---|
void |
initialize(org.apache.hadoop.conf.Configuration conf,
Properties tbl)
Initialize the TProtocol. |
boolean |
lastPrimitiveWasNull()
Was the last primitive read really a NULL. |
byte[] |
readBinary()
|
boolean |
readBool()
|
byte |
readByte()
|
double |
readDouble()
|
org.apache.thrift.protocol.TField |
readFieldBegin()
|
void |
readFieldEnd()
|
short |
readI16()
|
int |
readI32()
|
long |
readI64()
|
boolean |
readIsNull()
|
org.apache.thrift.protocol.TList |
readListBegin()
This method always return the same instance of TList to avoid creating new instances. |
void |
readListEnd()
|
org.apache.thrift.protocol.TMap |
readMapBegin()
This method always return the same instance of TMap to avoid creating new instances. |
void |
readMapEnd()
|
org.apache.thrift.protocol.TMessage |
readMessageBegin()
|
void |
readMessageEnd()
|
org.apache.thrift.protocol.TSet |
readSetBegin()
This method always return the same instance of TSet to avoid creating new instances. |
void |
readSetEnd()
|
String |
readString()
|
org.apache.thrift.protocol.TStruct |
readStructBegin()
|
void |
readStructEnd()
|
void |
writeBinary(byte[] bin)
|
void |
writeBool(boolean b)
|
void |
writeByte(byte b)
|
void |
writeDouble(double dub)
|
void |
writeFieldBegin(org.apache.thrift.protocol.TField field)
|
void |
writeFieldEnd()
|
void |
writeFieldStop()
|
void |
writeI16(short i16)
|
void |
writeI32(int i32)
|
void |
writeI64(long i64)
|
void |
writeListBegin(org.apache.thrift.protocol.TList list)
|
void |
writeListEnd()
|
void |
writeMapBegin(org.apache.thrift.protocol.TMap map)
|
void |
writeMapEnd()
|
void |
writeMessageBegin(org.apache.thrift.protocol.TMessage message)
|
void |
writeMessageEnd()
|
void |
writeNull()
Write a null. |
void |
writeSetBegin(org.apache.thrift.protocol.TSet set)
|
void |
writeSetEnd()
|
void |
writeString(String str)
|
void |
writeStructBegin(org.apache.thrift.protocol.TStruct struct)
|
void |
writeStructEnd()
|
void |
writeText(org.apache.hadoop.io.Text text)
Write Text. |
Methods inherited from class org.apache.thrift.protocol.TProtocol |
---|
getTransport |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected final byte[] nullByte
protected final byte[] nonNullByte
protected final byte[] escapedNull
protected final byte[] escapedOne
Constructor Detail |
---|
public TBinarySortableProtocol(org.apache.thrift.transport.TTransport trans)
Method Detail |
---|
public void initialize(org.apache.hadoop.conf.Configuration conf, Properties tbl) throws org.apache.thrift.TException
ConfigurableTProtocol
initialize
in interface ConfigurableTProtocol
conf
- System propertiestbl
- table properties
org.apache.thrift.TException
public void writeMessageBegin(org.apache.thrift.protocol.TMessage message) throws org.apache.thrift.TException
writeMessageBegin
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public void writeMessageEnd() throws org.apache.thrift.TException
writeMessageEnd
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public void writeStructBegin(org.apache.thrift.protocol.TStruct struct) throws org.apache.thrift.TException
writeStructBegin
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public void writeStructEnd() throws org.apache.thrift.TException
writeStructEnd
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public void writeFieldBegin(org.apache.thrift.protocol.TField field) throws org.apache.thrift.TException
writeFieldBegin
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public void writeFieldEnd() throws org.apache.thrift.TException
writeFieldEnd
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public void writeFieldStop()
writeFieldStop
in class org.apache.thrift.protocol.TProtocol
public void writeMapBegin(org.apache.thrift.protocol.TMap map) throws org.apache.thrift.TException
writeMapBegin
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public void writeMapEnd() throws org.apache.thrift.TException
writeMapEnd
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public void writeListBegin(org.apache.thrift.protocol.TList list) throws org.apache.thrift.TException
writeListBegin
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public void writeListEnd() throws org.apache.thrift.TException
writeListEnd
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public void writeSetBegin(org.apache.thrift.protocol.TSet set) throws org.apache.thrift.TException
writeSetBegin
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public void writeSetEnd() throws org.apache.thrift.TException
writeSetEnd
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public void writeBool(boolean b) throws org.apache.thrift.TException
writeBool
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public void writeByte(byte b) throws org.apache.thrift.TException
writeByte
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public void writeI16(short i16) throws org.apache.thrift.TException
writeI16
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public void writeI32(int i32) throws org.apache.thrift.TException
writeI32
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public void writeI64(long i64) throws org.apache.thrift.TException
writeI64
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public void writeDouble(double dub) throws org.apache.thrift.TException
writeDouble
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public void writeString(String str) throws org.apache.thrift.TException
writeString
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public void writeBinary(byte[] bin) throws org.apache.thrift.TException
writeBinary
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public org.apache.thrift.protocol.TMessage readMessageBegin() throws org.apache.thrift.TException
readMessageBegin
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public void readMessageEnd() throws org.apache.thrift.TException
readMessageEnd
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public org.apache.thrift.protocol.TStruct readStructBegin() throws org.apache.thrift.TException
readStructBegin
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public void readStructEnd() throws org.apache.thrift.TException
readStructEnd
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public org.apache.thrift.protocol.TField readFieldBegin() throws org.apache.thrift.TException
readFieldBegin
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public void readFieldEnd() throws org.apache.thrift.TException
readFieldEnd
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public org.apache.thrift.protocol.TMap readMapBegin() throws org.apache.thrift.TException
readMapBegin
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public void readMapEnd() throws org.apache.thrift.TException
readMapEnd
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public org.apache.thrift.protocol.TList readListBegin() throws org.apache.thrift.TException
readListBegin
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public void readListEnd() throws org.apache.thrift.TException
readListEnd
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public org.apache.thrift.protocol.TSet readSetBegin() throws org.apache.thrift.TException
readSetBegin
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public void readSetEnd() throws org.apache.thrift.TException
readSetEnd
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public boolean readBool() throws org.apache.thrift.TException
readBool
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public final boolean readIsNull() throws org.apache.thrift.TException
org.apache.thrift.TException
public byte readByte() throws org.apache.thrift.TException
readByte
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public short readI16() throws org.apache.thrift.TException
readI16
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public int readI32() throws org.apache.thrift.TException
readI32
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public long readI64() throws org.apache.thrift.TException
readI64
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public double readDouble() throws org.apache.thrift.TException
readDouble
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public String readString() throws org.apache.thrift.TException
readString
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public byte[] readBinary() throws org.apache.thrift.TException
readBinary
in class org.apache.thrift.protocol.TProtocol
org.apache.thrift.TException
public boolean lastPrimitiveWasNull() throws org.apache.thrift.TException
WriteNullsProtocol
lastPrimitiveWasNull
in interface WriteNullsProtocol
org.apache.thrift.TException
public void writeNull() throws org.apache.thrift.TException
WriteNullsProtocol
writeNull
in interface WriteNullsProtocol
org.apache.thrift.TException
public void writeText(org.apache.hadoop.io.Text text) throws org.apache.thrift.TException
WriteTextProtocol
writeText
in interface WriteTextProtocol
org.apache.thrift.TException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |