sábado, 24 de agosto de 2013

Clase 04

Clase 04

Modelo de Base de Datos: Es el resultado de una abstracción de la realidad, con el fin de extraer lo esencial de algo,
ademas permite la interacción entre los involucrados respecto a la idea final.

Un modelo de Base de Datos permite el "ensayo y error" antes de la implementación y representa en forma simple los
elementos de la futura base de datos.

Etapas del Modelamiento:
*Requerimientos del Usuario: La realidad, para establecer los requerimientos, es NECESARIA la información, involucrarse en
el negocio, obtener tantos datos como sea posible
*Modelo Conceptual de Datos (Modelo Entidad-Relación)
*Proceso de Noprmalización: Limpiar los datos.
*Modelo Conceptual Canónico
*Modelo Realacional: Relacionado al motor de base de datos
*Generación de la Base de Datos: depende del DBMS o SABD seleccionado

Modelo Entidad - Relación: http://pastebin.com/cLNqMyMg (Fig. 1)

En este modelo se denotan las entidades (Departamento, Empleado)
Cada uno con distintos Atributos. La flecha representa la Interrelación, la flecha multiple en este caso indica que
una entidad Departamento tiene N Empleados.
Fila, Registro o Tupla: identifica cada una de las variables de la entidad
(Ej.: Departamento de Finanzas, Departamento de Ventas, etc) este registro corresponde a la Primary Key
Primary Key: Todo objeto debe tener un identificador único, aconsejable un ID automático, no relacionado al negocio(entidad)
Este modelo es similar al Modelo de Clases de JAVA (Sin los métodos)

Existen otros métodos de representación del Model Entidad Realción (E/R) como el modelo de Chen, que utiliza rectángulos
para las Entidades, Rombos para las relaciones y lineas (sin flechas, ya que la relación es bidireccional) para ligar los elementos.

Modelo E/R de Chen: http://pastebin.com/cLNqMyMg (Fig. 2)

Luego, cada atributo, posee un tipo de dato, el cual debemos definir, como por ejemplo:
NUMBER(): un numero de (N) dígitos.
VARCHAR(): una variable de caracteres de (N) espacios, este dato se comprime si no son ocupadas todas las celdas de caracter
Foreign Key
Nota: no es aconsejable usar el RUT de una persona como identificador único para un empleado (Ejemplo) porque existen
RUT DUPLICADOS

Tras esto, se realiza el Script SQL, el cual es el proceso para la creación de la tabla:
Ej:
CREATE TABLE EMPLOYEES
(ID NOMBER (6) NOT NULL,
First Name VARCHAR2 (50),
Last Name VARCHAR2 (50),
Hire Date DATE,
Salary NUMBER (8,2),
...

Hay tres enfoques para el modelado:
Top-Down (de arriba a abajo): ir de lo general, a lo particular. (Para una nueva Base de Datos)
Bottom-Up (de abajo a arriba): Partir del detalle hasta lo general (Modifica una definición de base de datos existente). Ingeniería Inversa.
Targeted: Focalizado, a base de un modelo existente, se adapta a nuevos requerimientos



CONCEPTOS DE LA CLASE:
Oracle + SQL Developer
Lenguaje Funcional
Big Data -> NoSQL

Relacional DataBase Management System: RDBMS
Sistema de Administración de Base de Datos Realcional: SABDR
Singleton: Patron de Diseño sin atributos.

No hay comentarios.:

Publicar un comentario