基础
备注
客户端协议参考正在进行中。
大多数示例仅为 Go 语言。
本文档描述了 ClickHouse TCP 客户端的二进制协议。
Varint
对于长度、数据包代码和其他情况,使用 无符号 varint 编码。 使用 binary.PutUvarint 和 binary.ReadUvarint。
备注
有符号 varint 未被使用。
字符串
可变长度字符串编码为 (长度, 值),其中 长度 是 varint,值 是 utf8 字符串。
信息
验证长度以防止内存溢出:
0 ≤ len < MAX
- 编码
- 解码
- 十六进制转储
- Base64
- Go
整数
提示
ClickHouse 使用 小端 存储固定大小的整数。
Int32
- 十六进制转储
- Base64
布尔值
布尔值由单个字节表示,1
是 true
,0
是 false
。