La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

HERRAMIENTAS CASE PARA MODELAMIENTO DE DATOS

Presentaciones similares


Presentación del tema: "HERRAMIENTAS CASE PARA MODELAMIENTO DE DATOS"— Transcripción de la presentación:

1 HERRAMIENTAS CASE PARA MODELAMIENTO DE DATOS

2 Mejorar el modelo físico de datos
Es necesario modificar el PDM por: Integridad de datos – adicionar restricciones a las columnas Consistencia de datos – utilizar integridad referencial declarativa Usabilidad/Seguridad – crear vistas Rendimiento – adicionar otras llaves e índices Se hacen a nivel físico porque dependen de las capacidades del DBMS que se esté utilizando

3 Reglas del negocio y la mejora del PDM
PowerDesigner: Transfiere las reglas del negocio del CDM al PDM Aplica las reglas del negocio al PDM cuando éste es generado a partir del CDM El usuario aplica reglas a objetos del PDM que no corresponden a objetos del CDM Ejemplo, una vista

4 Integridad y consistencia de datos
Tipos de restricciones: A nivel de tabla A nivel de columna Integridad referencial

5 Restricciones a nivel de tabla y columna
Para forzar requerimientos de datos y para aplicar restricciones PowerDesigner usa restricciones a las que les coloca un nombre para definir restricciones a nivel de tabla y columna Los parámetros de chequeo definen rangos de valores y reglas de validación

6 Parámetros de chequeo Parámetros estándar Chequeos adicionales
Controles para datos comunes Definidos a nivel conceptual Chequeos adicionales Escritos como sentencias SQL %MINMAX%, %LISTVAL% y %RULES%

7 Propiedades para chequeo estándar
Mínimo Máximo Default Lista de valores Rótulo Unidad Formato Minúsculas Mayúsculas Inmodificable

8 Chequeos adicionales %MINMAX% – Valores mínimo y máximo definidos en una caja de grupo (group box) %LISTVAL% – Lista de valores en una caja de grupo %RULES% – Validación de expresiones de reglas del negocio definidas en la página de expresiones del servidor

9 Reglas del negocio Las reglas de validación del lado del servidor se generan como reglas de chequeo a nivel de columna, tabla o dominio %RULES% variable Las expresiones del lado cliente, no se generan ni en el CDM ni en el PDM

10 Expresión de reglas En PowerBuilder una regla se escribe como una expresión que combina variables y literales que luego se llevan a SQL y se evalúan para ver si están correctas a nivel del PDM Generalmente para las reglas a nivel de tabla se debe escribir el código Para reglas a nivel de columna se puede utilizar la variable %COLNCODE%

11 Integridad referencial
Conjunto de reglas que determinan el comportamiento de las referencias entre entidades Indican qué pasa cuando: En una tabla padre se actualizan o borran valores de una columna que está referenciada En una tabla padre se borra una fila que tiene una columna que está referenciada Una relación obligatoria termina en una restricción de no nulo en la columna de la tabla padre

12 Propiedades generales de la integridad referencial
Nombre y código de la referencia Comentario Tabla padre Tabla hija Indicador de generación

13 Propiedades de Join Para especificar los join entre tablas encadenadas por referencias Reutilizar columnas Migrar columnas Cancelar migración Auto Ajuste del orden de encadenamiento Opciones del modelo Encadenamiento default al momento de creación Auto migración de columnas

14 Propiedades para integridad
Nombre de la restricción Método de implementación Declarativa Por triggers Cardinalidad Restricción para actualización Restricción para borrado Padre obligatorio Chequeo al hacer commit Permitir cambios en el padre

15 Métodos de implementación
Declarativo Continua …

16 Métodos de implementación
Por trigger

17 Restricciones para actualización y borrado
Ninguna Restrictivo En cascada Colocando nulo Colocando el default

18 Integridad referencial y las reglas del negocio
Las restricciones de la integridad referencial deben basarse en una o más reglas del negocio Una regla define indirectamente una restricción

