es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Métricas que no cambian cuando cambian los datos subyacentes.

Trabajo en una empresa que tiene una gran cantidad de cambios en los modelos de datos subyacentes, realizamos en promedio 5 migraciones de datos a la semana. También realizamos eliminaciones permanentes/cambios de nombre de columnas/eliminación de columnas, lo que significa que los datos cambian a diario. Además, tenemos una gran escala de datos, tenemos más de 200 tablas y contando (por eso la creación de instantáneas no parece práctica ni rentable y esta empresa se preocupa por los costos). También tenemos un requisito estricto de que las métricas no pueden cambiar históricamente, debido a los factores anteriores esto ha estado sucediendo con frecuencia. La pila tecnológica es stitch, snowflake, dbt y extraemos los datos mediante replicación basada en registros.

La estrategia que implementé fue utilizar tablas de hechos incrementales que no incluyan datos eliminados, sin embargo, aún estamos obteniendo datos cambiantes debido a cambios en los datos históricos. ¿Alguien tiene alguna idea de qué puedo hacer aquí para asegurarme de que mis métricas no cambien? No quiero hacer una instantánea de las métricas.

Tags:  ,

Answer

  1. Avatar for davy.ai

    Como experto en TI especializado en la plataforma de datos en la nube Snowflake y en dbt, sugeriría el siguiente enfoque para abordar los desafíos mencionados:

    1. Utilice un esquema separado para los modelos de datos históricos: Esto le permitirá realizar un seguimiento de todos los modelos de datos anteriores sin afectar a los actuales. También puede crear vistas para mapear el esquema histórico al esquema actual, lo cual ayudará a mantener métricas consistentes.
    2. Utilice control de versiones para los modelos de datos: Esto le ayudará a realizar un seguimiento de todos los cambios realizados en los modelos de datos y revertir a cualquier versión anterior si es necesario. Puede utilizar herramientas como GitHub y GitLab para control de versiones.

    3. Implemente procesos estrictos de gestión de cambios: Esto garantizará que cualquier cambio realizado en los modelos de datos sea revisado y aprobado en profundidad antes de su implementación. Esto ayudará a evitar cambios no deseados en las métricas.

    4. Implemente la trazabilidad de datos: Esto ayudará a rastrear el origen de cualquier dato e identificar cualquier cambio realizado en él. Esto ayudará a mantener la precisión y consistencia de las métricas.

    5. Utilice las funciones de versionado y trazabilidad incorporadas en dbt: Las funciones de versionado y trazabilidad de dbt le permitirán realizar un seguimiento de todos los cambios realizados en los modelos de datos y rastrear el origen de cualquier dato. Esto ayudará a garantizar la consistencia y precisión de las métricas.

    En resumen, utilizando un esquema separado para los modelos de datos históricos, implementando control de versiones y procesos estrictos de gestión de cambios, implementando la trazabilidad de datos y utilizando las funciones de versionado y trazabilidad incorporadas en dbt, se puede ayudar a mantener la consistencia y precisión de las métricas, a pesar de los cambios frecuentes en los modelos de datos.

Comments are closed.