Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

ProtobufList

Non pris en charge par ClickHouse Cloud
Entrée Sortie Alias

Description

Le format ProtobufList est similaire au format Protobuf, mais les lignes y sont représentées comme une séquence de sous-messages inclus dans un message dont le nom est obligatoirement « Envelope ».

Exemple d’utilisation

Par exemple :

SELECT * FROM test.table FORMAT ProtobufList SETTINGS format_schema = 'schemafile:MessageType'
cat protobuflist_messages.bin | clickhouse-client --query "INSERT INTO test.table FORMAT ProtobufList SETTINGS format_schema='schemafile:MessageType'"

Le fichier schemafile.proto ressemble à ceci :

schemafile.protocapnp
syntax = "proto3";
message Envelope {
  message MessageType {
    string name = 1;
    string surname = 2;
    uint32 birthDate = 3;
    repeated string phoneNumbers = 4;
  };
  MessageType row = 1;
};

Le type de message spécifié dans format_schema est d’abord recherché comme type imbriqué dans un message Envelope de niveau supérieur. Si aucune correspondance n’y est trouvée — soit parce que le schéma ne comporte pas de message Envelope, soit parce que Envelope ne contient aucun message portant le nom demandé — le message de niveau supérieur portant ce nom est utilisé directement.

Paramètres de format

Navigation