Перейти к основному содержанию
Справочник по клиентскому протоколу пока в разработке.Большинство примеров доступны только на Go.
В этом документе описан бинарный протокол TCP-клиентов ClickHouse.

Varint

Для длин, кодов пакетов и в других случаях используется кодирование unsigned varint. Используйте binary.PutUvarint и binary.ReadUvarint.
Signed varint не используется.

String

Строки переменной длины кодируются как (length, value), где lengthvarint, а value — строка UTF-8.
Проверяйте длину, чтобы избежать OOM:0 ≤ len < MAX

Целые числа

ClickHouse использует Little Endian для целых чисел с фиксированным размером.

Int32

Логический тип

Логические значения представлены одним байтом: 1 означает true, а 0false.
Последнее изменение 19 июня 2026 г.