Está en la página 1de 49

MBIO

Bases de datos relacionales

           Slides Bases de datos Relacionales  by Juan Carlos Mantilla Gómez is licensed under a Creative Commons Reconocimiento-
NoComercial-SinObraDerivada 4.0 Internacional License.
CONCEPTOS FUNDAMENTALES
Datos vs información

• Dato  del latín “datum” que significa “hecho”


• ¿Qué es un dato?
– Un dato es un “símbolo” que describe un valor, un hecho, una
condición o una situación.
– En si mismo el dato no comunica ningún significado. Para poder
hacerlo requiere estar en un contexto o estar relacionado con otros
datos.
Por ejemplo

Cra 30 # 45 - 132

110 kg
ojos Azules
Datos vs información

• información
– Conjunto de datos significativos, pertinentes, relacionados, que describe
sucesos o entidades

– Los DATOS son útiles, en la medida en que puedan TRANSFORMARSE en


INFORMACION de la que pueda extraerse:
• Significados,
• ideas,
• Conclusiones
• Conocimiento
Qué es una base de datos

• Una BASE DE DATOS es:

• Un conjunto de datos relacionados en


algún contexto que les da significado
• Almacenado de manera sistemática
• Que permite su uso y
aprovechamiento
• Generalmente con un sistema
informático
Qué es una base de datos

• Una BASE DE DATOS :

• Representa algún(os) aspecto(s) del


mundo real, que es(son) de interés
para el usuario
• Almacena los datos con un fin o
propósito específico
• Por ejemplo?
Tipos de Modelos de Base de Datos

• Existen varios “modelos” de organización de bases de datos

• El “modelo” de organización alude a LA


FORMA COMO ESTÁN ORGANIZADOS
los datos que componen la Base de
Datos.
• Es una abstracción.
• Suele estar asociado a una clase
específica de herramienta para
administrar los datos
Ej: Modelo Jerárquico

• En este modelo
• Organización en forma de “árbol”
– Un nodo inicial o nodo “raíz” que
puede tener uno o más nodos “hijos”
– Cada nodo, excepto el nodo “raíz” tiene
UN solo padre.
– Los nodos que no tienen “hijos” se
llaman “hojas”
Ej: Modelo Jerárquico

...

• El modelo de bases de datos Jerárquicas,


no es objeto de estudio en este curso
Ejemplo
CLIENTE

FACTURA1 FACTURA2 ... FACTURA3

Linea 1 Linea 1 ... Linea n


Modelo de Bases de Datos en Red

• Creado en 1969.
• Derivado del modelo jerárquico
• Permite un modelo de datos más natural de relaciones entre entidades.
• Más flexible
• Buen rendimiento
• No prosperó por dos causas principales:
– IBM Adoptó el modelo Jerárquico en sus productos
– Fue desplazado por el modelo Relacional.
Ejemplo

CLIENTE 1 ... CLIENTE N ARTÍCULO 1 ... ARTÍCULO N

FACTURA 1 ... FACTURA N

LINEA 1 LINEA N LINEA 1 LINEA N


Ej: Modelo orientado a Objetos

• Modelo propio de herramientas


informáticas que se basan en el
paradigma orientado a objetos
• No modela la realidad sino la forma
como las personas comprenden la
realidad
• Se basa en la abstracción clase –
objeto para “encapsular” datos de
naturaleza similar y facilitar su
manejo-
Clases y Objetos
• ¿Qué es un Objeto?
– En el mundo real los objetos son cosas que pueden percibirse por los
sentidos.
• En programación?
– Los objetos deben tener propiedades específicas tales como por
ejemplo: Posición, Tamaño, Color, Forma, Textura etc., que definen su
estado.
– Los objetos también tienen “comportamientos” que los diferencian de
otros. Atributos (Características) Métodos (Acciones)
– Ejemplo: Un CARRO
Color: Amarillo encender()
Marca: MercedesBenz acelerar()
NOMBRE: miCarro1 Km: 0 km frenar()
En programación, un “objeto” no necesariamente tiene que ser tangible

• Por ejemplo una “fracción”

  Atributos (Características) Métodos (Acciones)


Numerador: 3
Denominador 2 Simplificarse()
SumarConOtraFracción()
NOMBRE: fraccion1 RestarDeOtraFracción()

• Entonces un “objeto” es una entidad que tiene atributos y métodos.


Y que es una “Clase”?

• Una clase es un conjunto de Objetos, que comparten:


– Estructura de atributos
– Comportamientos comunes
Atributos Atributos
• (Características)
Por ejemplo: (Características)

Color: Amarillo Color: Blanco


Marca: MercedesBenz Marca: Chevrolet
Km: 0 km Km: 0 km

