Перейти к основному содержимому
Перейти к основному содержимому

Основы

примечание

Справка по клиентскому протоколу в процессе разработки.

Большинство примеров только на Go.

Этот документ описывает бинарный протокол для TCP-клиентов ClickHouse.

Varint

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

примечание

Знаковый varint не используется.

Строка

Строки переменной длины кодируются как (длина, значение), где длина - это varint, а значение - это строка в кодировке utf8.

к сведению

Проверьте длину, чтобы избежать OOM:

0 ≤ len < MAX

Целые числа

подсказка

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

Int32

Булевы значения

Булевы значения представлены одним байтом, 1 - это true, а 0 - это false.