Conocimiento
Open Data Contract Standard (ODCS)
The Open Data Contract Standard (ODCS) se conocía antes como Data Contract Template, la plantilla que PayPal usaba para especificar sus conjuntos de datos. Hoy lo gobierna Bitol, un proyecto de Linux Foundation AI & Data.
Formamos parte del Technical Steering Committee de Bitol y nos comprometemos a dar soporte al estándar ODCS en nuestros productos.
Desde la v3.0.0, Entropy Data admite ODCS para definir Data Contracts.
Detalles de un Data Contract en Entropy Data
Ejemplo de Open Data Contract Standard
Empecemos con un ejemplo de Data Contract en formato ODCS v3:
apiVersion: v3.0.0
kind: DataContract
id: c176de03-8503-4859-bd0f-218cc413d958
name: Shipments
version: 1.0.0
domain: checkout
status: development
description:
purpose: This data can be used for analytical purposes
schema:
- name: my_table
physicalType: table
properties:
- name: shipment_id
description: Unique identifier for each shipment.
logicalType: string
logicalTypeOptions:
format: uuid
physicalType: uuid
primaryKey: true
examples:
- 03c35ea7-9a26-475f-a38a-0dad96f6de10
- name: order_id
description: Identifier for the order associated with the shipment.
logicalType: string
physicalType: text
required: true
unique: false
examples:
- ORD789012
- name: delivery_date
description: "The actual or expected delivery date of the shipment."
logicalType: date
physicalType: timestamp_tz
required: false
examples:
- "2024-09-05T17:00:00Z"
quality:
- type: text
description: Must be set, when status is "delivered".
- name: carrier
description: "The shipping carrier used for the delivery."
logicalType: string
physicalType: text
examples:
- DHL
- UPS
- name: tracking_number
description: Tracking number provided by the carrier.
logicalType: string
logicalTypeOptions:
minLength: 10
maxLength: 36
physicalType: text
classification: restricted
quality:
- rule: duplicateCount
mustBeLessThan: 1
unit: percent
examples:
- 1Z9999W99999999999
- name: status
description: "Current status of the shipment."
logicalType: string
physicalType: text
examples: ["pending", "shipped", "in_transit", "delivered", "returned", "canceled"]
quality:
- rule: rowCount
name: Verify row count range
mustBeBetween: [1000000, 5000000]
team:
- username: john.doe@example.com
role: Data Product Owner
servers:
- server: production
environment: production
type: bigquery
project: acme_shipments_prod
dataset: shipments_v1
roles:
- role: analyst_us_read
access: read
- role: analyst_eu_read
access: read
Si ya conocías el formato v2, notarás varios cambios importantes. El formato ODCS v3 es más flexible y sirve para una gama más amplia de productos de datos.
Contenido
Estos son los bloques que componen un Data Contract en ODCS:
Fundamentos
La información general del Data Contract: ID, nombre, versión, propietario y descripción.
Schema
El schema define la representación lógica y, opcionalmente, la física del modelo de datos. Con ODCS v3 también se admiten estructuras de datos complejas (por ejemplo, modelos JSON y AVRO).
Calidad de datos
Las garantías de calidad de datos ahora se pueden definir en texto plano, en SQL o mediante una biblioteca mantenida de atributos de calidad predefinidos de uso habitual, como rowCount, unique, freshness y muchos más.
Precio
El precio que los Data Consumers pagan por usar el producto de datos. Opcional.
Servidores
La ubicación física del conjunto de datos: el host, la base de datos y el schema reales. Se admiten la mayoría de tecnologías y plataformas de datos. Permite definir varios servidores para distintos entornos o versiones del producto de datos.
Roles
Una lista de roles que los Data Consumers pueden solicitar para acceder a los datos. Cada rol puede otorgar permisos distintos dentro de un control de acceso basado en roles (RBAC).
SLA
Los acuerdos de nivel de servicio (SLA) permiten especificar la disponibilidad y el rendimiento esperados del producto de datos.
Propiedades personalizadas
Para necesidades propias o requisitos específicos de una herramienta, puedes añadir propiedades adicionales.
Entropy Data
Entropy Data es el frontend con el que tu organización gestiona sus Data Contracts y sus productos de datos. A partir de los Data Contracts crea un marketplace de productos de datos con funciones avanzadas de descubrimiento de datos, edición de Data Contracts con control de versiones, contract testing y Data Governance automatizada.
Una captura del editor de Data Contracts para ODCS en Entropy Data
Regístrate gratis ahora o explora la demo interactiva de Entropy Data.