19 Definir vistas Para mejorar la usabilidad y seguridad de los datos
Forma alterna de ver los datos de una o más tablas Subconjunto de filas y columnas Con la consulta SQL a una o más tablas se genera una tabla lógica (virtual)

20 Crear vistas Dos formas para crear vistas:
Crear la vista a partir de tablas seleccionadas en el PDM Crear una vista vacía, y luego seleccionar las tablas de una lista de tablas

21 Propiedades de la vista
Propietario Uso Generar Usuario predefinido Columnas

22 Modificar la consulta SQL
Editor externo Propiedades Editor SQL Adicionar una consulta

23 Propiedades de la consulta
Pestañas para cada sección de la consulta Especificar columnas y alias de cada una

24 Editor SQL Tipos de objetos Objetos disponibles
Caja de texto para el script de la consulta Herramienta para Funciones Herramienta para operadores

25 Llaves Identificadores en el CDM generan llaves en el PDM
Identificadores primarios generan llaves primarias y foráneas Identificadores diferentes del identificador primario generan llaves alternas

26 Tipo de llave generada El tipo de llave generada depende de la cardinalidad y tipo de dependencia Independiente uno-a-muchos Identificador primario da Llave primaria en el lado de uno Llave foránea en el lado de muchos Relación dependiente Identificador primario Identifica llave foránea en la tabla dependiente Columnas migradas se integran en la llave primaria si ella ya existe Independiente muchos-a-muchos El identificador primario de ambas entidades migran a la tabla encadenada como llaves primaria/foránea Independiente uno-a-uno El identificador primario de la entidad dominante migra a la otra tabla como llave foránea

27 Tipo de llave generada

28 Llave alterna Una o más columnas tales que cada uno de sus valores corresponde a una y solo una fila en la tabla Mejora la usabilidad: La alternativa debe ser sobre un dato muy familiar para el usuario Ejemplo: Cédula en cambio de código del empleado Mejora la seguridad: Oculta los valores de llave primaria a los usuarios finales La llave alterna puede ser una llave alterna pero no una llave primaria

29 Propiedades de las llaves
Nombre y código Comentario Tabla asociada de la llave Nombre de la restricción dada a la llave Indicador de llave primaria Columnas que conforman la llave

30 Índices Estructura de datos asociados a una tabla donde sus valores llaves están lógicamente ordenados Cada llave genera un índice único o una restricción de unicidad Mejora el rendimiento de las bases de datos en las operaciones de lectura Puede desmejorar el rendimiento de operaciones que requieran modificar los índices, por ejemplo en sentencias de inserciones, actualizaciones y borrados Crear índices en columnas que se accesen de forma regular y donde el tiempo de respuesta es importante Efectivo cuando se usa en columnas que contienen valores únicos Continua …

31 Índices Crea un índice definido por el usuario asociado a una o más columnas, o Crea un índice encadenado a una llave primaria, llave alterna o llave foránea

32 Tipos de índices Llave primaria Llave foránea Único Cluster
Definido por el usuario Llave alterna

33 Propiedades de los índices
Nombre, código, Comentario Tipo de índice Tabla Columnas Reglas Dependencias Vista previa Opciones específicas a cada DBMS

34 Chequeo de un PDM Reglas Cada nombre de objeto debe ser único
Cada tabla debe tener por lo menos una columna Cada índice debe tener por lo menos una columna Cada referencia debe tener por lo menos un par de columnas Las restricciones del modelo deben ser compatibles con las restricciones que acepte la base de datos utilizada

35 Tipos de chequeo Tabla Columna Índice Llave Referencia
La longitud del nombre y del código no pueden exceder la longitud máxima especificada en el DBMS Los nombres de las restricciones no pueden estar en conflicto con los nombres de los índices Columna Las columnas incluidas en una llave o índice único deben ser obligatorias, en la mayoría de los DBMS Índice Un índice no debe incluir otro Llave Referencia

36 Nivel de severidad Error – es un problema grave que impide la generación de la base de datos Warning – Indica un problema leve o una recomendación Algunos errores se pueden auto-corregir

37 Fijar opciones para el chequeo del PDM

38 Seleccionar los objetos a chequear

39 Corrección de errores

