MsgPack
输入 | 输出 | 别名 |
---|---|---|
✔ | ✔ |
描述
ClickHouse 支持读取和写入 MessagePack 数据文件。
数据类型匹配
MessagePack 数据类型 (INSERT ) | ClickHouse 数据类型 | MessagePack 数据类型 (SELECT ) |
---|---|---|
uint N , positive fixint | UIntN | uint N |
int N , negative fixint | IntN | int N |
bool | UInt8 | uint 8 |
fixstr , str 8 , str 16 , str 32 , bin 8 , bin 16 , bin 32 | String | bin 8 , bin 16 , bin 32 |
fixstr , str 8 , str 16 , str 32 , bin 8 , bin 16 , bin 32 | FixedString | bin 8 , bin 16 , bin 32 |
float 32 | Float32 | float 32 |
float 64 | Float64 | float 64 |
uint 16 | Date | uint 16 |
int 32 | Date32 | int 32 |
uint 32 | DateTime | uint 32 |
uint 64 | DateTime64 | uint 64 |
fixarray , array 16 , array 32 | Array /Tuple | fixarray , array 16 , array 32 |
fixmap , map 16 , map 32 | Map | fixmap , map 16 , map 32 |
uint 32 | IPv4 | uint 32 |
bin 8 | String | bin 8 |
int 8 | Enum8 | int 8 |
bin 8 | (U)Int128 /(U)Int256 | bin 8 |
int 32 | Decimal32 | int 32 |
int 64 | Decimal64 | int 64 |
bin 8 | Decimal128 /Decimal256 | bin 8 |
示例用法
写入文件 ".msgpk"
$ clickhouse-client --query="CREATE TABLE msgpack (array Array(UInt8)) ENGINE = Memory;"
$ clickhouse-client --query="INSERT INTO msgpack VALUES ([0, 1, 2, 3, 42, 253, 254, 255]), ([255, 254, 253, 42, 3, 2, 1, 0])";
$ clickhouse-client --query="SELECT * FROM msgpack FORMAT MsgPack" > tmp_msgpack.msgpk;
格式设置
设置 | 描述 | 默认 |
---|---|---|
input_format_msgpack_number_of_columns | 插入的 MsgPack 数据中的列数。用于从数据自动推断模式。 | 0 |
output_format_msgpack_uuid_representation | 在 MsgPack 格式中输出 UUID 的方式。 | EXT |