jueves, 15 de diciembre de 2011

SEMANA 19

APlicacion del Alumno

SEMANA 18


Open Database Connectivity

Open DataBase Connectivity (ODBC) es un estándar de acceso a bases de datos desarrollado 
por SQL Access Group en 1992, el objetivo de ODBC es hacer posible el acceder a cualquier dato 
desde cualquier aplicación, sin importar qué sistema de gestión de bases de datos (DBMS) almacene
 los datos, ODBC logra esto al insertar una capa intermedia (CLI) denominada nivel de Interfaz de
 Cliente SQL, entre la aplicación y el DBMS, el propósito de esta capa es traducir las consultas de 
datos de la aplicación en comandos que el DBMS entienda. Para que esto funcione tanto la aplicación 
como el DBMS deben ser compatibles con ODBC, esto es que la aplicación debe ser capaz de
 producir comandos ODBC y el DBMS debe ser capaz de responder a ellos. Desde la versión 2.0 el
 estándar soporta SAG y SQL.
El software funciona de dos modos, con un software manejador en el cliente, o una filosofía
 cliente-servidor. En el primer modo, el driver interpreta las conexiones y llamadas SQL y las traduce
 desde el API ODBC hacia el DBMS. En el segundo modo para conectarse a la base de datos se
 crea una DSN dentro del ODBC que define los parámetros, ruta y características de la conexión
 según los datos que solicite el creador o fabricante.
Java Database Connectivity (JDBC) es un derivado inspirado en el mismo, una
 interfaz de programación de aplicaciones que permite la ejecución de operaciones sobre bases
 de datos desde el lenguaje de programación Java independientemente del sistema operativo donde
 se ejecute o de la base de datos a la cual se accede utilizando el dialecto SQL del modelo de base
 de datos que se utilice.

CONCEPTOS DE ODBC
ODBC es una interfaz de nivel de llamada que permite que las aplicaciones tengan acceso a los
 datos de cualquier base de datos en la que haya un controlador ODBC. La utilización de ODBC
 permite crear aplicaciones de base de datos con acceso a cualquier base de datos en la que el usuario
 final tenga un controlador ODBC. ODBC proporciona una API que permite que la aplicación sea
 independiente del sistema de administración de bases de datos (DBMS) de origen.

ODBC es la parte de base de datos de la Arquitectura de servicios abiertos de Microsoft Windows
 (WOSA), una interfaz que permite que las aplicaciones de escritorio basadas en Windows se 
conecten a varios entornos de computación sin tener que volver a crear la aplicación para cada plataforma.

A continuación se incluyen componentes de ODBC:
  • API de ODBC
    Biblioteca de llamadas a funciones, conjunto de códigos de error y sintaxis de lenguaje de
     consulta estructurado (SQL) estándar para tener acceso a los datos de los DBMS.
  • Administrador de controladores ODBC
    Biblioteca de vínculos dinámicos (Odbc32.dll) que carga controladores de bases de datos
     ODBC en nombre de una aplicación. Esta DLL es transparente a la aplicación.
  • Controladores de bases de datos ODBC
    Biblioteca o bibliotecas DLL que procesan llamadas a funciones ODBC para DBMS específicos.
     Para obtener una lista de los controladores proporcionados, vea Lista de controladores ODBC.
  • Biblioteca de cursores ODBC
    Biblioteca de vínculos dinámicos (Odbccr32.dll) que se encuentra entre el Administrador de 
    controladores ODBC y los controladores, y que controla el desplazamiento por los datos.
  • Administrador de ODBC
    Herramienta utilizada para configurar un DBMS de modo que quede disponible como origen de
     datos de una aplicación.
Para que una aplicación sea independiente de los DBMS tiene que trabajar a través de un controlador
 ODBC creado específicamente para un DBMS, en lugar de trabajar directamente con el DBMS. El 
controlador convierte las llamadas en comandos que el DBMS correspondiente puede utilizar, con lo 
que se simplifica el trabajo del desarrollador, y hace que esté disponible para una amplia gama de 
orígenes de datos.
Las clases de base de datos admiten cualquier origen de datos para el que se tenga un controlador
 ODBC. Entre ellos se puede incluir, por ejemplo, una base de datos relacional, una base de datos 
de método de acceso secuencial indizado (ISAM), una hoja de cálculo de Microsoft Excel o un 
archivo de texto. Los controladores ODBC administran las conexiones al origen de datos y se utiliza
 SQL para seleccionar los registros de la base de datos.
Vea Lista de controladores ODBC para obtener una lista de los controladores ODBC incluidos en
 esta versión de Visual C++ e información sobre cómo obtener controladores adicionales.



SEMANA 17


