YAMLRegExpTree ソースは、ローカルファイルシステム上の YAML ファイルから正規表現ツリーを読み込みます。
これは regexp_tree 辞書レイアウト専用に設計されており、
ユーザーエージェントのパースなど、パターンベースのルックアップ向けに、正規表現から属性への階層的なマッピングを提供します。
YAMLRegExpTree ソースは ClickHouse Open Source でのみ利用できます。
ClickHouse Cloud では、代わりに辞書を CSV にエクスポートし、ClickHouse table source を使用して読み込んでください。
詳細は Using regexp_tree Dictionaries in ClickHouse Cloud を参照してください。設定
| 設定 | 説明 |
|---|---|
PATH | 正規表現ツリーを含む YAML ファイルへの絶対パスです。DDL で作成する場合、ファイルは user_files ディレクトリ内になければなりません。 |
YAML ファイルの構造
regexp: このノードの正規表現。- attributes: ユーザー定義のDictionary 属性 (例:
name、version) 。属性値には、\1または$1(1~9の数字) で表される、正規表現のキャプチャグループへの後方参照を含めることができます。これらはクエリ時に、マッチしたキャプチャグループに置き換えられます。 - child nodes: 子ノードのリストです。各子ノードはそれぞれ独自の属性を持ち、必要に応じてさらに子ノードを持つこともできます。子ノードのリスト名は任意です (例: 上記の
versions) 。文字列のマッチングは深さ優先で行われます。文字列がノードに一致した場合は、その子ノードもチェックされます。最も深い階層で一致したノードの属性が優先され、同名の親属性を上書きします。
- regexp_tree Dictionary レイアウト — レイアウト設定、クエリ例、マッチングモード
- dictGet, dictGetAll — regexp tree Dictionaries をクエリする関数