enable_adaptive_codec_selection), que pode escolher um codec por bloco para colunas com o codec padrão.
A seleção de codec_block_counts lê arquivos de dados .bin, e não apenas metadados. As outras colunas contêm somente metadados.
As partes que não registram seus subfluxos em columns_substreams.txt não são listadas.
Todo valor informado é derivado dos dados da tabela, portanto a leitura de qualquer coluna do resultado exige o privilégio SELECT em todas as colunas da tabela. Um grant que abranja apenas algumas das colunas não é suficiente. O privilégio também é necessário para resolver a estrutura da função, por exemplo, por meio de DESCRIBE. Um usuário que não tem permissão alguma para ver a tabela, ou seja, que não possui o privilégio SHOW TABLES sobre ela, recebe ACCESS_DENIED independentemente de a tabela existir ou não, de modo que a função não revela a esse usuário quais tabelas existem.
Se uma política de linha se aplicar à tabela para o usuário atual, a leitura de codec_block_counts lança ACCESS_DENIED, pois as contagens abrangeriam linhas ocultadas pela política. As outras colunas permanecem legíveis; system.parts_columns as informa independentemente das políticas de linha.
Sintaxe
Argumentos
Valor retornado
Um objeto de tabela com uma linha para cada combinação de (parte ativa, coluna, subfluxo) da tabela de origem:part_name(String) — A parte de dados ativa à qual a coluna pertence.column(String) — O nome da coluna.substream(String) — O fluxo físico da coluna ao qual as contagens se referem. Corresponde asystem.parts_columns.substreams.data_compressed_bytes(Nullable(UInt64)) — Tamanho dos dados comprimidos no subfluxo, em bytes.NULLpara partesCompact.data_uncompressed_bytes(Nullable(UInt64)) — Tamanho dos dados não comprimidos no subfluxo, em bytes.NULLpara partesCompact.codec_block_counts(Map(String, UInt64)) — Número de blocos comprimidos deste subfluxo, agrupados por codec. Vazio para partesCompact, cujas colunas compartilham um único arquivo de dados e, portanto, não possuem atribuição de codec por fluxo.
Exemplo de uso
GROUP BY column com sumMap:
LowCardinality relata separadamente os fluxos do dicionário e dos índices: