Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Clase 01

Descargar como pptx, pdf o txt
Descargar como pptx, pdf o txt
Está en la página 1de 22

Clase Nro.

1: Introducción a los
Sistemas de Bases de Datos (I)

Presentada por:
Amadís Martínez

Departamento de Computación, FaCyT


Versión: agosto, 2020
Motivación

• Los sistemas de bases de datos son esenciales en las


sociedades modernas.
• Algunas aplicaciones que involucran algún tipo de
interacción con una base de datos:
– Información empresarial: ventas, contabilidad y recursos
humanos.
– Manufactura: manejo de producción, inventario, órdenes,
cadena de suministro.
– Información bancaria y financiera: clientes, cuentas,
préstamos, transacciones.

2
Motivación
– Universidades: estudiantes, inscripciones, notas.
– Aerolíneas: reservaciones, horarios de vuelos.
– Telecomunicaciones: registro de llamadas, mensajes de
texto, utilización de datos, saldos.
– Servicios basados en Web: redes sociales, tiendas en línea,
publicidad en línea.
– Bases de datos documentales y catálogos bibliográficos:
colecciones de libros, artículos y patentes.
– Sistemas de navegación: almacenamiento de ubicaciones
de lugares de interés.

3
Sistema Gestor de Bases de Datos

• Un sistema gestor de bases de datos consiste de:


– Una colección de datos interrelacionados (base de datos).
– Un conjunto de programas para acceder a esos datos.
• La base de datos contiene información:
– Representativa de algún aspecto del mundo real (universo
del discurso).
– Relevante para una organización.
– Lógicamente coherente y con un significado inherente.
– Relativamente grande.
– Accedida por múltiples usuarios y aplicaciones.

4
Sistema Gestor de Bases de Datos

• Un sistema gestor de bases de datos ofrece:


– Manejo de datos a gran escala.
– Persistencia.
– Seguridad.
– Soporte para múltiples usuarios (control de concurrencia).
– Conveniencia (independencia de datos físicos / lenguajes
de consulta de alto nivel).
– Eficiencia.
– Confiabilidad.

5
Sistema Gestor de Bases de Datos

• Modalidades generales de uso de las bases de datos:


– Procesamiento de transacciones en línea:
• Gran número de usuarios utilizan la base de datos.
• Cada usuario recupera pequeñas cantidades de
información y realiza pequeñas actualizaciones.
– Análisis de datos:
• Descubrimiento automático de reglas y patrones a
partir de los datos.
• Creación de modelos predictivos.

6
Vista de datos

• Un sistema de bases de datos provee una vista


abstracta de los datos.
• Modelo de datos
– Una colección de herramientas conceptuales para la
descripción de datos, interrelaciones entre los datos,
semántica de los datos y restricciones de consistencia.
• Abstracción de datos
– Oculta la complejidad de las estructuras de datos utilizadas
para la representación de datos en la base de datos.

7
Modelo de datos

• Modelo entidad-interrelación:
– Introducido por Peter Pin-Shan Chen en el artículo titulado
“The Entity-Relationship Model: Toward a Unified View of
Data” (1976).
– Ampliamente usado en el diseño de bases de datos.
– Utiliza una colección de objetos básicos (entidades) e
interrelaciones entre estos objetos.
– Una entidad es un objeto del mundo real distinguible de
otros objetos.

8
Modelo de datos

• Modelo relacional:
– Introducido por Edgar Frank Codd en el artículo titulado “A
Relational Model for Large Shared Data Banks” (1970).
– Usado en la mayoría de los SGBD.
– Utiliza una colección de relaciones (tablas) para la
representación de datos e interrelaciones entre ellos.
– Modelo basado en registros:
• Cada tabla contiene registros de un tipo particular.
• Cada registro está compuesto por un número fijo de
campos (atributos).
• Las columnas de una tabla corresponden con los
atributos de un registro. 9
Modelo de datos

• Modelo semi-estructurado.
– Permite la especificación de datos de manera tal que items
individuales del mismo tipo pueden tener diferentes
conjuntos de atributos.
– Ejemplos: JSON y XML.
• Modelo basado en objetos.
– Extiende el modelo relacional con nociones de métodos,
encapsulamiento e identidad de objetos.
• Modelos antiguos.
– Modelo de redes y modelo jerárquico.

10
Abstracción de datos

• Tres niveles de abstracción de datos

11
Abstracción de datos

