Основы
примечание
Справка по клиентскому протоколу в процессе разработки.
Большинство примеров только на Go.
Этот документ описывает бинарный протокол для TCP-клиентов ClickHouse.
Varint
Для длины, кодов пакетов и других случаев используется кодирование беззнакового varint. Используйте binary.PutUvarint и binary.ReadUvarint.
примечание
Знаковый varint не используется.
Строка
Строки переменной длины кодируются как (длина, значение), где длина - это varint, а значение - это строка в кодировке utf8.
к сведению
Проверьте длину, чтобы избежать OOM:
0 ≤ len < MAX
- Кодировать
- Декодировать
- Шестнадцатеричный дамп
- Base64
- Go
Целые числа
подсказка
ClickHouse использует младший порядок байтов (Little Endian) для целых чисел фиксированного размера.
Int32
- Шестнадцатеричный дамп
- Base64
Булевы значения
Булевы значения представлены одним байтом, 1
- это true
, а 0
- это false
.