3NF y Data Vault: nada que temer
De vez en cuando recibimos una pregunta interesante: ¿Datavault Builder soporta 3NF? La respuesta es sí — y así funciona.
De vez en cuando recibimos una pregunta interesante de personas interesadas en usar Datavault Builder: ¿la herramienta de automatización DWH soporta 3NF? La respuesta interesante es: sí. Aunque hemos decidido activamente no crear un núcleo 3NF, porque creemos que dividir los datos en funciones individuales como claves (hubs), relaciones (links) y contexto/atributos (satélites) resuelve muchos problemas de los DWH 3NF. Esto incluye la creación de modelos, que ahora pueden crearse desde distintos puntos de partida y pueden crecer juntos fácilmente, así como un mantenimiento más fácil ante cambios de modelo y también la independencia de las distintas rutas de carga. Y estas son solo tres de muchas ventajas. Por eso solemos preguntar cuál es el requisito de negocio para usar 3NF. La mayoría de respuestas se resumen en que los consumidores de datos estaban acostumbrados a un núcleo 3NF y no están seguros de poder gestionar también consultas desde un modelo Data Vault.
Use interfaces
Este es el momento de enfatizar claramente: nadie debería consultar el núcleo directamente. En mi opinión, esto ya no era el caso para los modelos Inmon y se aplica aún más explícitamente a los núcleos Data Vault. Claramente, hay que crear interfaces para las consultas. Estas llevan los datos a un formato optimizado para consultas e informes. Muy a menudo estas interfaces se crean como un modelo dimensional, ya que muchas herramientas modernas de reporting están optimizadas para ello. Sin embargo, como tenemos un nivel más alto de normalización en el Data Vault, también podemos proporcionar interfaces a un nivel más fino como 3NF.
Cómo crear una capa 3NF
Si ha capturado las cardinalidades esperadas en el modelado del data vault (uno-a-muchos, muchos-a-muchos, etc.) tiene incluso toda la información para traducir de forma determinista un modelo data vault en una interfaz 3NF:
-
La business key del hub o hash se asigna como PK
-
Todas las business keys/hashes de hubs conectados como muchos-a-uno o uno-a-uno se convierten en claves foráneas
-
Todos los campos de los satélites se convierten en atributos
Que cree esto como vista As-of-Now o As-of-Then no importa. Puede recorrer simplemente la lista de hubs y crear la vista 3NF por hub sin ninguna intervención del usuario. Si ahora añade un satélite en el Data Vault, simplemente tiene que regenerar la vista de ese hub. Fácil de crear, fácil de ajustar. Como ofrecemos APIs para todas las funciones en Datavault Builder, es fácil usarlas para crear vistas de interfaz totalmente automatizadas según sus propias reglas. En teoría, los consumidores de datos nunca sabrán que sus datos están almacenados en formato Data Vault.
¿Data Vault y 3NF?
Así que nuestra respuesta es: sí, soportamos 3NF para presentar los datos, pero siempre use un Data Vault para almacenarlos. Esto podría ser el mensaje para convencer también a los consumidores de datos que quieren la garantía de poder seguir trabajando con enfoques existentes. Y si eso no funciona, podría incluso ocultarles cómo organiza su trastienda. Al fin y al cabo, cuando vamos de compras no visitamos el almacén del centro comercial, sino que disfrutamos de las estanterías bien surtidas.
Vea Datavault Builder en acción
Demo en vivo. Respuestas honestas sobre si encaja con su equipo.
Reservar una Demo Gratuita