• Nivel físico.
– Nivel de abstracción más bajo.
– Describe cómo están almacenados los datos.
– Describe estructuras complejas de datos de bajo nivel.
• Nivel lógico.
– Nivel de abstracción intermedio.
– Describe qué datos están almacenados en la base de datos
y las interrelaciones entre ellos.
– Describe la base de datos en términos de un número
reducido de estructuras simples.

12
Abstracción de datos

• Nivel de vistas.
– Nivel de abstracción más elevado.
– Describe sólo una parte de la base de datos, dependiendo
de los requerimientos de los usuarios.
– Puede ofrecer múltiples vistas de una misma base de
datos.

13
Instancias y esquemas

• El contenido de las bases de datos cambia con el


transcurso del tiempo, debido a las operaciones que
se realizan sobre ellas.
• Instancia de una base de datos: contenido de la base
de datos en un momento específico.
• Esquema de una base de datos: diseño general de la
base de datos.
– Esquema físico: diseño físico de la base de datos.
– Esquema lógico: diseño lógico de la base de datos.
– Sub-esquemas: diferentes vistas de la base de datos.

14
Lenguajes de bases de datos

• Un sistema gestor de bases de datos provee:


– Un lenguaje de definición de datos, para la especificación
del esquema de la base de datos.
– Un lenguaje de manipulación de datos, para expresar
consultas y actualizaciones a la base de datos.
• No son lenguajes separados, forman parte de un solo
lenguaje de bases de datos.
• La mayoría de los sistemas gestores de bases de
datos relacionales utilizan SQL como lenguaje de
bases de datos.

15
Lenguajes de definición de datos

• Especificación del esquema de una base de datos y


de propiedades adicionales de los datos.
• El procesamiento de sentencias de un lenguaje de
definición de datos produce una salida.
• Esta salida se almacena en el diccionario de datos,
que contiene metadatos.
– Restricciones de dominio.
– Integridad referencial.
– Autorización.

16
Lenguajes de manipulación de datos

• Permite a los usuarios el acceso o manipulación de


los datos.
• Tipos de acceso (CRUD):
– Inserción de información en la base de datos (Create).
– Recuperación de información almacenada (Read).
– Modificación de la información almacenada (Update).
– Eliminación de información de la base de datos (Delete).

17
Lenguajes de manipulación de datos

• Tipos de lenguajes de manipulación de datos:


– Declarativo: requiere la especificación de qué datos se
necesitan, sin especificar cómo se obtienen.
– Procedimental: requiere la especificación de qué datos se
necesitan y cómo se obtienen.
• Los lenguajes declarativos son más simples que los
procedimentales.
• Lenguaje de consultas: Sub-lenguaje que involucra la
recuperación de información de una base de datos.

18
Lenguaje de consultas SQL

• Lenguaje de tipo declarativo.


• Una consulta recibe como entrada por lo menos una
tabla y siempre retorna una sola tabla.
• El poder expresivo de SQL no es equivalente al de
una Máquina Universal de Turing.
• SQL no soporta acciones como entrada de usuarios,
salida a dispositivos o comunicación sobre la red.
• Estas acciones deben escribirse en un lenguaje
anfitrión, con consultas SQL embedded.

19
Acceso a bases de datos
por medio de aplicaciones
• Aplicaciones: programas utilizados para interactuar
con bases de datos.
• Mecanismos de interacción:
– Extensiones para permitir SQL embedded.
– Interfaz de programa (ODBC/JDBC) para permitir que las
consultas SQL sean enviadas a la base de datos y recuperar
los resultados.

20
Diseño estructural de bases de datos

• Elicitación de requerimientos de usuarios


– Recabar información sobre el uso que se le piensa dar a la
base de datos.
• Diseño conceptual de la base de datos
– Producir un esquema conceptual de la base de datos,
independiente del sistema gestor de base de datos que se
vaya a utilizar posteriormente.
• Diseño lógico de la base de datos
– Crear el esquema lógico de la base de datos de acuerdo
con el modelo de organización de datos seleccionado.

21
Diseño estructural de bases de datos

• Diseño físico de la base de datos


– Seleccionar las estructuras de almacenamiento apropiadas
(tablas, particiones de tablas, índices, entre otras) para
maximizar el rendimiento de la base de datos.
• Implementación de la base de datos
– Implantar la base de datos en un sistema gestor de bases
de datos, de acuerdo con el modelo físico.
• Instalación y puesta en marcha
– Iniciar la operación de la base de datos, monitoreando si
se satisfacen los requerimientos de desempeño.

22

También podría gustarte