Diseno de Bases de Datos I - Unidad I

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 11

Diseño de bases de datos I

Ingeniería Informática

1. Gestor de Bases de datos MySQL


Una base de datos es una colección estructurada de datos. Puede ser cualquier cosa, desde
una simple lista de compras hasta una galería de imágenes o la gran cantidad de
información en una red corporativa.

Para agregar, acceder y procesar datos almacenados en una base de datos de computadora,
necesita un sistema de administración de base de datos como MySQL Server. Dado que las
computadoras son muy buenas para manejar grandes cantidades de datos, los sistemas de
administración de bases de datos juegan un papel central en la informática, como utilidades
independientes o como partes de otras aplicaciones.

MySQL es un sistema gestor de bases de datos (SGBD, DBMS por sus siglas en inglés) muy
conocido y ampliamente usado por su simplicidad y notable rendimiento. Aunque carece de
algunas características avanzadas disponibles en otros SGBD del mercado, es una opción
atractiva tanto para aplicaciones comerciales, como de entretenimiento precisamente por
su facilidad de uso y tiempo reducido de puesta en marcha. Esto y su libre distribución en
Internet bajo licencia GPL le otorgan como beneficios adicionales (no menos importantes)
contar con un alto grado de estabilidad y un rápido desarrollo.

Una base de datos relacional almacena datos en tablas separadas en lugar de poner todos
los datos en un gran almacén. Las estructuras de la base de datos están organizadas en
archivos físicos optimizados para la velocidad. El modelo lógico, con objetos como bases de
datos, tablas, vistas, filas y columnas, ofrece una programación entorno flexible. Configura
reglas que gobiernan las relaciones entre diferentes campos de datos, como uno a uno, uno
a muchos, únicos, obligatorios u opcionales, y "punteros" entre diferentes tablas. La base de
datos aplica estas reglas, de modo que con una base de datos bien diseñada, su aplicación
nunca ve inconsistentes, datos duplicados, huérfanos, desactualizados o faltantes.

La parte SQL de "MySQL" significa "Lenguaje de consulta estructurado". SQL es el lenguaje


más común utilizado para acceder a bases de datos. Dependiendo de su entorno de
programación, usted podría ingresar SQL directamente (por ejemplo, para generar informes),
incrustar sentencias SQL en el código escrito en otro idioma, o usar una API específica del
idioma que oculte la sintaxis SQL.

Descarga en instalación de MySQL


Para ver los pasos a seguir en el proceso de descarga e instalación de MySQL Workbench
se facilitan los siguientes enlaces:

Documentación de sitio oficial: https://dev.mysql.com/downloads/mysql/


Video tutorial para descarga e instalación: https://youtu.be/FQ7XAygh0qA

1
Diseño de bases de datos I
Ingeniería Informática

2. Fundamentos de bases de datos


Un sistema gestor de bases de datos (SGBD) consiste en una colección de datos
interrelacionados y un conjunto de programas para acceder a dichos datos. La colección de
datos, normalmente denominada base de datos contiene información relevante para una
empresa. El objetivo principal de un SGBD es proporcionar una forma de almacenar y
recuperar la información de una base de datos de manera que sea tanto práctica como
eficiente (Silberschatz, 2006).

Una base de datos es un conjunto de datos persistentes que es utilizado por los sistemas de
aplicación de alguna empresa dada. En forma más precisa, decimos que los datos de la
base de datos "persisten" debido en primer lugar a que una vez aceptados por el DBMS para
entrar en la base de datos, en lo sucesivo sólo pueden ser removidos de la base de datos
por alguna solicitud explícita al DBMS, no como un mero efecto lateral de (por ejemplo)
algún programa que termina su ejecución (Date, 2001).

Las organizaciones han reconocido, desde hace mucho tiempo, la importancia de


administrar recursos principales como mano de obra y materias primas. La información se
ha colocado en un lugar adecuado como recurso principal. Los tomadores de decisiones
están comenzando a comprender que la información no es sólo un subproducto de la
conducción, sino que a la vez alimenta a los negocios y puede ser el factor crítico para la
determinación del éxito o fracaso de éstos.

Los términos “datos” e “información” no significan lo mismo. Dato es el plural en español de


la palabra latina datum, que significa literalmente “algo dado”, o un hecho que puede tomar
la forma de un número, un enunciado o una imagen. Los datos son la materia prima en la
producción de información. Por otra parte, la información son datos que adquieren
significado dentro de un contexto. La información puede consistir en datos primarios o
datos manipulados a través de la suma, la resta, la división o cualquier otra operación que
conduzca a una mayor comprensión de una situación (Espitia).

