1. 2018
JOHAN
[Nombre de la compañía]
18-3-2018
Fundamentos de Base de Datos
LOGRO DE APRENDIZAJE:
Al finalizar, el estudiante será capaz
de conocer y aplicar el modelo
conceptual para la creación de una
base de datos.
2. I.E.S.T.P “MARÍA ROSARIO ARAOZ PINTO” COMPUTACIÓN E INFORMÁTICA
TALLER DE BASE DE DATOS 1
1. GENERALIDADES
Objetivos de los sistemas de Bases de Datos.
Abstracción de datos: Niveles externo, conceptual e interno.
Modelos de datos.
Lenguaje de definición de datos (DDL).
Lenguaje de manipulación de datos (DML).
Administración de Bases de Datos (DBMS).
Sistemas de gestión de BD = Data Base Management System (DBMS)
Consiste en:
• Una colección de datos interrelacionados y
• Un conjunto de programas para acceder a esos datos.
Objetivo:
Proporcionar un entorno conveniente y eficiente para extraer y almacenar información.
Están diseñados para gestionar grandes bloques de información:
• Definición de estructuras para el almacenamiento de información
• Provee mecanismos para la gestión de información
• Mantenimiento de la seguridad de la información almacenada (caídas del sistema,
accesos no autorizados)
• Control de concurrencia: Provee mecanismos que eviten posibles resultados anómalos
en datos compartidos por varios usuarios
2. DIFICULTADES EN EL PROCESAMIENTO DE ARCHIVOS
• Redundancia e inconsistencia de datos.
• Dificultad en el acceso a los datos.
• Aislamiento de datos.
• Problemas de integridad.
• Problemas de atomicidad
• Anomalías en el acceso concurrente.
• Problemas de seguridad.
3. I.E.S.T.P “MARÍA ROSARIO ARAOZ PINTO” COMPUTACIÓN E INFORMÁTICA
TALLER DE BASE DE DATOS 2
3. ¿QUE ES UNA BASE DE DATOS?
Es un conjunto de datos pertenecientes a un mismo contexto y almacenados sistemáticamente
para su posterior uso.
Un sistema de bases de datos es una colección de archivos interrelacionados y un conjunto de
programas que permitan a los usuarios acceder y modificar estos archivos. Uno de los propósitos
principales de un sistema de bases de datos es proporcionar a los usuarios una visión abstracta
de los datos. Es decir, el sistema esconde ciertos detalles de cómo se almacenan y mantienen los
datos.
Una base de datos es una colección de datos organizados y estructurados según un determinado
modelo de información que refleja no sólo los datos en sí mismos, sino también las relaciones
que existen entre ellos. Una base de datos se diseña con un propósito específico y debe ser
organizada con una lógica coherente. Los datos podrán ser compartidos por distintos usuarios y
aplicaciones, pero deben conservar su integridad y seguridad al margen de las interacciones de
ambos.
4. TECNOLOGÍAS ACTUALES DE LA BASE DE DATOS
La Internet y la creciente digitalización de los negocios generan grandes volúmenes de datos,
que hacen crítica la necesidad de almacenar, administrar, extraer y analizar los datos eficiente y
eficazmente.
El diseño de la tecnología para almacenar y administrar esos datos requiere de especialistas, así
como es necesario conocimiento avanzado para explorar e interpretar la información contenida
en los datos almacenados.
GRIG COMPUTING.- Permite utilizar los datos de forma coordinada sobre todo tipo de
recursos (computo, almacenamiento y aplicaciones específicas)
CLOUD COMPUTING.- Computación en la nube que involucra a un gran número de
computadoras conectadas a través de las redes de comunicación.
DATA MINING.- Encargada de realizar procesos de cálculo para descubrir y buscar
patrones de datos de gran tamaño mediante la inteligencia artificial, aprendizaje
automático y estadísticas.
SISTEMAS OBJETO-RELACIONALES.- Extensión de las bases de datos relacionales
tradicionales, se le proporciona características de la programación orientada a objetos.
5. EVOLUCIÓN DEL USO DE BASES DE DATOS EN LOS SIG
i. Primera generación. Ficheros o Jerarquico
Los primeros programas, entre los cuales se han de incluir los primeros SIG, se caracterizaban
en lo que al almacenamiento de datos respecta por una ausencia completa de cualquier tipo de
almacenamiento estructurado. En estas aplicaciones, los datos no se veían como un elemento
más dentro de un sistema, sino como una parte del propio software o, al menos, como algo
asociado únicamente a un producto particular. Los datos no podían ser hererdados.
Características:
Sistema de gestión de la información muy complejo debido a la vinculación entre
software y datos.
Desarrollo de las aplicaciones en paralelo con el SIG.
No existe gestión de base de datos.
Falta de seguridad e integridad de los datos.
4. I.E.S.T.P “MARÍA ROSARIO ARAOZ PINTO” COMPUTACIÓN E INFORMÁTICA
TALLER DE BASE DE DATOS 3
ii. Segunda generación. Bases de datos en Red
Es esencialmente la misma que el modelo de datos jerárquico; excepto que un
“miembro” (registro hijo) puede pertenecer a más de un “conjunto” (registro padre).
Las redes de conjuntos de una base de datos siempre son implementadas mediante
punteros1
. El manejo de punteros aumenta la complejidad en la consulta de datos y
resta flexibilidad a los sistemas de información.
iii. Tercera generación. Bases de datos relacionales
Una vez que las bases de datos comienzan a tomar su papel en el panorama del software, no
tardan en encontrar su camino dentro de las aplicaciones SIG.
Se adapta el modelo relacional.
Se emplea la arquitectura dual.
Se implementa la arquitectura de capas.
La base de datos del modelo relacional está basado en la teoría de conjuntos y en la lógica de
predicados de primer orden. La técnica consiste en representar los datos como tablas
bidimensionales; este modelo logró la popularidad que hoy sigue teniendo.
iv. Cuarta Generación.
Las bases de datos anteriores son estáticas, pero ante la demanda de nuevas tecnologías, ante
la expansión de los sistemas, a campos muchos más complejos, como los sistemas de diseño
asistido por computador CAD, la manufactura asistida por computador CAM, la automatización
del proceso, la necesidad de integrar datos, texto, voz e imágenes; y ante el desarrollo de
software reutilizable se ha generado una investigación en el campo de las bases de datos. Por lo
tanto ha generado la nueva era de la base de datos orientadas a objeto.
6. APLICACIONES DE LOS SISTEMAS DE BASE DE DATOS
Banca. Para información de los clientes, cuentas y préstamos, y transacciones bancarias.
Líneas aéreas. Para reservas e información de planificación. Las líneas aéreas fueron de
los primeros en usar las bases de datos de forma distribuida geográficamente (los
terminales situados en todo el mundo accedían al sistema de bases de datos
centralizado a través de las líneas telefónicas y otras redes de datos).
Universidades. Para información de los estudiantes, matrículas de las asignaturas y
cursos.
Transacciones de tarjetas de crédito. Para compras con tarjeta de crédito y generación
mensual de extractos.
Telecomunicaciones. Para guardar un registro de las llamadas realizadas, generación
mensual de facturas, manteniendo el saldo de las tarjetas telefónicas de prepago y para
almacenar información sobre las redes de comunicaciones.
Finanzas. Para almacenar información sobre grandes empresas, ventas y compras de
documentos formales financieros, como bolsa y bonos.
1
En ciencias de la computación, un puntero es un objeto del lenguaje de programación, cuyo valor se
refiere a (o "apunta a") otro valor almacenado en otra parte de la memoria del ordenador utilizando su
dirección.
5. I.E.S.T.P “MARÍA ROSARIO ARAOZ PINTO” COMPUTACIÓN E INFORMÁTICA
TALLER DE BASE DE DATOS 4
Ventas. Para información de clientes, productos y compras.
Industria - Producción. Para la gestión de la cadena de producción y para el seguimiento
de la producción de elementos en las factorías, inventarios de elementos en almacenes
y pedidos de elementos.
Recursos humanos. Para información sobre los empleados, salarios, impuestos y
beneficios, y para la generación de las nóminas.
En la Investigación. Usa los repositorios y las bibliotecas virtuales.
7. ABSTRACCIÓN DE DATOS
Para que el sistema sea útil debe recuperar los datos eficientemente. Esta preocupación ha
conducido al diseño de estructuras de datos complejas para la representación de los datos en la
base de datos. Como muchos usuarios de sistemas de bases de datos no están familiarizados
con computadores, los desarrolladores esconden la complejidad a los usuarios a través de varios
niveles de abstracción para simplificar la interacción de los usuarios con el sistema:
• Nivel físico: El nivel más bajo de abstracción describe cómo se almacenan realmente los
datos. En el nivel físico se describen en detalle las estructuras de datos complejas de
bajo nivel.
• Nivel lógico: El siguiente nivel más alto de abstracción describe qué datos se almacenan
en la base de datos y qué relaciones existen entre esos datos. La base de datos completa
se describe así en términos de un número pequeño de estructuras relativamente
simples. Los administradores de bases de datos, que deben decidir la información que
se mantiene en la base de datos, usan el nivel lógico de abstracción.
• Nivel de vistas: El nivel más alto de abstracción describe sólo parte de la base de datos
completa. A pesar del uso de estructuras más simples en el nivel lógico, queda algo de
complejidad, debido a la variedad de información almacenada en una gran base de
datos. Muchos usuarios del sistema de base de datos no necesitan toda esta
información. En su lugar, tales usuarios necesitan acceder sólo a una parte de la base de
datos. Para que su interacción con el sistema se simplifique, se define la abstracción del
nivel de vistas. El sistema puede proporcionar muchas vistas para la misma base de
datos.
8. MODELOS DE LOS DATOS
Bajo la estructura de la base de datos se encuentra el modelo de datos: una colección de
herramientas conceptuales para describir los datos, las relaciones, la semántica y las
restricciones de consistencia. Para ilustrar el concepto de un modelo de datos, describimos dos
modelos de datos en este apartado: el modelo Entidad-Relación y el modelo relacional. Los
diferentes modelos de datos que se han propuesto se clasifican en tres grupos diferentes:
modelos lógicos basados en objetos, modelos lógicos basados en registros y modelos físicos.
6. I.E.S.T.P “MARÍA ROSARIO ARAOZ PINTO” COMPUTACIÓN E INFORMÁTICA
TALLER DE BASE DE DATOS 5
a) MODELO ENTIDAD-RELACIÓN
El modelo de datos entidad-relación (E-R) está basado en una percepción del mundo
real que consta de una colección de objetos básicos, llamados entidades, y de relaciones
entre estos objetos. Una entidad es una «cosa» u «objeto» en el mundo real que es
distinguible de otros objetos. Por ejemplo, cada persona es una entidad.
Las entidades se describen en una base de datos mediante un conjunto de atributos.
Por ejemplo, los atributos número-cuenta y saldo describen una cuenta particular de un
banco y pueden ser atributos del conjunto de entidades cuenta.
Una relación es una asociación entre varias entidades. Por ejemplo, una relación
impositor asocia un cliente con cada cuenta que tiene. El conjunto de todas las
entidades del mismo tipo, y el conjunto de todas las relaciones del mismo tipo, se
denominan respectivamente conjunto de entidades y conjunto de relaciones.
La estructura lógica general de una base de datos se puede expresar gráficamente
mediante un diagrama ER, que consta de los siguientes componentes:
• Rectángulos, que representan conjuntos de entidades.
• Elipses, que representan atributos.
• Rombos, que representan relaciones entre conjuntos de entidades.
• Líneas, que unen los atributos con los conjuntos de entidades y los conjuntos
de entidades con las relaciones.
Como ilustración, considérese parte de una base de datos de un sistema bancario
consistente en clientes y cuentas que tienen esos clientes. En la Figura anterior se
muestra el diagrama E-R correspondiente. El diagrama E-R indica que hay dos conjuntos
de entidades cliente y cuenta, con los atributos descritos anteriormente. El diagrama
también muestra la relación impositor entre cliente y cuenta. Además de entidades y
relaciones, el modelo E-R representa ciertas restricciones que los contenidos de la base
de datos deben cumplir. Una restricción importante es la correspondencia de
cardinalidades, que expresa el número de entidades con las que otra entidad se puede
asociar a través de un conjunto de relaciones. Por ejemplo, si cada cuenta puede
pertenecer sólo a un cliente, el modelo puede expresar esta restricción.
b) MODELO RELACIONAL
En el modelo relacional se utiliza un grupo de tablas para representar los datos y las
relaciones entre ellos. Cada tabla está compuesta por varias columnas, y cada columna
tiene un nombre único. En la Figura siguiente se presenta un ejemplo de base de datos
relacional consistente en tres tablas: la primera muestra los clientes de un banco, la
segunda, las cuentas, y la tercera, las cuentas que pertenecen a cada cliente.
7. I.E.S.T.P “MARÍA ROSARIO ARAOZ PINTO” COMPUTACIÓN E INFORMÁTICA
TALLER DE BASE DE DATOS 6
La primera tabla, la tabla cliente, muestra, por ejemplo, que el cliente cuyo identificador
es 19.283.746 se llama González y vive en la calle Arenal sita en La Granja.
La segunda tabla, cuenta, muestra que las cuentas C-101 tienen un saldo de 500 y la C-
201 un saldo de 900 respectivamente.
La tercera tabla muestra las cuentas que pertenecen a cada cliente. Por ejemplo, la
cuenta C-101 pertenece al cliente cuyo identificador es 19.283.746 (González), y los
clientes 19.283.746 (González) y 01.928.374 (Gómez) comparten el número de cuenta
A-201 (pueden compartir un negocio).
El modelo relacional es un ejemplo de un modelo basado en registros. Los modelos
basados en registros se denominan así porque la base de datos se estructura en registros
de formato fijo de varios tipos. Cada tabla contiene registros de un tipo particular. Cada
tipo de registro define un número fijo de campos, o atributos. Las columnas de la tabla
corresponden a los atributos del tipo de registro.
8. I.E.S.T.P “MARÍA ROSARIO ARAOZ PINTO” COMPUTACIÓN E INFORMÁTICA
TALLER DE BASE DE DATOS 7
c) MODELO DE DATOS ORIENTADO A OBJETO
El modelo de datos orientado a objetos es otro modelo de datos que está recibiendo
una atención creciente.
El modelo orientado a objetos se puede observar como una extensión del modelo E-R
con las nociones de encapsulación, métodos (funciones) e identidad de objeto.
El modelo de datos relacional orientado a objetos combina las características del
modelo de datos orientado a objetos y el modelo de datos relacional.
El modelo orientado a objetos (OO) en realidad comenzó en la década de 1970, pero no
tuvo un uso comercial importante hasta la década de 1990. Este auge súbito provino de
la incapacidad de los sistemas de administración de bases de datos relacionales de la
época para manejar tipos de datos complejos como archivos de imágenes, dibujos
complicados, y de audio y video. La súbita explosión de Internet y de World Wide Web
creó una intensa demanda de transmisión de datos complejos.
Históricamente, otros dos modelos de datos, el modelo de datos de red y el modelo de
datos jerárquico, precedieron al modelo de datos relacional. Estos modelos estuvieron
ligados fuertemente a la implementación subyacente y complicaban la tarea del
modelado de datos. Como resultado se usan muy poco actualmente, excepto en el
código de bases de datos antiguo que aún está en servicio en algunos lugares.
Esquema del Modelo de datos jerárquico
9. I.E.S.T.P “MARÍA ROSARIO ARAOZ PINTO” COMPUTACIÓN E INFORMÁTICA
TALLER DE BASE DE DATOS 8
Esquema del Modelo de datos de red.
9. LENGUAJES DE BASE DE DATOS
Un sistema de bases de datos proporciona un lenguaje de definición de datos para especificar
el esquema de la base de datos y un lenguaje de manipulación de datos para expresar las
consultas a la base de datos y las modificaciones. En la práctica, los lenguajes de definición y
manipulación de datos no son dos lenguajes separados; en su lugar simplemente forman partes
de un único lenguaje de bases de datos, tal como SQL, ampliamente usado.
i. Lenguaje de Definición de Datos (DDL)
Un esquema de base de datos se especifica mediante un conjunto de definiciones expresadas
mediante un lenguaje especial llamado lenguaje de definición de datos (LDD). Por ejemplo, la
siguiente instrucción en el lenguaje SQL define la tabla cuenta:
create table cuenta (número-cuenta char(10), saldo integer)
ii. Lenguaje de Manipulación de Datos (DML)
La manipulación de datos es:
• La recuperación de información almacenada en la base de datos.
• La inserción de información nueva en la base de datos.
• El borrado de información de la base de datos.
• La modificación de información almacenada en la base de datos.
10. I.E.S.T.P “MARÍA ROSARIO ARAOZ PINTO” COMPUTACIÓN E INFORMÁTICA
TALLER DE BASE DE DATOS 9
Un lenguaje de manipulación de datos (DML) es un lenguaje que permite a los usuarios acceder
o manipular los datos organizados mediante el modelo de datos apropiado.
Una consulta es una instrucción de solicitud para recuperar información. La parte de un DML
que implica recuperación de información se llama lenguaje de consultas. Aunque técnicamente
sea incorrecto, en la práctica se usan los términos lenguaje de consultas y lenguaje de
manipulación de datos como sinónimos.
select cliente.nombre-cliente
from cliente
where cliente.id-cliente = ‘19 283 746’
iii. Acceso a la Base de Datos desde programas de aplicación.
Los programas de aplicación son programas que se usan para interaccionar con la base de datos.
Los programas de aplicación se escriben usualmente en un lenguaje anfitrión, tal como php,
Python, C, C++ o Java.
ACTIVIDADES A DESARROLLAR POR EL ESTUDIANTES:
1) Elaborar la línea de tiempo sobre la evolución de la tecnología de base de
datos.
2) Enumerar, describir y graficar (logo) de los principales gestores de Base de
Datos en la actualidad.
PRESENTACIÓN:
26 DE MARZO