Métodos (Acciones)
Métodos (Acciones)
NOMBRE: miCarro1 NOMBRE: miCarro2
encender()
encender()
acelerar()
acelerar()
frenar()
frenar()
Bases de datos de documentos

• Diseñadas para almacenar recuperar y gestionar datos de documentos o


datos estructurados de alguna manera.
• Son Bases de datos NoSQL. (No relacionales)
• Arquitectura distribuida – mayor escalabilidad
• Concepto Principal: Documento
• Muy eficientes para manejar datos intensivos
Bases de datos de documentos
• Cada documento se identifica con una clave única (por ej. Una URL)
• Suelen estar acompañadas de una interfaz para recuperación de
documentos con base en su contenido
• Diversas formas de organización:
• Colecciones
• Etiquetas
• Metadatos
• Jerarquías de directorios
• Ejemplos de uso: Amazon, Facebook, Google
• Herramientas : Cassandra, Redis, MongoDB
Modelo de bases de datos Relacional

• Ampliamente usado en la actualidad


para:
– modelar problemas reales
– Administrar datos dinámicamente

• Los datos se pueden almacenar o recuperar, mediante el uso de un “lenguaje” de


consultas, muy sencillo y que ofrece una muy amplia flexibilidad
• Se llama RELACIONAL debido a que utiliza “relaciones” entre los datos para
extraer información.
El modelo relacional
• Se originó en la Lógica de predicados y la teoría de conjuntos
( Edgar Frank Codd - 1970)
• Su idea de base es el uso de relaciones.
• Se originó en la Lógica de predicados y la teoría de conjuntos
( 1970)
• Cada “entidad”  una tabla  compuesta de “registros” o tuplas.
• Todos los registros de una misma tabla tienen la misma estructura de “campos”
– Nombre
– tipo
– tamaño
– valor
Por ejemplo
• Imaginemos los datos que se manejan en la operación de una pequeña
Biblioteca

LIBROS USUARIOS
CODIGO ID
TÍTULO PRÉSTAMOS APELLIDOS
AUTOR COD_LIBRO NOMBRES
EDITORIAL ID USUARIO DIRECCIÓN
EDICIÓN FECHA_SAL TELÉFONO
ESTADO FECHA_ RET
Por ejemplo
LIBROS
CODIGO
CODIGO TÍTULO AUTOR EDITORIAL EDICIÓN ESTADO
L001 EL AMOR EN LOS TIEMPOS DEL CÓLERA GARCIA M. GABRIEL XXXXX 1 DISPONIBLE
L002 ILONA LLEGA CON LA LLUVIA MUTIS, ALVARO XXXXX 1 DISPONIBLE
L003 ULISES JOYCE, JAMES XXXXX 2 DISPONIBLE
L004 LA INSOPORTABLE
INSOPORTABLE LEVEDAD DEL SER KUNDERA, MILAN XXXXX 3 DISPONIBLE
L005 EL CAPITAL MARX, KARL XXXXX 2 DISPONIBLE
L006 EL PENDULO DE FOUCAULT ECO, UMBERTO XXXXX 1 PRESTADO
DISPONIBLE
L007 LA SEÑORA
SEÑORA DALLOWAY WOOLF, VIRGINIA XXXXX 3 DISPONIBLE
L008 A SANGRE FRIA CAPOTE, TRUMAN XXXXX 4 DISPONIBLE
L009 MANUAL DE URBANIDAD Y BUENAS MANERAS
CARREÑO, MANUEL A XXXXX 2 DISPONIBLE

USUARIOS PRÉSTAMOS
ID ID APELLIDOS
APELLIDOS NOMBRES
NOMBRES DIRECCIÓN
DIRECCIÓN TELÉFONO COD_LIBRO ID USUARIO FECHA_SAL FECHA_ RET
1 1 PEREZ
PEREZD.
D. JUAN
JUAN CALLE
CALLE 1 3160579422 L006 3 03/07/2020 17/07/2020
2 MARTINEZ H. CLARA
2 MARTINEZ H. CLARA CARRERA
CARRERA 2 3202624910
3 3 RUEDA
RUEDAR.R. PEDRO
PEDRO AVENIDA
AVENIDA 10 3173413063
4 4 RINCON
RINCONA. A. LUISA
LUISA CARRERA
CARRERA 4 3182623180
5 5 ALVIZ
ALVIZ R.
R. JOSE
JOSE AV
AV LIBERTAD
LIBERTAD 3200730659
En su forma más simple
• Una base de datos es:

Una colección de registros de datos, cada uno de los cuales es


una instancia de una cierta ENTIDAD
campo_1 campo_2 campo_3 ...... Campo n
(tipo, tamaño) (tipo, tamaño) (tipo, tamaño) (tipo, tamaño) (tipo, tamaño)
Registro(tupla) 1
Registro(tupla) 2
:
:
:

