Funzione to_protobuf

Si applica a:selezionato come sì Databricks SQL selezionato come sì Databricks Runtime 16.1 e versioni successive

Converte a STRUCT in un valore codificato BINARY in Protobuf utilizzando la definizione specificata del messaggio Protobuf.

Syntax

to_protobuf(data, messageName [, descFilePath [, options] ])
to_protobuf(data, messageName, options)

Arguments

  • data: Un'espressione STRUCT da codificare.
  • messageName: Un'espressione costante STRING che nomina il messaggio Protobuf da codificare.
  • descFilePath: Un percorso costante STRING opzionale verso un file descrittore Protobuf o un valore costante BINARY contenente il file descrittore. Genera il file descrittore con protoc --descriptor_set_out e --include_imports. Ometti descFilePath solo quando options configura un Registro Schema.
  • options: Un'espressione costante MAP<STRING, STRING> opzionale contenente opzioni di conversione.

Returns

Un valore codificato BINARY in Protobuf.

Se data è NULL, il risultato è NULL.

Lo schema di data deve corrispondere alla definizione specificata del messaggio Protobuf.

Opzioni

Per un elenco completo delle opzioni, vedere Protobuf.

Examples

Il seguente esempio utilizza un file descrittore generato da questo messaggio Protobuf:

message Person {
  string name = 1;
  int32 id = 2;
}

Codifica una struct come valore binario di Protobuf:

> SELECT hex(to_protobuf(
    named_struct('name', 'Alice', 'id', 42),
    'Person',
    '/path/to/person.desc'));
  0A05416C696365102A