Ir al contenido principal
Plataforma & Productos & Anuncios

Las 5 principales consultas de tablas del sistema para comprender sus costos de Databricks

Cinco consultas SQL que muestran tendencias de costos, atribuyen el gasto por equipo, marcan anomalías y pronostican la factura del próximo mes

por Drew Vander Wood

  • Vea a dónde va su dinero hoy, no el próximo mes. Tres consultas SQL desglosan el gasto de Databricks por producto, SQL warehouse y equipo, utilizando tablas del sistema que se actualizan casi en tiempo real.
    • Detecte picos de costos el mismo día en que ocurren. Una línea base móvil de 14 días marca los días anómalos frente a una media móvil, lista para conectarse a una alerta de DBSQL.
    • Proyecte hacia dónde se dirige. AI_FORECAST extrapola su uso reciente en una proyección de gastos a 30 días en una sola consulta, sin necesidad de modelado manual de series temporales.

Las tablas del sistema de Databricks ofrecen una gran cantidad de información sobre cómo usas Databricks y cuánto cuesta. Centrándonos en los costes, la tabla `system.billing.usage` proporciona una vista agregada global de los costes de toda tu cuenta de Databricks y, junto con la tabla `system.billing.list_prices`, puede darte una visión profunda de dónde se está asignando el gasto. Databricks ofrece un panel de uso predefinido que proporciona un excelente punto de partida para comprender los costes, pero comprender las tablas subyacentes y crear consultas sobre ellas te permite llevar tus análisis al siguiente nivel, especialmente al aprovechar las capacidades de visualización de Databricks.

A continuación, se presentan cinco consultas que puedes utilizar como punto de partida para comprender mejor tu gasto. Comenzamos con un desglose diario sencillo del gasto por producto, luego avanzamos hacia la comprensión del gasto a través de SQL Warehouses y etiquetas específicas, y finalmente identificamos días con gastos anómalos, además de pronosticar el gasto futuro con AI. Todas las consultas aportan información valiosa a través de los resultados devueltos, pero son aún más eficaces cuando se utilizan como conjuntos de datos en un panel de AI/BI donde los datos se pueden visualizar y analizar en mayor profundidad con Genie.

Consulta 1: Gasto diario por producto

Qué muestra la consulta

Nuestra primera consulta es simplemente un desglose del gasto por día y por producto. Combinamos la tabla de uso (nuestra tabla de hechos) con nuestra tabla de precios (una dimensión SCD Tipo 2) para obtener nuestro gasto a lo largo del tiempo según los precios de lista. Como se mencionó anteriormente, podrías sustituir la tabla de precios de lista proporcionada por una tabla personalizada que incorpore cualquier descuento relevante para ver los costes exactos.

Cuándo usar la consulta

Esta consulta es perfecta para hacerte una idea de cómo se está utilizando tu entorno de Databricks, qué productos están aumentando o disminuyendo en uso y cuál es el gasto total. Yo siempre empezaría por aquí al examinar el gasto de Databricks.

Qué tener en cuenta

La tabla `system.billing.usage` solo contiene costes de Databricks. Esto significa que en cualquier caso en el que se utilice computación no serverless, el gasto en infraestructura de nube no está incluido y tendría que revisarse a través de la consola de nube correspondiente (computación, redes, almacenamiento, etc.).

Consulta 2: Tendencias de costes de SQL Warehouses

Qué muestra la consulta

Los SQL Warehouses de Databricks son una herramienta increíblemente potente para dar soporte a analistas de SQL, paneles y agentes de Genie, y comprender sus tendencias de costes es fundamental para cualquiera que administre una cuenta de Databricks. La consulta 2 te permite ver las tendencias en el uso diario de los almacenes, lo cual, dado que pagas por consumo, es análogo a su uso.

Cuándo usar la consulta

Con Databricks, pagas por consumo, por lo que poder ver las tendencias de costes de un SQL Warehouse es análogo a ver las tendencias de su uso (al menos en el sentido de que el tiempo de actividad se corresponde con el uso). Por lo tanto, esta consulta básicamente puede mostrar el uso de los almacenes, donde un mayor uso podría deberse a un mayor tiempo de actividad o a más tiempo en un estado escalado. Después de identificar un almacén para un análisis más detallado con esta consulta, podrías investigar más a fondo ese almacén con la tabla del sistema `system.compute.warehouse_events` o la página de monitorización del almacén, y ver si el almacén podría utilizar diferentes configuraciones de escalado o parada automática. El uso del almacén también puede ofrecer información rápida sobre cómo se están utilizando los paneles o los espacios de Genie creados sobre ellos, y si se debería hacer más para promocionarlos entre los usuarios de negocio.

Qué tener en cuenta

Por defecto, esta consulta incluye todos los almacenes que estuvieron activos en el periodo de tiempo examinado, incluidos los que se han eliminado. Se incluye una columna (is_deleted) que se puede utilizar como filtro adicional si deseas eliminar los almacenes eliminados del análisis.

Consulta 3: Atribución de costes basada en etiquetas

Gráfico de barras que muestra un ejemplo de atribución de costes basada en etiquetas a lo largo del tiempo

