Справочник по клиентскому протоколу пока в разработке.Большинство примеров доступны только на Go.
В этом документе описан бинарный протокол TCP-клиентов ClickHouse.
Для длин, кодов пакетов и в других случаях используется кодирование unsigned varint.
Используйте binary.PutUvarint и binary.ReadUvarint.
Signed varint не используется.
Строки переменной длины кодируются как (length, value), где length — varint, а value — строка UTF-8.
Проверяйте длину, чтобы избежать OOM:0 ≤ len < MAX
Кодирование
Декодирование
Шестнадцатеричный дамп
Base64
Go
ClickHouse использует Little Endian для целых чисел с фиксированным размером.
Шестнадцатеричный дамп
Base64
Логические значения представлены одним байтом: 1 означает true, а 0 — false.Последнее изменение 2 июля 2026 г.