79
::Universidad del Mar:: ::Universidad del Mar:: ::Campus Puerto Escondido :: ::Campus Puerto Escondido :: Tema I. Tema I. Conceptos Generales Conceptos Generales Bases de Datos I Bases de Datos I MTI Remedios Fabián Velasco MTI Remedios Fabián Velasco Ver. 1.1 Ver. 1.1 Cuarto Semestre Cuarto Semestre Licenciatura en Informática Licenciatura en Informática

Bases de Datos I. Tema I. Conceptos Generales

Embed Size (px)

DESCRIPTION

Trabajo hecho por la M.C. Remedios Fabián Velasco, docente de la Universidad del Mar, campus Puerto Escondido.

Citation preview

::Universidad del Mar:: ::Universidad del Mar:: ::Campus Puerto Escondido ::::Campus Puerto Escondido ::

Tema I. Tema I. Conceptos GeneralesConceptos Generales

Bases de Datos IBases de Datos IMTI Remedios Fabián VelascoMTI Remedios Fabián Velasco

Ver. 1.1Ver. 1.1Cuarto SemestreCuarto Semestre

Licenciatura en InformáticaLicenciatura en Informática

Bases de Datos IBases de Datos IMTI Remedios Fabián VelascoMTI Remedios Fabián Velasco

Ver. 1.1Ver. 1.1Cuarto SemestreCuarto Semestre

Licenciatura en InformáticaLicenciatura en Informática

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

SimbologíaSimbología

Concepto importanteConcepto importante

Base de DatosBase de Datos

Tarea o ejercicioTarea o ejercicio

AplicacionesAplicaciones

Tablas – Entidades - RelacionesTablas – Entidades - Relaciones Tabla 2Tabla 2

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

TemarioTemario1 Conceptos generales1 Conceptos generales1.1 Objetivos de los sistemas de base de datos.1.1 Objetivos de los sistemas de base de datos.1.2 Administración de los datos y administración de bases de datos.1.2 Administración de los datos y administración de bases de datos.1.3 Niveles de arquitectura.1.3 Niveles de arquitectura.

1.3.1 Nivel físico.1.3.1 Nivel físico.1.3.2 Nivel conceptual.1.3.2 Nivel conceptual.1.3.3 Nivel de visión.1.3.3 Nivel de visión.

1.4 Modelos de datos.1.4 Modelos de datos.1.4.1 Modelo entidad-relación.1.4.1 Modelo entidad-relación.1.4.2 Modelo relacional.1.4.2 Modelo relacional.1.4.3 Modelo de redes.1.4.3 Modelo de redes.1.4.4 Modelo jerárquico.1.4.4 Modelo jerárquico.1.4.5 Modelo orientado a objetos.1.4.5 Modelo orientado a objetos.

1.5 Independencia de los datos.1.5 Independencia de los datos.1.6 Lenguaje de definición de datos.1.6 Lenguaje de definición de datos.1.7 Lenguaje de manejos de base de datos.1.7 Lenguaje de manejos de base de datos.1.8 Manejador de base de datos.1.8 Manejador de base de datos.1.9 Administrador de la base de datos (DBA).1.9 Administrador de la base de datos (DBA).1.10 Usuarios de la base de datos.1.10 Usuarios de la base de datos.1.11 Estructura general del sistema.1.11 Estructura general del sistema.1.12 Arquitectura de sistemas de bases de datos.1.12 Arquitectura de sistemas de bases de datos.

1.12.1 Sistemas centralizados.1.12.1 Sistemas centralizados.1.12.2 Sistemas cliente/servidor.1.12.2 Sistemas cliente/servidor.1.12.3 Sistemas paralelos.1.12.3 Sistemas paralelos.1.12.4 Sistemas distribuidos. 1.12.4 Sistemas distribuidos.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

IntroducciónIntroducción

Manejo de una gran Manejo de una gran cantidad de datos en cantidad de datos en empresas o empresas o instituciones.instituciones.

• Por lo que es necesario disponer de medios de hardware y software.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

Tradicionalmente…Tradicionalmente…

La información se La información se almacenaba en almacenaba en archivos, estos archivos, estos archivos no archivos no guardaban ninguna guardaban ninguna relación entre sí y relación entre sí y los datos podían los datos podían repetirse dando repetirse dando lugar a información lugar a información redundanteredundante

Dependencia

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

Actualmente …Actualmente …

BB DD

Aplicación N

Aplicación Ventas

Aplicación Aplicación ComprasCompras

Independencia

Aplicación …

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

EjercicioEjercicio

Analiza la forma de almacenamiento Analiza la forma de almacenamiento tradicional, con la manera de almacenar en tradicional, con la manera de almacenar en una base de datos, menciona ventajas, una base de datos, menciona ventajas, desventajas.desventajas.¿Cuál de las dos formas, desde tu punto de ¿Cuál de las dos formas, desde tu punto de vista, es más óptima para desarrollar un vista, es más óptima para desarrollar un software profesional? ¿Por qué?software profesional? ¿Por qué?

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1. Conceptos generales1. Conceptos generales

Dato:Dato:Conjunto de caracteres con algún significado, pueden ser Conjunto de caracteres con algún significado, pueden ser numéricos, alfabéticos, o alfanuméricos.numéricos, alfabéticos, o alfanuméricos.

Información:Información:Es un conjunto ordenado de datos los cuales son Es un conjunto ordenado de datos los cuales son manejados según la necesidad del usuario, para que un manejados según la necesidad del usuario, para que un conjunto de datos pueda ser procesado eficientemente y conjunto de datos pueda ser procesado eficientemente y pueda dar lugar a información, primero se debepueda dar lugar a información, primero se debe guardar guardar lógicamente en archivos.lógicamente en archivos.

Campo:Campo:Es la unidad más pequeña a la cual uno puede referirse en Es la unidad más pequeña a la cual uno puede referirse en un programa. Desde el punto de vista del programador un programa. Desde el punto de vista del programador representa una característica de un individuo u objeto.representa una característica de un individuo u objeto.

Registro:Registro:Colección de campos de iguales o de diferentes tipos.Colección de campos de iguales o de diferentes tipos.

Archivo:Archivo:Colección de registros almacenados siguiendo una Colección de registros almacenados siguiendo una estructura homogénea.estructura homogénea.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1. Conceptos generales1. Conceptos generalesBase de datos (BD):Base de datos (BD):

Es un conjunto de datos persistentes que es utilizado por Es un conjunto de datos persistentes que es utilizado por los sistemas de aplicación de alguna empresalos sistemas de aplicación de alguna empresa. Datos . Datos interrelacionados, creados con un SGBD (Sistema Gestor interrelacionados, creados con un SGBD (Sistema Gestor de Bases de Datos). de Bases de Datos).

Una BD es una colección de datos que están lógicamente Una BD es una colección de datos que están lógicamente relacionados entre sí. La descripción y definición de los relacionados entre sí. La descripción y definición de los datos se encuentra almacenada en la propia BD.datos se encuentra almacenada en la propia BD.

Los datos están estructurados según un modelo de BD que Los datos están estructurados según un modelo de BD que refleja las relaciones y restricciones que tienen estos refleja las relaciones y restricciones que tienen estos datos en el mundo real. datos en el mundo real.

El contenido de una base de datos engloba la información El contenido de una base de datos engloba la información de una organización, para que los datos estén disponibles de una organización, para que los datos estén disponibles a los usuarios. a los usuarios.

Los tres componentes principales de un sistema de base Los tres componentes principales de un sistema de base de datos son el de datos son el hardwarehardware, el , el softwaresoftware SGBDSGBD y y los datoslos datos a a manejar, es importante mencionar el personal encargado manejar, es importante mencionar el personal encargado del manejo del sistema.del manejo del sistema.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1. Conceptos generales1. Conceptos generales

En resumen una BD:En resumen una BD: Está compuesta de datos persistentes.Está compuesta de datos persistentes. Sirve a una o más aplicaciones.Sirve a una o más aplicaciones. Existe independencia entre los datos y los programas Existe independencia entre los datos y los programas

que los manejan.que los manejan. Es accesible a múltiples usuarios de forma simultánea.Es accesible a múltiples usuarios de forma simultánea. Hay independencia entre los datos y los programas que Hay independencia entre los datos y los programas que

los van a tratar.los van a tratar. Maneja la Coherencia.Maneja la Coherencia. Asegura no redundancia innecesaria. una finalidad de la Asegura no redundancia innecesaria. una finalidad de la

base de datos es eliminar la redundancia o al menos base de datos es eliminar la redundancia o al menos minimizarla. minimizarla.

Maneja seguridad de los datos.Maneja seguridad de los datos.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.1 Objetivos de los sistemas 1.1 Objetivos de los sistemas de base de datos.de base de datos.

Compartir datos:Compartir datos:Las aplicaciones existentes pueden compartir la Las aplicaciones existentes pueden compartir la información de la base de datos, información de la base de datos,

BD - LibreríaBD - Librería

VentasVentas AlmacénAlmacén

Venta Venta en líneaen línea

además es posible además es posible desarrollar nuevas desarrollar nuevas aplicaciones para aplicaciones para operar sobre los operar sobre los mismos datos.mismos datos.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.1 Objetivos de los sistemas 1.1 Objetivos de los sistemas de base de datos.de base de datos.

Reducir la redundancia:Reducir la redundancia:En sistemas que no son de base de datos, cada En sistemas que no son de base de datos, cada aplicación tiene sus propios archivos exclusivos. aplicación tiene sus propios archivos exclusivos. Este hecho puede conducir a una redundancia Este hecho puede conducir a una redundancia considerable de los datos almacenados, con el considerable de los datos almacenados, con el consecuente desperdicio de espacio de consecuente desperdicio de espacio de almacenamiento. almacenamiento.

PersonalPersonal

Archivo1Archivo1

EscolaridadEscolaridad

Archivo2Archivo2PuestoPuesto PuestoPuesto

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.1 Objetivos de los sistemas 1.1 Objetivos de los sistemas de base de datos.de base de datos.

Evitar la inconsistencia Evitar la inconsistencia Cuando la redundancia no esta controlada, podría un dato Cuando la redundancia no esta controlada, podría un dato estar representado por dos entidades distintas en la base estar representado por dos entidades distintas en la base de datos, entonces necesariamente habrá ocasiones en de datos, entonces necesariamente habrá ocasiones en que las dos entidades no coincidan, digamos, cuando una que las dos entidades no coincidan, digamos, cuando una de ellas ha sido actualizada y la otra no. de ellas ha sido actualizada y la otra no. En esos momentos decimos que la base de datos es En esos momentos decimos que la base de datos es inconsistente. inconsistente.

PuestoPuesto

PuestoPuestoTabla 2Tabla 2

BD – PersonalBD – Personal

Tabla 1Tabla 1

Una base de datos Una base de datos inconsistente es inconsistente es capaz de capaz de proporcionar a sus proporcionar a sus usuarios usuarios información información correcta o correcta o contradictoria.contradictoria.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.1 Objetivos de los sistemas 1.1 Objetivos de los sistemas de base de datos.de base de datos.

Manejo de transaccionesManejo de transaccionesUna transacción es una unidad de trabajo lógica, que por Una transacción es una unidad de trabajo lógica, que por lo regular comprende varias operaciones de la base de lo regular comprende varias operaciones de la base de datos (en particular, varias operaciones de actualización). datos (en particular, varias operaciones de actualización).

Si el usuario declara que las dos actualizaciones son parte Si el usuario declara que las dos actualizaciones son parte de la misma transacción, entonces el sistema puede de la misma transacción, entonces el sistema puede garantizargarantizar que se hagan ya sea ambas o ninguna de ellas, que se hagan ya sea ambas o ninguna de ellas, aún cuando el sistema fallara (por falta de suministro aún cuando el sistema fallara (por falta de suministro eléctrico) a la mitad del proceso.eléctrico) a la mitad del proceso.

Transferir una cantidad de efectivo de Transferir una cantidad de efectivo de A a BA a B

1.1. Retirar el efectivo de la cuenta A Retirar el efectivo de la cuenta A 2.2. Depositarlo en la cuenta BDepositarlo en la cuenta B3.3. Actualizar cantidad en cuenta AActualizar cantidad en cuenta A4.4. Actualizar cantidad en cuenta BActualizar cantidad en cuenta B

Transferir una cantidad de efectivo de Transferir una cantidad de efectivo de A a BA a B

1.1. Retirar el efectivo de la cuenta A Retirar el efectivo de la cuenta A 2.2. Depositarlo en la cuenta BDepositarlo en la cuenta B3.3. Actualizar cantidad en cuenta AActualizar cantidad en cuenta A4.4. Actualizar cantidad en cuenta BActualizar cantidad en cuenta B

TransacciónTransacción

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.1 Objetivos de los sistemas 1.1 Objetivos de los sistemas de base de datos.de base de datos.

Mantener la integridadMantener la integridadEl objetivo de la integridad es El objetivo de la integridad es asegurar que los datos de la asegurar que los datos de la base de datos estén correctosbase de datos estén correctos. . La inconsistencia entre dos entradas que pretenden La inconsistencia entre dos entradas que pretenden representar el mismo hecho es un ejemplo de la falta de representar el mismo hecho es un ejemplo de la falta de integridad; desde luego, este problema sólo puede surgir integridad; desde luego, este problema sólo puede surgir sí existe redundancia en los datos almacenados. No sí existe redundancia en los datos almacenados. No obstante, aun cuando no exista redundancia, la base de obstante, aun cuando no exista redundancia, la base de datos podría seguir conteniendo información incorrecta. datos podría seguir conteniendo información incorrecta.

Por ejemplo un empleado podría aparecer con 400 horas Por ejemplo un empleado podría aparecer con 400 horas laboradas durante la semana, en lugar de 40 ó como laboradas durante la semana, en lugar de 40 ó como parte de un departamento que no existe.parte de un departamento que no existe.

El control centralizado de la base de datos puede ayudar a El control centralizado de la base de datos puede ayudar a evitar estos problemas mediante evitar estos problemas mediante restricciones de restricciones de integridadintegridad (también conocidas como reglas del negocio) (también conocidas como reglas del negocio) que serán verificadas siempre que se realice una que serán verificadas siempre que se realice una operación de actualización.operación de actualización.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.1 Objetivos de los sistemas 1.1 Objetivos de los sistemas de base de datos.de base de datos.

Cumplir la seguridadCumplir la seguridadEs posible establecer diferentes restricciones Es posible establecer diferentes restricciones para cada tipo de acceso (recuperación, para cada tipo de acceso (recuperación, inserción, eliminación, etc.) para cada parte de inserción, eliminación, etc.) para cada parte de la información de la base de datos. la información de la base de datos. Sin dichas restricciones la seguridad de los datos Sin dichas restricciones la seguridad de los datos podría estar en mayor riesgo que en un sistema podría estar en mayor riesgo que en un sistema de archivos tradicionales; es decir, la naturaleza de archivos tradicionales; es decir, la naturaleza centralizada de un sistema de base de datos centralizada de un sistema de base de datos requiere, que también sea establecido un buen requiere, que también sea establecido un buen sistema de seguridad.sistema de seguridad.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.1 Objetivos de los sistemas 1.1 Objetivos de los sistemas de base de datos.de base de datos.

Equilibrar los requerimientos en conflicto Equilibrar los requerimientos en conflicto Al conocer los requerimientos generales de la empresa, el DBA Al conocer los requerimientos generales de la empresa, el DBA (administrador de la BD) puede estructurar los sistemas de (administrador de la BD) puede estructurar los sistemas de manera que ofrezcan un servicio general que sea “el mejor para manera que ofrezcan un servicio general que sea “el mejor para la empresa”. Por ejemplo, es posible elegir una representación la empresa”. Por ejemplo, es posible elegir una representación física de los datos almacenados que proporcione un acceso física de los datos almacenados que proporcione un acceso rápido para las aplicaciones más importantes.rápido para las aplicaciones más importantes.

Cumplir los estándares Cumplir los estándares Con el control central de la base de datos, el DBA puede Con el control central de la base de datos, el DBA puede asegurar que todos los estándares aplicables en la asegurar que todos los estándares aplicables en la representación de los datos sean observados. Estos estándares representación de los datos sean observados. Estos estándares podrían incluir alguno o todos los siguientes: departamentales, podrían incluir alguno o todos los siguientes: departamentales, de instalación, corporativos, de la industria, nacionales, e de instalación, corporativos, de la industria, nacionales, e internacionales. internacionales. En forma similar, los estándares en la asignación de nombres y En forma similar, los estándares en la asignación de nombres y en la documentación de los datos, también son muy en la documentación de los datos, también son muy convenientes como una ayuda para compartir y entender los convenientes como una ayuda para compartir y entender los datos.datos.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.2 Administración de los datos y 1.2 Administración de los datos y administración de bases de datos.administración de bases de datos.

Es imperativo que exista una Es imperativo que exista una persona que administre los datos, persona que administre los datos, los entienda junto con las los entienda junto con las necesidades de la empresa a un necesidades de la empresa a un nivel e administración superior. nivel e administración superior. La labor del La labor del administrador de datosadministrador de datos (DA) es decidir en primer lugar que (DA) es decidir en primer lugar que datos deben ser almacenados en datos deben ser almacenados en la base de datos y establecer la base de datos y establecer políticas para mantener y manejar políticas para mantener y manejar esos datos una vez almacenados. esos datos una vez almacenados. Un ejemplo de estas políticas Un ejemplo de estas políticas podría ser que indicará quién podría ser que indicará quién puede realizar qué operaciones puede realizar qué operaciones sobre ciertos datos y bajo que sobre ciertos datos y bajo que circunstancias, es decir, una circunstancias, es decir, una política de seguridad de los datos. política de seguridad de los datos. El administrador de datos es un El administrador de datos es un administrador, no de TI. administrador, no de TI.

Administrador de DatosAdministrador de Datos

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.2 Administración de los datos 1.2 Administración de los datos y administración de bases de y administración de bases de datos.datos.El responsable de implementar El responsable de implementar

las decisiones del las decisiones del administrador de datos es el administrador de datos es el administrador de base de administrador de base de datosdatos (DBA). Por lo tanto el (DBA). Por lo tanto el DBA es un profesional de TI. DBA es un profesional de TI. El trabajo del DBA consiste en El trabajo del DBA consiste en crear la base de datos real e crear la base de datos real e implementar los controles implementar los controles técnicos necesarios para hacer técnicos necesarios para hacer cumplir las diversas decisiones cumplir las diversas decisiones de las políticas hechas por el de las políticas hechas por el administrador de datos. administrador de datos. El DBA también es El DBA también es responsable de asegurar que responsable de asegurar que el sistema opere con el el sistema opere con el rendimiento adecuado y debe rendimiento adecuado y debe proporcionar una variedad de proporcionar una variedad de otros servicios técnicos. otros servicios técnicos. El DBA tendrá el equipo de El DBA tendrá el equipo de programadores de sistemas y programadores de sistemas y otros asistentes técnicos.otros asistentes técnicos.

