Saltar al contenido principal

Data Contracts

¿Qué es un Data Contract y por qué lo necesitas?

Por Dr. Simon Harrer · · video de 2:02 · 8 diapositivas

En resumen

Un Data Contract es una promesa escrita de un Data Producer a sus Data Consumers. Describe los datos y las reglas que los datos deben cumplir. Sin él, un cambio pequeño puede romper a los Data Consumers y nadie se da cuenta a tiempo.

Ver en YouTube
Diapositiva 1 del episodio 1 de Entropy Explains, Un cambio pequeño rompe a tres consumers: Un equipo produce la tabla orders.

Un cambio pequeño rompe a tres consumers

Un equipo produce la tabla orders. Un dashboard, un modelo de ML y un agente de IA usan esta tabla. El Data Producer renombra una columna: amount pasa a ser total. Los tres Data Consumers se rompen, porque nadie sabía que usaban esa columna.

Diapositiva 2 del episodio 1 de Entropy Explains, Escribe la promesa: El Data Producer escribe la promesa en un documento.

Escribe la promesa

El Data Producer escribe la promesa en un documento. Los Data Consumers leen ese mismo documento y se apoyan en él. Ese documento es un Data Contract. Es el único lugar donde las dos partes se ponen de acuerdo sobre los datos.

Diapositiva 3 del episodio 1 de Entropy Explains, Qué entra en un Data Contract: Un Data Contract tiene ocho partes.

Qué entra en un Data Contract

Un Data Contract tiene ocho partes. Los fundamentals dan el identificador, la versión y el estado. Otras partes describen el esquema, las reglas de calidad de datos y el equipo. Las últimas partes dan los términos de uso, los service levels, los servidores y el contexto para los agentes de IA.

Diapositiva 4 del episodio 1 de Entropy Explains, Un solo archivo YAML: En la práctica, el Data Contract es un archivo YAML en el Open Data Contract Standard, ODCS.

Un solo archivo YAML

En la práctica, el Data Contract es un archivo YAML en el Open Data Contract Standard, ODCS. Las personas pueden leer este archivo. Las herramientas también. El mismo archivo muestra el esquema, las reglas de calidad y la promesa de frescura.

Diapositiva 5 del episodio 1 de Entropy Explains, Un estándar y dos herramientas open source: ODCS es el estándar de facto para Data Contracts.

Un estándar y dos herramientas open source

ODCS es el estándar de facto para Data Contracts. Bitol, un proyecto Linux Foundation, lo mantiene. Con el Data Contract Editor open source editas el archivo de forma visual. La Data Contract CLI open source comprueba el archivo y prueba los datos en tu pipeline de CI.

Diapositiva 6 del episodio 1 de Entropy Explains, Las máquinas comprueban la promesa: La Data Contract CLI lee el Data Contract y comprueba los datos reales contra él.

Las máquinas comprueban la promesa

La Data Contract CLI lee el Data Contract y comprueba los datos reales contra él. Comprueba que el identificador de pedido está presente y que los tipos coinciden. También comprueba que ningún importe es negativo y que los datos tienen menos de una hora.

Diapositiva 7 del episodio 1 de Entropy Explains, El test falla primero: Ahora llega un registro defectuoso con un importe negativo.

El test falla primero

Ahora llega un registro defectuoso con un importe negativo. El test falla antes de que un Data Consumer vea cifras incorrectas. La CLI muestra qué comprobación falló y qué valor es incorrecto. El Data Producer puede arreglar el problema antes de que cause daño a los Data Consumers.

Diapositiva 8 del episodio 1 de Entropy Explains, Una API para los datos: Un Data Contract es una API para los datos.

Una API para los datos

Un Data Contract es una API para los datos. El Data Producer hace promesas y el Data Consumer se apoya en ellas. El Data Contract ayuda con la comunicación, la confianza y el descubrimiento, para las personas y para los agentes de IA.