Dado que la información es tan importante en la mayoría de las organizaciones, los


científicos informáticos han desarrollado un gran cuerpo de conceptos y técnicas para la
gestión de los datos. Estos conceptos y técnicas constituyen el objetivo central de este libro
(Silberschatz, 2006).

2.1 Abstracción de los datos


Está claro que todos los usuarios ven los datos en distintas formas. Nos referiremos a la
manera en que un usuario imagina y ve los datos como vista de usuario; esto genera un
inconveniente: distintos usuarios tienen distintas vistas de usuarios (Kendall, 2011). Dado
que muchos de los usuarios de sistemas de bases de datos no tienen formación en
informática, los desarrolladores ocultan esa complejidad a los usuarios mediante varios
niveles de abstracción para simplificar la interacción de los usuarios con el sistema:

2
Diseño de bases de datos I
Ingeniería Informática

● Nivel físico. El nivel más bajo de abstracción describe cómo se almacenan


realmente los datos. El nivel físico describe en detalle las estructuras de datos
complejas de bajo nivel.

● Nivel lógico. El nivel inmediatamente superior de abstracción describe qué datos se


almacenan en la base de datos y qué relaciones existen entre esos datos. El nivel
lógico, por tanto, describe toda la base de datos en términos de un número pequeño
de estructuras relativamente simples. Aunque la implementación de esas estructuras
simples en el nivel lógico puede involucrar estructuras complejas del nivel físico, los
usuarios del nivel lógico no necesitan preocuparse de esta complejidad. Los
administradores de bases de datos, que deben decidir la información que se guarda
en la base de datos, usan el nivel de abstracción lógico.

● Nivel de vistas. El nivel más elevado de abstracción sólo describe parte de la base de
datos. Aunque el nivel lógico usa estructuras más simples, queda algo de
complejidad debido a la variedad de información almacenada en las grandes bases
de datos. Muchos usuarios del sistema de bases de datos no necesitan toda esta
información; en su lugar sólo necesitan tener acceso a una parte de la base de
datos. El nivel de abstracción de vistas existe para simplificar su interacción con el
sistema. El sistema puede proporcionar muchas vistas para la misma base de datos.

3
Diseño de bases de datos I
Ingeniería Informática

2.2 Usuarios de las bases de datos


Uno de los objetivos principales de los sistemas de bases de datos es recuperar información
de la base de datos y almacenar en ella información nueva. Las personas que trabajan con
una base de datos se pueden clasificar como usuarios o administradores de bases de datos.
Hay cuatro tipos diferentes de usuarios de los sistemas de bases de datos, diferenciados
por la forma en que esperan interactuar con el sistema. Se han diseñado diferentes tipos de
interfaces de usuario para los diferentes tipos de usuarios.

Los usuarios normales son usuarios no sofisticados que interactúan con el sistema
invocando alguno de los programas de aplicación que se han escrito previamente. Por
ejemplo, considere un usuario que desea averiguar el saldo de su cuenta en World Wide
Web. Ese usuario puede acceder a un formulario en el que introduce su número de cuenta.
Un programa de aplicación en el servidor Web recupera entonces el saldo de la cuenta,
usando el número de cuenta proporcionado, y devuelve la información al usuario. La interfaz
de usuario habitual para los usuarios normales es una interfaz de formularios, donde el
usuario puede rellenar los campos correspondientes del formulario. Los usuarios normales
también pueden limitarse a leer informes generados por la base de datos.

Los programadores de aplicaciones son profesionales informáticos que escriben


programas de aplicación. Los programadores de aplicaciones pueden elegir entre muchas
herramientas para desarrollar las interfaces de usuario.

Los usuarios sofisticados interactúan con el sistema sin escribir programas. En su lugar,
formulan sus consultas en un lenguaje de consultas de bases de datos. Remiten cada una
de las consultas al procesador de consultas, cuya función es dividir las instrucciones LMD
en instrucciones que el gestor de almacenamiento entienda. Los analistas que remiten las
consultas para explorar los datos de la base de datos entran en esta categoría.

