Phoenix学习笔记 --- phoenix支持的数据类型

来源:互联网 发布:最优化理论与算法课件 编辑:程序博客网 时间:2024/06/06 16:31

Index

INTEGER Type
UNSIGNED_INT Type
BIGINT Type
UNSIGNED_LONG Type
TINYINT Type
UNSIGNED_TINYINT Type
SMALLINT Type
UNSIGNED_SMALLINT Type
FLOAT TypeUNSIGNED_FLOAT Type
DOUBLE Type
UNSIGNED_DOUBLE Type
DECIMAL Type
BOOLEAN Type
TIME Type
DATE Type
TIMESTAMP Type
UNSIGNED_TIME TypeUNSIGNED_DATE Type
UNSIGNED_TIMESTAMP Type
VARCHAR Type
CHAR Type
BINARY Type
VARBINARY Type
ARRAY

INTEGER Type

INTEGER

Possible values: -2147483648 to 2147483647.

Mapped to java.lang.Integer. The binary representation is a 4 byte integer with the sign bit flipped (so that negative values sorts before positive values).

Example:

INTEGER

UNSIGNED_INT Type

UNSIGNED_INT

Possible values: 0 to 2147483647. Mapped to java.lang.Integer. The binary representation is a 4 byte integer, matching the HBase Bytes.toBytes(int) method. The purpose of this type is to map to existing HBase data that was serialized using this HBase utility method. If that is not the case, use the regular signed type instead.

Example:

UNSIGNED_INT

BIGINT Type

BIGINT

Possible values: -9223372036854775807 to 9223372036854775807. Mapped to java.lang.Long. The binary representation is an 8 byte long with the sign bit flipped (so that negative values sorts before positive values).

Example:

BIGINT

UNSIGNED_LONG Type

UNSIGNED_LONG

Possible values: 0 to 9223372036854775807. Mapped to java.lang.Long. The binary representation is an 8 byte integer, matching the HBase Bytes.toBytes(long) method. The purpose of this type is to map to existing HBase data that was serialized using this HBase utility method. If that is not the case, use the regular signed type instead.

Example:

UNSIGNED_LONG

TINYINT Type

TINYINT

Possible values: -128 to 127. Mapped to java.lang.Byte. The binary representation is a single byte, with the sign bit flipped (so that negative values sorts before positive values).

Example:

TINYINT

UNSIGNED_TINYINT Type

UNSIGNED_TINYINT

Possible values: 0 to 127. Mapped to java.lang.Byte. The binary representation is a single byte, matching the HBase Bytes.toBytes(byte) method. The purpose of this type is to map to existing HBase data that was serialized using this HBase utility method. If that is not the case, use the regular signed type instead.

Example:

UNSIGNED_TINYINT

SMALLINT Type

SMALLINT

Possible values: -32768 to 32767. Mapped to java.lang.Short. The binary representation is a 2 byte short with the sign bit flipped (so that negative values sort before positive values).

Example:

SMALLINT

UNSIGNED_SMALLINT Type

UNSIGNED_SMALLINT

Possible values: 0 to 32767. Mapped to java.lang.Short. The binary representation is an 2 byte integer, matching the HBase Bytes.toBytes(short) method. The purpose of this type is to map to existing HBase data that was serialized using this HBase utility method. If that is not the case, use the regular signed type instead.

Example:

UNSIGNED_SMALLINT

FLOAT Type

FLOAT

Possible values: -3.402823466 E + 38 to 3.402823466 E + 38. Mapped to java.lang.Float. The binary representation is an 4 byte float with the sign bit flipped (so that negative values sort before positive values).

Example:

FLOAT

UNSIGNED_FLOAT Type

UNSIGNED_FLOAT

Possible values: 0 to 3.402823466 E + 38. Mapped to java.lang.Float. The binary representation is an 4 byte float matching the HBase Bytes.toBytes(float) method. The purpose of this type is to map to existing HBase data that was serialized using this HBase utility method. If that is not the case, use the regular signed type instead.

Example:

UNSIGNED_FLOAT

DOUBLE Type

DOUBLE

Possible values: -1.7976931348623158 E + 308 to 1.7976931348623158 E + 308. Mapped to java.lang.Double. The binary representation is an 8 byte double with the sign bit flipped (so that negative values sort before positive value).

Example:

DOUBLE

UNSIGNED_DOUBLE Type

UNSIGNED_DOUBLE

Possible values: 0 to  1.7976931348623158 E + 308. Mapped to java.lang.Double. The binary representation is an 8 byte double matching the HBase Bytes.toBytes(double) method. The purpose of this type is to map to existing HBase data that was serialized using this HBase utility method. If that is not the case, use the regular signed type instead.

Example:

UNSIGNED_DOUBLE

DECIMAL Type

DECIMAL   ( precisionInt , scaleInt ) 

Data type with fixed precision and scale. A user can specify precision and scale by expression DECIMAL(precision,scale) in a DDL statement, for example, DECIMAL(10,2). The maximum precision is 38 digits. Mapped to java.math.BigDecimal. The binary representation is binary comparable, variable length format. When used in a row key, it is terminated with a null byte unless it is the last column.

Example:

DECIMAL
DECIMAL(10,2)

BOOLEAN Type

BOOLEAN

Possible values: TRUE and FALSE.

Mapped to java.lang.Boolean. The binary representation is a single byte with 0 for false and 1 for true

Example:

BOOLEAN

TIME Type

TIME

