Objetivo
- Cargar los datos de OpenCelliD en ClickHouse
- Conectar Apache Superset a ClickHouse
- Crear un dashboard con los datos disponibles en el conjunto de datos
Obtener el conjunto de datos
- ClickHouse Cloud
- Autogestionado
Cargar los datos de ejemplo
ClickHouse Cloud ofrece una forma sencilla de cargar este conjunto de datos desde S3. Inicie sesión en su organización de ClickHouse Cloud o cree una prueba gratuita en ClickHouse.cloud.Seleccione su servicio y, a continuación,Data sources -> Predefined sample data.Seleccione el conjunto de datos Cell Towers en la pestaña Sample data y haga clic en Load data:Examinar el esquema de la tabla cell_towers
Conectarse a la consola SQL
Conectarse a la consola SQL
En tu lista de servicios de ClickHouse Cloud, haz clic en un servicio.Esto te redirigirá a la consola SQL.
DESCRIBE. Más adelante en esta guía se describirán las opciones de tipos de campos.Ejecuta algunas consultas de ejemplo
- Número de torres de telefonía móvil por tipo:
- Torres de telefonía móvil por código de país móvil (MCC):
Caso de uso: incorporar datos geográficos
pointInPolygon.
- Cree una tabla en la que almacenaremos polígonos:
- ClickHouse Cloud
- Autogestionado
- Este es un contorno aproximado de Moscú (sin la “Nueva Moscú”):
- Comprueba cuántas torres de telefonía móvil hay en Moscú:
Revisión del esquema
El esquema de esta tabla se diseñó para un almacenamiento compacto en disco y para acelerar las consultas.
- Los datos de
radiose almacenan comoEnum8(UInt8) en lugar de una cadena. mcc, o código de país móvil, se almacena comoUInt16, ya que sabemos que el rango va de 1 a 999.lonylatsonFloat64.
Crear visualizaciones con Apache Superset
pip install clickhouse-connect. Si necesitas instalar Superset, abre Launch Apache Superset in Docker justo debajo.
Iniciar Apache Superset en Docker
Iniciar Apache Superset en Docker
Superset proporciona instrucciones para instalar Superset localmente con Docker Compose. Después de clonar el repositorio de Apache Superset desde GitHub, puedes ejecutar el código de desarrollo más reciente o una etiqueta específica. Recomendamos la versión 2.0.0, ya que es la versión más reciente que no está marcada como
pre-release.Hay algunas tareas que deben realizarse antes de ejecutar docker compose:- Agregar el driver oficial de ClickHouse Connect
- Obtener una clave de API de Mapbox y agregarla como variable de entorno (opcional)
- Especificar la versión de Superset que se ejecutará
Driver oficial de ClickHouse Connect
Para que el driver ClickHouse Connect esté disponible en el despliegue de Superset, agrégalo al archivo local de requisitos:Mapbox
Esto es opcional; puedes representar datos de ubicación en Superset sin una clave de API de Mapbox, pero verás un mensaje indicando que debes agregar una clave y faltará la imagen de fondo del mapa (solo verás los puntos de datos y no el fondo del mapa). Mapbox ofrece un nivel gratuito si deseas usarlo.Algunas de las visualizaciones de ejemplo que las guías te indican crear usan datos de ubicación, por ejemplo, longitud y latitud. Superset incluye compatibilidad con mapas de Mapbox. Para usar las visualizaciones de Mapbox, necesitas una clave de API de Mapbox. Regístrate en el nivel gratuito de Mapbox y genera una clave de API.Haz que la clave de API esté disponible para Superset:Desplegar la versión 2.0.0 de Superset
Para desplegar la versión 2.0.0, ejecuta:- Añadir tu servicio de ClickHouse como una base de datos de Superset
- Añadir la tabla cell_towers como un conjunto de datos de Superset
- Crear algunos gráficos
- Añadir los gráficos a un dashboard
Añade tu servicio de ClickHouse como una base de datos de Superset
Los detalles de su servicio de ClickHouse Cloud están disponibles en la consola de ClickHouse Cloud.
Seleccione un servicio y haga clic en Connect:
Elija HTTPS. Los detalles de conexión se muestran en un comando
curl de ejemplo.
Si usa ClickHouse autogestionado, los detalles de conexión los establece su administrador de ClickHouse.
En Superset, puedes añadir una base de datos eligiendo su tipo y, después, proporcionando los datos de conexión. Abre Superset y busca el +; allí encontrarás un menú con las opciones Data y luego Connect database.
Elige ClickHouse Connect de la lista:
Si ClickHouse Connect no aparece entre las opciones, tendrás que instalarlo. El comando es
pip install clickhouse-connect, y puedes encontrar más información aquí.Añade tus datos de conexión
Añade la tabla cell_towers como un conjunto de datos de Superset
default) y selecciona la tabla cell_towers:
Crea algunos gráficos
cell_towers) y el tipo de gráfico. Dado que el conjunto de datos OpenCelliD proporciona coordenadas de longitud y latitud de torres de telefonía móvil, crearemos un gráfico de mapa. El tipo deck.gL Scatterplot es adecuado para este conjunto de datos, ya que funciona bien con puntos de datos densos sobre un mapa.
Especifica la consulta utilizada para el mapa
lon y lat contienen la longitud y la latitud:
Añade un filtro con mcc = 204 (o sustitúyelo por cualquier otro valor de mcc):
Añade un filtro con radio = 'UMTS' (o sustitúyelo por cualquier otro valor de radio; puedes ver las opciones en la salida de DESCRIBE TABLE cell_towers):
Esta es la configuración completa del gráfico que filtra por radio = 'UMTS' y mcc = 204:
Haz clic en UPDATE CHART para mostrar la visualización.