Los usuarios especializados son usuarios sofisticados que escriben aplicaciones de bases
de datos especializadas que no encajan en el marco tradicional del procesamiento de datos.
Entre estas aplicaciones están los sistemas de diseño asistido por computadora, los
sistemas de bases de conocimientos y los sistemas expertos, los sistemas que almacenan
datos con tipos de datos complejos (por ejemplo, los datos gráficos y los datos de sonido) y
los sistemas de modelado del entorno.

2.3 El usuario administrador


Una de las principales razones de usar DBMS es tener un control centralizado tanto de los
datos como de los programas que tienen acceso a esos datos. La persona que tiene ese
control central sobre el sistema se denomina administrador de bases de datos (ABD). Las
funciones del ABD incluyen:
● La definición del esquema. El ABD crea el esquema original de la base de datos
mediante la ejecución de un conjunto de instrucciones de definición de datos en el
LDD.
● La definición de la estructura y del método de acceso.

4
Diseño de bases de datos I
Ingeniería Informática

● La modificación del esquema y de la organización física. El ABD realiza


modificaciones en el esquema y en la organización física para reflejar las
necesidades cambiantes de la organización, o para alterar la organización física a fin
de mejorar el rendimiento.
● La concesión de autorización para el acceso a los datos. Mediante la concesión de
diferentes tipos de autorización, el administrador de bases de datos puede regular
las partes de la base de datos a las que puede tener acceso cada usuario. La
información de autorización se guarda en una estructura especial del sistema que el
SGBD consulta siempre que alguien intenta tener acceso a los datos del sistema.
● El mantenimiento rutinario. Algunos ejemplos de las actividades de mantenimiento
rutinario del administrador de la base de datos son:
○ Copia de seguridad periódica de la base de datos, bien sobre cinta o sobre
servidores remotos, para impedir la pérdida de datos en caso de desastres
como las inundaciones.
○ Asegurarse de que se dispone de suficiente espacio libre en disco para las
operaciones normales y aumentar el espacio en disco según sea necesario.
○ Supervisar los trabajos que se ejecuten en la base de datos y asegurarse de
que el rendimiento no se degrade debido a que algún usuario haya remitido
tareas muy costosas.

2.4 Sistema de administración de bases de datos


Un Sistema de Administración de Bases de Datos (DBMS) es software que permite a una
organización centralizar los datos, administrarlos en forma eficiente y proveer acceso a los
datos almacenados mediante programas de aplicación. El DBMS actúa como una interfaz
entre los programas de aplicación y los archivos de datos físicos. Cuando el programa de
aplicación solicita un elemento de datos, como el sueldo bruto, el DBMS lo busca en la base
de datos y lo presenta al programa de aplicación. Si utilizara archivos de datos tradicionales,
el programador tendría que especificar el tamaño y formato de cada elemento de datos
utilizado en el programa y después decir a la computadora en donde están ubicados.

5
Diseño de bases de datos I
Ingeniería Informática

El DBMS libera al programador o al usuario final de la tarea de comprender en dónde y cómo


están almacenados los datos en realidad, al separar las vistas lógica y física de los datos. La
vista lógica presenta los datos según la manera en que los perciben los usuarios finales o
los especialistas de negocios, mientras que la vista física muestra la verdadera forma en
que están organizados y estructurados los datos en los medios de almacenamiento físicos.
El software de administración de bases de datos se encarga de que la base de datos física
esté disponible para las diferentes vistas lógicas requeridas por los usuarios (Laudon &
Jane, 2012).

6
Diseño de bases de datos I
Ingeniería Informática

3. Modelo Entidad - Relación


El modelo de datos entidad–relación (E-R) se desarrolló para facilitar el diseño de bases de
datos permitiendo la especificación de un esquema de la empresa que representa la
estructura lógica global de la base de datos. El modelo de datos E-R es uno de los diferentes
modelos de datos semánticos; el aspecto semántico del modelo radica en la representación
del significado de los datos. El modelo E-R resulta muy útil para relacionar los significados e
interacciones de las empresas reales con el esquema conceptual. Debido a esta utilidad,
muchas herramientas de diseño de bases de datos se basan en los conceptos del modelo
E-R. El modelo de datos E-R emplea tres conceptos básicos: los conjuntos de entidades, los
conjuntos de relaciones y los atributos.

El modelo ER es uno de los enfoques de modelización de datos que más se utiliza


actualmente por su simplicidad y legibilidad. Su legibilidad se ve favorecida porque
proporciona una notación diagramática muy comprensiva. Es una herramienta útil tanto
para ayudar al diseñador a reflejar en un modelo conceptual los requisitos del mundo real de
interés como para comunicarse con el usuario final sobre el modelo conceptual obtenido y,
de este modo, poder verificar si satisface sus requisitos.