40 Generar la base de datos o el script de creación de la base de datos

41 Editor para definir el DBMS
Archivo tipo XDB Archivo de definición del DBMS en XML Especificaciones para un DBMS en particular Sintaxis para generar bases de datos, triggers, procedimientos almacenados Editar un DBMS, actualmente editando el archivo XDB

42 Definir el DBMS Copiar un DBMS existente Comparar dos DBMS
Seleccionar dos DBMS para intercalar Importar un DBMS

43 Propiedades DBMS Dos categorías:
General Script Una categoría puede contener subcategorías, campos y valores de campo

44 Modificar la definición del DBMS
Los cambios se aplican de manera diferente de acuerdo a la forma como el DBMS esté asociado con el modelo Share – las modificaciones hechas a un DBMS son compartidas por todos los PDM que usan ese DBMS Copy – Las modificaciones hechas a un DBMS no afectan al PDM

45 Añadir atributos extendidos
Usados como variables durante la generación Los tipos de atributos extendidos definen los tipos de datos y los valores autorizados de los atributos extendidos Una vez se ha añadido, se presenta la facilidad para ingresar otro

46 Generación de la base de datos
Ejecutar un script directamente utilizando ODBC Generar un script para ejecutarlo posteriormente en el DBMS En ambos casos, los comandos de generación se guardan en un archivo donde está el script

47 Parámetros para generación

48 Parámetros para llaves e índices

49 Parámetros para la base de datos

50 Opciones para generación
Texto Conjunto de caracteres Tipo de caracteres (minúsculas/mayúsculas) Uso El dueño como prefijo Título Generar nombre en un comentario Chequear el modelo Grabación automática

51 Página de selección

52 Generación usando ODBC
En Windows, ODBC es una interfaz estándar para conectar bases de datos Provee un API estándar, abierto y portable

53 Modelamiento de un Data Warehouse
Una Data Warehouse es una base de datos típicamente utilizada para almacenar información consolidada de sistemas heterogéneos Las herramientas OLAP utilizan formatos multi-dimensionales para examinar los datos

54 Facilidades de PowerDesigner para Warehouse
Definición de las fuentes de datos Mapeo relacional a relacional Scripts para extracción Identificación automática de tablas de hechos y dimensiones La tabla de hechos almacena valores numéricos de variables relacionadas con aspectos del negocio La tabla de dimensiones almacena datos relativos a los conceptos que se trabajan en los ejes de cada dimensión

55 Diagramas multidimensionales
El software OLAP usa cubos para representar una colección de medidas correspondientes a valores almacenados en cada una de sus celdas Los datos se extraen de una data warehouse o una base de datos operacional para llenar los cubos de la máquina OLAP La opción de reconstruir un cubo en PowerDesigner, automáticamente crea un mapeo relacional a multidimensional entre las tablas de la data warehouse, de hechos multidimensionales y de dimensiones para crear un diagrama multidimensional

56 Diagrama multidimensional

57 Triggers Código dirigido a eventos que se ejecuta automáticamente cuando se hace inserción, borrado o actualización de datos en una columna o una tabla específica Contiene sentencias SQL específicas para los diferentes y se pueden definir en el PDM Asociados específicamente con: Una tabla de una base de datos Un evento de la base de datos

58 Procedimientos almacenados y funciones
Se ejecutan por llamado explícito Usados para implementar lógica del negocio, transacciones y algoritmos Las funciones son un tipo de procedimientos almacenados

59 Ventajas Estandarización Eficiencia y Rendimiento Seguridad
Mejora la productividad de los desarrolladores Uso eficiente de la experiencia Simplifica el mantenimiento de aplicaciones Flexibiliza grandes aplicaciones Consistencia de los algoritmos Transparencia de datos

60 Desventajas Pobre balanceo de carga
Incrementa los requerimientos de administración Para productos específicos

61 Uso de triggers Para forzar reglas de integridad referencial que son demasiado complejas para definirlas en forma declarativa Para forzar reglas del negocio acerca de relaciones lógicas entre los datos Para capturar información y registros para auditoria