Administrador de Bases Administrador de Bases de Datosde Datos

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.3 Niveles de arquitectura.

Existen diferentes niveles de abstracción Existen diferentes niveles de abstracción para simplificar la interacción de los para simplificar la interacción de los usuarios con el sistema: usuarios con el sistema: Interno, Interno, conceptual conceptual y y externo (específicamente el externo (específicamente el de almacenamiento físico, el del de almacenamiento físico, el del programador y el del usuario).programador y el del usuario).

La interrelación entre estos tres niveles de La interrelación entre estos tres niveles de abstracción se ilustra en la siguiente figura.abstracción se ilustra en la siguiente figura.

Nivel externo o de visión

Nivel conceptual o lógico

Nivel interno o físico

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.3.1 Nivel físico 1.3.1 Nivel físico o internoo interno

Es la representación del nivel más bajo de Es la representación del nivel más bajo de abstracción, en éste nivel se describe en detalle abstracción, en éste nivel se describe en detalle la forma en como se almacenan los datos en los la forma en como se almacenan los datos en los dispositivos de almacenamiento dispositivos de almacenamiento

Por ejemplo, mediante índices para el acceso Por ejemplo, mediante índices para el acceso aleatorio a los datos.aleatorio a los datos.

Es el más cercano al almacenamiento físico que Es el más cercano al almacenamiento físico que tiene que ver con la forma en que los datos tiene que ver con la forma en que los datos están almacenados físicamente.están almacenados físicamente.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.3.2 Nivel conceptual o nivel lógico El siguiente nivel de abstracción, describe que datos son El siguiente nivel de abstracción, describe que datos son

almacenados realmente en la base de datos y las relaciones que almacenados realmente en la base de datos y las relaciones que existen entre los mismos, describe la base de datos completa en existen entre los mismos, describe la base de datos completa en términos de su estructura de diseño. términos de su estructura de diseño.

El nivel conceptual de abstracción lo usan los administradores de El nivel conceptual de abstracción lo usan los administradores de bases de datos, quienes deben decidir qué información se va a bases de datos, quienes deben decidir qué información se va a guardar en la base de datos.guardar en la base de datos.

Consta de las siguientes definiciones: Consta de las siguientes definiciones:

Definición de los datos: Definición de los datos: Se describen el tipo de datos y la Se describen el tipo de datos y la longitud de campo todos los elementos en la base. Los longitud de campo todos los elementos en la base. Los elementos por definir incluyen artículos elementales elementos por definir incluyen artículos elementales ((atributosatributos), totales de datos y registros conceptuales ), totales de datos y registros conceptuales ((entidadesentidades). ).

Relaciones entre datos:Relaciones entre datos: Se definen las relaciones entre datos Se definen las relaciones entre datos para enlazar tipos de registros relacionados para el para enlazar tipos de registros relacionados para el procesamiento de archivos múltiples. procesamiento de archivos múltiples.

NOTA: NOTA: En el nivel conceptual la base de datos aparece como una colección de En el nivel conceptual la base de datos aparece como una colección de registros lógicos, sin descriptores de almacenamiento. Los archivos conceptuales registros lógicos, sin descriptores de almacenamiento. Los archivos conceptuales no existen físicamente. La transformación de registros conceptuales a registros no existen físicamente. La transformación de registros conceptuales a registros físicos para el almacenamiento se lleva a cabo por el sistema y es transparente al físicos para el almacenamiento se lleva a cabo por el sistema y es transparente al usuario.usuario.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.3.3 Nivel de visión o nivel externo

Nivel más alto de abstracción, es lo que el Nivel más alto de abstracción, es lo que el usuario final puede visualizar del sistema usuario final puede visualizar del sistema terminado, describe sólo una parte de la base de terminado, describe sólo una parte de la base de datos al usuario acreditado para verla. datos al usuario acreditado para verla.

El sistema puede proporcionar muchas visiones El sistema puede proporcionar muchas visiones para la misma base de datos. para la misma base de datos.

BDBD

Vista EmpleadoVista Empleado

Vista ClienteVista Cliente

Vista ControladorVista Controlador

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

EsquemaEsquemaInternoInterno

Usuario 1Usuario 1

BDBD

Nivel Nivel externoexterno

Nivel Nivel conceptualconceptual

Nivel Nivel InternoInterno

OrganizaciónOrganizaciónFísica de los datosFísica de los datos

EsquemaEsquemaConceptualConceptual

Usuario 2Usuario 2 Usuario 3Usuario 3

Vista 1Vista 1 Vista 2Vista 2 Vista 3Vista 3 sNosNo nombrenombre aPaternaPatern edadedad salariosalario nStaffnStaff nombrenombre nSucnSuc

Vista externa 1Vista externa 1 Vista externa 2Vista externa 2

nStaffnStaff nombrenombre aPaternaPatern fechaNacfechaNac salariosalario

Struct STAFF{Struct STAFF{ int nStaff;int nStaff; int nSuc;int nSuc; char nombre[15];char nombre[15]; char aPatern[15];char aPatern[15]; struct date fechaNac;struct date fechaNac; float salario;float salario; struct STAFF *next; /* apuntador al siguiente registro STAFF*/struct STAFF *next; /* apuntador al siguiente registro STAFF*/};};Index nStaff; index nSuc; /*define indices de STAFF*/Index nStaff; index nSuc; /*define indices de STAFF*/

Ejemplo de los tres niveles:Ejemplo de los tres niveles:

Disco duroDisco duro

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.4 Modelos de datos

Modelo: Modelo: Es una representación de la realidad que Es una representación de la realidad que contiene las características generales de algo contiene las características generales de algo que se va a realizar. En base de datos, esta que se va a realizar. En base de datos, esta representación la elaboramos de forma gráfica. representación la elaboramos de forma gráfica.

¿Qué es modelo de datos?¿Qué es modelo de datos?         Es una colección de herramientas conceptuales Es una colección de herramientas conceptuales para describir los datos, las relaciones que para describir los datos, las relaciones que existen entre ellos, semántica asociada a los existen entre ellos, semántica asociada a los datos y restricciones de consistencia. datos y restricciones de consistencia.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

Los modelos de datos se dividen en Los modelos de datos se dividen en tres grupos:tres grupos:

Modelos lógicos basados en objetos.Modelos lógicos basados en objetos.    Se usan para describir datos en los niveles conceptual y de visión, es decir, Se usan para describir datos en los niveles conceptual y de visión, es decir, con este modelo representamos los datos de tal forma como nosotros los con este modelo representamos los datos de tal forma como nosotros los captamos en el mundo real, tienen una capacidad de estructuración bastante captamos en el mundo real, tienen una capacidad de estructuración bastante flexible y permiten especificar restricciones de datos explícitamente. Existen flexible y permiten especificar restricciones de datos explícitamente. Existen diferentes modelos de este tipo, pero el más utilizado por su sencillez y diferentes modelos de este tipo, pero el más utilizado por su sencillez y eficiencia es el modelo eficiencia es el modelo Entidad-Relación y Orientado a ObjetosEntidad-Relación y Orientado a Objetos..

Modelos lógicos basados en registrosModelos lógicos basados en registros.. Se utilizan para describir datos en los niveles conceptual y físico. Estos Se utilizan para describir datos en los niveles conceptual y físico. Estos modelos utilizan registros e instancias para representar la realidad, así como modelos utilizan registros e instancias para representar la realidad, así como las relaciones que existen entre estos registros (ligas) o apuntadores. A las relaciones que existen entre estos registros (ligas) o apuntadores. A diferencia de los modelos de datos basados en objetos, se usan para diferencia de los modelos de datos basados en objetos, se usan para especificar la estructura lógica global de la base de datos y para proporcionar especificar la estructura lógica global de la base de datos y para proporcionar una descripción a nivel más alto de la implementación. Los tres modelos de una descripción a nivel más alto de la implementación. Los tres modelos de datos más ampliamente aceptados son: datos más ampliamente aceptados son: Modelo Relacional, Modelo de Red y Modelo Relacional, Modelo de Red y Modelo Jerárquico.Modelo Jerárquico.

Modelos físicos de datosModelos físicos de datos.. Se usan para describir a los datos en el nivel más bajo, aunque existen muy Se usan para describir a los datos en el nivel más bajo, aunque existen muy pocos modelos de este tipo,   básicamente capturan aspectos de la pocos modelos de este tipo,   básicamente capturan aspectos de la implementación de los sistemas de base de datos. Existen dos clasificaciones implementación de los sistemas de base de datos. Existen dos clasificaciones de este tipo que son: de este tipo que son: Modelo unificador y Memoria de elementos.Modelo unificador y Memoria de elementos.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.4.1 Modelo entidad-relación.

Denominado por sus siglas como: Denominado por sus siglas como: E-RE-R; Este modelo ; Este modelo representa a la realidad a través de representa a la realidad a través de entidadesentidades, que son , que son objetos que existen y que se distinguen de otros por sus objetos que existen y que se distinguen de otros por sus características, características,

