| 输入 | 输出 | 别名 |
|---|---|---|
| ✔ | ✔ |
说明
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 数据中的列数。用于根据数据自动推断 schema。 | 0 |
output_format_msgpack_uuid_representation |
以 MsgPack 格式输出 UUID 的方式。 | EXT |