que puede crecer “verticalmente” a medida que se insertan


nuevos registros o “tuplas”.
En su forma más simple

Y conceptualmente se suele representar como

nombre
nombre CAMPO TIPO TAMAÑO
Campo1 Campo1 tipo de datos tamaño
Campo2 Campo2 tipo de datos tamaño
Campo 3 Campo 3 tipo de datos tamaño
: : tipo de datos tamaño
: : tipo de datos tamaño
Campo n Campo n tipo de datos tamaño
En su forma más simple

Y conceptualmente se suele representar como


LIBROS
CODIGO TÍTULO AUTOR LIBROS
EDITORIAL EDICIÓN ESTADO
LIBROS
L001 EL AMOR EN LOS TIEMPOS DEL CÓLERA GARCIA
CAMPO M. GABRIELTIPO XXXXX 1
TAMAÑO DISPONIBLE
L002 ILONA LLEGA CON LA LLUVIA
CODIGO MUTIS, ALVARO XXXXX 1 DISPONIBLE
L003 ULISES
CODIGO
JOYCE, JAMES
Alfanumérico
XXXXX 2
4
DISPONIBLE
TÍTULO
L004 LA INSOPORTABLE LEVEDAD DEL SER TÍTULOMILAN alfanumérico
KUNDERA, XXXXX 3 50
DISPONIBLE
AUTOR
L005 EL CAPITAL AUTOR
MARX, KARL alfanumérico
XXXXX 2 50
DISPONIBLE
EDITORIAL
L006 EL PENDULO DE FOUCAULT ECO, UMBERTO
EDITORIAL XXXXX
alfanumérico 1 PRESTADO
50
L007 LA SEÑORA DALLOWAY
EDICIÓN WOOLF, VIRGINIA XXXXX 3 DISPONIBLE
L008 A SANGRE FRIA
EDICIÓN
CAPOTE, TRUMAN
enteroXXXXX 4
1
DISPONIBLE
ESTADO
L009 MANUAL DE URBANIDAD Y BUENAS MANERAS ESTADOMANUELalfanumérico
CARREÑO, A XXXXX 2 10
DISPONIBLE
Ventajas/ desventajas

• Ventajas:
– Proporciona herramientas para eliminar la duplicidad de registros
– Garantiza la integridad referencial si se elimina un registro, se
eliminan todos los dependientes
– Favorece la normalización.
• Desventajas:
– No ofrece muchas facilidades para datos gráficos y multimedia
– Poca facilidad para manejar bloques de texto como datos.
Sistemas de Gestion de Bases de Datos

• Un Sistema de Gestión de Bases de Datos o DBMS


(DataBase Management System) es Un paquete o
herramienta informática que permite al usuario
interactuar con una base de datos específica.
• Posibilita operaciones como:
– Crear
– Actualizar
– Borrar
– Buscar
– Manipular
– Administrar ……. Una base de datos
Sistemas de Gestión de Bases de Datos

• 1970s.
– No recibían este nombre
– Se trabajaba “por lotes”
– Sistemas OLTP (On Line Transaction Processing)
• 1980s
– Computador personal
– Nuevos productos: dBase I,II,III
– SGBD “pre-relacionales”
– Aún no se popularizaban las redes
Sistemas de Gestión de Bases de Datos

• 1990s.
– Popularización masiva de los SGBD Relacionales.
– No estándares. Cada proveedor  Su propio SGBD
– Bases de datos “dispersas”
• 2000 -
– Nuevos tipos de datos. Multimedia
– Redes – internet – Orientación a objetos
– WWW
– Datos de orígenes diferentes,
Sistemas de Gestión de Bases de datos

• Un DBMS está conformado por varios


componentes funcionales:
– Un gestor de archivos
– Un manejador de la base de datos
– Un procesador de consultas
– Un lenguaje de definición de datos (DDL)
– Archivos con los datos
– Diccionario de datos
– Índices .
Características de un DBMS

• Acceso: permite a múltiples


usuarios acceder a los mismos
datos a través de una red.

• Intercambio de datos:
permite a múltiples usuarios
compartir los datos en forma
segura y eficiente
Características de un DBMS

• Seguridad para los datos: posibilita


el intercambio cifrado de los datos,
para permitir envíos eficientes con
bajo riesgo para la información

• Búsqueda de datos: los DBMS


cuentan con herramientas para
hacer búsquedas rápidas y eficientes
en grandes conjuntos de datos
Características de un DBMS
• Acceso restringido: permite definir
categorías de usuarios con
privilegios diferenciados para
acceder, leer o modificar los datos.
• Independencia de los datos: los
datos se administran de manera
independiente al software, por lo
tanto sus modificaciones no afectan
ningún otro componente del
sistema
Características de un DBMS
• Facilidad para consultas no pre-
definidas y complejas: posibilita
“interrogar” directamente a la base
de datos
– preguntas nuevas en un
lenguaje sencillo
– Sin la necesidad obligatoria de
de escribir un programa
Características de un DBMS

