Passer au contenu principal
valeurnomdescription
0HelloDébut de la négociation client
1requêteRequête
2DataBloc de données
3CancelAnnuler la requête
4PingRequête Ping
5TableStatusRequête d’état de la table
Le paquet Data peut être compressé.

Hello

Par exemple, supposons que nous utilisions Go Client v1.10, qui prend en charge la version de protocole 54451, et que nous voulions nous connecter à la base de données default avec l’utilisateur default et le mot de passe secret.
champtypevaleurdescription
client_nameString"Go Client"Nom de l’implémentation cliente
version_majorUVarInt1Version majeure du client
version_minorUVarInt10Version mineure du client
protocol_versionUVarInt54451Version du protocole TCP
databaseString"default"Nom de la base de données
usernameString"default"Nom d’utilisateur
passwordString"secret"Mot de passe

Version du protocole

La version du protocole correspond à la version du protocole TCP du client. En général, elle est égale à la dernière révision compatible du serveur, mais il ne faut pas la confondre avec celle-ci.

Valeurs par défaut

Toutes les valeurs doivent être définies explicitement ; il n’existe aucune valeur par défaut côté serveur. Côté client, utilisez comme valeurs par défaut la base de données "default", le nom d’utilisateur "default" et le mot de passe "" (chaîne vide).

Requête

champtypevaleurdescription
query_idString1ff-a123ID de requête, peut être UUIDv4
client_infoClientInfoVoir le typeInformations sur le client
settingsParamètresVoir le typeListe des paramètres
secretStringsecretSecret inter-serveur
stageUVarInt2Exécuter jusqu’à l’étape de la requête
compressionUVarInt0désactivée=0, activée=1
bodyStringSELECT 1Texte de la requête

Informations sur le client

champtypedescription
query_kindbyteNone=0, Initial=1, Secondary=2
initial_userStringUtilisateur initial
initial_query_idStringID de la requête initiale
initial_addressStringAdresse initiale
initial_timeInt64Heure initiale
interfacebyteTCP=1, HTTP=2
os_userStringUtilisateur du système d’exploitation
client_hostnameStringNom d’hôte du client
client_nameStringNom du client
version_majorUVarIntVersion majeure du client
version_minorUVarIntVersion mineure du client
protocol_versionUVarIntVersion du protocole client
quota_keyStringClé de quota
distributed_depthUVarIntProfondeur de Distributed
version_patchUVarIntVersion de correctif du client
otelBoolLes champs de trace sont présents
trace_idFixedString(16)ID de trace
span_idFixedString(8)ID de span
trace_stateStringÉtat du traçage
trace_flagsByteIndicateurs de traçage

Paramètres

champtypevaleurdescription
keyStringsend_logs_levelClé du paramètre
valueStringtraceValeur du paramètre
importantBooltruePeut être ignoré ou non
Encodé sous forme de liste : une clé et une valeur vides indiquent la fin de la liste.

Étape

valeurnomdescription
0FetchColumnsTypes de colonnes uniquement
1WithMergeableStateJusqu’à l’état fusionnable
2CompleteJusqu’à l’état complet (devrait être la valeur par défaut)

Data

champtypedescription
infoBlockInfoInformations du bloc encodées
columnsUVarIntNombre de colonnes
rowsUVarIntNombre de lignes
columns[]ColumnColonnes avec données

Colonne

champtypevaleurdescription
nameStringfooNom de la colonne
typeStringDateTime64(9)Type de la colonne
databytes~Données de la colonne

Cancel

Aucun corps de paquet. Le serveur doit annuler la requête.

Ping

Pas de corps de paquet. Le serveur doit répondre par pong.
Dernière modification le 25 juin 2026