Pular para o conteúdo principal

Descrição

O formato RawBLOB lê todos os dados de entrada em um único valor. Só é possível fazer o parse de uma tabela com um único campo do tipo String ou similar. O resultado é produzido em formato binário, sem delimitadores nem caracteres de escape. Se mais de um valor for produzido, o formato será ambíguo, e será impossível ler os dados novamente.

Comparação de formatos raw

Abaixo está uma comparação entre os formatos RawBLOB e TabSeparatedRaw. RawBLOB:
  • os dados são emitidos em formato binário, sem caracteres de escape;
  • não há delimitadores entre os valores;
  • não há quebra de linha no final de cada valor.
TabSeparatedRaw:
  • os dados são emitidos sem caracteres de escape;
  • as linhas contêm valores separados por tabulações;
  • há uma quebra de linha após o último valor de cada linha.
A seguir, uma comparação entre os formatos RawBLOB e RowBinary. RawBLOB:
  • campos do tipo string são emitidos sem prefixo de comprimento.
RowBinary: Quando dados vazios são passados para a entrada RawBLOB, o ClickHouse lança uma exceção:
Code: 108. DB::Exception: No data to insert

Exemplo de uso

Query
$ clickhouse-client --query "CREATE TABLE {some_table} (a String) ENGINE = Memory;"
$ cat {filename} | clickhouse-client --query="INSERT INTO {some_table} FORMAT RawBLOB"
$ clickhouse-client --query "SELECT * FROM {some_table} FORMAT RawBLOB" | md5sum
Response
f9725a22f9191e064120d718e26862a9  -

Configurações de formato

Última modificação em 10 de junho de 2026