• Costo:
– Menor costo de mantenimiento a los
datos
– Menor riesgo de duplicidad de datos
– Reducción de los tiempos de
desarrollo
– Mayor eficiencia en acceso a datos
– Mejor seguridad
Sistemas de Gestión de Bases de datos

• Los más populares en la actualidad son:


• MYSQL
• Oracle
• MS-Access
• SQLite
• Maria DB
• PostgreSQL
El Administrador de Bases de Datos (DBA)
• DBA - Data Base Administrator
– Persona o grupo de personas
profesionales, responsables del control y el
manejo del sistema de Bases de Datos.
– Usualmente tiene amplia experiencia en
DBMS, diseño de bases de datos, Sistemas
Operativos, comunicaciones de datos etc.
– Normalmente puede estar involucrado
desde el mismo inicio del desarrollo de
una Base de Datos definiendo la
estructura interna, además de distintas
consideraciones técnicas.
Funciones de un DBA
1. Gestión general de la Base de datos

– El DBA es la persona con más


conocimientos sobre la estructura y
organización de la base de datos en
una organización.

– Debe entender las reglas básicas de la


tecnología de base de datos relacional y
al tiempo ser capaz de comunicarlos
con precisión a los demás.
Funciones de un DBA

2. Modelado de los datos y Diseño de la BD


– Experto en la recopilación y análisis de las
necesidades del usuario para obtener
modelos de datos conceptuales y lógicos.
• Un modelo conceptual de datos describe
los requisitos de datos a un nivel muy alto,
• un modelo de datos lógico proporciona en
profundidad los detalles de los tipos de
datos, longitudes, relaciones y cardinalidad.
– El DBA utiliza técnicas de normalización
para ofrecer modelos de datos que reflejen
las necesidades de los datos de la empresa.
Funciones de un DBA
3. Auditoría

– identificar qué usuarios tienen acceso


a insertar, actualizar o eliminar datos,
y cuándo.
– Verificar periódicamente la
consistencia de las reglas de
seguridad establecidas
– Auditoría a los datos.
Funciones de un DBA
4. Integración con Aplicaciones
– La mayoría de las empresas hoy en
día utilizan aplicaciones de terceros
– Las aplicaciones no funcionan de
manera aislada.
– Tienen que interconectarse unas con
otras,
– La base de Datos es el medio para
compartir los datos.
Funciones de un DBA
5. Resguardo y recuperación de datos

– Proteger los datos de la organización.


– Copias de seguridad periódicas de los
datos y mantenerlos a salvo de la
destrucción accidental o intencional.
– Plan de recuperación en caso de
desastre
Funciones de un DBA
6. Inteligencia de Negocios y
almacenamiento de datos

– Con volúmenes de datos crecientes,


cambian las necesidades de
información, especialmente a nivel
estrategico
– Nuevos métodos de búsqueda y
recolección de datos
– Extraer conocimiento de los datos
Funciones de un DBA
7. Planificación de la capacidad

– En la mayoría de las organizaciones, el


número y tamaño de las bases de datos
crece rápidamente.
– Gestionar el creciente volumen de
datos
– Diseñar los planes apropiados para
administrarlos.
– incluye también la gestión del hardware
donde se almacenan los datos.
Funciones de un DBA
8. Administración de los cambios
– Efectuar el análisis de impacto antes
de realizar los cambios dentro de un
DBMS.
– Implementar cambios, hacer pruebas
piloto y documentar todos los
cambios y procedimientos
– Qué cambia?
• Configuración de servidores
• Esquema de base de datos
• Nuevos procesos
Funciones de un DBA
9. Desarrollo de aplicaciones
– Desarrollar aplicaciones y scripts
– Automatizar tareas relacionadas con
la inserción, sustracción o borrado de
información dentro del manejador de
base de datos.
– El DBA colabora a nivel de integración
de sistema con los desarrolladores de
aplicaciones
Ventajas de usar bases de datos

• Centralizar los datos de una


organización
– En forma segura
– Eficientemente
• Posibilita la automatización de procesos
• Acceso a la información de una manera
más rápida
• Mejor calidad de respuesta de la
organización
“Desventajas” de usar bases de datos

• Obligatoriedad de tener documentados


los procesos internos
– Entender el negocio
– Modelar los datos apropiadamente
• Costos asociados a Hardware y Software
• Pueden requerirse requieren mas
personas
• Cambio de paradigma en la forma de
trabajo

También podría gustarte