por ejemplo: un alumno se distingue de otro por sus por ejemplo: un alumno se distingue de otro por sus características particulares como lo es el nombre, o el numero de características particulares como lo es el nombre, o el numero de control asignado al entrar a una institución educativa, así mismo, control asignado al entrar a una institución educativa, así mismo, un empleado, una materia, etc. un empleado, una materia, etc.

Las entidades pueden ser de dos tipos:Las entidades pueden ser de dos tipos:Tangibles: Son todos aquellos objetos físicos que podemos ver, Tangibles: Son todos aquellos objetos físicos que podemos ver, tocar o sentir.tocar o sentir.Intangibles:Intangibles: Todos aquellos eventos u objetos conceptuales que Todos aquellos eventos u objetos conceptuales que no podemos ver, aun sabiendo que existen, por ejemplo: la no podemos ver, aun sabiendo que existen, por ejemplo: la entidad materia, sabemos que existe, sin embargo, no la entidad materia, sabemos que existe, sin embargo, no la podemos visualizar o tocar.podemos visualizar o tocar.

Las características de las entidades en base de datos se Las características de las entidades en base de datos se llaman llaman atributosatributos, por ejemplo el nombre, dirección teléfono, , por ejemplo el nombre, dirección teléfono, grado, grupo, etc. son atributos de la entidad alumno; clave, grado, grupo, etc. son atributos de la entidad alumno; clave, número de seguro social, departamento, etc., son atributos número de seguro social, departamento, etc., son atributos de la entidad empleado. A su vez una entidad se puede de la entidad empleado. A su vez una entidad se puede asociar o relacionar con más entidades a través de asociar o relacionar con más entidades a través de relaciones.relaciones.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.4.1 Modelo entidad-relación.

El El modelado entidad-relaciónmodelado entidad-relación es una es una técnicatécnica para el modelado de datos utilizando para el modelado de datos utilizando diagramas diagramas entidad relaciónentidad relación. No es la única técnica pero sí la . No es la única técnica pero sí la más utilizada. más utilizada. El E-R consiste en los siguientes pasos:El E-R consiste en los siguientes pasos:

Se parte de una descripción textual del problema o Se parte de una descripción textual del problema o sistema de información a automatizar (los requisitos). sistema de información a automatizar (los requisitos). Se hace una lista de los sustantivos y verbos que Se hace una lista de los sustantivos y verbos que aparecen. aparecen. Los sustantivos son posibles entidades o atributos. Los sustantivos son posibles entidades o atributos. Los verbos son posibles relaciones. Los verbos son posibles relaciones. Analizando las frases se determina la cardinalidad de las Analizando las frases se determina la cardinalidad de las relaciones y otros detalles. relaciones y otros detalles. Se elabora el diagrama (o diagramas) entidad-relación. Se elabora el diagrama (o diagramas) entidad-relación. Se completa el modelo con listas de atributos y una Se completa el modelo con listas de atributos y una descripción de otras restricciones que no se pueden descripción de otras restricciones que no se pueden reflejar en el diagrama. reflejar en el diagrama.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

Entidad: objeto (real o abstracto) acerca del cual se recoge información de interés para la base de datos.

Relación: asociación o correspondencia existente entre entidades.

cita acita a

artículoartículoeses

escritoescritoporpor

autorautor

perteneceperteneceaa

institucióninstitución

Diagrama E-R de Diagrama E-R de Autores de artículosAutores de artículos

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

Atributos: cada una de las propiedades o características de una entidad o relación.

Cardinalidad: nº máximo y nº mínimo de ocurrencias de cada entidad que intervienen en la relación.

Uno a uno 1:1Una a muchos 1:N ó 1: *Muchos a muchos N:M

RealizaRealizaClienteCliente

Se Se compone compone

dede

PedidoPedido

artículosartículos

RFCRFC

11 **

**

**

1:N1:N

N:MN:M

FechaFecha

CantidadCantidadNSerieNSerie

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.4.2 Modelo relacional1.4.2 Modelo relacional

En este modelo se representan los datos y las relaciones En este modelo se representan los datos y las relaciones entre estos, a través de una colección de tablas, en las entre estos, a través de una colección de tablas, en las cuales los renglones (tuplas) equivalen a los cada uno de los cuales los renglones (tuplas) equivalen a los cada uno de los registros que contendrá la base de datos y las columnas registros que contendrá la base de datos y las columnas corresponden a las características (atributos) de cada corresponden a las características (atributos) de cada registro localizado en la tupla;registro localizado en la tupla;Considerando nuestro ejemplo del y el artículo:Considerando nuestro ejemplo del y el artículo:

RFC Nombre Puesto Salario

BOJF880101 Francisca Bojorges Jímenez Vendedor 3500

CUOG881101 Cruz Ortiz Gemma Vendedor 3500

CICA880901 Chinchilla Cortés Areli Vendedor 3500

GAGH881226 García Gaspar Hermenegildo Vendedor 3500

Clave Descripción Costo

P001 Microsoft Office 2007 5750

P002 Microsoft Windows Vista 3800

P003 WebSphere Modeler 15000

P004 Suite Lotus 4900

P005 Aris Modeler 18000

P006 WebSphere Monitor 18000

¿cómo se representan las relaciones entre las entidades en este modelo?

Relación: empleadoRelación: empleado Relación: artículoRelación: artículo

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.4.2 Modelo relacional1.4.2 Modelo relacionalExisten dos formas de representarla; pero para ello necesitamos Existen dos formas de representarla; pero para ello necesitamos definir que es una definir que es una llave primaria: Es un atributo el cual definimos llave primaria: Es un atributo el cual definimos como atributo principal, es una forma única de identificar a una como atributo principal, es una forma única de identificar a una entidadentidad. .

Por ejemplo, Por ejemplo, el RFC de un empleado se distingue de otro por que el RFC de un empleado se distingue de otro por que los RFC no pueden ser iguales.los RFC no pueden ser iguales.

  Ahora si, las formas de representar las relaciones en este modelo Ahora si, las formas de representar las relaciones en este modelo son:son:1. Haciendo una tabla que contenga cada una de las llaves primarias de las 1. Haciendo una tabla que contenga cada una de las llaves primarias de las

entidades involucradas en la relación.entidades involucradas en la relación.Tomando en cuenta que la llave primaria del empleado es su RFC, y la Tomando en cuenta que la llave primaria del empleado es su RFC, y la llave primaria del artículo es la Clave.llave primaria del artículo es la Clave.

  2. Incluyendo en alguna de las tablas de las entidades involucradas, la llave 2. Incluyendo en alguna de las tablas de las entidades involucradas, la llave de la otra tabla.de la otra tabla.

Clave Descripción Costo RFC

P001 Microsoft Office 2007 5750 BOJF880101

P002 Microsoft Windows Vista 3800 CICA880901

P003 WebSphereModeler 15000 GAGH881226

P004 Suite Lotus 4900 CICA880901

P005 Aris Modeler 18000 CUOG881101

P006 WebSphere Monitor 18000 BOJF880101

P001 Microsoft Office 2007 5750 CICA880901

Clave

RFC

P001 BOJF880101

P002 CICA880901

P003 GAGH881226

P004 CICA880901

P005 CUOG881101

P006 BOJF880101

P001 CICA880901

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

EjercicioEjercicio

Analiza las dos soluciones anteriores del Analiza las dos soluciones anteriores del modelo relacional. Indica cuáles son las modelo relacional. Indica cuáles son las ventajas y las desventajas de cada una de ventajas y las desventajas de cada una de ellas.ellas.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.4.3 Modelo de redes.1.4.3 Modelo de redes.

Representa los datos mediante colecciones Representa los datos mediante colecciones de registros y sus relacione se representan de registros y sus relacione se representan por medio de ligas o enlaces, los cuales por medio de ligas o enlaces, los cuales pueden verse como punteros.  Los registros pueden verse como punteros.  Los registros se organizan en un conjunto de gráficas se organizan en un conjunto de gráficas arbitrarias.      arbitrarias.      

BOJF880101 Francisca Bojorges Jímenez Vendedor 3500

P001 Microsoft Office 2007 5750

P006 WebSphere Monitor 18000

CUOG881101 Cruz Ortiz Gemma Vendedor 3500

P005 Aris Modeler 18000

CICA880901 Chinchilla Cortés Areli Vendedor 3500

P002 Microsoft Windows Vista 3800

P004 Suite Lotus 4900

GAGH881226 García Gaspar Hermenegildo Vendedor 3500

P003 WebSphere Modeler 15000

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.4.4 Modelo jerárquico.1.4.4 Modelo jerárquico.

Muy parecido al modelo de red en cuanto a Muy parecido al modelo de red en cuanto a las relaciones y datos, ya que éstos se las relaciones y datos, ya que éstos se representan por medio de registros y sus representan por medio de registros y sus ligas. La diferencia radica en que están ligas. La diferencia radica en que están organizados por conjuntos de árboles en organizados por conjuntos de árboles en lugar de gráficas arbitrarias.lugar de gráficas arbitrarias.

BOJF880101 Francisca Bojorges Jímenez Vendedor

3500 CUOG881101 Cruz Ortiz Gemma Vendedor

3500

CICA880901 Chinchilla Cortés Areli Vendedor

3500 GAGH881226 García Gaspar Hermenegildo

Vendedor

3500

P005 Aris Modeler 18000P001 Microsoft Office 2007 5750

P006 WebSphere Monitor 18000