62 Tipos de triggers Trigger para inserción Trigger para borrado
Trigger para actualización Triggers de PowerDesigner Basados en plantillas de triggers Se pueden adaptar para conseguir los requerimientos solicitados (triggers adaptados) Si no se adaptan, entonces se denominan triggers default

63 Tipos de triggers por default

64 Terminología para triggers
Description Trigger template Modelo genérico para generar scripts Template item Bloque reutilizable de un script que implementa integridad referencial Trigger Procedimiento asociado a una tabla y posiblemente ajustado a esa tabla Trigger script Código SQL que contiene el manejo ajustado para una determinada tabla

65 Plantilla para un trigger

66 Template Item

67 Trigger

68 Trigger Script

69 Variables Contenedores para referencias a características de objetos y formatos del modelo

70 Tipos de variables %TABLE% Para generar el nombre de la tabla
%ISMAND% Verdadero si el dominio o la columna es obligatoria %COLNNO% Posición de la columna en la lista de columnas de la tabla %RULECEXPR% Expresión para una regla cliente %CHILD% Código generado para tablas hijas

71 Variables para formato
Caracter para formateo Resultados .L Caracteres en minúsculas .U Caracteres en mayúsculas .T Quitar caracteres en blanco .n Longitud máxima n Justifica a una longitud fija -n Justifica a la derecha en para fijar longitud Ejemplo: %.L:TABLE%

72 Macros Script encapsulado y reutilizable para ejecutar tareas típicas
Simplifica el proceso de modificación de plantillas Aumenta la calidad del script porque se puede probar su código

73 Modificar plantillas para triggers
Modificar una plantilla para acomodarlos a las necesidades del negocio es más eficiente que ajustar todos los triggers de forma individual Las plantillas Default para trigger se almacenan en archivos tipo XDB Se puede copiar la plantilla default y modificarla o crear una nueva

74 Modificar plantilla para Default

75 Modificar plantilla de items

76 Crear triggers automáticamente
Implementación de integridad referencial Triggers Declarativa Reconstrucción de triggers Crear nuevos triggers para referencias que tienen implementación en triggers Conservar y/o reconstruir triggers basados en plantillas de items definidas por el usuario

77 Reconstruir triggers

78 Generar un script para triggers
Generación de parámetros y opciones

79 Generar triggers y procedimientos almacenados directamente con ODBC

80 Usar plantillas para definir procedimientos almacenados y funciones
Las plantillas son un punto de inicio en la definición de procedimientos almacenados o funciones Añadir detalles en transacciones, operaciones o algoritmos particulares

81 Definir un procedimiento almacenado o función

82 Definir plantillas especiales para procedimientos almacenados
Se pueden ajustar las plantillas para incluir scripts adicionales Se pueden aplicar a todos los PDMs o a uno en particular

83 Ingeniería reversa o reingeniería

84 Usar reingeniería cuando …
Existe una base de datos que fue diseñada e implementada sin un modelo de datos El modelo de datos existente no refleja el estado actual de la base de datos implementada El modelo de datos por alguna razón se ha perdido La base de datos existente se necesita llevar a un DBMS diferente y se quiere tener un nuevo PDM

85 Reingeniería desde un script

86 Reingeniería desde un script
Seleccionar el archivo Opciones Modelos deseados

87 Reingeniería desde un catálogo
Continúa …

88 Reingeniería desde un catálogo
Identificar la base de datos como una fuente de datos ODBC Definir una fuente de datos Configurar fuente de datos Generar el PDM

89 Reingeniería desde un PDM para producir un CDM
Objeto PDM Tabla Columna de tabla Llave primaria o foránea Referencia Tabla asociada (join) Objeto CDM Entidad Dato elemental, atributo Identificador Relación uno-a-muchos Relación muchos-a-muchos Nota: No existe un encadenamientos entre el CDM y el PDM

90 Resultados al generar un CDM desde un PDM
El CDM tiene referencias no válidas al PDM Algunos objetos del PDM no tienen un objeto correspondiente en el CDM Regenerar un PDM desde un CDM requiere la ejecución de una serie de pasos para conseguir un PDM con referencias válidas en el CDM sin que se pierdan objetos PDM

