MaxCompute与数据源表类型及数据类型的映射关系。
BigQuery与MaxCompute数据类型映射
BigQuery数据类型 | MaxCompute数据类型 |
ARRAY | ARRAY |
BOOLEAN | BOOLEAN |
BYTES | BINARY |
DATE | DATE |
DATETIME | TIMESTAMP_NTZ |
Geography | STRING |
INTERVAL | STRING |
JSON | JSON |
INT64 | BIGINT |
NUMERIC | DECIMAL(38, 9) |
BIGNUMERIC | DECIMAL(x, y) 说明 上述x、y参数是可设置的,默认值为DECIMAL(38, 18)。 |
FLOAT64 | DOUBLE |
RANGE | STRING |
STRING | STRING |
STRUCT | STRUCT |
TIME | BIGINT |
TIMESTAMP | TIMESTAMP |
Hive与MaxCompute数据类型映射
普通列
Hive数据类型 | MaxCompute数据类型 |
BOOLEAN | BOOLEAN |
TINYINT | TINYINT |
SMALLINT | SMALLINT |
INT | INT |
BIGINT | BIGINT |
FLOAT | FLOAT |
DOUBLE | DOUBLE |
DECIMAL | DECIMAL |
STRING | STRING |
VARCHAR | VARCHAR |
CHAR | STRING |
BINARY | BINARY |
TIMESTAMP | TIMESTAMP |
DATE | DATE |
DATE | DATETIME |
ARRAY | ARRAY |
MAP | MAP |
STRUCT | STRUCT |
UNION | UNION |
暂时不支持Hive3 TIMESTAMP_NTZ类型。
分区列
STRING /VARCHAR/CHAR/TINYINT/SMALLINT/INT/BIGINT类型保留原始类型。
其他类型均转换为STRING类型。
Databricks与MaxCompute表类型映射
Databricks表类型 | MaxCompute表类型 |
delta table with primary key | pk delta table |
delta table without primary key | append delta table |
non-delta table | append delta table |
Databricks与MaxCompute数据类型映射
Databricks数据类型 | MaxCompute数据类型 |
BIGINT | BIGINT |
BINARY | BINARY |
BOOLEAN | BOOLEAN |
DATE | DATE |
DOUBLE | DOUBLE |
FLOAT | FLOAT |
INT | INT |
SMALLINT | SMALLINT |
STRING | STRING |
TIMESTAMP | TIMESTAMP |
TIMESTAMP_NTZ | TIMESTAMP_NTZ |
TINYINT | TINYINT |
TIMESTAMP | TIMESTAMP |
ARRAY <elementType> | ARRAY <elementType> |
STRUCT < fieldName [:] fieldType [not null] [collate collationName] [comment str]... > | STRUCT < fieldName [:] fieldType]... > |
MAP<keyType, valueType> | MAP<keyType, valueType> |
INTERVAL | 不支持 |
VOID | 不支持 |
VARIANT | 不支持 |
OBJECT | 不支持 |
SnowFlake与MaxCompute数据类型映射
SnowFlake数据类型 | MaxCompute数据类型 |
NUMBER(P,S) (S > 30) | STRING |
NUMBER(P,S) (30 >= S > 0) | BIGINT |
NUMBER(P,S) (S = 0) |
|
DOUBLE | DOUBLE |
DECFLOAT | STRING |
STRING | STRING |
BINARY | BINARY |
BOOLEAN | BOOLEAN |
DATE | DATE |
TIME | STRING, HH:MM:SS.SSSSSSSSS 格式 |
TIMESTAMP_LTZ | TIMESTAMP |
TIMESTAMP_NTZ | TIMESTAMP_NTZ |
TIMESTAMP_TZ | TIMESTAMP_NTZ |
VARIANT | JSON |
ARRAY | JSON |
OBJECT | JSON |
ARRAY(elementType) | ARRAY<elementType> |
OBJECT(fieldName fieldType, ...) | STRUCT<fieldName: fieldType, ...> |
MAP(keyType, valueType) | MAP<keyType, valueType> |
GEOGRAPHY | STRING |
GEOMETRY | STRING |
FILE | 不支持 |
VECTOR | 不支持 |
由于MaxCompute不支持复杂类型内嵌JSON类型,当结构化类型(ARRAY(elementType)、OBJECT(fieldName fieldType, ...)、MAP(keyType, valueType))内部嵌套了半结构化类型(VARIANT、OBJECT、ARRAY)时,这些半结构化类型会被转为 STRING。例如:OBJECT(o OBJECT) 迁移到 MaxCompute 的类型为 STRUCT<o STRING>。