El origen del modelo ER se encuentra en trabajos efectuados por Peter Chen en 1976.
Posteriormente, muchos otros autores han descrito variantes y/o extensiones de este
modelo. Así pues, en la literatura se encuentran muchas formas diferentes del modelo ER
que pueden variar simplemente en la notación diagramática o en algunos de los conceptos
en que se basan para modelizar los datos.

3.1 Elementos de construcción


El nombre completo del modelo ER es entity-relationship, y proviene del hecho de que los
principales elementos que incluye son las entidades y las interrelaciones (entities y
relationships). El modelo de datos E-R emplea tres conceptos básicos: los conjuntos de
entidades, los conjuntos de relaciones y los atributos.

Por entidad entendemos un objeto del mundo real que podemos distinguir del resto de
objetos y del que nos interesan algunas propiedades. Algunos ejemplos de entidad son un
empleado, un producto o un despacho. También son entidades otros elementos del mundo
real de interés, menos tangibles pero igualmente diferenciables del resto de objetos; por
ejemplo, una asignatura impartida en una universidad, un préstamo bancario, un pedido de
un cliente, etc.

7
Diseño de bases de datos I
Ingeniería Informática

Las propiedades de los objetos que nos interesan se denominan atributos. Sobre una
entidad empleado nos puede interesar, por ejemplo, tener registrados su número de
identificación, su número de seguro social, su nombre, su apellido y su sueldo como
atributos.

Se define una relación como una asociación entre entidades. Una interrelación puede
asociar dos o más entidades. Las interrelaciones de grado dos se denominan también
interrelaciones binarias. Todas las relaciones de grado mayor que dos se denominan, en
conjunto, interrelaciones n-arias. Así pues, una interrelación n-aria puede tener grado tres y
ser una interrelación ternaria, puede tener grado cuatro y ser una interrelación cuaternaria,
etc.

3.2 Conjuntos de entidades


Una entidad es una “cosa” u “objeto” del mundo real que es distinguible de todos los demás
objetos. Por ejemplo, cada persona de una empresa es una entidad. Una entidad tiene un
conjunto de propiedades, y los valores de algún conjunto de propiedades pueden identificar
cada entidad de forma unívoca. Por ejemplo, el número de identificación, identifica
unívocamente una persona concreta de la empresa. Las entidades pueden ser concretas,
como las personas o los libros, o abstractas, como los préstamos, las vacaciones o los
conceptos.

Un conjunto de entidades es un conjunto de entidades del mismo tipo que comparten las
mismas propiedades, o atributos. El conjunto de todas las personas que son clientes en un
banco dado, por ejemplo, se puede definir como el conjunto de entidades cliente.

Cada entidad se representa mediante un conjunto de atributos. Los atributos son


propiedades descriptivas que posee cada miembro de un conjunto de entidades. Cada

8
Diseño de bases de datos I
Ingeniería Informática

entidad tiene un valor para cada uno de sus atributos. Por ejemplo, una entidad cliente
concreta puede tener el valor 32.112.312 para id_cliente, el valor Santos para
nombre_cliente, el valor Mayor para calle_cliente y el valor Peguerinos para ciudad_cliente.
Por tanto, las bases de datos incluyen una serie de conjuntos de entidades, cada una de las
cuales contiene cierto número de entidades del mismo tipo.

3.3 Conjuntos de atributos


Para cada atributo hay un conjunto de valores permitidos, denominados dominio o conjunto
de valores de ese atributo. El dominio del atributo nombre_cliente puede ser el conjunto de
todas las cadenas de texto de una cierta longitud. La designación de un atributo para un
conjunto de entidades expresa que la base de datos almacena información parecida relativa
a cada entidad del conjunto de entidades; sin embargo, cada entidad puede tener su propio
valor para cada atributo. Posibles atributos del conjunto de entidades cliente son id_cliente,
nombre_cliente, calle_cliente y ciudad_cliente.

Los atributos toman valores nulos cuando las entidades no tienen ningún valor para ese
atributo. El valor nulo también puede indicar “no aplicable”—es decir, que el valor no existe
para esa entidad. Por ejemplo, una persona puede no tener un segundo nombre de pila. Nulo
puede también designar que el valor del atributo es desconocido. Un valor desconocido
puede ser falta (el valor existe pero no se tiene esa información) o desconocido (no se sabe
si ese valor existe realmente o no).

