Descrição
Reúne em uma única tabela a documentação embutida dos componentes uniformes do sistema. Cada linha corresponde a uma entidade (uma função, um motor de tabela, um tipo de dado e assim por diante) e contém sua documentação de referência embutida em Markdown. Esse conteúdo dá suporte à documentação gerada do site e às tabelassystem.* específicas por tipo; as páginas do site podem acrescentar preâmbulos ou orientações exclusivos em MDX fora de seus corpos gerados.
A description é montada a partir das partes estruturadas da documentação embutida (description, syntax, argumentos, exemplos e assim por diante), de modo que uma única coluna contenha a documentação embutida completa de uma entidade. Quando a documentação embutida traz a página de referência inteira em sua description (como acontece com os componentes cujas páginas no site são geradas automaticamente a partir dela: motores de tabela, motores de banco de dados, tipos de dados, formatos e funções de tabela), a página é publicada como está, sem acrescentar seções compostas a partir dos campos de metadados estruturados — o corpo da página já cobre esse material. Os aliases são exibidos como uma referência curta à entidade canônica, por exemplo Alias of `trunc`.
De certa forma, esta tabela reúne as informações disponíveis nas tabelas de documentação específicas por tipo (system.functions, system.table_engines, system.data_type_families e outras). Ela foi concebida, em particular, para dar suporte a um comando help interativo no client, mas também é útil por si só.
Os seguintes tipos de entidades são reunidos (o valor da coluna type é mostrado entre parênteses):
- Funções (
Function) - Funções de agregação (
Aggregate Function) - Funções de tabela (
Table Function) - Motores de tabela (
Table Engine) - Motores de banco de dados (
Database Engine) - Tipos de dados (
Data Type) - Layouts de dicionário (
Dictionary Layout) - Fontes de dicionário (
Dictionary Source) - Combinadores de funções de agregação (
Aggregate Function Combinator) - Tipos de data skipping indexes (
Data Skipping Index) - Tipos de disco (
Disk Type) - Configurações (
Setting) - Configurações do MergeTree (
MergeTree Setting) - Configurações do servidor (
Server Setting) - Formatos (
Format) - Codecs de compressão (
Compression Codec) - Eventos de perfil (
Profile Event) - Métricas atuais (
Current Metric) - Métricas assíncronas (
Asynchronous Metric) - Tabelas de sistema (
System Table) - Instruções SQL (
Statement)
compatibility e a system.settings_changes, portanto abrangem as alterações registradas desde que esse mecanismo foi introduzido: uma configuração mais antiga cujo padrão nunca mudou não tem histórico, assim como as configurações do servidor, que não são abrangidas por compatibility. Uma alteração registrada sob um alias de uma configuração pertence ao histórico dessa configuração, da mesma forma que compatibility a aplica; portanto, o histórico de uma configuração que foi renomeada não é interrompido na renomeação; a exceção é um registro gravado sob um alias com o único objetivo de registrar esse alias, que pertence apenas ao histórico do alias. Um alias contém o histórico de seu próprio nome: todos os registros gravados sob ele, além do registro que o cadastrou como alias, que o arquivo de histórico às vezes grava sob outro nome da mesma configuração.
No caso das tabelas de sistema, a descrição, os exemplos e o material relacionado são armazenados no comentário de metadados da tabela usando marcadores de seção leves. O corpo completo da página gerada é montado a partir desse comentário e do schema de colunas em tempo real. Os catálogos de eventos e métricas são renderizados a partir de seus registros, de modo que os detalhes gerados permaneçam sincronizados com o binário em execução.
No caso das instruções SQL, a documentação é renderizada a partir dos campos estruturados expostos por system.statements, incluindo a sintaxe e instruções relacionadas quando essas seções ainda não fazem parte da descrição controlada pela fonte.
A coluna source contém um caminho de origem da entidade, relativo à raiz do repositório. Para a maioria das entidades, ela é capturada automaticamente no local em que o objeto de documentação é construído (o local de registro do componente); para as tabelas de sistema, é o arquivo que detém a documentação embutida (como attachSystemTables.cpp, SystemLog.h ou um detentor de documentação dedicado), e para os tipos documentados, cada um, em um único arquivo-fonte (como configurações, eventos de perfil e métricas atuais), é esse arquivo.
Colunas
name(String) — O nome da entidade, por exemplodomainWithoutWWWouMergeTree.type(Enum8(‘Function’ = 1, ‘Aggregate Function’ = 2, ‘Table Function’ = 3, ‘Table Engine’ = 4, ‘Database Engine’ = 5, ‘Data Type’ = 6, ‘Dictionary Layout’ = 7, ‘Dictionary Source’ = 8, ‘Aggregate Function Combinator’ = 9, ‘Data Skipping Index’ = 10, ‘Disk Type’ = 11, ‘Setting’ = 12, ‘MergeTree Setting’ = 13, ‘Server Setting’ = 14, ‘Format’ = 15, ‘Compression Codec’ = 16, ‘Profile Event’ = 17, ‘Current Metric’ = 18, ‘Asynchronous Metric’ = 19, ‘System Table’ = 20, ‘Statement’ = 21)) — O tipo da entidade, por exemploFunctionouTable Engine.description(String) — A documentação de referência da entidade, renderizada em Markdown e compilada a partir da documentação embutida, incluindo sintaxe, exemplos e outras partes estruturadas, se houver. As páginas do site podem adicionar preâmbulos ou orientações exclusivos de MDX fora de seus corpos gerados.source(String) — O caminho para o arquivo-fonte em que a documentação da entidade é definida, relativo à raiz do repositório. Vazio se a localização da origem for desconhecida.
Exemplo
Consulte a documentação de uma entidade específica:Query
file quanto a fonte de dicionário file), por isso é útil procurar esse nome em todos os tipos:
Query
Query
Query
Veja também
system.functions— Funções regulares e funções de agregação.system.table_functions— Funções de tabela.system.table_engines— Motores de tabela.system.database_engines— Motores de banco de dados.system.data_type_families— Tipos de dados.system.disk_types— Tipos de disco.system.settings— Configurações.system.merge_tree_settings— Configurações do MergeTree.system.server_settings— Configurações do servidor.system.settings_changes— O histórico das alterações dos valores default das configurações.system.formats— Formatos.