Iceberg从入门到精通系列之四:详细整理出Iceberg支持的字段类型,创建包含所有类型的表,并插入数据
- 一、Iceberg表支持的字段类型
- 二、创建包含所有类型的表
- 三、插入数据
一、Iceberg表支持的字段类型
- BOOLEAN
- TINYINT
- SMALLINT
- INTEGER
- BIGINT
- FLOAT
- DOUBLE
- DECIMAL
- DATE
- TIMESTAMP
- STRING
- UUID
- FIXED
- BINARY
- CHAR
- VARCHAR
二、创建包含所有类型的表
该示例创建了一个名为my_table的表,包含所有支持的字段类型,并将其存储在HDFS上的/data/my_table目录中。注意,对于DECIMAL、FIXED和BINARY类型,需要指定精度和长度。
CREATE TABLE my_table (
bool_col BOOLEAN,
tinyint_col TINYINT,
smallint_col SMALLINT,
int_col INT,
bigint_col BIGINT,
float_col FLOAT,
double_col DOUBLE,
decimal_col DECIMAL(10,2),
date_col DATE,
timestamp_col TIMESTAMP,
string_col STRING,
uuid_col UUID,
fixed_col FIXED(16),
binary_col BINARY(64),
char_col CHAR(10),
varchar_col VARCHAR(20)
)
USING iceberg
LOCATION 'hdfs:///data/my_table';
三、插入数据
该语句插入了一条包含所有字段类型的记录到my_table表中。注意,对于DECIMAL、BINARY、CHAR和VARCHAR类型,需要使用CAST函数将值转换为指定类型。
INSERT INTO my_table
VALUES (true, 1, 123, 456789, 3.14, 2.718, 123.45, CAST('123.45' AS DECIMAL(10,2)), '2021-01-01', '2021-01-01 12:00:00', 'hello', '123e4567-e89b-12d3-a456-426614174000', CAST('0123456789abcdef' AS BINARY(8)), 'hello', 'world');