Qué muestra la consulta

Las etiquetas son una función potente que se puede usar para realizar un seguimiento del uso entre usuarios, proyectos, equipos o espacios de trabajo. Específicamente, las etiquetas personalizadas se pueden exigir a través de políticas de computación y políticas de uso de serverless, y luego puede usar esas etiquetas al analizar los datos de uso de las tablas del sistema. Por ejemplo, podría optar por exigir el etiquetado por equipo, donde los valores permitidos se asignen a unidades de negocio, como marketing, finanzas e ingeniería. Luego, use esta consulta en la que ha parametrizado la etiqueta por la que está agrupando para ver el uso por equipo.

Cuándo usar la consulta

Esta consulta se puede usar en cualquier momento en que se utilice una estrategia de etiquetado y desee ver los costos en función de los valores de la etiqueta. No es necesario etiquetar cada registro de la tabla; si la clave de etiqueta existe en el registro, se registrará como sin etiqueta y luego se podrá filtrar de su análisis o se podrá usar para identificar los lugares donde el etiquetado no se está aplicando correctamente.

Qué tener en cuenta

Como se mencionó antes, los registros que no estén etiquetados aparecerán como "sin etiqueta", lo que puede ser útil para identificar áreas donde no se está aplicando el etiquetado, pero también puede ser indeseable porque la etiqueta solo puede ser relevante para un subconjunto de uso. Puede modificar la consulta incluyendo `u.custom_tags[:tag_key] is not null` en la cláusula where para filtrar los registros que no tienen la etiqueta, o ir más allá filtrando por más de una etiqueta o agregando varias etiquetas al group by de la consulta.

Consulta 4: Detección de anomalías en los costos diarios

Qué muestra la consulta

Un buen control a través de políticas de computación, configuraciones de tiempo de espera de trabajos y presupuestos ayuda a los administradores de la plataforma Databricks a mantener el gasto dentro de los límites, pero siempre existe la posibilidad de que un usuario con suficientes permisos cree un trabajo o un warehouse que se ejecute durante mucho tiempo o se mantenga escalado más allá de lo esperado, lo que provocaría un aumento inesperado en el gasto. La consulta 4 está diseñada para ayudar a detectar esto lo antes posible. Básicamente, utiliza el promedio móvil de gasto de 14 días y clasifica el gasto diario como elevado si está a más de una desviación estándar por encima del promedio, o como una anomalía si está a más de dos.

Cuándo usar la consulta

Esta consulta es perfecta para usarla en un panel de control de monitoreo de costos o, podría usar esta idea como base para una alerta que envíe automáticamente un correo electrónico a los administradores si el día anterior fue elevado o anómalo.

Qué tener en cuenta

Si su carga de trabajo es muy inconsistente de un día a otro, las desviaciones estándar en su uso pueden ser muy altas y es poco probable que esta consulta detecte algo que no sean los picos de uso más grandes.

Consulta 5: Pronóstico de gastos

Gráfico de ejemplo que muestra el gasto histórico y el pronosticado

Qué muestra la consulta

En las cuatro consultas anteriores, nos hemos centrado en analizar el gasto pasado, pero el gasto futuro es fundamental para comprender el panorama completo de su uso de Databricks. Normalmente, esto podría requerir un modelo de pronóstico complejo, pero entre las funciones de Databricks SQL AI, se encuentra la potente función ai_forecast, que le permite extrapolar hacia el futuro un conjunto de datos de series temporales, como los datos de uso de Databricks. Puede ajustar la cantidad de datos que se introducen en la función, visualizar los resultados en un gráfico y generar muy rápidamente un pronóstico de su gasto de Databricks.

Cuándo usar la consulta

Nuevamente, esta consulta es perfecta para agregarla a un panel de control de monitoreo de costos, de modo que pueda tener una idea de cuál será su gasto en el futuro para ayudar con la planificación y el presupuesto.

Qué tener en cuenta

Esta consulta realiza un pronóstico basado en datos anteriores, por lo que si la usa para la planificación futura, asegúrese de considerar cualquier nueva carga de trabajo futura que pueda estar planeando y que este pronóstico no predeciría.

Pruebe las consultas de tablas del sistema 

Ejecutar estas consultas una vez te indica qué pasó. Anclarlas a un dashboard de AI/BI cambia la forma en que tu equipo gestiona el gasto. Agrega cada una como un conjunto de datos, configura los parámetros de rango de fechas y etiquetas, y convierte el dashboard en tu revisión semanal de costos. A partir de aquí, dos pasos siguientes: guarda en favoritos la referencia de tablas del sistema de Databricks para ver el catálogo completo de tablas que puedes consultar, y explora más consultas de ejemplo para ampliar tu conjunto de herramientas más allá de estas cinco. ¿Aún no tienes un espacio de trabajo? Comienza una prueba gratuita.    

(Esta entrada del blog ha sido traducida utilizando herramientas basadas en inteligencia artificial) Publicación original

Recibe las últimas publicaciones en tu bandeja de entrada

Suscríbete a nuestro blog y recibe las últimas publicaciones directamente en tu bandeja de entrada.