Tu repositorio
Por qué un repositorio
Un modelo semántico es código: se revisa, se versiona, se ramifica y se revierte. Guardarlo en la base de datos de un SaaS lo convierte en algo que solo se puede mirar desde ese SaaS. En un repositorio se puede mirar desde cualquier sitio, y sigue existiendo el día que dejes de pagar.
Por eso en qontexta el Repositorio Semántico es la fuente de verdad. La aplicación mantiene un índice para poder listar y buscar rápido, pero es un caché: se reconstruye leyendo el Repositorio Semántico y nunca manda.
Cómo se ve
Es la estructura estándar de un proyecto Cube. No hay nada propietario:
model/
cubes/ # las entidades técnicas: tabla o SQL, joins, measures, dimensions
orders.yml
customers.yml
views/ # los vistas semánticas de negocio: la capa curada que se consulta
revenue.yml
cube.js # configuración; qontexta la sirve por API
README.mdUn cube y un vista semántica, abreviados:
cubes:
- name: orders
sql_table: analytics.orders
title: Pedidos
description: Un pedido confirmado. Excluye los carritos abandonados.
measures:
- name: total_amount
sql: amount
type: sum
title: Importe total
description: Ingresos netos sin impuestos, en la fecha del pedido.
meta:
unit: "€"
owner: Finanzasviews:
- name: revenue
title: Ingresos
description: Lo que factura la empresa, por región y por mes.
cubes:
- join_path: orders
includes:
- total_amount
- region
- order_dateLas dos mitades de cada definición conviven en el mismo fichero: el SQL y el
significado, en los campos nativos de Cube (title, description, meta). El
estado de validación va en meta.qontexta, así que la aprobación viaja con la
definición: si clonas el Repositorio Semántico, sabes qué está firmado y qué no.
Cada cambio es un commit
Guardar en la aplicación es commitear. El mensaje dice qué cambió y quién, y el
historial del modelo es el historial de Git —con git blame incluido—.
Y funciona en los dos sentidos: si alguien edita el YAML desde su terminal o fusiona una pull request, qontexta se entera por webhook, reindexa esa rama y el motor semántico empieza a servir la versión nueva. No hace falta pasar por la aplicación.
Qué se guarda fuera del repositorio
Solo lo que no puede ir en un repositorio público: las credenciales de tu Plataforma de Datos (cifradas) y el puntero al propio repositorio. Nada del modelo.
Desvincular
Desvincular borra el puntero y las credenciales. El repositorio y todo su contenido siguen siendo tuyos.