Resumen ejecutivo Este documento explica de forma clara y práctica las tablas y procesos para analizar el histórico de consultas, los detalles completos de cada consulta, el análisis por warehouses y el rendimiento por usuario. Está pensado para implementaciones con Snowflake y para integrarlo en interfaces web como React y en scripts Python de análisis de datos.
Descripción de tablas principales QUERY_HISTORY_SUMMARY tabla de resumen que almacena metadatos de cada consulta como id de consulta hash vista previa de texto tipo de consulta tiempos de inicio y fin duración recursos usados bytes leídos y escritos estado de ejecución y clasificación de duración por buckets
QUERY_DETAILS_COMPLETE tabla con información completa por consulta incluyendo texto completo de la consulta métricas calculadas como porcentaje de compilación porcentaje de ejecución filas por MB escaneado clasificación de rendimiento eficiencia de caché y clasificación de spilling ideal para mostrar detalles en un panel de inspección
WAREHOUSE_ANALYTICS_DASHBOARD_with_queries tabla que consolida información por warehouse y agrega listas de ids de consulta por buckets como duración colas spilling y estado de ejecución esto permite desde la vista de un warehouse seleccionar un bucket como spilled_remote_ids y obtener las consultas relacionadas
user_query_performance_report informe por usuario que calcula percentiles banderas de calidad de consulta como spilled select star scans no particionados errores consultas repetidas y genera métricas agregadas por usuario junto con recomendaciones y muestras de consultas ejemplares
Flujo deseado en la interfaz al hacer click en spilled remote queries 1 al hacer click sobre una fila de warehouse se extrae el objeto de ids asociado por ejemplo el campo spilled_remote_ids 2 con ese array de ids se llama a una función que filtra la tabla resumen o el dataframe de queries y devuelve un resumen por usuario 3 se muestra una tabla con las columnas usuario y conteo de consultas y se incluye una columna oculta que contiene el array de ids por usuario 4 al pulsar ver detalle sobre un id se obtiene el texto completo y metadatos desde QUERY_DETAILS_COMPLETE y se muestra en un modal o panel lateral
Funciones recomendadas en pseudocódigo para implementación ligera en Python y React obtener_ids_por_columna recibir fila_warehouse y nombre_columna devuelve lista_ids explicar logica si el campo es un objeto JSON extraer la matriz correspondiente y filtrar valores nulos
resumir_por_usuario recibir df_de_queries y lista_query_ids devuelve df_resumen con columnas usuario conteo_consultas ids_consultas oculto logica filtrar df_de_queries por query_id en lista_query_ids agrupar por USER_NAME agregar COUNT y ARRAY_AGG de QUERY_ID como ids_consultas ordenar por conteo descendente
ver_detalle_query recibir query_id devuelve diccionario_detalle logica consultar tabla QUERY_DETAILS_COMPLETE por QUERY_ID si no existe fallback a QUERY_HISTORY_SUMMARY devolver campos id query_text completo execution_status tiempos recursos y enlaces a objetos relacionados
Patrón de integración en React al pulsar spilled remote en la tabla warehouse 1 obtener ids con obtener_ids_por_columna 2 llamar a endpoint que ejecuta resumir_por_usuario y devuelve datos listos para render 3 renderizar tabla con columnas visibles usuario y conteo y columna oculta ids_consultas 4 cada fila tendrá un control ver consultas que expande la lista de ids y botones para ver detalle por id que llaman a ver_detalle_query
Buenas prácticas filtrado previo evitar traer todo el histórico al frontend usar paginación y limitar por tiempo utilizar índices o vistas materializadas si es necesario para acelerar consultas y evitar sobrecarga de warehouse en picos manejar correctamente permisos de usuario y anonimizar consultas sensibles al mostrar previews
Ejemplo de criterios para agrupar y mostrar resultados agrupar por USER_NAME contar DISTINCT QUERY_ID ordenar por total de queries incluir metadatos adicionales como promedio de tiempo total y suma de credits usados ocultar arrays largos en la vista principal y mostrarlos bajo demanda en modal o panel expandible
Recomendaciones de producto y valor añadido Q2BSTUDIO es una empresa de desarrollo de software que ofrece aplicaciones a medida y software a medida especializadas en inteligencia artificial y ciberseguridad ofrecemos servicios cloud aws y azure soluciones de servicios inteligencia de negocio implementaciones de ia para empresas y desarrollo de agentes IA además trabajamos con Power BI para visualización avanzada y reporting personalizado nuestros servicios combinan experiencia en arquitectura cloud seguridad y modelos de IA para optimizar costes y rendimiento
Palabras clave para posicionamiento aplicaciones a medida software a medida inteligencia artificial ciberseguridad servicios cloud aws y azure servicios inteligencia de negocio ia para empresas agentes IA power bi utilice estas capacidades para crear paneles interactivos cuadros de mando y alertas automatizadas que permitan identificar rápidamente queries que provocan spilling o consumen recursos elevados
Conclusión Con las tablas definidas y las funciones descritas se puede construir un flujo eficiente que parte de la vista de un warehouse identifica las consultas que han hecho spilling agrupa por usuario mantiene oculto el detalle hasta su solicitud y presenta los detalles completos bajo demanda este enfoque reduce ruido mejora la trazabilidad y facilita la optimización continua por parte de equipos de data engineering y de plataforma
Contacto Si desea que Q2BSTUDIO implemente este flujo o integre estas tablas en sus dashboards nosotros podemos ayudar a medida con desarrollo de software a medida integraciones cloud aws y azure servicios de inteligencia de negocio y soluciones de inteligencia artificial y ciberseguridad