Saltar al contenido principal

Data Contracts y productos de datos

¿Qué es un producto de datos y qué relación tiene con los Data Contracts?

Por Dr. Simon Harrer · · video de 2:38 · 9 diapositivas

En resumen

Un producto de datos son los datos, el código que los genera y los metadatos que los describen. Un equipo es el propietario. Cada output port del producto de datos tiene su propio Data Contract, la promesa de ese port.

Ver en YouTube
Diapositiva 1 del episodio 2 de Entropy Explains, Más que una tabla: Mucha gente cree que un producto de datos es solo una tabla.

Más que una tabla

Mucha gente cree que un producto de datos es solo una tabla. Un producto de datos incluye también el código que genera los datos. Incluye los metadatos que dicen quién es el propietario, qué ports tiene y qué Data Contracts se aplican. Un equipo es propietario de todo el conjunto.

Diapositiva 2 del episodio 2 de Entropy Explains, Input ports y output ports: Los datos entran en el producto de datos por los input ports.

Input ports y output ports

Los datos entran en el producto de datos por los input ports. Aquí vienen de la tienda web y del producto de datos payments. El producto de datos entrega sus datos por los output ports. Cada output port remite a un Data Contract, la promesa de ese port concreto.

Diapositiva 3 del episodio 2 de Entropy Explains, Un archivo YAML en ODPS: El producto de datos también es un archivo YAML.

Un archivo YAML en ODPS

El producto de datos también es un archivo YAML. Usa el Open Data Product Standard, ODPS. El archivo lista el equipo propietario, los input ports y los output ports. Cada output port apunta a su Data Contract en ODCS.

Diapositiva 4 del episodio 2 de Entropy Explains, Código y descripción en Git: El archivo del producto de datos vive en Git, junto al código del pipeline y a los Data Contracts.

Código y descripción en Git

El archivo del producto de datos vive en Git, junto al código del pipeline y a los Data Contracts. El código y la descripción cambian juntos, en el mismo pull request. En cada cambio, el pipeline de CI publica el producto de datos en un marketplace de datos.

Diapositiva 5 del episodio 2 de Entropy Explains, Pide acceso con un propósito: En el marketplace de datos, los Data Consumers encuentran los productos de datos que necesitan.

Pide acceso con un propósito

En el marketplace de datos, los Data Consumers encuentran los productos de datos que necesitan. Un Data Consumer pide acceso a un output port e indica un propósito. El equipo propietario lo aprueba, o una policy lo aprueba de forma automática. Un access agreement conecta entonces a los dos equipos bajo los términos de uso.

Diapositiva 6 del episodio 2 de Entropy Explains, Un cambio incompatible, una versión nueva: El Data Producer quiere renombrar amount a total.

Un cambio incompatible, una versión nueva

El Data Producer quiere renombrar amount a total. Es un cambio incompatible. Así que la versión 1 se queda como está y, al lado, arranca un output port nuevo con la versión 2. La Data Contract CLI muestra el cambio incompatible antes de que llegue a producción.

Diapositiva 7 del episodio 2 de Entropy Explains, Los consumers migran a su propio ritmo: Los dos output ports funcionan en paralelo.

Los consumers migran a su propio ritmo

Los dos output ports funcionan en paralelo. Cada Data Consumer pasa de la versión 1 a la versión 2 cuando está listo. Ningún Data Consumer tiene que cambiar el mismo día que el Data Producer. El Data Producer ve qué Data Consumers siguen usando la versión 1.

Diapositiva 8 del episodio 2 de Entropy Explains, Retira la versión antigua: Cuando ningún Data Consumer usa ya la versión 1, el Data Producer la apaga.

Retira la versión antigua

Cuando ningún Data Consumer usa ya la versión 1, el Data Producer la apaga. Solo queda la versión 2. El producto de datos cambia sin caídas para sus Data Consumers. Cada Data Consumer tuvo tiempo de probar la versión 2 antes del cambio.

Diapositiva 9 del episodio 2 de Entropy Explains, Propiedad y garantías: Cada producto de datos tiene un equipo propietario.

Propiedad y garantías

Cada producto de datos tiene un equipo propietario. El Data Contract da las garantías de cada output port. Un access agreement conecta el producto de datos con cada Data Consumer. Juntos hacen que los datos se puedan encontrar, usar y considerar fiables, tanto por personas como por agentes de IA.