Saltar al contenido principal
Esta página no se aplica a ClickHouse Cloud. La funcionalidad documentada aquí no está disponible en los servicios de ClickHouse Cloud. Consulta la guía de ClickHouse sobre compatibilidad con Cloud para obtener más información.
ClickHouse contiene una función integrada para trabajar con una geobase. Esto le permite:
  • Usar el ID de una región para obtener su nombre en el idioma deseado.
  • Usar el ID de una región para obtener el ID de una ciudad, área, distrito federal, país o continente.
  • Comprobar si una región forma parte de otra región.
  • Obtener una cadena de regiones superiores.
Todas las funciones admiten “translocality”, es decir, la capacidad de usar simultáneamente diferentes perspectivas sobre la pertenencia de una región. Para obtener más información, consulte la sección “Funciones para trabajar con diccionarios de analítica web”. Los diccionarios internos están deshabilitados en el paquete predeterminado. Para habilitarlos, descomente los parámetros path_to_regions_hierarchy_file y path_to_regions_names_files en el archivo de configuración del servidor. La geobase se carga desde archivos de texto. Coloque los archivos regions_hierarchy*.txt en el directorio path_to_regions_hierarchy_file. Este parámetro de configuración debe contener la ruta al archivo regions_hierarchy.txt (la jerarquía regional predeterminada), y los demás archivos (regions_hierarchy_ua.txt) deben estar ubicados en el mismo directorio. Coloque los archivos regions_names_*.txt en el directorio path_to_regions_names_files. También puede crear estos archivos usted mismo. El formato del archivo es el siguiente: regions_hierarchy*.txt: TabSeparated (sin encabezado), columnas:
  • ID de región (UInt32)
  • ID de la región padre (UInt32)
  • tipo de región (UInt8): 1 - continente, 3 - país, 4 - distrito federal, 5 - región, 6 - ciudad; los demás tipos no tienen valores
  • población (UInt32) — columna opcional
regions_names_*.txt: TabSeparated (sin encabezado), columnas:
  • ID de región (UInt32)
  • nombre de la región (String) — No puede contener tabulaciones ni saltos de línea, ni siquiera escapados.
Se utiliza un array plano para almacenarlo en RAM. Por esta razón, los ID no deben superar un millón. Los diccionarios se pueden actualizar sin reiniciar el servidor. Sin embargo, el conjunto de diccionarios disponibles no se actualiza. Para las actualizaciones, se comprueban las fechas de modificación de los archivos. Si un archivo ha cambiado, el diccionario se actualiza. El intervalo para comprobar cambios se configura en el parámetro builtin_dictionaries_reload_interval. Las actualizaciones de diccionarios (aparte de la carga en el primer uso) no bloquean las consultas. Durante las actualizaciones, las consultas usan las versiones antiguas de los diccionarios. Si se produce un error durante una actualización, el error se escribe en el log del servidor, y las consultas continúan usando la versión antigua de los diccionarios. Recomendamos actualizar periódicamente los diccionarios de la geobase. Durante una actualización, genere archivos nuevos y escríbalos en una ubicación aparte. Cuando todo esté listo, renómbrelos con los nombres de los archivos que usa el servidor. También hay funciones para trabajar con identificadores de OS y motores de búsqueda, pero no deben usarse.
Última modificación el 10 de junio de 2026