> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-mintlify-3a82795f.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> Документация по формату MsgPack

# MsgPack

| Входные данные | Выходные данные | Псевдоним |
| -------------- | --------------- | --------- |
| ✔              | ✔               |           |

<div id="description">
  ## Описание
</div>

ClickHouse поддерживает чтение и запись файлов данных в формате [MessagePack](https://msgpack.org/).

<div id="data-types-matching">
  ## Соответствие типов данных
</div>

| Тип данных MessagePack (`INSERT`)                                  | Тип данных ClickHouse                                                               | Тип данных MessagePack (`SELECT`)  |
| ------------------------------------------------------------------ | ----------------------------------------------------------------------------------- | ---------------------------------- |
| `uint N`, `positive fixint`                                        | [`UIntN`](/ru/reference/data-types/int-uint)                                        | `uint N`                           |
| `int N`, `negative fixint`                                         | [`IntN`](/ru/reference/data-types/int-uint)                                         | `int N`                            |
| `bool`                                                             | [`UInt8`](/ru/reference/data-types/int-uint)                                        | `uint 8`                           |
| `fixstr`, `str 8`, `str 16`, `str 32`, `bin 8`, `bin 16`, `bin 32` | [`String`](/ru/reference/data-types/string)                                         | `bin 8`, `bin 16`, `bin 32`        |
| `fixstr`, `str 8`, `str 16`, `str 32`, `bin 8`, `bin 16`, `bin 32` | [`FixedString`](/ru/reference/data-types/fixedstring)                               | `bin 8`, `bin 16`, `bin 32`        |
| `float 32`                                                         | [`Float32`](/ru/reference/data-types/float)                                         | `float 32`                         |
| `float 64`                                                         | [`Float64`](/ru/reference/data-types/float)                                         | `float 64`                         |
| `uint 16`                                                          | [`Date`](/ru/reference/data-types/date)                                             | `uint 16`                          |
| `int 32`                                                           | [`Date32`](/ru/reference/data-types/date32)                                         | `int 32`                           |
| `uint 32`                                                          | [`DateTime`](/ru/reference/data-types/datetime)                                     | `uint 32`                          |
| `uint 64`                                                          | [`DateTime64`](/ru/reference/data-types/datetime)                                   | `uint 64`                          |
| `fixarray`, `array 16`, `array 32`                                 | [`Array`](/ru/reference/data-types/array)/[`Tuple`](/ru/reference/data-types/tuple) | `fixarray`, `array 16`, `array 32` |
| `fixmap`, `map 16`, `map 32`                                       | [`Map`](/ru/reference/data-types/map)                                               | `fixmap`, `map 16`, `map 32`       |
| `uint 32`                                                          | [`IPv4`](/ru/reference/data-types/ipv4)                                             | `uint 32`                          |
| `bin 8`                                                            | [`String`](/ru/reference/data-types/string)                                         | `bin 8`                            |
| `int 8`                                                            | [`Enum8`](/ru/reference/data-types/enum)                                            | `int 8`                            |
| `bin 8`                                                            | [`(U)Int128`/`(U)Int256`](/ru/reference/data-types/int-uint)                        | `bin 8`                            |
| `int 32`                                                           | [`Decimal32`](/ru/reference/data-types/decimal)                                     | `int 32`                           |
| `int 64`                                                           | [`Decimal64`](/ru/reference/data-types/decimal)                                     | `int 64`                           |
| `bin 8`                                                            | [`Decimal128`/`Decimal256`](/ru/reference/data-types/decimal)                       | `bin 8 `                           |

<div id="example-usage">
  ## Пример использования
</div>

Запись в файл ".msgpk":

```sql theme={null}
$ 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;
```

<div id="format-settings">
  ## Настройки формата
</div>

| Параметр                                                                                                                | Описание                                                                                                                   | По умолчанию |
| ----------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | ------------ |
| [`input_format_msgpack_number_of_columns`](/ru/reference/settings/formats#input_format_msgpack_number_of_columns)       | количество столбцов во вставляемых данных в формате MsgPack. Используется для автоматического определения схемы по данным. | `0`          |
| [`output_format_msgpack_uuid_representation`](/ru/reference/settings/formats#output_format_msgpack_uuid_representation) | способ вывода UUID в формате MsgPack.                                                                                      | `EXT`        |
