跳到主要内容
跳到主要内容

服务器数据包

valuenamedescription
0Hello服务器握手响应
1Dataclient data 相同
2Exception查询处理异常
3Progress查询进度
4PongPing 响应
5EndOfStream所有数据包均已传输
6ProfileInfo性能分析数据
7Totals汇总值
8Extremes极值(最小值、最大值)
9TablesStatusResponse对 TableStatus 请求的响应
10Log系统查询日志
11TableColumns列信息
12UUIDs唯一数据部分 ID 列表
13ReadTaskRequest用于描述需要获取下一个任务的请求的字符串(UUID)
14ProfileEvents来自服务器的性能统计事件数据包

DataTotalsExtremes 可以压缩。

Hello

客户端 hello 的响应。

fieldtypevaluedescription
nameStringClickHouse服务器名称
version_majorUVarInt21服务器主版本号
version_minorUVarInt12服务器次版本号
revisionUVarInt54452服务器修订号
tzStringEurope/Moscow服务器时区
display_nameStringClickHouseUI 中显示的服务器名称
version_patchUVarInt3服务器补丁版本号

异常

查询处理期间的服务器异常。

字段类型描述
codeInt3260参见 ErrorCodes.cpp
nameStringDB::Exception服务器主版本
messageStringDB::Exception: Table X doesn't exist服务器次版本
stack_traceString~C++ 堆栈跟踪
nestedBooltrue更多错误

可以是一个连续的异常列表,直到 nestedfalse 为止。

进度

服务器会定期上报查询执行的进度。

提示

进度以增量形式上报。若需汇总总量,请在客户端累加。

fieldtypevaluedescription
rowsUVarInt65535行数
bytesUVarInt871799字节数
total_rowsUVarInt0总行数
wrote_rowsUVarInt0来自客户端的行数
wrote_bytesUVarInt0来自客户端的字节数

Pong

客户端 ping 的响应,无数据包正文。

流结束

不再发送任何 Data 数据包,查询结果已从服务器完整地流式传输到客户端。

无数据包主体。

概要信息

字段类型
rowsUVarInt
blocksUVarInt
bytesUVarInt
applied_limitBool
rows_before_limitUVarInt
calculated_rows_before_limitBool

日志

包含服务器日志的 数据块

提示

编码为按列存储的 数据块,但不会被压缩。

columntype
timeDateTime
time_microUInt32
host_nameString
query_idString
thread_idUInt64
priorityInt8
sourceString
textString

Profile events

包含 profile events 的数据块。

提示

编码为列式的 data block,但不会被压缩。

value 的类型是 UInt64Int64,取决于服务器修订版本。

columntype
host_nameString
current_timeDateTime
thread_idUInt64
typeInt8
nameString
valueUInt64 or Int64