P002 Microsoft Windows Vista 3800

P004 Suite Lotus 4900 P003 WebSphere Modeler

15000

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.4.5 Modelo orientado a 1.4.5 Modelo orientado a objetos.objetos.

El modelo orientado a objetos amplía la El modelo orientado a objetos amplía la definición de Entidad para incluir no sólo definición de Entidad para incluir no sólo los atributos que describen el los atributos que describen el estadoestado del del objeto, sino también las acciones asociadas objeto, sino también las acciones asociadas con el objeto, es decir su con el objeto, es decir su comportamiento. comportamiento. En este caso, decimos que el objeto En este caso, decimos que el objeto encapsulaencapsula tanto el estado como el tanto el estado como el comportamiento.comportamiento.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

Siguiendo el ejemplo de empleado y artículo:Siguiendo el ejemplo de empleado y artículo:

Empleado Artículo

Atributos o EstadorFCnombrepuestosalario

Mensaje:Vende

Atributos o Estadoclavedescripciónprecio

Comportamiento o Métodosvender(Artículo)

Comportamiento o Métodos

RFC= BOJF880101

Nombre= Francisca Bojorges Jímenez

Puesto = Vendedor

Salario = 3500

Mensaje:Vende

Clave = P001

Descripción = Microsoft Office 2007

Precio = 5750

Instancias = objetosInstancias = objetos

ClasesClases

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.5 Independencia de los datos.1.5 Independencia de los datos.

Se refiere a la protección contra los Se refiere a la protección contra los programas de aplicación que puedan programas de aplicación que puedan originar modificaciones cuando se altera la originar modificaciones cuando se altera la organización física o lógica de la base de organización física o lógica de la base de datos. datos. Existen dos niveles de independencia de Existen dos niveles de independencia de datos.datos.

IndependenciaIndependencia física de datosfísica de datos::Es la capacidad de modificar el esquema físico Es la capacidad de modificar el esquema físico sin provocar que se vuelvan a escribir los sin provocar que se vuelvan a escribir los programas de aplicación. programas de aplicación.

IndependenciaIndependencia lógica de datoslógica de datos::Capacidad de modificar el esquema Capacidad de modificar el esquema conceptual sin provocar que se vuelvan a conceptual sin provocar que se vuelvan a escribir los programas de aplicación.escribir los programas de aplicación.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.6 Lenguaje de definición de 1.6 Lenguaje de definición de datos.datos.

Data definition language (DDL).Data definition language (DDL).Un lenguaje que permite al DBA o al usuario Un lenguaje que permite al DBA o al usuario describir y nombrar las entidades, atributos y describir y nombrar las entidades, atributos y relaciones requeridas por la aplicación, junto con relaciones requeridas por la aplicación, junto con cualquier restricción asociada de integridad y cualquier restricción asociada de integridad y seguridad. seguridad. Permite especificar los tipos de datos, Permite especificar los tipos de datos, estructuras y restricciones de los datos. estructuras y restricciones de los datos.

IntegridadIntegridadSeguridadSeguridad

Todas las especificaciones son almacenadas en Todas las especificaciones son almacenadas en la base de datos. la base de datos.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.7 Lenguaje de manejos de 1.7 Lenguaje de manejos de base de datos.base de datos.

Data manipulation language (DML).Data manipulation language (DML).Facilidad para la obtención de datos específicos Facilidad para la obtención de datos específicos (lenguaje de consulta).(lenguaje de consulta).Provee operaciones básicas de manipulación de Provee operaciones básicas de manipulación de datos que se encuentran almacenado en la base datos que se encuentran almacenado en la base de datos. de datos.

DML Procedural DML Procedural Permite al usuario decirle al sistema Permite al usuario decirle al sistema exactamente como manipular los datos.exactamente como manipular los datos.

DML No ProceduralDML No ProceduralPermite al usuario definir que datos necesita Permite al usuario definir que datos necesita más que como manipularlos.más que como manipularlos.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.8 Sistemas de Gestión de 1.8 Sistemas de Gestión de Base de Datos.Base de Datos.

Un sistema de software que permite a los usuarios Un sistema de software que permite a los usuarios definir, crear, mantener y controlar el acceso a la definir, crear, mantener y controlar el acceso a la base de datos.base de datos.Es una colección de numerosas rutinas de Es una colección de numerosas rutinas de software interrelacionadas, cada una de las cuales software interrelacionadas, cada una de las cuales es responsable de una tarea específica.es responsable de una tarea específica.El objetivo primordial de un sistema de gestión de El objetivo primordial de un sistema de gestión de base de datos es proporcionar un entorno que sea base de datos es proporcionar un entorno que sea conveniente y eficiente para extraer, almacenar y conveniente y eficiente para extraer, almacenar y manipular información de la base de datos. manipular información de la base de datos. Todas las peticiones de acceso a la base, se Todas las peticiones de acceso a la base, se manejan centralizadamente, por lo que este manejan centralizadamente, por lo que este paquete funciona como interfase entre los paquete funciona como interfase entre los usuarios y la base de datos.usuarios y la base de datos.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

Historia de los Sistemas de Base de DatosHistoria de los Sistemas de Base de Datos

Primera generaciónPrimera generación Jerárquica Jerárquica De redDe red

Segunda generaciónSegunda generación RelacionalRelacional

Tercera generaciónTercera generación Entidad - relaciónEntidad - relaciónOrientadas a objetosOrientadas a objetos

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

Funciones del SGBDFunciones del SGBD

Almacenamiento, actualización y extracción de datos.Almacenamiento, actualización y extracción de datos. Debe proporcionar a los usuarios la Debe proporcionar a los usuarios la capacidad de almacenar, extraer y actualizar datos de la base de datos. Ocultar detalles internos de implementación física.capacidad de almacenar, extraer y actualizar datos de la base de datos. Ocultar detalles internos de implementación física.

Un catálogo accesible por el usuario.Un catálogo accesible por el usuario. Proporcionar un catálogo en el que se almacenan las descripciones de Proporcionar un catálogo en el que se almacenan las descripciones de los elementos de datos y que sea accesible por parte de los usuarios. Es un repositorio de información que describe los datos los elementos de datos y que sea accesible por parte de los usuarios. Es un repositorio de información que describe los datos contenidos en la base de datos, es decir, los “datos acerca de los datos” o metadatos.contenidos en la base de datos, es decir, los “datos acerca de los datos” o metadatos.

Soporte de transacciones.Soporte de transacciones. Debe proporcionar un mecanismo que garantice que se lleve a cabo todas las Debe proporcionar un mecanismo que garantice que se lleve a cabo todas las actualizaciones correspondientes a una determinada transacción, o que no se lleve ninguna. Una transacción es una serie de actualizaciones correspondientes a una determinada transacción, o que no se lleve ninguna. Una transacción es una serie de acciones, mediante las cuales se accede al contenido de DB, acciones de un único usuario o programa de aplicación. Si fallará acciones, mediante las cuales se accede al contenido de DB, acciones de un único usuario o programa de aplicación. Si fallará la transacción la BD quedaría en estado incoherente.la transacción la BD quedaría en estado incoherente.

Servicios de control de concurrencia.Servicios de control de concurrencia. Proporcionar un mecanismo para garantizar que la BD se actualice Proporcionar un mecanismo para garantizar que la BD se actualice correctamente cuando haya múltiples usuarios actualizando de manera concurrente la base de datos.correctamente cuando haya múltiples usuarios actualizando de manera concurrente la base de datos.

Servicios de recuperación.Servicios de recuperación. mecanismo para recuperar la BD si resulta dañada de alguna forma. Falla de mecanismo para recuperar la BD si resulta dañada de alguna forma. Falla de hardware, error de software, fallo de soporte físico, el usuario aborte la aplicación.hardware, error de software, fallo de soporte físico, el usuario aborte la aplicación.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

Funciones del SGBDFunciones del SGBD

Servicios de autorización.Servicios de autorización. Proporcionar un mecanismo para garantizar que sólo los usuarios autorizados Proporcionar un mecanismo para garantizar que sólo los usuarios autorizados puedan acceder a la base de datos. Seguridad hace referencia a la ptotección frente accesos no autorizados.puedan acceder a la base de datos. Seguridad hace referencia a la ptotección frente accesos no autorizados.

Soporte para la comunicación de datos.Soporte para la comunicación de datos. Debe poder integrarse con software de comunicaciones. El Debe poder integrarse con software de comunicaciones. El SGBD recibe solicitudes en forma de mensajes de comunicacións y responde a ellas de forma similar. Procesamiento SGBD recibe solicitudes en forma de mensajes de comunicacións y responde a ellas de forma similar. Procesamiento distribuido.distribuido.

Servicios de integridad.Servicios de integridad. Proporcionar un medio de garantizar que tanto los datos de la BD como los cambios Proporcionar un medio de garantizar que tanto los datos de la BD como los cambios efectuados en los mismos se adecuen a ciertas reglas. Integridad es la corrección y coherencia de datos almacenados. La efectuados en los mismos se adecuen a ciertas reglas. Integridad es la corrección y coherencia de datos almacenados. La integridad esta relacionada con la CALIDAD de los propios datos. Se suele expresar en términos de restricciones que integridad esta relacionada con la CALIDAD de los propios datos. Se suele expresar en términos de restricciones que son reglas de coherencia que la BD no debe violar.son reglas de coherencia que la BD no debe violar.

