| Входные данные | Выходные данные | Псевдоним |
|---|---|---|
| ✔ | ✔ |
Описание
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 |
способ вывода UUID в формате MsgPack. | EXT |