3.4 Conjuntos de relaciones y restricciones


Una relación es una asociación entre varias entidades. Por ejemplo, se puede asociar a un
cliente con una o más tarjetas de crédito, por medio de una relación de posesión. Un
conjunto de relaciones es un conjunto de relaciones del mismo tipo. Formalmente es una
relación matemática con n ¸ 2 de conjuntos de entidades (posiblemente no distintas). Un
ejemplar de la relación de un esquema E-R representa una asociación entre las entidades
citadas en la empresa real que se está modelando. Los conjuntos de relaciones cliente y
Tarjeta Crédito proporcionan un ejemplo de conjunto de relaciones binario—es decir, uno que

9
Diseño de bases de datos I
Ingeniería Informática

implica dos conjuntos de entidades. La mayor parte de los conjuntos de relaciones de los
sistemas de bases de datos son binarios. A veces, no obstante, los conjuntos de relaciones
implican a más de dos conjuntos de entidades.

La correspondencia de cardinalidades, o razón de cardinalidad, expresa el número de


entidades a las que otra entidad se puede asociar mediante un conjunto de relaciones. La
correspondencia de cardinalidades resulta muy útil para describir conjuntos de relaciones
binarias, aunque pueda contribuir a la descripción de conjuntos de relaciones que impliquen
más de dos conjuntos de entidades. Es necesario tener una forma de especificar la manera
de distinguir las entidades pertenecientes a un conjunto de entidades dado.
Conceptualmente cada entidad es distinta; desde el punto de vista de las bases de datos,
sin embargo, la diferencia entre ellas se debe expresar en términos de sus atributos. Por lo
tanto, los valores de los atributos de cada entidad deben ser tales que permitan identificar
unívocamente a esa entidad. En otras palabras, no se permite que ningún par de entidades
de un conjunto de entidades tenga exactamente el mismo valor en todos sus atributos.

Las claves permiten identificar un conjunto de atributos que resulta suficiente para distinguir
las entidades entre sí. Las claves también ayudan a identificar unívocamente las relaciones
y, por tanto, a distinguir las relaciones entre sí.

Un esquema de desarrollo E-R puede definir ciertas restricciones a las que el contenido de la
base de datos se debe adaptar. Para un conjunto de relaciones binarias R entre los
conjuntos de entidades A y B, la correspondencia de cardinalidades debe ser una de las
siguientes:

● Relación de cardinalidad uno a uno (1:1): Cada entidad de A se asocia, a lo sumo, con
una entidad de B, y cada entidad en B se asocia, a lo sumo, con una entidad de A. Es
decir, a cada elemento de la primera entidad le corresponde sólo uno de la segunda
entidad, y viceversa. Por ejemplo, un cliente de hotel ocupa una habitación, o un

10
Diseño de bases de datos I
Ingeniería Informática

grupo de alumnos pertenece a un aula, y a esa aula sólo asiste ese grupo de
alumnos.

● Relación de cardinalidad Uno a varios: Cada entidad de A se asocia con cualquier


número (cero o más) de entidades de B. Cada entidad de B, sin embargo, se puede
asociar, a lo sumo, con una entidad de A. Es decir, a cada elemento de la primera
entidad le corresponde uno o más elementos de la segunda entidad, y a cada
elemento de la segunda entidad le corresponde uno solo de la primera entidad. Por
ejemplo, un proveedor suministra muchos artículos. Y un artículo es suministrado
por solo un proveedor.

● Relación de cardinalidad Varios a uno (N:1) : Cada entidad de A se asocia, a lo sumo,


con una entidad de B. Cada entidad B, sin embargo, se puede asociar con cualquier
número (cero o más) de entidades de A. Se presenta el caso contrario de 1:N. Es
decir, relaciones de muchos a uno. Es el mismo caso que las de uno a muchos.

● Relación de cardinalidad Varios a varios (N:M): Cada entidad de A se asocia con


cualquier número (cero o más) de entidades de B, y cada entidad de B se asocia con
cualquier número (cero o más) de entidades de A. Es decir, a cada elemento de la
primera entidad le corresponde uno o más elementos de la segunda entidad, y a
cada elemento de la segunda entidad le corresponden uno o más elementos de la
primera entidad. Por ejemplo, un vendedor vende muchos artículos, y un artículo es
vendido por muchos vendedores.

11

También podría gustarte