The time data type. The format is yyyy-MM-dd hh:mm:ss, with both the date and time parts maintained. Mapped to java.sql.Time. The binary representation is an 8 byte long (the number of milliseconds from the epoch), making it possible (although not necessarily recommended) to store more information within a TIME column than what is provided by java.sql.Time. Note that the internal representation is based on a number of milliseconds since the epoch (which is based on a time in GMT), while java.sql.Time will format times based on the client's local time zone. Please note that this TIME type is different than the TIME type as defined by the SQL 92 standard in that it includes year, month, and day components. As such, it is not in compliance with the JDBC APIs. As the underlying data is still stored as a long, only the presentation of the value is incorrect.

Example:

TIME

DATE Type

DATE

The date data type. The format is yyyy-MM-dd hh:mm:ss, with both the date and time parts maintained to a millisecond accuracy. Mapped to java.sql.Date. The binary representation is an 8 byte long (the number of milliseconds from the epoch), making it possible (although not necessarily recommended) to store more information within a DATEcolumn than what is provided by java.sql.Date. Note that the internal representation is based on a number of milliseconds since the epoch (which is based on a time in GMT), while java.sql.Date will format dates based on the client's local time zone. Please note that this DATE type is different than the DATE type as defined by the SQL 92 standard in that it includes a time component. As such, it is not in compliance with the JDBC APIs. As the underlying data is still stored as a long, only the presentation of the value is incorrect.

Example:

DATE

TIMESTAMP Type

TIMESTAMP

The timestamp data type. The format is yyyy-MM-dd hh:mm:ss[.nnnnnnnnn]. Mapped to java.sql.Timestamp with an internal representation of the number of nanos from the epoch. The binary representation is 12 bytes: an 8 byte long for the epoch time plus a 4 byte integer for the nanos. Note that the internal representation is based on a number of milliseconds since the epoch (which is based on a time in GMT), while java.sql.Timestamp will format timestamps based on the client's local time zone.

Example:

TIMESTAMP

UNSIGNED_TIME Type

UNSIGNED_TIME

The unsigned time data type. The format is yyyy-MM-dd hh:mm:ss, with both the date and time parts maintained to the millisecond accuracy. Mapped to java.sql.Time. The binary representation is an 8 byte long (the number of milliseconds from the epoch) matching the HBase.toBytes(long) method. The purpose of this type is to map to existing HBase data that was serialized using this HBase utility method. If that is not the case, use the regular signed type instead.

Example:

UNSIGNED_TIME

UNSIGNED_DATE Type

UNSIGNED_DATE

The unsigned date data type. The format is yyyy-MM-dd hh:mm:ss, with both the date and time parts maintained to a millisecond accuracy. Mapped to java.sql.Date. The binary representation is an 8 byte long (the number of milliseconds from the epoch) matching the HBase.toBytes(long) method. The purpose of this type is to map to existing HBase data that was serialized using this HBase utility method. If that is not the case, use the regular signed type instead.

Example:

UNSIGNED_DATE

UNSIGNED_TIMESTAMP Type

UNSIGNED_TIMESTAMP

The timestamp data type. The format is yyyy-MM-dd hh:mm:ss[.nnnnnnnnn]. Mapped to java.sql.Timestamp with an internal representation of the number of nanos from the epoch. The binary representation is 12 bytes: an 8 byte long for the epoch time plus a 4 byte integer for the nanos with the long serialized through the HBase.toBytes(long) method. The purpose of this type is to map to existing HBase data that was serialized using this HBase utility method. If that is not the case, use the regular signed type instead.

Example:

UNSIGNED_TIMESTAMP

VARCHAR Type

VARCHAR   ( precisionInt ) 

A variable length String with an optional max byte length. The binary representation is UTF8 matching the HBase Bytes.toBytes(String) method. When used in a row key, it is terminated with a null byte unless it is the last column.

Mapped to java.lang.String.

Example:

VARCHAR
VARCHAR(255)

CHAR Type

CHAR ( precisionInt )

A fixed length String with single-byte characters. The binary representation is UTF8 matching the HBase Bytes.toBytes(String) method.

Mapped to java.lang.String.

Example:

CHAR(10)

BINARY Type

BINARY ( precisionInt )

Raw fixed length byte array.

Mapped to byte[].

Example:

BINARY

VARBINARY Type

VARBINARY

Raw variable length byte array.

Mapped to byte[].

Example:

VARBINARY

ARRAY

ARRAY   [   dimensionInt ] 

Mapped to java.sql.Array. Every primitive type except for VARBINARY may be declared as an ARRAY. Only single dimensional arrays are supported.

Example:

VARCHAR ARRAY
CHAR(10) ARRAY [5]
INTEGER []

INTEGER [100]



==============================================================================================



支持的类型如下:


INTEGER                整形
UNSIGNED_INT           无符号整形
BIGINT                 长整形
UNSIGNED_LONG          无符号长整形
TINYINT                短整形
UNSIGNED_TINYINT       无符号短整型
SMALLINT               小整形
UNSIGNED_SMALLINT      无符号短整型
FLOAT                  浮点型 
UNSIGNED_FLOAT         无符号浮点型
DOUBLE                 双精度浮点型
UNSIGNED_DOUBLE        无符号双精度浮点型
DECIMAL                长精度双精度浮点型
BOOLEAN                布尔类型
TIME                   时间类型
DATE                   日期类型
TIMESTAMP              时间戳类型
UNSIGNED_TIME          无符号时间类型
UNSIGNED_DATE          无符号日期类型
UNSIGNED_TIMESTAMP     无符号时间戳类型
VARCHAR                字符串类型
CHAR                   字符类型
BINARY       二进制类型
VARBINARY              可变长二进制类型
ARRAY                  数组类型




0 0
原创粉丝点击