SlideShare una empresa de Scribd logo
1 de 19
#SQSummit
@fernansql,
@miguelegea
Diseño de base de datos relacionales para
mantener historia
300
Mentor / CEO Global
megea@solidq.com / fguerrero@solidq.com
MVP-MCT – MCAD – MCSD – MCSE - MCSA
Miguel Egea / Fernando Guerrero
2
El cambio ¿es amigo o enemigo?
Los datos siempre cambian, los modelos relacionales
tradicionales manejan ese cambio desde el principio de los
tiempos pero ¿se pierde información con esos cambios?
Diseño de BBDD Rel. Para mantener historia
3
1. El cambio desde el punto de vista de BI
– Que son los cambios
– Que tipos de cambios tenemos
2. Arquitectura de una solución relacional que navegue los
cambios
– Como funcionan los inserts
– Como funcionan los updates
– Como funcionan los deletes
– Que hacer con los selects
SCD Dimensiones lentamente
cambiantes
44
Hay dos tipos fundamentals de SCDs:
– Tipo 1 – Se sobreescribe la version previa
perdiendo simplemente la historia
– Tipo 2 –
oSe añade un Nuevo registro con una clave
subrogada
oSe mantiene la historia
Una dimension puede tener a la vez
atributos de tipo 1 y 2
4© 2013 SolidQ
SDC Tipo 1
-- Correct elevation
UPDATE DimReseller
SET
Product_Type =
‘All’
WHERE
Customer_ID =
‘AW014’
5© 2013 SolidQ
Reseller Dim
Customer
SK
27
Customer ID AW014
Population
Reseller
Type
Warehouse
Product Line
(Type-1)
Mountain
Year Opened 1996
Bike Mart
All
• Actualizaciones
in place
• Pierde la historia
• No se podrá
consultar el
valor antiguo
• No se necesitan
claves
subrogadas
• Sencillo
Customer Source
Customer
ID
AW014
Customer
Name
Customer
Type
Business,
Warehouse
Product
Line
All
Year
Opened
1996
Bike Mart
SCD tipo 2
Product Dim
Product SK 462
Product ID BK-M82S
Name Yukon
Special
Size 44
Model
(Type 2)
Mountain
Class
(Type 2)
Light
Frame
Start Time
End Time
1/1/2003
NULL
1/1/2003
6/7/2005
6© 2013 SolidQ
477
BK-M82S
Yukon
Special
44
All Terrain
Light Frame
6/7/2005
NULL• Se hace track de la historia
(versionado)
• Se necesitan claves subrrogados
• Necesita más mantenimiento.
Product Source
Product ID BK-M82S
Name Yukon
Special
Size 44
Model All Terrain
Class Light
Frame
Cambios en los hechos
Factura
Customer
SK
27
Customer ID AW014
Importe
IVA 21%
Producto Mountain
1500
Bicicleta
Factura
Customer
SK
27
Customer ID AW014
Importe
IVA 21%
Producto Mountain
1600
Bicicleta
chula
Que majo,
me
cambian la
factura
Cambios en los hechos
• Cuando se produce el cambio? ¿Cuándo
debo tener en cuenta esta nueva versión?
• ¿Qué cambia es relevante o irrelevante?
Momento del cambio
• Cambia algo con respecto al tratamiento
de las dimensiones?
Acaso hay algo diferente?
¿Pero y en relacional?
No tenemos el concepto de dimensión, aquí
son todo tablas
No tenemos el concepto de hecho aquí son
todo tablas
Sin embargo, los datos cambian y seguirán
haciéndolo
Solución propuesta
10
• Almacenar los periodos de validez
• En listados normales usar las tablas “Actuales”
• En listados que quieran reflejar situaciones anteriores, filtrar la
versión adecuada.
Crear una tabla de historia
• Clave subrogada o inventada
• Fecha desde validez
• Fecha Hasta Validez
Atributos de la tabla histórica
• Triggers
• CDC
• Replicacion y procedimientos almacenados
Recursos tecnológicos.
DEMO
11
Diseño de las tablas
Inserts
Actualizaciones
• Si es irrelevante Actualizar
versión actual
• Si es relevante Cerrar versión
actual y crear versión nueva
Relevante o irrelevante
DEMO
13
updates
Borrados
• Actualiza histórico
• Borrar elemento.
Superar versión y borrar
DEMO
15
Deletes
Selects
• Encapsular en vistas
• Encapsular en funciones
• Encapsular en
procedimientos
Crear Select especificos
DEMO
17
Selects
Power BI para usuarios de negocio
20
Curso online
Clases virtuales presenciales
14, 15, 16, 21, 22 y 23 de Julio
De 16 a 20 h
Máster en BI 4ª Edición (Inicio Octubre 2014)
- Clases presenciales virtuales
- 450 horas (60 ECTS)
- SolidQ – UPM
- Clases + trabajo práctico + proyecto
- Beca de hasta 1.300 € para los primeros inscritos.
Máster en Big Data & Analytics
1ª Edición (Inicio Octubre 2014)
- Clases presenciales virtuales
- 1 año (60 ECTS) UMA
- Clases + trabajo práctico + proyecto
Información e inscripción:
http://university.solidq.com / ibinfo@solidq.com
Si quieres disfrutar de las mejores sesiones de
nuestros mentores de España y Latino América,
ésta es tu oportunidad.
http://summit.solidq.com
Síguenos:
21