Servicios para mejorar la independencia de los datos.Servicios para mejorar la independencia de los datos. Incluir funcionalidades para permitir Incluir funcionalidades para permitir que los programas sean independientes de la estructura real de la base de datos. La independencia se consigue mediante que los programas sean independientes de la estructura real de la base de datos. La independencia se consigue mediante mecanismos de vistas.mecanismos de vistas.

Servicios de utilidad.Servicios de utilidad. Proporcionar una serie de servicios de utilidad. Ayudan al DBA a administrar la DB de Proporcionar una serie de servicios de utilidad. Ayudan al DBA a administrar la DB de forma efectiva. Utilidades que funcionan a nivel interno y externo: Importación, Monitorización, Análisis estadístico. forma efectiva. Utilidades que funcionan a nivel interno y externo: Importación, Monitorización, Análisis estadístico. Reorganización de índices, recolección y reasignación de memoria.Reorganización de índices, recolección y reasignación de memoria.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.9 Administrador de la base de 1.9 Administrador de la base de datos (DBA).datos (DBA).

Es la persona o equipo de personas Es la persona o equipo de personas profesionales responsables del control y profesionales responsables del control y manejo del sistema de base de datos, manejo del sistema de base de datos, generalmente tiene (n) experiencia en generalmente tiene (n) experiencia en DBMS, diseño de bases de datos, Sistemas DBMS, diseño de bases de datos, Sistemas operativos, comunicación de datos, operativos, comunicación de datos, hardware y  programación.hardware y  programación.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.10 Usuarios de la base de 1.10 Usuarios de la base de datos.datos.

Administrador de Datos (DA)Administrador de Datos (DA)Administrador de la Base de Datos(DBA)Administrador de la Base de Datos(DBA)Diseñadores de la base de datos (Lógica y física)Diseñadores de la base de datos (Lógica y física)Programadores de aplicaciones (Visión)Programadores de aplicaciones (Visión)Usuarios finales (Ingenuos y sofisticados)Usuarios finales (Ingenuos y sofisticados)

Usuarios sofisticados. Interactúan con el sistema sin Usuarios sofisticados. Interactúan con el sistema sin escribir programas. En cambio escriben sus preguntas en escribir programas. En cambio escriben sus preguntas en un lenguaje de consultas de base de datos.un lenguaje de consultas de base de datos.    Usuarios especializados. Usuarios sofisticados escriben Usuarios especializados. Usuarios sofisticados escriben aplicaciones de base de datos especializadas que no aplicaciones de base de datos especializadas que no encajan en el marco tradicional de procesamiento de encajan en el marco tradicional de procesamiento de datos.datos.    Usuarios ingenuos. Podemos mencionar al usuario Usuarios ingenuos. Podemos mencionar al usuario ingenuo como el usuario final que utiliza el sistema de ingenuo como el usuario final que utiliza el sistema de base de datos sin saber nada del diseño interno del mismo base de datos sin saber nada del diseño interno del mismo por ejemplo: un cajero.por ejemplo: un cajero.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.11 Estructura general del 1.11 Estructura general del sistema.sistema.

HardwareHardwareAbarca desde una PC hasta una red de computadoras.Abarca desde una PC hasta una red de computadoras.

SoftwareSoftwareDBMS ó SGBD, sistema operativo, software de red (si fuera necesario) y DBMS ó SGBD, sistema operativo, software de red (si fuera necesario) y programas de aplicación.programas de aplicación.

DatosDatosDatos utilizados por la organización y una descripción de esos datos, llamado Datos utilizados por la organización y una descripción de esos datos, llamado esquema. esquema.

ProcedimientosProcedimientosInstrucciones y reglas que deberían ser aplicados al diseño y uso de la base Instrucciones y reglas que deberían ser aplicados al diseño y uso de la base de datos y el DBMS.de datos y el DBMS.

PersonasPersonas

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

Componentes de un SGBDComponentes de un SGBD

Procesador de consultas. Transforma consultas en Procesador de consultas. Transforma consultas en instrucciones de bajo nivel.instrucciones de bajo nivel.Gestor de BD. Comunica las consultas enviadas Gestor de BD. Comunica las consultas enviadas por usuarios y aplicaciones, llama al gestor de por usuarios y aplicaciones, llama al gestor de archivos para satisfacer esas solicitudes.archivos para satisfacer esas solicitudes.Gestor de archivos. Manipula los archivos de Gestor de archivos. Manipula los archivos de almacenamiento subyacentes y gestiona la almacenamiento subyacentes y gestiona la asignación de espacio de memoriaasignación de espacio de memoriaPreprocesador DML. Convierte instrucciones DML a Preprocesador DML. Convierte instrucciones DML a funciones en el lenguaje host.funciones en el lenguaje host.Compilador DDL. Convierte instrucciones DDL en Compilador DDL. Convierte instrucciones DDL en tablas que contienen metadatos.tablas que contienen metadatos.Gestor de catálogo. Gestiona y mantiene el Gestor de catálogo. Gestiona y mantiene el catálogo del sistema.catálogo del sistema.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

Componentes de un SGBDComponentes de un SGBD

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

Componentes de un GBDComponentes de un GBDControl de autorizaciónControl de autorización. Comprobar autorizaciones . Comprobar autorizaciones de los usuarios.de los usuarios.Procesador de comandosProcesador de comandos. Una vez comprobada la . Una vez comprobada la autorización pasa el control al procesador de autorización pasa el control al procesador de comandos.comandos.Comprobador de integridad. Verifica que la Comprobador de integridad. Verifica que la operación solicitada satisface todas las operación solicitada satisface todas las restricciones de integridad.restricciones de integridad.Optimizador de consultasOptimizador de consultas. Determina estrategia . Determina estrategia óptima para la ejecución de consultas.óptima para la ejecución de consultas.Gestor de transaccionesGestor de transacciones. Procesamiento requerido . Procesamiento requerido para las operaciones que recibe de las para las operaciones que recibe de las transacciones.transacciones.PlanificadorPlanificador. Garantiza que las operaciones . Garantiza que las operaciones concurrentes no entren en conflicto unas con concurrentes no entren en conflicto unas con otras.otras.Gestor de recuperaciónGestor de recuperación. Garantiza la coherencia . Garantiza la coherencia de la base de datos cuando se produzcan fallos.de la base de datos cuando se produzcan fallos.Gestor de búferGestor de búfer. Responsable de la transferencia . Responsable de la transferencia de datos de la memoria principal y el de datos de la memoria principal y el almacenamiento secundario.almacenamiento secundario.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

Componentes de un GBDComponentes de un GBD

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

TareaTarea

Analizar el SGBD que utilizaránAnalizar el SGBD que utilizaránElegir qué SGBD utilizar (VFP, Access, Postgress)Elegir qué SGBD utilizar (VFP, Access, Postgress)Analizar cuál de las funciones vistas soportaAnalizar cuál de las funciones vistas soportaEn qué generación de SGBD lo clasificarían.En qué generación de SGBD lo clasificarían.

Enviar la tarea a mi correo, toda copia será Enviar la tarea a mi correo, toda copia será sancionada.sancionada.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.12 Arquitectura de sistemas 1.12 Arquitectura de sistemas de bases de datos.de bases de datos.

La arquitectura de los sistemas de bases de La arquitectura de los sistemas de bases de datos está enormemente influenciada por datos está enormemente influenciada por el sistema informático en el que se ejecuta el sistema informático en el que se ejecuta el sistema de bases de datos. el sistema de bases de datos. Los sistemas de bases de datos pueden ser Los sistemas de bases de datos pueden ser centralizados o cliente-servidor, donde una centralizados o cliente-servidor, donde una máquina que hace de servidor ejecuta máquina que hace de servidor ejecuta trabajos de múltiples máquinas clientes. trabajos de múltiples máquinas clientes. Los SGBD también pueden diseñarse para Los SGBD también pueden diseñarse para explotar las arquitecturas paralelas de explotar las arquitecturas paralelas de computadoras. Las bases de datos computadoras. Las bases de datos distribuidas abarcan muchas máquinas distribuidas abarcan muchas máquinas separadas geográficamente.separadas geográficamente.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.12.1 Sistemas 1.12.1 Sistemas centralizados.centralizados.

Los sistemas de bases de datos Los sistemas de bases de datos centralizados son aquellos que se ejecutan centralizados son aquellos que se ejecutan en un único sistema informático sin en un único sistema informático sin interaccionar con ninguna otra interaccionar con ninguna otra computadora.computadora.Un Un sistema monousuario sistema monousuario típico es típico es una una unidadunidad de sobremesa de sobremesa utilizada por una utilizada por una única persona que dispone de una sola única persona que dispone de una sola CPUCPU, de uno o dos discos fijos y que trabaja , de uno o dos discos fijos y que trabaja con un sistema operativo que sólo permite con un sistema operativo que sólo permite un único usuario.un único usuario.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.12.1 Sistemas 1.12.1 Sistemas centralizados.centralizados.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.12.1 Sistemas centralizados.1.12.1 Sistemas centralizados.

