Saltar al contenido principal

Diccionarios jerárquicos

ClickHouse admite diccionarios jerárquicos con una clave numérica. Considere la siguiente estructura jerárquica:
0 (Padre común)

├── 1 (Russia)
│   │
│   └── 2 (Moscow)
│       │
│       └── 3 (Center)

└── 4 (Great Britain)

    └── 5 (London)
Esta jerarquía puede expresarse como la siguiente tabla del diccionario.
region_idparent_regionregion_name
10Russia
21Moscow
32Center
40Great Britain
54London
Esta tabla contiene una columna parent_region que almacena la clave del padre inmediato del elemento. ClickHouse admite la propiedad jerárquica para los atributos de diccionarios externos. Esta propiedad permite configurar el diccionario jerárquico de forma similar a la descrita anteriormente. La función dictGetHierarchy permite obtener la cadena de padres de un elemento. En nuestro ejemplo, la estructura del diccionario puede ser la siguiente:
CREATE DICTIONARY regions_dict
(
    region_id UInt64,
    parent_region UInt64 DEFAULT 0 HIERARCHICAL,
    region_name String DEFAULT ''
)
PRIMARY KEY region_id
SOURCE(...)
LAYOUT(HASHED())
LIFETIME(3600);

Última modificación el 10 de junio de 2026