Más contenido relacionado

La actualidad más candente

Requerimientos de la base de datos
Requerimientos de la base de datosRequerimientos de la base de datos
Requerimientos de la base de datos
manuellinaresb
 

La actualidad más candente (20)

Componentes de un SGBD
Componentes de un SGBDComponentes de un SGBD
Componentes de un SGBD
 
Clase 6 - Normalización
Clase 6  - NormalizaciónClase 6  - Normalización
Clase 6 - Normalización
 
Fundamentos de Bases de Datos - Introducción
Fundamentos de Bases de Datos - IntroducciónFundamentos de Bases de Datos - Introducción
Fundamentos de Bases de Datos - Introducción
 
Modelo vista controlador
Modelo vista controladorModelo vista controlador
Modelo vista controlador
 
Analisis y Diseño de Sistemas II-2
Analisis y Diseño de Sistemas II-2Analisis y Diseño de Sistemas II-2
Analisis y Diseño de Sistemas II-2
 
Normalización de bases de datos
Normalización de bases de datosNormalización de bases de datos
Normalización de bases de datos
 
Unidad 2 Modelo De Datos
Unidad 2 Modelo De DatosUnidad 2 Modelo De Datos
Unidad 2 Modelo De Datos
 
Estrutura de Dados Aula 14 - Técnicas de Pesquisa e Ordenação (conceitos e al...
Estrutura de Dados Aula 14 - Técnicas de Pesquisa e Ordenação (conceitos e al...Estrutura de Dados Aula 14 - Técnicas de Pesquisa e Ordenação (conceitos e al...
Estrutura de Dados Aula 14 - Técnicas de Pesquisa e Ordenação (conceitos e al...
 
Banco de Dados II Aula 08 - Linguagem de Consulta SQL (Comandos DML)
Banco de Dados II Aula 08 - Linguagem de Consulta SQL (Comandos DML)Banco de Dados II Aula 08 - Linguagem de Consulta SQL (Comandos DML)
Banco de Dados II Aula 08 - Linguagem de Consulta SQL (Comandos DML)
 
Banco de Dados II Aula 14 - Projeto de Banco de Dados e Estudo de Caso (Postg...
Banco de Dados II Aula 14 - Projeto de Banco de Dados e Estudo de Caso (Postg...Banco de Dados II Aula 14 - Projeto de Banco de Dados e Estudo de Caso (Postg...
Banco de Dados II Aula 14 - Projeto de Banco de Dados e Estudo de Caso (Postg...
 
The relational database model
The relational database modelThe relational database model
The relational database model
 
Requerimientos de la base de datos
Requerimientos de la base de datosRequerimientos de la base de datos
Requerimientos de la base de datos
 
Banco de Dados (parte 01)
Banco de Dados (parte 01)Banco de Dados (parte 01)
Banco de Dados (parte 01)
 
Principios de diseño de la arquitectura del software
Principios de diseño de la arquitectura del softwarePrincipios de diseño de la arquitectura del software
Principios de diseño de la arquitectura del software
 
Data Models.ppt
Data Models.pptData Models.ppt
Data Models.ppt
 
Introdução a Banco de Dados (Parte 1)
Introdução a Banco de Dados (Parte 1)Introdução a Banco de Dados (Parte 1)
Introdução a Banco de Dados (Parte 1)
 
Banco de Dados II Aula 04 - MODELAGEM DE DADOS (Generalização e Especialização)
Banco de Dados II Aula 04 - MODELAGEM DE DADOS (Generalização e Especialização)Banco de Dados II Aula 04 - MODELAGEM DE DADOS (Generalização e Especialização)
Banco de Dados II Aula 04 - MODELAGEM DE DADOS (Generalização e Especialização)
 
Banco de Dados - Part01
Banco de Dados - Part01Banco de Dados - Part01
Banco de Dados - Part01
 
Sistemas de Gestión de Bases de datos
Sistemas de Gestión de Bases de datosSistemas de Gestión de Bases de datos
Sistemas de Gestión de Bases de datos
 
Metodología de desarrollo de software basada en componentes
Metodología de desarrollo de software basada en componentesMetodología de desarrollo de software basada en componentes
Metodología de desarrollo de software basada en componentes
 

Similar a Diseño de bases de datos relacionales para mantener historia

Gestion de cambios
Gestion de cambiosGestion de cambios
Gestion de cambios
UTN
 
Conceptos generales de sia
Conceptos generales de siaConceptos generales de sia
Conceptos generales de sia
Antonio Atenas
 

Similar a Diseño de bases de datos relacionales para mantener historia (20)

24 HOP Español - Utilizando cdc para cargar dw on line - Miguel Egea
24 HOP Español - Utilizando cdc para cargar dw on line - Miguel Egea24 HOP Español - Utilizando cdc para cargar dw on line - Miguel Egea
24 HOP Español - Utilizando cdc para cargar dw on line - Miguel Egea
 
introduccion bases de datos
introduccion bases de datosintroduccion bases de datos
introduccion bases de datos
 
Migración a sql server 2008
Migración a sql server 2008Migración a sql server 2008
Migración a sql server 2008
 
SqlSat247 Bogota - SQL Server Modo Tabular vs Modo Multidimensional - Pros y ...
SqlSat247 Bogota - SQL Server Modo Tabular vs Modo Multidimensional - Pros y ...SqlSat247 Bogota - SQL Server Modo Tabular vs Modo Multidimensional - Pros y ...
SqlSat247 Bogota - SQL Server Modo Tabular vs Modo Multidimensional - Pros y ...
 
Gestion de cambios
Gestion de cambiosGestion de cambios
Gestion de cambios
 
Microsoft Lists o como crear aplicaciones a la velocidad de la luz para M365 ...
Microsoft Lists o como crear aplicaciones a la velocidad de la luz para M365 ...Microsoft Lists o como crear aplicaciones a la velocidad de la luz para M365 ...
Microsoft Lists o como crear aplicaciones a la velocidad de la luz para M365 ...
 
Nuevos escenarios BI con SQL Server 2014
Nuevos escenarios BI con SQL Server 2014Nuevos escenarios BI con SQL Server 2014
Nuevos escenarios BI con SQL Server 2014
 
Bases de datos NoSQL en entornos Big Data
Bases de datos NoSQL en entornos Big DataBases de datos NoSQL en entornos Big Data
Bases de datos NoSQL en entornos Big Data
 
BusinessIntelligence Introduction
BusinessIntelligence IntroductionBusinessIntelligence Introduction
BusinessIntelligence Introduction
 
SQLSaturday 322 Guatemala 2014 Cubes Performance
SQLSaturday 322 Guatemala 2014 Cubes PerformanceSQLSaturday 322 Guatemala 2014 Cubes Performance
SQLSaturday 322 Guatemala 2014 Cubes Performance
 
[SPANISH ]Codealike en MUG Argentina
[SPANISH ]Codealike en MUG Argentina[SPANISH ]Codealike en MUG Argentina
[SPANISH ]Codealike en MUG Argentina
 
Abd1 intro
Abd1 introAbd1 intro
Abd1 intro
 
Migración a sql server 2016
Migración a sql server 2016Migración a sql server 2016
Migración a sql server 2016
 
Administrando SQL Server, mejores practicas para un DBA
Administrando SQL Server, mejores practicas para un DBAAdministrando SQL Server, mejores practicas para un DBA
Administrando SQL Server, mejores practicas para un DBA
 
Microsoft Lists o como crear aplicaciones a la velocidad de la luz para M365 ...
Microsoft Lists o como crear aplicaciones a la velocidad de la luz para M365 ...Microsoft Lists o como crear aplicaciones a la velocidad de la luz para M365 ...
Microsoft Lists o como crear aplicaciones a la velocidad de la luz para M365 ...
 
Desarrollo con control de código contra SQL Server | SolidQ Summit 2012
Desarrollo con control de código contra SQL Server | SolidQ Summit 2012Desarrollo con control de código contra SQL Server | SolidQ Summit 2012
Desarrollo con control de código contra SQL Server | SolidQ Summit 2012
 
Detección de cambios para el desarrollo de WareHouse
Detección de cambios para el desarrollo de WareHouseDetección de cambios para el desarrollo de WareHouse
Detección de cambios para el desarrollo de WareHouse
 
Novedades de SQL Server 2014 para BI
Novedades de SQL Server 2014 para BINovedades de SQL Server 2014 para BI
Novedades de SQL Server 2014 para BI
 
Conceptos generales de sia
Conceptos generales de siaConceptos generales de sia
Conceptos generales de sia
 
Conceptos generales de sia
Conceptos generales de siaConceptos generales de sia
Conceptos generales de sia
 

Más de SolidQ

Más de SolidQ (20)

SolidQ Summit 2018 - Qué necesita saber un DBA de Integration Services
SolidQ Summit 2018 - Qué necesita saber un DBA de Integration ServicesSolidQ Summit 2018 - Qué necesita saber un DBA de Integration Services
SolidQ Summit 2018 - Qué necesita saber un DBA de Integration Services
 
SolidQ Summit 2018 - Seguridad a nivel datos. RLS
SolidQ Summit 2018 - Seguridad a nivel datos. RLSSolidQ Summit 2018 - Seguridad a nivel datos. RLS
SolidQ Summit 2018 - Seguridad a nivel datos. RLS
 
SolidQ Summit 2018 - Todo lo que un integrador de datos debería tener... y pa...
SolidQ Summit 2018 - Todo lo que un integrador de datos debería tener... y pa...SolidQ Summit 2018 - Todo lo que un integrador de datos debería tener... y pa...
SolidQ Summit 2018 - Todo lo que un integrador de datos debería tener... y pa...
 
SolidQ Summit 2018 - ¿Dificultades gestionando relaciones muchos a muchos? De...
SolidQ Summit 2018 - ¿Dificultades gestionando relaciones muchos a muchos? De...SolidQ Summit 2018 - ¿Dificultades gestionando relaciones muchos a muchos? De...
SolidQ Summit 2018 - ¿Dificultades gestionando relaciones muchos a muchos? De...
 
SolidQ Summit 2018 - Report Server: Nuevos mutantes
SolidQ Summit 2018 - Report Server: Nuevos mutantesSolidQ Summit 2018 - Report Server: Nuevos mutantes
SolidQ Summit 2018 - Report Server: Nuevos mutantes
 
Cuando QueryStore no sirve, ¿qué opciones tenemos?
Cuando QueryStore no sirve, ¿qué opciones tenemos?Cuando QueryStore no sirve, ¿qué opciones tenemos?
Cuando QueryStore no sirve, ¿qué opciones tenemos?
 
SQL Server 2017 en Linux
SQL Server 2017 en LinuxSQL Server 2017 en Linux
SQL Server 2017 en Linux
 
Columnstore en la vida real
Columnstore en la vida realColumnstore en la vida real
Columnstore en la vida real
 
PowerApprízate
PowerApprízatePowerApprízate
PowerApprízate
 
Jugando a ser rico: Machine Learning para predicción de stocks
Jugando a ser rico: Machine Learning para predicción de stocksJugando a ser rico: Machine Learning para predicción de stocks
Jugando a ser rico: Machine Learning para predicción de stocks
 
Analizando tus Redes Sociales con Power BI
Analizando tus Redes Sociales con Power BIAnalizando tus Redes Sociales con Power BI
Analizando tus Redes Sociales con Power BI
 
Mantenimiento de SQL Server para Dummies
Mantenimiento de SQL Server para DummiesMantenimiento de SQL Server para Dummies
Mantenimiento de SQL Server para Dummies
 
R en relacional
R en relacionalR en relacional
R en relacional
 
Cuando haces bot ya no hay stop!!
Cuando haces bot ya no hay stop!!Cuando haces bot ya no hay stop!!
Cuando haces bot ya no hay stop!!
 
Arquitecturas lambda en Azure
Arquitecturas lambda en AzureArquitecturas lambda en Azure
Arquitecturas lambda en Azure
 
Bot Framework: otra manera de acceder a tus datos - SolidQ Summit 2018
Bot Framework: otra manera de acceder a tus datos - SolidQ Summit 2018Bot Framework: otra manera de acceder a tus datos - SolidQ Summit 2018
Bot Framework: otra manera de acceder a tus datos - SolidQ Summit 2018
 
BIE2E en Azure - SolidQ Summit 2018
BIE2E en Azure - SolidQ Summit 2018BIE2E en Azure - SolidQ Summit 2018
BIE2E en Azure - SolidQ Summit 2018
 
¿Qué viene GDPR? Mi SQL está preparado- SolidQ Summit 2018
¿Qué viene GDPR? Mi SQL está preparado- SolidQ Summit 2018¿Qué viene GDPR? Mi SQL está preparado- SolidQ Summit 2018
¿Qué viene GDPR? Mi SQL está preparado- SolidQ Summit 2018
 
Hilando fino en SSAS multidimensional - SolidQ Summit 2018
Hilando fino en SSAS multidimensional - SolidQ Summit 2018Hilando fino en SSAS multidimensional - SolidQ Summit 2018
Hilando fino en SSAS multidimensional - SolidQ Summit 2018
 
Adaptive Query Processing: Mejoras en el motor de consulta de SQL Server 2017...
Adaptive Query Processing: Mejoras en el motor de consulta de SQL Server 2017...Adaptive Query Processing: Mejoras en el motor de consulta de SQL Server 2017...
Adaptive Query Processing: Mejoras en el motor de consulta de SQL Server 2017...
 

Último

redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
nicho110
 

Último (14)

infor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptx
infor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptxinfor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptx
infor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptx
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
Generaciones de las Computadoras..pdf...
Generaciones de las Computadoras..pdf...Generaciones de las Computadoras..pdf...
Generaciones de las Computadoras..pdf...
 
Guia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosGuia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos Basicos
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptx
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXI
 
presentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdf
presentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdfpresentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdf
presentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdf
 
presentación del desensamble y ensamble del equipo de computo en base a las n...
presentación del desensamble y ensamble del equipo de computo en base a las n...presentación del desensamble y ensamble del equipo de computo en base a las n...
presentación del desensamble y ensamble del equipo de computo en base a las n...
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 

Diseño de bases de datos relacionales para mantener historia

  • 1. #SQSummit @fernansql, @miguelegea Diseño de base de datos relacionales para mantener historia 300 Mentor / CEO Global megea@solidq.com / fguerrero@solidq.com MVP-MCT – MCAD – MCSD – MCSE - MCSA Miguel Egea / Fernando Guerrero
  • 2. 2 El cambio ¿es amigo o enemigo? Los datos siempre cambian, los modelos relacionales tradicionales manejan ese cambio desde el principio de los tiempos pero ¿se pierde información con esos cambios?
  • 3. Diseño de BBDD Rel. Para mantener historia 3 1. El cambio desde el punto de vista de BI – Que son los cambios – Que tipos de cambios tenemos 2. Arquitectura de una solución relacional que navegue los cambios – Como funcionan los inserts – Como funcionan los updates – Como funcionan los deletes – Que hacer con los selects
  • 4. SCD Dimensiones lentamente cambiantes 44 Hay dos tipos fundamentals de SCDs: – Tipo 1 – Se sobreescribe la version previa perdiendo simplemente la historia – Tipo 2 – oSe añade un Nuevo registro con una clave subrogada oSe mantiene la historia Una dimension puede tener a la vez atributos de tipo 1 y 2 4© 2013 SolidQ
  • 5. SDC Tipo 1 -- Correct elevation UPDATE DimReseller SET Product_Type = ‘All’ WHERE Customer_ID = ‘AW014’ 5© 2013 SolidQ Reseller Dim Customer SK 27 Customer ID AW014 Population Reseller Type Warehouse Product Line (Type-1) Mountain Year Opened 1996 Bike Mart All • Actualizaciones in place • Pierde la historia • No se podrá consultar el valor antiguo • No se necesitan claves subrogadas • Sencillo Customer Source Customer ID AW014 Customer Name Customer Type Business, Warehouse Product Line All Year Opened 1996 Bike Mart
  • 6. SCD tipo 2 Product Dim Product SK 462 Product ID BK-M82S Name Yukon Special Size 44 Model (Type 2) Mountain Class (Type 2) Light Frame Start Time End Time 1/1/2003 NULL 1/1/2003 6/7/2005 6© 2013 SolidQ 477 BK-M82S Yukon Special 44 All Terrain Light Frame 6/7/2005 NULL• Se hace track de la historia (versionado) • Se necesitan claves subrrogados • Necesita más mantenimiento. Product Source Product ID BK-M82S Name Yukon Special Size 44 Model All Terrain Class Light Frame
  • 7. Cambios en los hechos Factura Customer SK 27 Customer ID AW014 Importe IVA 21% Producto Mountain 1500 Bicicleta Factura Customer SK 27 Customer ID AW014 Importe IVA 21% Producto Mountain 1600 Bicicleta chula Que majo, me cambian la factura
  • 8. Cambios en los hechos • Cuando se produce el cambio? ¿Cuándo debo tener en cuenta esta nueva versión? • ¿Qué cambia es relevante o irrelevante? Momento del cambio • Cambia algo con respecto al tratamiento de las dimensiones? Acaso hay algo diferente?
  • 9. ¿Pero y en relacional? No tenemos el concepto de dimensión, aquí son todo tablas No tenemos el concepto de hecho aquí son todo tablas Sin embargo, los datos cambian y seguirán haciéndolo
  • 10. Solución propuesta 10 • Almacenar los periodos de validez • En listados normales usar las tablas “Actuales” • En listados que quieran reflejar situaciones anteriores, filtrar la versión adecuada. Crear una tabla de historia • Clave subrogada o inventada • Fecha desde validez • Fecha Hasta Validez Atributos de la tabla histórica • Triggers • CDC • Replicacion y procedimientos almacenados Recursos tecnológicos.
  • 11. DEMO 11 Diseño de las tablas Inserts
  • 12. Actualizaciones • Si es irrelevante Actualizar versión actual • Si es relevante Cerrar versión actual y crear versión nueva Relevante o irrelevante
  • 14. Borrados • Actualiza histórico • Borrar elemento. Superar versión y borrar
  • 16. Selects • Encapsular en vistas • Encapsular en funciones • Encapsular en procedimientos Crear Select especificos
  • 18. Power BI para usuarios de negocio 20 Curso online Clases virtuales presenciales 14, 15, 16, 21, 22 y 23 de Julio De 16 a 20 h Máster en BI 4ª Edición (Inicio Octubre 2014) - Clases presenciales virtuales - 450 horas (60 ECTS) - SolidQ – UPM - Clases + trabajo práctico + proyecto - Beca de hasta 1.300 € para los primeros inscritos. Máster en Big Data & Analytics 1ª Edición (Inicio Octubre 2014) - Clases presenciales virtuales - 1 año (60 ECTS) UMA - Clases + trabajo práctico + proyecto Información e inscripción: http://university.solidq.com / ibinfo@solidq.com
  • 19. Si quieres disfrutar de las mejores sesiones de nuestros mentores de España y Latino América, ésta es tu oportunidad. http://summit.solidq.com Síguenos: 21