No tienen control de concurrencia, que no es No tienen control de concurrencia, que no es necesario cuando solamente un usuario puede necesario cuando solamente un usuario puede generar modificaciones.generar modificaciones.Las facilidades de recuperación en estos sistemas Las facilidades de recuperación en estos sistemas o no existen o son primitivas; por ejemplo, realizar o no existen o son primitivas; por ejemplo, realizar una copia de seguridad de la base de datos antes una copia de seguridad de la base de datos antes de cualquier modificación. de cualquier modificación. La mayoría de estos sistemas no admiten SQL y La mayoría de estos sistemas no admiten SQL y proporcionan un lenguaje de consulta muy simple proporcionan un lenguaje de consulta muy simple que, en algunos casos, es una variante de QBE. que, en algunos casos, es una variante de QBE. En cambio, los sistemas de bases de datos En cambio, los sistemas de bases de datos diseñados para sistemas multiusuario soportan diseñados para sistemas multiusuario soportan todas las características de las transacciones.todas las características de las transacciones.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.12.1 Sistemas centralizados.1.12.1 Sistemas centralizados.

Por el contrario un Por el contrario un sistema multiusuario sistema multiusuario típico tiene más discos típico tiene más discos y más memoria, puede y más memoria, puede disponer de varias CPU disponer de varias CPU y trabaja con un y trabaja con un sistema operativo sistema operativo multiusuario. Se multiusuario. Se encarga de dar encarga de dar servicio a un gran servicio a un gran número de usuarios número de usuarios que están conectados que están conectados al sistema a través de al sistema a través de terminales.terminales.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.12.1 Sistemas centralizados.1.12.1 Sistemas centralizados.

DesventajasDesventajasEnorme carga de trabajo a la computadora Enorme carga de trabajo a la computadora central.central.La computadora central tenía que ejecutar el La computadora central tenía que ejecutar el SGBD y las aplicaciones.SGBD y las aplicaciones.La computadora central es la encargada también La computadora central es la encargada también de llevar a cabo las tareas por cuenta de las de llevar a cabo las tareas por cuenta de las terminales, por ejemplo formatear los datos para terminales, por ejemplo formatear los datos para la visualización en pantalla.la visualización en pantalla.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

Arquitectura de Servidor de Arquitectura de Servidor de ArchivoArchivo

Procesamiento distribuido en toda la Procesamiento distribuido en toda la red.red.

Arquitectura de servidor de archivosArquitectura de servidor de archivosCaracterísticas:Características:

El servidor almacena los archivos El servidor almacena los archivos que el SGBD y las aplicaciones que el SGBD y las aplicaciones necesitan.necesitan.El SGBD y las aplicaciones se El SGBD y las aplicaciones se ejecutan en cada estación de ejecutan en cada estación de trabajo, solicitando el archivo al trabajo, solicitando el archivo al servidor cada vez que es necesarioservidor cada vez que es necesario

Desventajas:Desventajas:Gran cantidad de tráfico en la redGran cantidad de tráfico en la redUna copia del SGBD en cada estación Una copia del SGBD en cada estación de trabajode trabajoEl control de concurrencia, integridad El control de concurrencia, integridad y recuperación son muy complejos.y recuperación son muy complejos.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.12.2 Sistemas 1.12.2 Sistemas cliente/servidor.cliente/servidor.

Las PC son ahora más rápidas, más potentes y más baratas, Las PC son ahora más rápidas, más potentes y más baratas, los sistemas se han ido distanciando de la arquitectura los sistemas se han ido distanciando de la arquitectura centralizada. centralizada. Como consecuencia, los sistemas centralizados actúan hoy Como consecuencia, los sistemas centralizados actúan hoy como como sistemas servidores sistemas servidores que satisfacen las peticiones que satisfacen las peticiones generadas por los generadas por los sistemas clientessistemas clientes..El término cliente-servidor hace referencia ala forma en que El término cliente-servidor hace referencia ala forma en que interactúan los componentes de para formar el sistema.interactúan los componentes de para formar el sistema.Hay un proceso Hay un proceso clientecliente que que necesita algún recursonecesita algún recurso y un y un servidorservidor que que proporciona el recursoproporciona el recurso. No es obligatorio que el . No es obligatorio que el cliente y el servidor residan en la misma máquina.cliente y el servidor residan en la misma máquina.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.12.2 Sistemas 1.12.2 Sistemas cliente/servidor.cliente/servidor.

La funcionalidad de una base de datos se puede dividir a La funcionalidad de una base de datos se puede dividir a grandes rasgos en dos partes: la parte visible al usuario y el grandes rasgos en dos partes: la parte visible al usuario y el sistema subyacente. sistema subyacente.

El sistema subyacente El sistema subyacente gestionagestiona el acceso a las estructuras, la el acceso a las estructuras, la evaluación y optimización de consultas, el control de evaluación y optimización de consultas, el control de concurrencia y la recuperación.concurrencia y la recuperación.La parte visible al usuario de un sistema de base de datos está La parte visible al usuario de un sistema de base de datos está formado por herramientas como formularios, diseñadores de formado por herramientas como formularios, diseñadores de informes y facilidades gráficas de informes y facilidades gráficas de interfaz de usuariointerfaz de usuario. .

La interfaz entre la parte visible al usuario y el sistema La interfaz entre la parte visible al usuario y el sistema subyacente puede ser SQL o una aplicación.subyacente puede ser SQL o una aplicación.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.12.2 Sistemas 1.12.2 Sistemas cliente/servidor.cliente/servidor.Los sistemas servidores de Los sistemas servidores de

transacciones o servidores de transacciones o servidores de consultas, proporcionan una consultas, proporcionan una interfaz a través de la cual los interfaz a través de la cual los clientes pueden enviar peticiones clientes pueden enviar peticiones para realizar una acción que el para realizar una acción que el servidor ejecutará y cuyos servidor ejecutará y cuyos resultados se devolverán al resultados se devolverán al cliente.cliente.Los sistemas servidores de datos Los sistemas servidores de datos permiten a los clientes permiten a los clientes interaccionar con los servidores interaccionar con los servidores realizando peticiones de lectura o realizando peticiones de lectura o modificación de datos en unidades modificación de datos en unidades tales como archivos o páginas. Los tales como archivos o páginas. Los servidores de datos de los SGDB servidores de datos de los SGDB soportan unidades de datos de soportan unidades de datos de menor tamaño que los archivos, menor tamaño que los archivos, como páginas, tuplas u objetos. como páginas, tuplas u objetos. Proporcionan facilidades de Proporcionan facilidades de indexación de datos, así como indexación de datos, así como facilidades de transacción de facilidades de transacción de modo que los datos nunca se modo que los datos nunca se quedan en un estado inconsistente quedan en un estado inconsistente si falla una máquina cliente o un si falla una máquina cliente o un proceso.proceso.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.12.2 Sistemas 1.12.2 Sistemas cliente/servidor.cliente/servidor.

La arquitectura del La arquitectura del servidor de servidor de transacciones es, la transacciones es, la arquitectura más arquitectura más ampliamente utilizada.ampliamente utilizada.

un sistema servidor de un sistema servidor de transacciones típico transacciones típico consiste en múltiples consiste en múltiples procesos accediendo a procesos accediendo a los datos en una los datos en una memoria compartidamemoria compartida

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

Arquitectura cliente-servidor en Arquitectura cliente-servidor en dos niveles.dos niveles.

El cliente (nivel 1) es responsable de la El cliente (nivel 1) es responsable de la presentación de los datos al usuario.presentación de los datos al usuario.El servidor (nivel 2) es responsable de El servidor (nivel 2) es responsable de suministrar servicios de datos al clientesuministrar servicios de datos al cliente

Ventajas:Ventajas:Amplio acceso a BD existentes.Amplio acceso a BD existentes.Alto y creciente desempeño.Alto y creciente desempeño.Reducción en el costo de hw.Reducción en el costo de hw.Reducción en el costo de comunicación.Reducción en el costo de comunicación.Incrementa la consistencia.Incrementa la consistencia.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

Arquitectura cliente-servidor en Arquitectura cliente-servidor en dos niveles.dos niveles.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

Arquitectura cliente-servidor en Arquitectura cliente-servidor en dos niveles.dos niveles.

El lado del cliente presentaba dos El lado del cliente presentaba dos problemas relacionados con la problemas relacionados con la escalabilidad.escalabilidad.

Cliente ‘Gordo’, necesitaba demasiados Cliente ‘Gordo’, necesitaba demasiados recursos para correr efectivamente recursos para correr efectivamente (memoria, procesador, velocidad de (memoria, procesador, velocidad de procesamiento, etc).procesamiento, etc).Las tareas de administración del lado del Las tareas de administración del lado del cliente eran bastante significativas.cliente eran bastante significativas.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

Arquitectura cliente-servidor en Arquitectura cliente-servidor en tres niveles.tres niveles.

Surge en 1995. La nueva arquitectura Surge en 1995. La nueva arquitectura proponía tres niveles cada uno de los proponía tres niveles cada uno de los cuales corre en diferentes plataformas.cuales corre en diferentes plataformas.

Nivel 1. Interfaz de usuario. Se ejecuta en la Nivel 1. Interfaz de usuario. Se ejecuta en la computadora del usuario final (Cliente delgado)computadora del usuario final (Cliente delgado)Nivel 2. Lógica del negocio y procesamiento de Nivel 2. Lógica del negocio y procesamiento de datos. Se ejecuta en un servidor que a menudo datos. Se ejecuta en un servidor que a menudo se denomina servidor de aplicaciones.se denomina servidor de aplicaciones.Nivel 3. SGBD. Almacena los datos requeridos Nivel 3. SGBD. Almacena los datos requeridos por el nivel intermedio. Este nivel puede por el nivel intermedio. Este nivel puede ejecutarse en un servidor independiente, ejecutarse en un servidor independiente, denominado servidor de base de datos.denominado servidor de base de datos.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