91 Comparar modelos Comparar modelos ayuda a analizar el contenido de dos modelos del mismo tipo Se comparan modelos para: Seguir la evolución de modelos manejados por diferentes grupos de desarrollo Evaluar las diferencias que existen entre los modelos antes de intercalarlos

92 Seleccionar los modelos a comparar

93 Opciones

94 Ventanas para comparación
Sección para comparar objetos Fuente 1 Fuente 2 Sección de propiedades de la comparación Propiedades

95 Convenciones para las diferencias
Creación No existe el objeto Modificación Movido Movido y modificado

96 Vista previa de los resultados de la comparación

97 Intercalar modelos Intercalar un modelo en otro
Intercalar modelos para: Crear un modelo combinado, de modelos manipulados por diferentes equipos de desarrollo Actualizar un PDM existente con cambios hechos a su correspondiente CDM o viceversa Intercalar un PDM mejorado con un PDM existente para re-establecer el encadenamiento entre un CDM producto de reingeniería y un PDM Sincronizar una base de datos con un PDM

98 Intercalar un modelo Primero seleccionar y comparar los modelos
Seleccionar los objetos a intercalar en el modelo resultante intercalado

99 Ventana para intercalar

100 Nomenclatura para intercalar
Rojo = Modificación Amarillo = Indicación Verde = Movido Púrpura = Borrado y marca de reemplazo Azul = Adición Indicación – triángulo Acción – circulo con caja de chequeo

101 Ejemplo de acción de intercalamiento

102 Ejemplo de acción de intercalamiento

103 Vista previa de los resultados de intercalar

104 Mover un objeto de un paquete a otro en el intercalamiento

105 Sincronización manual de objetos
PowerDesigner chequea objetos de dos modelos para ver si ellos están relacionados Usa OID o el nombre del objeto si no tiene OID (Object IDentification) Sin enlace El objeto ha sido modificado y se le ha cambiado el nombre fuera de la interfaz de PowerDesigner Grupos separados han trabajado sobre archivos separados del modelo para el mismo proyecto Si no hay enlace, la interfaz de comparación no puede determinar si dos objetos corresponden La sincronización manual permite re-establecer la equivalencia de objetos desconectados

106 Sincronización del modelo físico de datos

107 Sincronización de datos
Usuarios trabajan con ambos, el modelo de datos y la base de datos Ambos pueden cambiar uno independiente del otro Volver a sincronizar el modelo con la base de datos es lo que se denomina sincronización Un DBA necesita directivas muy claras para implementar cambios incrementales a una base de datos existente

108 Tipos de sincronización
De la base de datos al modelo Del modelo a la base de datos

109 Sincronizar cuando . . . El modelo y la base de datos tienen diferencias Sincronizar la base de datos desde el modelo Sincronizar el modelo desde la base de datos

110 Sincronizar la base de datos desde el modelo
Usar la función Modify Database La línea base de base de la definición de la base de datos puede ser (baseline): Una fuente de datos ODBC Un archivo con un script Un modelo almacenado PowerDesigner compara el PDM actual con la línea base y solamente genera el código que se necesita para cambiar la línea base al modelo establecido El código puede contener sentencias que conserven datos ya existentes

111 Sincronizar la base de datos desde un PDM

112 Ventana de sincronización de la base de datos

113 Sincronizar un modelo desde la base de datos
Usar reingeniería En un modelo existente Comparar e intercalar selectivamente el PDM que produce el proceso de reingeniería con el PDM pre-existente

114 Sincronizar un PDM desde la base de datos

115 Ventana para intercalar modelos

116 Modelos almacenados Un APM (Archived Physical Model) es un PDM almacenado en un formato especial que facilita la sincronización del modelo Se puede crear en cualquier momento cambiando el modo de almacenamiento cuando se esta grabando en “File Save As” Opciones de generación de PDM a un archivo almacenado

117 ¿Preguntas?


Descargar ppt "HERRAMIENTAS CASE PARA MODELAMIENTO DE DATOS"

Presentaciones similares


Anuncios Google