ERwin:
PLATINUM ERwin es una herramienta para el diseño de base de datos, que Brinda productividad en su diseño, generación, y mantenimiento de aplicaciones. Desde un modelo lógico de los requerimientos de información, hasta el modelo físico perfeccionado para las características específicas de la base de datos diseñada, además ERwin permite visualizar la estructura, los elementos importantes, y optimizar el diseño de la base de datos. Genera automáticamente las tablas y miles de líneas de stored procedure y triggers para los principales tipos de base de datos.
ERwin hace fácil el diseño de una base de datos. Los diseñadores de bases de datos sólo apuntan y pulsan un botón para crear un gráfico del modelo E-R (Entidad _ relación) de todos sus requerimientos de datos y capturar las reglas de negocio en un modelo lógico, mostrando todas las entidades, atributos, relaciones, y llaves importantes.
La migración automática garantiza la integridad referencial de la base de datos. ERwin establece una conexión entre una base de datos diseñada y una base de datos, permitiendo transferencia entre ambas y la aplicación de ingeniería reversa. Usando esta conexión, ERwin genera automáticamente tablas, vistas, índices, reglas de integridad referencial (llaves primarias, llaves foráneas), valores por defecto y restricciones de campos y dominios.
ERwin soporta principalmente bases de datos relacionales SQL y bases de datos que incluyen OracleMicrosoft SQL Server, Sybase. El mismo modelo puede ser usado para generar múltiples bases de datos, o convertir una aplicación de una plataforma de base de datos a otra.
Software para Aplicaciones Compatibles:
* NetDynamics
* PowerBuilder
* PROGRESS
* Visual Basic
Bases de Datos Compatibles:
* CA-Clipper * CA-OpenIngres
* DB2 for MVS * DB2 for OS/390,
* DB2 UDB * dBASE
FoxPro * HiRDB,
* Informix * InterBase,
* Microsoft Access * Microsoft SQL Server,
* Oracle * Paradox,
* Rdb * red Brick Warehouse,
* SAS * SQL Anywhere,
* SQLBase * Sybase,
* Teradata
Sistemas Operativos Compatibles:
Windows NT
* Windows 95
* Windows 98
Requerimientos Técnicos:
Mínimo 10 MB de espacio de disco duro, 16 MB RAM (32 MB RAM recomendado para modelos largos.)

PowerDesigner

La Herramienta Líder en Modelamiento Empresarial
PowerDesigner, la herramienta de modelamiento número uno de la industria, permite a las empresas, de manera más fácil, visualizar, analizar y manipular metadatos, logrando un efectiva arquitectura empresarial de información.
PowerDesigner para Arquitectura Empresarial también brinda un enfoque basado en modelos, el cual permite alinear al negocio con la tecnología de información, facilitando la implementación de arquitecturas efectivas de información empresarial. Brinda potentes técnicas de análisis, diseño y gestión de metadatos a la empresa.
PowerDesigner combina varias técnicas estándar de modelamiento con herramientas líder de desarrollo, como .NET, Sybase WorkSpace, Sybase Powerbuilder, Java y Eclipse, para darle a las empresas soluciones de análisis de negocio y de diseño formal de base de datos. Además trabaja con más de 60 bases de datos relacionales.

SEMANA 16

CASOS PRACTICOS

SEMANA 15

Aplicacion del alumno

SEMANA 14


Cuarta Forma Normal o 4FN:

Existe dependencia funcional multivalorada o de múltiples valores si, dados tres atributos de una tabla, si para cada valor del primer atributo existen múltiples valores en el segundo atributo y no hay ninguna relación entre el tercer atributo y el primero, a no ser a través del segundo atributo.
Una tabla está en Cuarta Forma Normal o 4FN si está en FNBC y las únicas dependencias funcionales multivaloradas que existen son las dependencias funcionales de la clave con los atributos que no forman parte de la misma. Estas dependencias multievaluadas de la clave con los atributos que no forman parte de la misma son dependencias triviales, por lo que algunos autores dicen que no existen dependencias multievaluadas en 4FN.
Supongamos que los atributos de la tabla transporte son conductor, tipo de vehículo y tipo de carga, formando los tres campos la clave primaria. A cada conductor se le puede asignar un vehículo u otro y cada vehículo puede transportar varios tipos de carga.
Transporte
ConductorTipo VehículoTipo Carga
JuanFurgonetaPerecederos
MarcosFurgonetaPerecederos
JuanFurgonetaMuebles
MarcosFurgonetaMuebles
JuanCamiónMudanza
MarcosCamiónMudanza
Con estas condiciones, los conductores son independientes de la carga; el tipo de vehículos depende del conductor y el tipo de vehículo depende de la carga. En este caso hay dependencias funcionales multivaloradas, ya que algunos atributos que forman la clave dependen de otro atributo que también la forman.
Para conseguir que esta tabla esté en 4FN se necesita crear dos nuevas tablas en lugar de la tabla actual, manteniendose en cada una de ellas una dependencia múltiple. La primera tabla tendrá los atributos conductor y tipo de vehículo y la segunda, tipo de vehículo y tipo de carga. De este modo la tabla en 4FN debido a que la clave primaria de ambas tablas son todos los campos que la forman. Resultado:
Tipo VehículoTipo Carga
FurgonetaPerecederos
FurgonetaPerecederos
FurgonetaMuebles
FurgonetaMuebles
CamiónMudanza
CamiónMudanza

