INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE
FUNDAMENTOS DE BASE DE DATOS
En el proceso de desarrollo de sistemas informáticos, orientados a producir software
que apoye a las actividades empresariales, así como a sus procesos, se tienen que respetar
ciertas fases propias de las metodologías del análisis de información, de la metodología de
procesos de negocios (IDEF) hoy en día se emplea la metodología orientada a objetos, sin
embargo, para el desarrollo de software es primordial el manejo del análisis y diseño de
sistemas, para el análisis tenemos herramientas de recopilación de información, mientras que
para la fase de diseño de sistemas, tenemos las llamadas herramientas ‘CASE’, que son el
apoyo informático de todo diseñador de sistemas para plasmar todo el análisis de
requerimientos previos en diagramas, conocidos como ‘MODELOS’, la herramientas de diseño
de sistemas más empleado es el Platinum Erwin, que es la que emplearemos para el curso.
INTRODUCCION A DBMS
DEFINICIONES BASICAS
Modelamiento y Diseño de Base de Datos Página 1
INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE
Una Base de Datos es un contenedor de objetos como tablas, vistas, procedimientos,
etc., almacenados en una plataforma denominada Sistema Gestor de Base de Datos, viene a
ser un servidor como SQL Server, Oracle, DB2, MySQL, etc. Dicho de otra forma, una base de
datos contiene las tablas y componentes sobre las que se almacenada información de todos
los procesos del negocio. Y nos permite generar información y ser compartida por distintos
usuarios.
El DBMS es el software que almacenará nuestra base de datos, por la cual es la que nos va a
permitir acceder a la información por medio de lenguajes como SQL. Tienen la capacidad de
responder a múltiples usuarios en forma concurrente a los datos, lo que se llama ‘Arquitectura
Cliente – Servidor’.
DBMS: Database Managment System (Sistema Administrador de Base de datos)
CARATERISTICAS
Escalabilidad: Se refiere de la organización, mejorando su performance.
- Horizontal: Crecimiento de los usuarios.
- Vertical: Se refiere al crecimiento del servidor de datos.
Rendimiento: Característica de brindar respuestas a los múltiples requerimientos de los
usuarios como consultas, actualización, recuperación de datos, etc.
Portabilidad: Característica de transportar con facilidad el producto de una plataforma a
otra incluyendo toda la data contenida.
Universalidad: Característica de manejar múltiples tipos de datos como caracteres,
numéricos, de fecha, multimedia, etc.
Disponibilidad: Debe ser permanente e ininterrumpida, factor crucial del servicio de la
base de datos que da apoyo a las aplicaciones (programas) de los negocios.
IMPORTANCIA DE LOS DBMS
Se tiene que elegir el que tenga la mejor interfaz a las necesidades de la empresa y
sobre todo que este apta para la base de datos que vayamos a utilizar.
El objetivo es crear un ambiente en el que sea posible almacenar, manipular y recuperar la
información en forma oportuna y eficiente.
El administrador de base de datos o servidor de base de datos conocido como sistema de
administración de base de datos (DBMS) maneja todas las solicitudes de acceso a la base de
datos ya sea para agregar y eliminar archivos, recuperar y almacenar datos desde y en dichos
archivos. Por lo tanto, una función general que ofrece el DBMS consiste en ocultar a los
usuarios de la base de datos los detalles al nivel de hardware. Es decir, que el DBMS ofrece a
los usuarios una percepción de la base de datos que está en cierto modo, por encima del nivel
del hardware y que maneja las operaciones del usuario expresadas en términos de ese nivel
más alto de percepción.
Modelamiento y Diseño de Base de Datos Página 2
INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE
El DBMS es el componente de software más importante del sistema en general, aunque no es
el único.
ALCANCES
El alcance de una Base de Datos abarca varios aspectos como:
- Los usuarios que podrán tener acceso a los datos almacenados, por medio de
permisos otorgados por el Administrador de BD (DBA).
- Desde dónde (terminal de usuario) y cómo accederán a la BD, para ello se impondrán
restricciones a los accesos de usuarios.
- Hasta donde y sobre todo a qué tipo de información tendrán acceso los usuarios
registrados.
ADMINISTRACION DE BASE DE DATOS
El administrador de datos (DA) es la persona identificable que tendrá la responsabilidad
central sobre los datos dentro de la empresa. Ya que los datos son uno de los activos más
valiosos de la empresa, es imperativo que exista una persona que los entienda junto con las
necesidades de la empresa con respecto a esos datos, a un nivel de administración superior.
Por lo tanto, es labor del administrador decidir en primer lugar qué datos deben ser
almacenados en la base de datos y establecer políticas para mantener y manejar esos datos
una vez almacenados. El administrador de base de datos (DBA) es el técnico responsable de
implementar las decisiones del administrador de datos. Por lo tanto, debe ser un profesional en
IT. El trabajo del DBA consiste en crear la base de datos real e implementar los controles
técnicos necesarios para hacer cumplir las diversas decisiones de las políticas hechas por el
DA. El DBA también es responsable de asegurar que el sistema opere con el rendimiento
adecuado y de proporcionar una variedad de otros servicios técnicos.
USUARIOS
Existen tres grandes clases de usuarios:
Programadores de aplicaciones, que son los responsables de escribir los programas de
aplicación de base de datos en algún lenguaje de programación. Estos programas
acceden a la base de datos emitiendo la solicitud apropiada al DBMS. Los programas
en sí pueden ser aplicaciones convencionales por lotes o pueden ser aplicaciones en
línea, cuyo propósito es permitir al usuario final el acceso a la base de datos desde una
estación de trabajo o terminal en línea.
Los usuarios finales, quienes interactúan con el sistema desde estaciones de trabajo o
terminales en línea. Un usuario final puede acceder a la base de datos a través de las
aplicaciones en línea, o bien puede usar una interfaz proporcionada como parte integral
del software del sistema de base de datos. Las interfaces proporcionadas por el
fabricante están apoyadas también por aplicaciones en línea, aunque esas
aplicaciones están integradas, es decir, no son escritas por el usuario. La mayoría de
Modelamiento y Diseño de Base de Datos Página 3
INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE
los sistemas de base de datos incluyen por lo menos una de estas aplicaciones integradas.
La mayoría de los sistemas proporcionan además interfaces integradas adicionales en
las que los usuarios no emiten en absoluto solicitudes explícitas a la base de datos,
sino que en vez de ello operan mediante la selección de elementos en un menú o
llenando casillas de un formulario. Estas interfaces controladas por menús o por
formularios tienden a facilitar el uso a personas que no cuentan con una capacitación
formal en tecnología de la información (IT). En contraste, las interfaces controladas por
comandos tienden a requerir cierta experiencia profesional en IT, aunque tal vez no
demasiada. Por otra parte, es probable que una interfaz controlada por comandos sea
más flexible que una controlada por menús o por formularios, dado que los lenguajes
de consulta por lo regular incluyen ciertas características que no manejan esas otras
interfaces.
El administrador de base de datos o DBA.
Algunos usuarios son:
- Jefes de proyecto.
- Analistas de sistemas.
- Analistas programadores.
- Programadores.
- Diseñadores de sistemas.
ADMINISTRADOR DE BASE DE DATOS
Es el profesional informático responsable de diseñar la estructura de la base de datos, así
como del mantenimiento y seguridad tanto de la información como del servidor de datos. Su
denominación es DBA (Database Administrator), entre sus funciones principales tenemos:
- Definición de la estructura de tablas, y componentes.
- Asignación y administración de permisos de acceso a los usuarios.
- Responsable de la seguridad de toda la información, por medio de copias de seguridad de
datos (backups).
- Administrar la estructura de la Base de Datos
- Administrar la actividad de los datos
- Administrar el Sistema Manejador de Base de Datos
- Establecer el Diccionario de Datos
- Asegurar la confiabilidad de la Base de Datos
- Confirmar la seguridad de la Base de Datos
- Asegurar una óptima performance de la organización de los datos.
Detallemos algunos de ellos:
Administración de la estructura de la Base de Datos
La administración de la estructura de la Base de Datos incluye participar en el diseño inicial de la
misma y su puesta en práctica así como controlar, y administrar sus requerimientos,
Modelamiento y Diseño de Base de Datos Página 4
INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE
ayudando a evaluar alternativas, incluyendo los DBMS a utilizar y ayudando en el diseño
general de BD. En los casos de grandes aplicaciones de tipo organizacional, el DBA es un
gerente que supervisa el trabajo del personal de diseño de la BD.
Una vez diseñada la BD, es puesta en práctica utilizando productos del DBMS, procediéndose
entonces a la creación de los datos (captura inicial). El DBA participa en el desarrollo de
procedimientos y controles para asegurar la calidad y la alta integridad de la BD
Administración de la actividad de datos
Aunque el DBA protege los datos, no los procesa. El DBA no es usuario del sistema, en
consecuencia, no administra valores de datos; el DBA administra actividad de datos. Dado que
la BD es un recurso compartido, el DBA debe proporcionar estándares, guías de acción,
procedimientos de control y la documentación necesaria para garantizar que los usuarios
trabajan en forma cooperativa y complementaria al procesar datos en la BD.
Entre las alternativas más utilizadas por el DBA para tratar de resolver o minimizar este
problema se encuentran las siguientes:
a) Restringir el acceso a los procedimientos para ciertos usuarios.
b) Restringir al acceso a los datos para ciertos usuarios procedimientos y/o datos.
c) Evitar la coincidencia de horarios para usuarios que comparten.
Administración del DBMS
A demás de administrar la actividad de datos y la estructura de la BD, el DBA debe administrar
el DBMS mismo. Deberá compilar y analizar estadísticas relativas al rendimiento del sistema e
identificar áreas potenciales del problema. Dado que la BD está sirviendo a muchos grupos de
usuarios, el DBA requiere investigar todas las quejas sobre el tiempo de respuesta del sistema,
la precisión de los datos y la facilidad de uso. Si se requieren cambios el DBA deberá
planearlos y ponerlos en práctica.
El DBA deberá vigilar periódica y continuamente las actividades de los usuarios en la BD. Los
productos DBMS incluyen tecnologías que reúnen y publican estadísticas. Estos informes
pudieran indicar cuáles fueron los usuarios activos, que archivos y que elementos de datos han
sido utilizados, e incluso el método de acceso que se ha aplicado. Pueden capturarse y
reportarse las tasas de error y los tipos de errores. El DBA analizará estos datos para
determinar si se necesita una modificación en el diseño de la BD para manejar su rendimiento
o para facilitar las tareas de los usuarios; de ser así, el DBA la llevará a cabo.
Establecer el Diccionario de Datos.
Cuando se definen estándares sobre la estructura de la base de datos, se deben de
registrarse en una sección del diccionario de datos a la que todos aquellos usuarios
relacionados con ese tipo de proceso pueden acceder. Este metadato debe precisar
información que nos indique con claridad el tipo de datos que serán utilizados, sus ámbitos de
influencia y sus limitantes de seguridad.
Modelamiento y Diseño de Base de Datos Página 5
INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE
Mantener la Disponibilidad de los Datos.
La posibilidad de fallos de hardware o de software requiere procedimientos de recuperación de
la base de datos. Tiene que proporcionar medios para el restablecimiento de las bases de
datos que se hayan corrompido por desperfectos del sistema, a un estado uniforme.
REPRESENTACION DE LA INFORMACION
NIVELES DE LA INFORMACION
Está diseñado en base a la Arquitectura ANSI (American National Standards Institute),
comprende de tres niveles de datos, cuyo objetivo es la de separar los programas de aplicación
de la base de datos física, éstos niveles en realidad son descripciones de los mismos datos
pero con distintos niveles de abstracción (acceso), los únicos datos que realmente existen
están en el nivel físico, pero es importante especificar qué tipos de usuarios y en qué nivel de
acceso se encuentran disponibles para el manejo de la información.
ESQUEMA DE LA ARQUITECTURA ANSI
Usuario N
Usuario 1
NIVEL EXTERNO VISTAS
(CONCEPTUAL) INTERFACES
MODELOS
NIVEL LOGICO
(DISEÑO)
ALMACENAMIENTO
FISICO
NIVEL INTERNO
(FISICO)
NIVEL EXTERNO (Conceptual)
Describe una parte de la base de datos que interesa a un grupo de usuarios y ocultándola a
otro de grupo de usuarios, aquí se encuentran las vistas (interfaces), que será el único medio
Modelamiento y Diseño de Base de Datos Página 6
INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE
de acceso de estos usuarios hacia la información almacenada en el servidor de datos (el
DBMS).
Ejemplo: A través de un formulario de acceso, el usuario podrá acceder al sistema.
NIVEL LOGICO (Diseño)
Es aquel nivel que describe la estructura de la base de datos, realizada en la fase de diseño
del sistema, satisface los requerimientos de los usuarios, se representa mediante un modelo de
datos, ocultando los detalles de almacenamiento físico.
NIVEL INTERNO (Físico)
Este nivel describe la estructura física de almacenamiento de la base de datos, aquí se
encuentra realmente los únicos datos existentes, es decir, la BD.
BD
Expliquemos a mayor profundadida…
Arquitectura ANSI
Modelamiento y Diseño de Base de Datos Página 7
INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE
La arquitectura de sistemas de bases de datos de tres esquemas fue aprobado por la ANSI-
SPARC (American National Standard Institute - Standards Planning and Requirements
Committee) en 1975 como ayuda para conseguir la separación entre los programas de
aplicación y los datos, el manejo de múltiples vistas por parte de los usuarios y el uso de un
catálogo para almacenar el esquema de la base de datos.
- Nivel interno: Tiene un esquema interno que describe la estructura física de
almacenamiento de base de datos. Emplea un modelo físico de datos y los únicos
datos que existen están realmente en este nivel.
- Nivel conceptual: tiene esquema conceptual. Describe la estructura de toda la base de
datos para una comunidad de usuarios. Oculta los detalles físicos de almacenamiento y
trabaja con elementos lógicos como entidades, atributos y relaciones.
- Nivel externo o de vistas: tiene varios esquemas externos o vistas de usuario. Cada
esquema describe la visión que tiene de la base de datos a un grupo de usuarios,
ocultando el resto.
El objetivo de la arquitectura de tres niveles es el de separar los programas de aplicación de la
base de datos física. La mayoría de los SGBD no distinguen del todo los tres niveles. Algunos
incluyen detalles del nivel físico en el esquema conceptual. En casi todos los SGBD que se
manejan vistas de usuario, los esquemas externos se especifican con el mismo modelo de
datos que describe la información a nivel conceptual, aunque en algunos se pueden utilizar
diferentes modelos de datos en los niveles conceptuales y externo.
Hay que destacar que los tres esquemas no son más que descripciones de los mismos datos
pero con distintos niveles de abstracción. Los únicos datos que existen realmente están a nivel
físico, almacenados en un dispositivo como puede ser un disco. En un SGBD basado en la
arquitectura de tres niveles, cada grupo de usuarios hace referencia exclusivamente a su
propio esquema externo. Por lo tanto, el SGBD debe transformar cualquier petición expresada
en términos de un esquema externo a una petición expresada en términos del esquema
conceptual, y luego, a una petición en el esquema interno, que se procesará sobre la base de
datos almacenada. Si la petición es de una obtención (consulta) de datos, será preciso
modificar el formato de la información extraída de la base de datos almacenada, para que
coincida con la vista externa del usuario. El proceso de transformar peticiones y resultados de
un nivel a otro se denomina correspondencia o transformación. Estas correspondencias
pueden requerir bastante tiempo, por lo que algunos SGBD no cuentan con vistas externas.
La arquitectura de tres niveles es útil para explicar el concepto de independencia de datos que
podemos definir como la capacidad para modificar el esquema en un nivel del sistema sin tener
que modificar el esquema del nivel inmediato superior.
Modelamiento y Diseño de Base de Datos Página 8
INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE
Otra vista de los niveles de datos según la Arquitectura Ansi.
NIVELES DE CORRESPONDENCIA
Hay 2 niveles de correspondencias, uno entre los niveles externo y conceptual del
sistema, y otro entre los niveles conceptual e interno.
La correspondencia conceptual / interna es la que existe entre la vista conceptual y la BD
almacenada; especifica cómo se representan los registros y campos conceptuales en el nivel
interno. Si se modifica la estructura de la BD almacenada deberá modificarse para que no varíe
(DBA). Los efectos de las alteraciones deberán aislarse por debajo del nivel conceptual, a fin
de conservar la independencia de los datos.
La correspondencia externo / conceptual es la que existe entre una determinada vista
externa y la vista conceptual. Las diferencias que pueden existir entre éstos 2 niveles son
similares a las que pueden existir entre la vista conceptual y la BD almacenada. Puede existir
cualquier cantidad de vistas externas; cualquier número de usuarios puede compartir una
determinada vista externa; puede haber traslapos entre vistas externas distintas.
Algunos sistemas permiten expresar la definición de una vista externa en términos de otras a
través de una correspondencia externa / externa en vez de requerir siempre una definición
explicita de la correspondencia respecto al nivel conceptual, cosa que resulta útil si existe una
relación intima entre varias visitas externas. Los sistemas relacionales en particular casi
siempre permiten hacer esto.
Modelamiento y Diseño de Base de Datos Página 9
INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE
LABORATORIO # 1
CONOCIENDO LOS SGBDR
SISTEMA GESTOR DE BASE DE DATOS RELACIONAL (SGDBR).
Software que gestiona el uso de las bases de datos relacionales, y optimiza y controla el
acceso al contenido de las mismas.
El almacenamiento físico de los datos se gestiona únicamente a través del gestor. El
usuario sólo debe preocuparse de la estructura lógica de los mismos.
La manipulación de la estructura y contenido de una base de datos relacional se realiza
mediante el lenguaje SQL (Structured Query Language).
SGBDRs existentes son: SQL Server, PostgreSQL, MySQL, Oracle, Sybase, DB2,
Access, Informix, etc...
USUARIOS DE UNA BASE DE DATOS
Los usuarios de una base de datos no están relacionados con los usuarios del sistema.
Al igual que en un sistema informático, existe la figura del administrador. En casi todos
los SGBDRs el administrador
de una base de datos no tiene por qué ser el administrador del sistema.
Modelamiento y Diseño de Base de Datos Página 10
INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE
Un administrador crea los usuarios, y les otorga o deniega privilegios (operaciones que
pueden realizar).
Un privilegio es: crear, modificar o borrar una tabla; consultar, insertar, borrar o
modificar los datos de una tabla; consultar o crear una vista; crear usuarios o grupos;
otorgar privilegios; etc...
VEAMOS ALGUNOS DE ELLOS BREVEMENTE…
MICROSOFT SQL SERVER
Microsoft SQL Server constituye la alternativa de Microsoft a
otros potentes sistemas gestores de bases de datos como
son Oracle, Sybase ASE, PostgreSQL, Interbase, Firebird o
MySQL.
CARACTERÍSTICAS DE MICROSOFT SQL SERVER
Escalabilidad, estabilidad y seguridad.
Soporta procedimientos almacenados.
Incluye también un potente entorno gráfico de administración, que permite el uso de
comandos DDL y DML gráficamente.
Permite trabajar en modo cliente-servidor, donde la información y datos se alojan en el
servidor y las terminales o clientes de la red sólo acceden a la información.
Además permite administrar información de otros servidores de datos.
Este sistema incluye una versión reducida, llamada MSDE con el mismo motor de base
de datos pero orientado a proyectos más pequeños, que en sus versiónes 2005 y 2008
pasa a ser el SQL Express Edition, que se distribuye en forma gratuita.
Es común desarrollar completos proyectos complementando Microsoft SQL Server y
Microsoft Access a través de los llamados ADP (Access Data Project). De esta forma
se completa la base de datos (Microsoft SQL Server), con el entorno de desarrollo
(VBA Access), a través de la implementación de aplicaciones de dos capas mediante el
uso de formularios Windows.
En el manejo de SQL mediante líneas de comando se utiliza el SQLCMD
Para el desarrollo de aplicaciones más complejas (tres o más capas), Microsoft SQL
Server incluye interfaces de acceso para varias plataformas de desarrollo, entre ellas
.NET, pero el servidor sólo está disponible para Sistemas Operativos Windows.
LO NUEVO DE SQL SERVER 2008
Modelamiento y Diseño de Base de Datos Página 11
INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE
La nueva base de datos contiene mayor seguridad, integración con PowerShell, remueve La
consola configuración del área expuesta (consola para configurar seguridad), tiene correctores
de sintaxis del lenguaje Transact-SQL e intellisence (una carácteristica del visual studio que
permite a la base de datos sugerir objetos existentes mientras uno escribe la mitad de la
palabra). Así mismo incluye nuevos tipos de datos y funciones....
ORACLE
Oracle es un sistema de gestión de base de datos
relacional (o RDBMS por el acrónimo en inglés de
Relational Data Base Management System),
desarrollado por Oracle Corporation.
Modelamiento y Diseño de Base de Datos Página 12
INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE
Se considera a Oracle como uno de los sistemas de bases de datos más completos,[cita
requerida] destacando:
soporte de transacciones.
estabilidad.
escalabilidad.
Soporte multiplataforma.
Ha sido criticada por algunos especialistas la seguridad de la plataforma, y las políticas de
suministro de parches de seguridad, modificadas a comienzos de 2005 y que incrementan el
nivel de exposición de los usuarios. En los parches de actualización provistos durante el primer
semestre de 2005 fueron corregidas 22 vulnerabilidades públicamente conocidas, algunas de
ellas con una antigüedad de más de 2 años.
Aunque su dominio en el mercado de servidores empresariales ha sido casi total hasta hace
poco, recientemente sufre la competencia del Microsoft SQL Server de Microsoft y de la oferta
de otros RDBMS con licencia libre como PostgreSQL, MySql o Firebird. Las últimas versiones
de Oracle han sido certificadas para poder trabajar bajo GNU/Linux.
MySQL
MySQL es un sistema de gestión de base de datos relacional, multihilo y multiusuario con más
de seis millones de instalaciones.[1] MySQL AB —desde enero de 2008 una subsidiaria de Sun
Microsystems y ésta a su vez de Oracle Corporation desde abril de 2009— desarrolla MySQL
como software libre en un esquema de licenciamiento dual.
Por un lado se ofrece bajo la GNU GPL para cualquier uso compatible con esta licencia, pero
para aquellas empresas que quieran incorporarlo en productos privativos deben comprar a la
empresa una licencia específica que les permita este uso. Está desarrollado en su mayor parte
en ANSI C.
Al contrario de proyectos como Apache, donde el software es desarrollado por una comunidad
pública y el copyright del código está en poder del autor individual, MySQL es propietario y
está patrocinado por una empresa privada, que posee el copyright de la mayor parte del código.
Esto es lo que posibilita el esquema de licenciamiento anteriormente mencionado. Además de
la venta de licencias privativas, la compañía ofrece soporte y servicios. Para sus operaciones
contratan trabajadores alrededor del mundo que colaboran vía Internet. MySQL AB fue fundado
por David Axmark, Allan Larsson y Michael Widenius.
MySQL es muy utilizado en aplicaciones web,
como Drupal o phpBB, en plataformas
(Linux/Windows-Apache-MySQL-
PHP/Perl/Python), y por herramientas de
seguimiento de errores como Bugzilla. Su
popularidad como aplicación web está muy
ligada a PHP, que a menudo aparece en
combinación con MySQL. MySQL es una base
de datos muy rápida en la lectura cuando utiliza
el motor no transaccional MyISAM, pero puede
provocar problemas de integridad en entornos
de alta concurrencia en la modificación. En
aplicaciones web hay baja concurrencia en la
modificación de datos y en cambio el entorno es
Modelamiento y Diseño de Base de Datos Página 13
INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE
intensivo en lectura de datos, lo que hace a MySQL ideal para este tipo de aplicaciones. Sea
cual sea el entorno en el que va a utilizar MySQL, es importante adelantar monitoreos sobre el
desempeño para detectar y corregir errores tanto de SQL como de programación.
DB2
DB2 es una marca comercial, propiedad de IBM, bajo la cual se comercializa un sistema de
gestión de base de datos.
DB2 versión 9 es un motor de base de datos relacional que integra XML de manera nativa, lo
que IBM ha llamado pureXML, que permite almacenar documentos completos dentro del tipo
de datos xml para realizar operaciones y búsquedas de manera jerárquica dentro de éste, e
integrarlo con búsquedas relacionales.
DB2 Express-C es la versión gratuita soportada por la comunidad de DB2 que permite
desarrollar, implementar y distribuir aplicaciones que no usen las características avanzadas de
las versiones comerciales de DB2. Esta versión de DB2 puede ser concebida como el núcleo
de DB2, las diferentes ediciones incluyen las características de Express-C más funcionalidades
específicas.
CARACTERISTICAS
Permite el manejo de objetos grandes (hasta 2 GB), la definición de datos y funciones
por parte del usuario, el chequeo de integridad referencial, SQL recursivo, soporte
multimedia: texto, imágenes, video, audio; queries paralelos, commit de dos fases,
backup/recuperación on−line y offline.
Además cuenta con un monitor gráfico de performance el cual posibilita observar el
tiempo de ejecución de una sentencia SQL y corregir detalles para aumentar el
rendimiento.
Mediante los extensores se realiza el manejo de los datos no tradicionales, por ejemplo
si tengo un donde tengo almacenados los curriculums de varias personas, mediante
este puedo realizar búsquedas documentos con los datos que me interesen sin tener
que ver los CV uno por uno.
Esta capacidad se utiliza en sistemas de búsqueda de personas por huellas digitales,
en sistemas información geográfica, etc.
Internet es siempre la gran estrella, con DB2 es posible acceder a los datos usando
JDBC (tan potente como escribir directamente C contra la base de datos), Java y SQL
(tanto el SQL estático, como complementa el SQL dinámico).
PLATAFORMAS HOST:
OS/390(MVS), VM & VSE, OS/400
PLATAFORMAS DE SERVIDOR:
OS/2 Warp Server, Sinix, SCO Openserver, Windows NT, Aix, HP Ux, Solaris.
PLATAFORMAS CLIENTE:
OS/2, DOS, Sinix, SCO OpenServer, Windows 3.1/95/NT, Macintosh System 7, Aix, HP
Ux, Solaris.
Modelamiento y Diseño de Base de Datos Página 14
INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE
VENTAJAS
Permite agilizar el tiempo de respuestas de esta consulta
Recuperación utilizando accesos de sólo índices.
Predicados correlacionados.
Tablas de resumen
Tablas replicadas
Uniones hash
DB2 utiliza una combinación de seguridad externa y control interno de acceso a
proteger datos.
DB2 proporciona un juego de datos de acceso de las interfaces para los diferentes
tipos de usuarios y aplicaciones.
DB2 guarda sus datos contra la pérdida, acceso desautorizado, o entradas inválidas.
Usted puede realizar la administración de la DB2 desde cualquier puesto de trabajo.
La tecnología de replicación heterogénea (heterogeneous replication) en SQL Server
permite la publicación automática de los datos en otros sistemas que no sean SQL
Server, entre los que se incluyen DB2.
La mayoría de los que utilizan equipos IBM utilizan DB2 porque es confiable y tiene un
muy buen soporte técnico".
El DB2 se basa en dos ejes que lo hacen fuerte en su rendimiento: utiliza un sistema
multiprocesador (SMP) simétrico y un sistema de procesador paralelo masivo.
el DB2 distribuye y recuerda la ubicación de cada pista donde se encuentra la
información. En el contexto de una larga base de datos, este sistema de partición hace
que la administración sea mucho más fácil de manejar que una base de datos de la
misma medida no particionada.
La base de datos se puede programar para tener una exacta cantidad de particiones
que contienen la información del usuario, índice, clave de transacción y archivos de
configuración. De esta forma, los administradores definen grupos de nodos, que son
una serie de particiones de la base, lo que posteriormente facilita cualquier búsqueda.
DESVENTAJAS
El DB2 - IBM es la tercera base de datos que más se vende, de acuerdo con los VARs
recientemente encuestados en el número de junio de 1996 de la revista VAR Business
Magazine. El Microsoft SQL Server se anotó un 38%, Oracle, 21%, IBM, 10%,
Informix, 9%, y Sybase un 8%.
En sistemas grandes la base más usada es DB2 ya que corre en diferentes plataformas
operativas, pero en realidad, en la mayoría de los casos la decisión para optar por un
software de estas características es corporativa.
Se tiene que ver con las aplicaciones que se tienen desarrolladas y las que se van a
implementar.
Influye en la elección el hardware utilizado.
Una serie de error del sistema operativo, que cae DB2.
PostgreSQL
PostgreSQL es un sistema de gestión de base de datos relacional orientada a objetos y libre, publicado
bajo la licencia BSD.
Como muchos otros proyectos de código abierto, el desarrollo de PostgreSQL no es manejado por
una sola empresa sino que es dirigido por una comunidad de desarrolladores y
Modelamiento y Diseño de Base de Datos Página 15
INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE
organizaciones comerciales las cuales trabajan en su desarrollo. Dicha comunidad es
denominada el PGDG (PostgreSQL Global Development Group).
HERRAMIENTAS DE DISEÑO DE BD
La mayoría de las empresas se han extendido a la adquisición de herramientas CASE
(Computer Aided Software Engineering, Ingeniería Asistida por Computadora) con el fin de
automatizar los aspectos clave de todo lo que implica el proceso de desarrollo de un sistema e
incrementar su posición en el mercado competitivo. Sin embargo, en algunos se obtienen
elevados costos tanto en la adquisición de herramientas y costos de entrenamiento de
personal, como a la falta de adaptación de tal herramienta a la arquitectura de la información y
a metodologías de desarrollo utilizadas por la organización.
Por otra parte, algunas herramientas CASE no ofrecen o evalúan soluciones potenciales para
los problemas relacionados con sistemas o virtualmente no llevan a cabo ningún análisis de los
requerimientos de la aplicación. Sin embargo, CASE proporciona un conjunto de herramientas
semiautomatizadas y automatizadas que están desarrollando una cultura de ingeniería nueva
para muchas empresas. Uno de los objetivos más importante del CASE (a largo plazo) es
conseguir la generación automática de programas desde una especificación al nivel de diseño.
CA ERWIN DATA MODELER
CA ERwin Modeling Suite proporciona una automatización de las tareas de diseño, así como
funcionalidades de colaboración y optimización que permiten a los usuarios ofrecer soluciones
alineadas con el negocio que se ajusten al tiempo planificado, al presupuesto y lo más
importante, a los objetivos.
AllFusion ERwin Data Modeler automáticamente genera tablas y miles de líneas de
procedimientos almacenados y códigos disparadores para las base da datos líderes. Su
tecnología de “comparación completa” permite el desarrollo iterativo, de forma tal que los
modelos están siempre sincronizados con la base de datos del usuario. Al integrarse con
entornos de desarrollo líderes, AllFusion ERwin Data Modeler también acelera la creación de
aplicaciones centralizadas en datos.
Modelamiento y Diseño de Base de Datos Página 16
INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE
STUDIO CASE
Herramienta para el diseño de bases de datos que todo profesional de sistemas debe tener en
cuenta. Esta aplicación permite realizar Diagramas Entidad-Relación (DER) y Diagramas de Flujos
de Datos (DFD) para distintos motores de base de datos. Algunos de éstos pueden ser: Oracle,
DB2, InterBase, MS SQL, MySQL y PostgreSQL entre otros. Otra de las características importantes
es que permite realizar ingeniería inversa, o sea, a partir del modelo de tablas llegar al modelo
lógico.
Modelamiento y Diseño de Base de Datos Página 17
INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE
SYBASE POWER DESIGNER
Es un ambiente integrado de Ingeniería de Software para el análisis y diseño de entornos
empresariales, con capacidades para el modelamiento de negocios, aplicaciones, datos y
objetos, que incluyen administración de requerimientos y generación de documentación.
Sincroniza y encadena las capas y perspectivas de la Arquitectura Empresarial, permitiendo
documentar el estado actual de la organización y el impacto que genera aplicar un cambio de
manera predictiva. Sus alternativas de licenciamiento contemplan:
MODELAMIENTO DE PROCESOS DE NEGOCIO: Brinda el poder a los usuarios no técnicos
para diseñar y modelar procesos en términos reales del negocio, usando un modelo simple,
fácil de usar, altamente gráfico y no técnico. Soporta a la interpretación y generación de
documentos XML.
MODELAMIENTO DE DATOS: Facilita el diseño y generación del esquema de la base de
datos a través de un modelamiento de Bases de Datos Relacionales y/o Bodega de Datos de
dos niveles (conceptual y físico). También permite la Ingeniería reversa de bases de datos vía
ODBC o desde archivos SQL.
MODELAMIENTO DE OBJETOS: Complementa el análisis y el diseño usando métodos y
diagramas basados en el estándar UML. A partir de un diagrama de clases, automáticamente
genera y realiza ingeniería reversa a través de un generador personalizable.
MODELAMIENTO XML: Este modelo contiene una interfaz gráfica para representar la
estructura de documentos XML, facilitando la visualización de los mismos a través de
diagramas.
REPOSITORIO EMPRESARIAL: Permite visualizar y compartir modelos y otra información en
la organización. Soporta seguridad basada en roles, control de versiones, búsqueda y
generación de reportes.
Modelamiento y Diseño de Base de Datos Página 18
INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE
Modelamiento y Diseño de Base de Datos Página 19