Arquitectura cliente-servidor en tres niveles.Arquitectura cliente-servidor en tres niveles.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

Arquitectura cliente-servidor en Arquitectura cliente-servidor en tres niveles.tres niveles.

VentajasVentajasEl hardware es menos costoso ya que utiliza El hardware es menos costoso ya que utiliza “clientes delgados”.“clientes delgados”.El mantenimiento de las aplicaciones esta El mantenimiento de las aplicaciones esta centralizado, al transferir la lógica de negocios centralizado, al transferir la lógica de negocios desde las plataformas de los usuarios finales a desde las plataformas de los usuarios finales a un único servidor de aplicaciones. Elimina un único servidor de aplicaciones. Elimina problemas de distribución de sw.problemas de distribución de sw.Mayor modularidad, resulta mas sencillo Mayor modularidad, resulta mas sencillo modificar o sustituir uno o dos niveles sin que los modificar o sustituir uno o dos niveles sin que los otros se vean afectados.otros se vean afectados.Resulta más fácil equilibrar la carga de Resulta más fácil equilibrar la carga de procesamiento al separar la lógica principal de procesamiento al separar la lógica principal de negocio de las funciones de base de datos.negocio de las funciones de base de datos.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

Arquitectura cliente-servidor en Arquitectura cliente-servidor en multi-niveles.multi-niveles.

La arquitectura multinivel se utiliza en La arquitectura multinivel se utiliza en aquellas aplicaciones que pueden aquellas aplicaciones que pueden beneficiarse de ser divididas en capas de beneficiarse de ser divididas en capas de componentes. componentes. La suma de los niveles forma el todo. La suma de los niveles forma el todo. La integridad de cada nivel queda La integridad de cada nivel queda independiente de los otros.independiente de los otros.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

Arquitectura cliente-servidor en Arquitectura cliente-servidor en multi-niveles.multi-niveles.

En las aplicaciones En las aplicaciones Multi-niveles, los tres Multi-niveles, los tres componentes están componentes están contenidos en capas contenidos en capas totalmente totalmente independientes y independientes y separadas.separadas.Esta separación entre Esta separación entre las capas de las capas de Tecnología, Reglas de Tecnología, Reglas de Negocio y Base de Negocio y Base de datos, posibilita datos, posibilita utilizar, reemplazar o utilizar, reemplazar o re-utilizar cada re-utilizar cada componente, en componente, en nuevas combinaciones nuevas combinaciones conforme a requisitos conforme a requisitos empresariales empresariales específicos y específicos y dinámicos. dinámicos.

Interfaz

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.12.3 Sistemas paralelos.1.12.3 Sistemas paralelos.

Mejoran la velocidad de procesamiento y de E/S Mejoran la velocidad de procesamiento y de E/S mediante la utilización de CPU y discos en mediante la utilización de CPU y discos en paralelo. paralelo. La fuerza que ha impulsado a los sistemas La fuerza que ha impulsado a los sistemas paralelos de bases de datos ha sido la demanda paralelos de bases de datos ha sido la demanda de aplicaciones que manejan bases de datos muy de aplicaciones que manejan bases de datos muy grandes (del orden de terabytes, esto es, 1012 grandes (del orden de terabytes, esto es, 1012 bytes) o que tienen que procesar un número bytes) o que tienen que procesar un número enorme de transacciones por segundo (del orden enorme de transacciones por segundo (del orden de miles de transacciones por segundo). Los de miles de transacciones por segundo). Los sistemas de bases de datos centralizados o sistemas de bases de datos centralizados o cliente-servidor no son suficientemente potentes cliente-servidor no son suficientemente potentes para soportar tales aplicaciones.para soportar tales aplicaciones.Una máquina paralela de grano grueso consiste en Una máquina paralela de grano grueso consiste en un pequeño número de potentes procesadores; un pequeño número de potentes procesadores; una máquina masivamente paralela o de grano una máquina masivamente paralela o de grano fino utiliza miles de procesadores más pequeños.fino utiliza miles de procesadores más pequeños.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.12.3 Sistemas paralelos.1.12.3 Sistemas paralelos.

La ganancia de La ganancia de velocidad y la velocidad y la ampliabilidad son dos ampliabilidad son dos aspectos importantes aspectos importantes en el estudio del en el estudio del paralelismo. paralelismo. La ganancia de La ganancia de velocidad se refiere a velocidad se refiere a la ejecución en menos la ejecución en menos tiempo de una tarea tiempo de una tarea dada mediante el dada mediante el incremento del grado incremento del grado de paralelismo. de paralelismo. La ampliabilidad se La ampliabilidad se refiere al manejo de refiere al manejo de transacciones más transacciones más largas mediante el largas mediante el incremento del grado incremento del grado de paralelismo.de paralelismo.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.12.3 Sistemas paralelos.1.12.3 Sistemas paralelos.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.12.4 Sistemas distribuidos.1.12.4 Sistemas distribuidos.

En un sistema distribuido de bases de En un sistema distribuido de bases de datos se almacena la base de datos en datos se almacena la base de datos en varias computadoras. Varios medios de varias computadoras. Varios medios de comunicación, como las redes de alta comunicación, como las redes de alta velocidad o las líneas telefónicas, son los velocidad o las líneas telefónicas, son los que pueden poner en contacto las distintas que pueden poner en contacto las distintas computadoras de un sistema distribuido.computadoras de un sistema distribuido.

No comparten ni memoria ni discos. Las No comparten ni memoria ni discos. Las computadoras de un sistema distribuido computadoras de un sistema distribuido pueden variar en tamaño y función pueden variar en tamaño y función pudiendo abarcar desde las estaciones de pudiendo abarcar desde las estaciones de trabajo a los grandes sistemas.trabajo a los grandes sistemas.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.12.4 Sistemas distribuidos.1.12.4 Sistemas distribuidos.

Las bases de datos distribuidas normalmente se encuentran en varios lugares geográfico

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

1.12.4 Sistemas distribuidos.1.12.4 Sistemas distribuidos.Datos compartidos. La principal ventaja de Datos compartidos. La principal ventaja de construir un sistema distribuido de bases de datos construir un sistema distribuido de bases de datos es poder disponer de un entorno donde los es poder disponer de un entorno donde los usuarios puedan acceder desde una única usuarios puedan acceder desde una única ubicación a los datos que residen en otras ubicación a los datos que residen en otras ubicaciones.ubicaciones.Autonomía. La principal ventaja de compartir Autonomía. La principal ventaja de compartir datos por medio de distribución de datos es que datos por medio de distribución de datos es que cada ubicación es capaz de mantener un grado de cada ubicación es capaz de mantener un grado de control sobre los datos que se almacenan control sobre los datos que se almacenan localmente.localmente.Disponibilidad. Si un sitio de un sistema distribuido Disponibilidad. Si un sitio de un sistema distribuido falla, los sitios restantes pueden seguir falla, los sitios restantes pueden seguir trabajando. En particular, si los elementos de trabajando. En particular, si los elementos de datos están replicados en varios sitios, una datos están replicados en varios sitios, una transacción que necesite un elemento de datos en transacción que necesite un elemento de datos en particular puede encontrarlo en varios sitios. De particular puede encontrarlo en varios sitios. De este modo, el fallo de un sitio no implica la caída este modo, el fallo de un sitio no implica la caída del sistema.del sistema.

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

TareaTarea

Imagina que te encuentras a cargo de las Imagina que te encuentras a cargo de las operaciones de la base de datos de una operaciones de la base de datos de una empresa cuyo trabajo principal es el de empresa cuyo trabajo principal es el de procesar transacciones. La empresa crece procesar transacciones. La empresa crece rápidamente cada año y el sistema rápidamente cada año y el sistema informático actual se ha quedado pequeño. informático actual se ha quedado pequeño. ¿Qué arquitectura sería más conveniente ¿Qué arquitectura sería más conveniente para la BD de tu empresa?para la BD de tu empresa?¿Qué o cuáles factores consideraste para tu ¿Qué o cuáles factores consideraste para tu decisión y por qué?decisión y por qué?Enviar por correo con Nombre de archivo: Enviar por correo con Nombre de archivo: Tarea4-NomAlumno.doc ej: Tarea4-Tarea4-NomAlumno.doc ej: Tarea4-Areli.docAreli.doc

Bases de Datos IBases de Datos I MTI Remedios Fabián VelascoMTI Remedios Fabián VelascoUniversidad del Mar - 07/2008Universidad del Mar - 07/2008

Bibliografía utilizadaBibliografía utilizada

Libros: Libros: Fundamentos de Bases de Datos. Abraham Fundamentos de Bases de Datos. Abraham Silberschatz, Henry F. Korth, S. SudarshanSilberschatz, Henry F. Korth, S. SudarshanSistemas de Bases de Datos. Thomas M. Sistemas de Bases de Datos. Thomas M. Connolly y Connolly y Carolyn BeggCarolyn Begg

Papers:Papers:A relational model of data for large shared data banks. E.F. Codd. IBM Research Laboratory San Jose California. 1983.El modelo relacional de bases de datos. Javier Quiroz. Boletín de Política Informática 2003.

Imágenes:Imágenes:Libro de SilberschatzLibro de SilberschatzDiapositivas de apoyo del libro de ConnollyDiapositivas de apoyo del libro de Connolly