数据湖探索 DLI-Avro Format:数据类型映射

时间:2024-09-20 11:05:05

数据类型映射

目前,Avro schema 通常是从 table schema 中推导而来。尚不支持显式定义 Avro schema。因此,下表列出了从 Flink 类型到 Avro 类型的类型映射。

除了下面列出的类型,Flink 支持读取/写入 nullable 的类型。Flink 将 nullable 的类型映射到 Avro union(something, null),其中 something 是从 Flink 类型转换的 Avro 类型。

表2 数据类型映射

Flink SQL类型

Avro类型

Avro逻辑类型

CHAR / VARCHAR / STRING

string

-

BOOLEAN

boolean

-

BINARY / VARBINARY

bytes

-

DECIMAL

fixed

decimal

TINYINT

int

-

SMALLINT

int

-

INT

int

-

BIGINT

long

-

FLOAT

float

-

DOUBLE

double

-

DATE

int

date

TIME

int

time-millis

TIMESTAMP

long

timestamp-millis

ARRAY

array

-

MAP(key 必须是 string/char/varchar 类型)

map

-

MULTISET(元素必须是 string/char/varchar 类型)

map

-

ROW

record

-

support.huaweicloud.com/sqlref-flink-dli/dli_08_0408.html