ConductorTipo Vehículo
JuanFurgoneta
MarcosFurgoneta
JuanFurgoneta
MarcosFurgoneta
JuanCamión
MarcosCamión


Quinta Forma Normal o 5FN:

Se dice que hay dependencia de JOIN, de unión o de producto si una tabla tiene dependencia de *unión con varias de sus *proyecciones y se puede obtener la tabla por medio de la unión de dichas proyecciones.
*Proyección:
Creación de una tabla cuyos elementos forman un subconjunto de una tabla dada. Se incluyen todas las filas y algunas columnas.

*Unión:
Formar, a partir de dos tablas, una nueva con todos los campos de una de ellas y los registros de ambas, excepto los repetidos. Ambas tablas han de tener el mismo grado y las mismas columnas.
Una tabla esta en Quinta Forma Normal (5FN) o Forma Normal de Proyección-Unión si está en 4FN y las únicas dependencias que existen son las dependencias de unión de una tabla con sus proyecciones relacionándose entre las distintas proyecciones mediante la clave primaria o cualquier clave alternativa. La 5FN se emplea cuando en una misma tabla tenemos mucha información redundante, con pocos atributos o cuando una tabla posee una gran cantidad de atributos y se hace por ello inmanejable.
Para conseguir que una tabla 4FN con gran cantidad de atributos esté en 5FN, se parte la tabla original en tantas tablas como se desee, teniendo cada una de ellas en común con las demás los campos que forman la clave primaria en la tabla original.
Ejemplo para el caso de una tabla que posee una gran cantidad de atributos:
IdDatos FamiliaresDatos ProfesionalesDatos PersonalesDatos Clínicos
1D1D2D3D4D5D6D7D8D9D10D11D12
En este caso tenemos una empresa donde se guardan los datos personales, familiares, profesionales y clínicos de cada empleado en una única tabla llamada Empleados. Si esta tabla está ya en 4FN, se puede partir en las tablas empleados-personal, empleados-familia, empleados-profesional, empleados-clínicos; de este modo, la velocidad de acceso y la gestión de datos por cada departamento de la empresa se simplifica, al no tenerse que crear ningún tipo de restricción sobre determinados atributos que no han de ser vistos por el personal que no los necesite.
El resultado sería:
IdDatos Familiares
1D1D2D3

IdDatos Profesionales
1D4D5D6

IdDatos Personales
1D7D8D9

IdDatos Clínicos
1D10D11D12
Ejemplo para el caso de una tabla que posee mucha información redundante, con pocos atributos:
Biblioteca
TítuloFechaSocio
T1FTS1
T2FUS2
T3FVS1
T4FGS4
T1FHS3
T2FTS4
T3FVS3
Si se tiene una tabla de préstamo de libros de una biblioteca, con los atributos título, fecha de préstamo y número de socios que ha tomado prestado el libro, existen multitud de registros que se crean diariamente en esa tabla, pero para cada libro o para cada socio habrá pocos registros, con lo que una consulta para esa tabla como: ¿Cuáles son los libros leídos por un determinado socio?, puede tener una velocidad de respuesta elevada. Si esta tabla se parte en las tablas título-fecha, título-socio y socio-fecha, cualquier consulta similar a la anterior tendrá un tiempo de respuesta tolerable, y cuando sea necesario, se podrán realizar consultas que impliquen los datos de las tres tablas.
El resultado sería pues:
Título-Fecha
TítuloFecha
T1FT
T2FU
T3FV
T4FG
T1FH
T2FT
T3FV

Título-Socio
TítuloSocio
T1S1
T2S2
T3S1
T4S4
T1S3
T2S4
T3S3

Fecha-Socio
FechaSocio
FTS1
FUS2
FVS1
FGS4
FHS3
FTS4
FVS3
Y con esto concluyo el artículo, espero haber resuelto todas las dudas posibles sobre optimización de tablas mediante las formas normales.