Modelo Fisico
Modelo Fisico
Modelo Fisico
FACULTAD DE INGENIERÍA
ESCUELA DE INGENIERIA DE SISTEMAS
INTELIGENCIA DE NEGOCIOS
Modelo Fisico
Universidad Los Ángeles de Chimbote
Tabla de Contenido
• Modelo Físico
▫ Modelo dimensional Modelo Físico
▫ Dimensionamiento de la BD
▫ Estrategia de indexación.
▫ Estrategia de particionamiento.
▫ Actualización de la metadata
Objetivos
Después de completar esta lección, comprenderá:
Trasladar el modelo dimensional a un modelo
físico.
Explicar varias técnicas de dimensionamiento.
Describir las técnicas de indexación para data
warehousing.
Discutir las estrategias de almacenamiento de
tablas e índices.
Discutir las opciones de particionamiento.
Actualizar el documento de meta data con la
información del modelo físico.
Facultad de Ingeniería – Escuela de Ingeniería de Sistemas
MODELO FÍSICO
Universidad Los Ángeles de Chimbote
El modelo físico
• El modelo físico reside en un (RDBMS), por lo que
es necesario asegurar:
▫ Que el almacenamiento de cada objeto (tablas) se soporte
de manera apropiada y contenga los índices necesarios.
▫ El desempeño de la base de datos.
▫ El particionamiento de la base de datos.
• Trasladar el modelo dimensional al modelo físico.
• Usar estándares de nombres, adicionar formato a
los atributos, medir el desempeño de la BD y
plantear las estrategias de indexación y
particionamiento.
Dimensio- Almace-
MD MF Indexación Meta data
namiento namiento
Ejercicio 1
• Trasladar el modelo dimensional lógico a un
modelo dimensional físico.
Dimensio- Almace-
MD MF Indexación Meta data
namiento namiento
Universidad Los Ángeles de Chimbote
Ejercicio 2
• Calcular el tamaño de la tabla de
hechos para el ejemplo propuesto.
dispersión) *
*
RENTALS_NUMBER
RENTAL_AMOUNT
d
d
* RENTAL_COST d
* PROFIT d
Ejercicio 2 – método 1
Descripción Fórmula Valor Comentario
Tamaño de una fila de la tabla hechos 16*4+4*4 80 asumido para este ejemplo
Ejercicio 2 – método 2
Descripción fórmula valor unidades
Ingresos totales de la empresa 2000 billones X año
Precio promedio venta por línea de ítem 50 $
Dimensio- Almace-
MD MF Indexación Meta data
namiento namiento
Universidad Los Ángeles de Chimbote
Índices
• Los índices son objetos de la bases de datos,
cuya función es optimizar el acceso a datos.
Índices
• Internamente un índice normal es una estructura de árbol,
que cuenta con una página principal y luego esta con
paginas hijas, que a su vez tiene más paginas hijas hasta
llegar a la pagina final del índice (leaf level).
Hoja de páginas
• La clave del índice está repartida en las páginas del índice,
de modo tal que la búsqueda se haga leyendo la menor
cantidad posible de datos.
Tipos de Índices
• Índice no agrupado
▫ El orden físico de las filas es independiente del orden
indizado
• Indice agrupado.
▫ El orden lógico de los valores de clave determina el orden físico de
las filas correspondientes de la tabla.
▫ El nivel inferior u hoja, de un índice agrupado contiene las filas de
datos en sí de la tabla.
▫ Una tabla o vista permite un índice agrupado al mismo tiempo.
índice no agrupado
• Almacena, por cada elemento del índice, un
"identificador" para encontrar en la tabla los datos
asociados a este. RID
Índice Agrupado
• El “identificador” utilizado es la llave del índice
agrupado.
Índice agrupado.
• Se usan los tres identificadores
de filas (rojo, verde y azul).
• Se realiza la operación de
búsqueda en el índice agrupado.
• Se identifica las filas que
cumplan los tres
identificadores.
Índice único
• Dos filas no pueden tener = valor de clave del índice.
• Las columnas utilizadas deben establecerse en NOT NULL
(dado los valores nulos se consideran duplicados)
• No se admite la creación de un índice único sobre columnas
que ya contengan valores duplicados, independientemente
de si se ha establecido o no IGNORE_DUP_KEY en ON.
CREATE UNIQUE INDEX AK_UnitMeasure_Name ON
Production.UnitMeasure(Name);
Estrategias
• Un DBMS optimiza una consulta usando dos
enfoques:
Tipos de índices
Índices B*-tree
Usado para pequeño número de valores distintos en una
columna
Índices Bitmap
Usado con el enfoque CBO.
Se crea un índice para cada clave foránea.
Índices Particionados
Se denomina índices localizados, colocándose el índice
en un partición determinada.
Tablas organizadas por índice.
En este tipo de índice la data esta sostenida en el índice,
cambios en los datos solo representa cambios en el
índice.
Estrategias de indexación
size = ‘SMALL’
’ 0 0 1 0 0 1 0 1 0 1 0 0 0 1 0 1
size = ‘MED’
’ 1 0 0 0 1 0 1 0 0 0 0 1 0 1 0 0
size = ‘LARGE’
’ 0 1 0 1 0 0 0 0 1 0 1 0 1 0 1 0
color = ‘BLUE’ 0 1 0 1 0 0 1 0 1 0 1 0 0 0 1 0
color = ‘RED’ 0 0 1 0 1 0 0 0 0 0 0 0 1 0 0 1
color = ‘GREEN’ 1 0 0 0 0 1 0 1 0 1 0 1 0 1 0 0
Índice B*-tree
• Es usado para pocas filas
• Los datos se organizan como un árbol.
• A la derecha están los menores a la izquierda los
mayores
• La forma de llegar a un valor es fija.
A G P Z
Índice Bitmap
Almacena valores con 1’s y 0’s
Dimensio- Almace-
MD MF Indexación Meta data
namiento namiento
Universidad Los Ángeles de Chimbote
Archivos de Datos
• Controlan la asignación de espacio en el disco.
Segmento
148KB
Extent Extent
Base de Datos 36KB 112KB
tablespace tablespace
2KB 2KB 2KB
2KB 2KB 2KB
2KB 2KB 2KB
2KB 2KB 2KB
2KB 2KB 2KB
Evitando la Fragmentación
• Recordar actividades de carga e indexación.
• Determinar la tasa de crecimiento de la BD para no
crecer constantemente.
• Mantener suficiente espacio en el DD
Extent
50 KB
CREATE TABLE
sales_fact ... Extent
SIZE = 50KB, 50 KB
FILEGROWTH = 25KB Extent
75 KB
Tablespace Tablespace
SALES_1 SALES_2
Dimensio- Almace-
MD MF Indexación Meta data
namiento namiento
Universidad Los Ángeles de Chimbote
Tablespace
Segment
Extent
Blocks
Estructura
Particionamiento Horizontal
Particionamiento de datos de tablas e índices por:
Tiempo
Ventas
Geografía January 1996
Organización February 1996
March 1996
Línea del negocio April 1996
May 1996
June 1996
Partición por tiempo
Particionamiento Vertical
Partición de datos por columna (raro)
Permite acceso a cierto grupo de usuarios.
Particiones
• El ejemplo siguiente crea un índice no agrupado
con particiones en TransactionsPS1, un esquema
de partición existente.
CREATE NONCLUSTERED
INDEX IX_TransactionHistory_ReferenceOrderID
ON Production.TransactionHistory (ReferenceOrderID)
ON TransactionsPS1 (TransactionDate);
Dimensio- Almace-
MD MF Indexación Meta data
namiento namiento
Universidad Los Ángeles de Chimbote
Esquema Físico
• Existe tres formas de almacenar los datos:
AGREGACIONES
Y DATOS
Vista de
Base de Datos Usuario
Relacional
Base de Datos
Multidimensional
Vista de
Base de Datos Usuario
Vista de Relacional Base de Datos
Base de Datos Usuario Multidimensional
Relacional Base de Datos
Multidimensional
AGREGACIONES
Y DATOS
Vista de
Base de Datos Usuario
Relacional
Base de Datos
Multidimensional
Vista de
Base de Datos Usuario
Relacional Base de Datos
Multidimensional
Vista de
Base de Datos Usuario
Relacional Base de Datos
Multidimensional
Tiempo de Latencia
Ahorra espacio de
almacenamiento.
El tiempo de respuesta a
ROLAP Útil cuando se trabaja con
consultas es mayor.
muy grandes conjuntos de
datos.