YAMLRegExpTree carrega uma árvore de expressões regulares de um arquivo YAML no sistema de arquivos local.
Ela foi projetada exclusivamente para uso com o layout de dicionário regexp_tree
e fornece mapeamentos hierárquicos de regex para atributos para buscas baseadas em padrões, como a análise de user agent.
A fonte
YAMLRegExpTree está disponível apenas no ClickHouse Open Source.
Para o ClickHouse Cloud, exporte o dicionário para CSV e carregue-o por meio de uma fonte de tabela do ClickHouse.
Consulte Uso de dicionários regexp_tree no ClickHouse Cloud para mais detalhes.Configuração
| Configuração | Descrição |
|---|---|
PATH | O caminho absoluto para o arquivo YAML que contém a árvore de expressões regulares. Quando criado via DDL, o arquivo deve estar no diretório user_files. |
Estrutura do arquivo YAML
regexp: A expressão regular deste nó.- attributes: Atributos de dicionário definidos pelo usuário (por exemplo,
name,version). Os valores dos atributos podem conter referências retroativas a grupos de captura na expressão regular, escritas como\1ou$1(números de 1 a 9). Elas são substituídas pelo grupo de captura correspondente durante a consulta. - child nodes: Uma lista de filhos, cada um com seus próprios atributos e, opcionalmente, mais filhos. O nome da lista de filhos é arbitrário (por exemplo,
versionsacima). A correspondência de strings segue uma busca em profundidade: se uma string corresponder a um nó, seus filhos também serão verificados. Os atributos do nó correspondente mais profundo têm precedência, substituindo os atributos do nó pai com o mesmo nome.
- layout de dicionário regexp_tree — configuração do layout, exemplos de consulta e modos de correspondência
- dictGet, dictGetAll — funções para consultar dicionários regexp tree