capitulo 1 introduccion a abd
TRANSCRIPT
-
8/20/2019 Capitulo 1 Introduccion a aBD
1/26
Capitulo 1: IntroducciónCapitulo 1: Introducción
-
8/20/2019 Capitulo 1 Introduccion a aBD
2/26
Capitulo 1: IntroducciónCapitulo 1: Introducción
Propósito de un sistema de base de datosVisión de los datosLenguajes de base de datosBase de datos relacionalesDiseño de base de datos
Base de datos basada en objetos y sem iestructuradasAlmacenamiento de datos y co nsultasGestión de transaccionesArquitectura de bases de datos
Administradores y usuarios de base de datos
-
8/20/2019 Capitulo 1 Introduccion a aBD
3/26
Database Management System (DBMS)Database Management System (DBMS)
DBMS contiene información sobre una empresa determinada
Colecciones de datos relacionados entre síConjunto de programas para acceder a los datosLa nalidad es poseer un ambiente para almacenar y recuperar lainformación de forma practica y eciente .
Aplicaciones de Base de datos
Bancos : todas las transaccionesCompañías aéreas : reservas, horarios Universidades : inscripción, cursos Ventas : clientes, productos, las comprasComercio en l ínea : seguimiento de pedidos, recomendacionespersonalizadas
Producción : La producción, inventarios, pedidos, cadena de suministroRecursos humanos : los registros de empleados, salarios, deducciones deimpuestos
Las bases de datos son una parte esencial de casi toda las empresas
-
8/20/2019 Capitulo 1 Introduccion a aBD
4/26
Propósito de los s istemas de b ase d e d atosPropósito de los s istemas de b ase d e d atos
Inicialmente, las a plicaciones de base de datos s e construyeron sobre
los s istemas de archivos del sistema operativoInconvenientes de la utilización de sistemas de archivos paraalmacenar datos:
Redundancia e inconsistencia de los datosMúltiples formatos de archivos, duplicidad de la información en
diferentes archivos.Dicultad en el acceso a los datos
Necesidad de escribir un nuevo programa para llevar a cabo unanueva tarea.
Aislamiento de datos – múltiples archivos y formatos
Problemas de integridadRestricciones de integridad (Ejm. Saldo > 0), el programadorescribe código en la aplicación para hacer cumplir estarestricción.Cuando se añaden nuevas restricciones es difícil cambiar los
programas.
-
8/20/2019 Capitulo 1 Introduccion a aBD
5/26
Propósito de los s istemas de base de datosPropósito de los s istemas de base de datos(Cont.)(Cont.)
Inconvenientes de la utilización de sistemas de archivos para almacenar datos:(cont.)
Problemas de atomicidadLas fallas pueden dejar en un estado de inconsistencia a la base de datos.Ejemplo: Transferencia de fondos de una cuenta a otra debe ser atómica -debe ocurrir en su totalidad o no ocurrir en absoluto.
Anomalías en el acceso concurrenteEl Acceso concurrente es necesario para un buen desempeñoNo controlar el acceso concurrente podría provocar inconsistencia de labase de datos– Ejemplo: Dos personas leen y actualización el saldo de una cuenta, al
mismo tiempoProblemas de seguridad
No todos los usuarios de un sistema de base de datos deben poderacceder a todos los datos
Los Sistemas de Bases de datos ofrecen soluciones a t odos los problemasanteriormente mencionados
-
8/20/2019 Capitulo 1 Introduccion a aBD
6/26
Niveles de a bstracción de d atosNiveles d e a bstracción de d atos
Nivel físico: describe cómo se almacenan realmente los datos.
Describe la estructura de datos compleja de bajo nivel.Nivel lógico: describe qué datos se almacenan en la base de datos yque relación existe entre estos datos. Estructuras simples
type cliente = recordid_cliente : string;nombre_cliente : string;calle _cliente : string;ciudad _cliente : string;
end ;Nivel de vistas: Solo describe parte de la base de datos, muchos
usuarios de la base de datos no están interesados en todos los datos dela base de datos
-
8/20/2019 Capitulo 1 Introduccion a aBD
7/26
Visión de los datosVisión de los datos
Una arquitectura para un sistema de base de datos
-
8/20/2019 Capitulo 1 Introduccion a aBD
8/26
Ejemplares y esquemasEjemplares y e squemas
Similar a los Tipos de datos y las variables que se d enen en un leguaje deprogramaciónEsquema – es la estructura lógica de la base de datos
Ejemplo: una base de datos que representa la información de un conjunto declientes, cuentas y la relación entre ellos.Análogo al tipo de dato de una variable en un lenguaje de programaciónEsquema Físico: Describe el diseño de la base de datos e n el nivel físico.Esquema Lógico: Describe el diseño de la base de datos en el nivel lógico
Ejemplar – representa el contenido de la base de datos en un determinado puntode tiempo
Análogo con el valor de una variable denida en un lenguaje de programaciónIndependencia física respecto de los d atos – Habilidad para modicar elesquema físico sin cambiar el esquema lógico.
Las aplicaciones dependen del esquema lógicoEn general, las interfaces e ntre los distintos niveles y componentes deben estarbien denidos para que los cambios en algunas partes no afecten a los demás.
-
8/20/2019 Capitulo 1 Introduccion a aBD
9/26
Modelo de datosModelo de datos
Una colección de herramientas conceptuales para describir
DatosRelación entre datosSemántica de los datosRestricciones de consistencia de datos
Modelo relacionalEl modelo entidad-relaciónModelo de datos orientado a objetosModelo de datos semiestructurados (XML)Otros modelos antiguos
Modelo de redModelo jerárquico
-
8/20/2019 Capitulo 1 Introduccion a aBD
10/26
Lenguaje de manipulación de datos (LMD)Lenguaje de manipulación de datos (LMD)
Data Manipulation Language (DML)
Lenguaje para acceder o manipular datos que están organizados deacuerdo a un modelo de datos apropiado.
DML también conocido como lenguaje de consultaDos tipos de lenguajes
LMDs Procedimentales – Necesitan que el usuario especiquequé datos se necesitan y cómo obtener esos datosLMDs d eclarativos (no procedimentales) – necesitan que elusuario especique qué datos s e necesitan sin que haga falta queespecique cómo obtener esos datos
SQL es el lenguaje de consulta usado mas ampliamente
-
8/20/2019 Capitulo 1 Introduccion a aBD
11/26
Lenguaje de denición de datos (LDD)Lenguaje de denición de datos (LDD)
Los esquemas de las bases de datos se especican utilizando un conjunto deexpresiones denidas en el LDDEjemplo: create table cuenta (
numero-cuenta char (10), saldo integer )
Las instrucciones LDD generan un conjunto de nombres de tablas las cualesse almacenan en un diccionario de datos.El diccionario de datos contiene los metadatos (datos acerca de los datos)
Esquemas de la base de datosLenguaje de almacenamiento y d enición de datos
Especica la estructura de almacenamiento y los métodos de accesoutilizados
Restricciones de integridad
Restricciones de dominioIntegridad referencial ( references constraint en SQL)Asertos (condición que las BDs siempre deben cumplir)
Autorización
-
8/20/2019 Capitulo 1 Introduccion a aBD
12/26
Modelo relacionalModelo relacional
Un ejemplo de tabla del modelos relacionalAtributos
-
8/20/2019 Capitulo 1 Introduccion a aBD
13/26
Un ejemplo de base de datos relacionalUn ejemplo de base de datos relacional
-
8/20/2019 Capitulo 1 Introduccion a aBD
14/26
SQLSQL
SQL : Lenguaje no procedimental ampliamente utilizado
Ejemplo: Encontrar el nombre del cliente con id_cliente 192-83-7465select cliente.nombre_clientefrom clientewhere cliente.id_cliente = ‘192-83-7465’
Ejemplo: Encontrar el saldo de todas las cuentas para un cliente con
id_cliente 192-83-7465select cuenta.saldofrom deposito , cuentawhere deposito.id_cliente = ‘192-83-7465’ and
deposito.numero_cuenta = cuenta.numero_cuenta
Los programas de aplicación generalmente acceden a las bases de datos através de:
Extensiones del lenguaje que permiten incrustar sentencias SQLAPI (ejm. ODBC/JDBC) los cuales permiten enviar consultas SQL a laBase de datos
-
8/20/2019 Capitulo 1 Introduccion a aBD
15/26
Diseño de base d e datosDiseño de base d e datos
El diseño de la base de datos implica principalmente el diseño del esquema de la
base de datos. La e specicación de requisitos de usuario es la fase inicial del diseño de labase de datos donde se caracteriza los requisitos de los usuarios
Diseño conceptual aplicar los conceptos del modelo de datos para transformarlos requisitos de usuario en un esquema conceptual de la base de datos. Tambiéncomprende la especicación de requisitos funcionales que describen el tiposde operación o transacciones que se llevan a cabo con los datos.
Diseño lógico - Decidir un esquema relacional tomando en cuenta el esquemaconceptual de la base de datos.
Decisión de negocios - Qué atributos debemos almacenar en la base dedatos
Decisión informática – Modelo entidad relación o normalización.Diseño físico - Decidir sobre la distribución física de la base de datos
-
8/20/2019 Capitulo 1 Introduccion a aBD
16/26
El modelo Entidad RelaciónEl modelo Entidad Relación
Modela una empresa como una colección de entidades y la relación
entre dichas entidadesEntidad: una “cosa” u “objeto” dentro de la empresa que sediferencia de otros objetos
Descrito por un conjunto de atributosRelación: una asociación entre varias e ntidades
Representado esquemáticamente mediante un diagrama de entidad-relación:
-
8/20/2019 Capitulo 1 Introduccion a aBD
17/26
Modelo de d atos r elacional orientado a o bjetosModelo de d atos r elacional orientado a o bjetos
Extiende el modelo relacional tradicional con gran variedad de
características, como los tipos estructurados y las colecciones, asícomo la orientación a objetosPermite que los atributos de las tuplas dispongan de tipos de datoscomplejos, valores no atómicos, y relaciones a nidadas.Preserva los fundamentos del modelo relacional, en particular el
acceso a los datos, mientras se extiende con mas capacidad elmodelo.Proporciona compatibilidad extendida con los actuales lenguajesrelacionales
-
8/20/2019 Capitulo 1 Introduccion a aBD
18/26
-
8/20/2019 Capitulo 1 Introduccion a aBD
19/26
Gestor de almacenamientoGestor de almacenamiento
Gestor de almacenamiento es un programa que proporciona la
interfaz entre los datos de bajo nivel almacenados en la base de datosy los programas de aplicación y las consultas remitidas a l sistema.El gestor de almacenamiento es responsable de las siguientes tareas:
Interacción con el gestor de archivosEciente almacenamiento, recuperación y actualización de losdatos
El gestor de almacenamiento implementa varias estructura de datos:Archivos de datosDiccionario de datos
Índices
-
8/20/2019 Capitulo 1 Introduccion a aBD
20/26
Procesador de consultasProcesador de consultas
1. Interprete y compilador de instrucciones
2.Optimización de consultas3. Motor de evaluación o ejecución de consultas
-
8/20/2019 Capitulo 1 Introduccion a aBD
21/26
Procesador de consultas (Cont.)Procesador de consultas (Cont.)
Evaluar diferentes alternativas para ejecutar una consulta dada
Expresiones equivalentesDiferentes algoritmos para cada operación
La diferencia de costo entre una buena y una mala manera de ejecutaruna consulta puede ser enorme.Necesidad de estimar el costo de las operaciones
Depende fundamentalmente de la información estadística sobre lasrelaciones que debe mantener en la base de datos.Necesidad de calcular las estadísticas de resultados intermediospara calcular el costo de expresiones complejas
-
8/20/2019 Capitulo 1 Introduccion a aBD
22/26
Gestión de transaccionesGestión de transacciones
Una transacción es un conjunto de operaciones que lleva a cabo una
única función lógica en una aplicación de base de datos.Componente de gestión de transacciones garantiza laspropiedades de atomicidad y de durabilidad, debiendo recuperarse aun estado de consistencia cuando una transacción falla.Gestor de c ontrol de c oncurrencia controlar la interacción entre las
transacciones concurrentes para garantizar la consistencia de la basede datos.
-
8/20/2019 Capitulo 1 Introduccion a aBD
23/26
Arquitectura de la base de datosArquitectura de la base de datos
La arquitectura de un sistema de base de datos esta fuertemente
inuenciado por el tipo de sistema de computo, en la cual se ejecuta labase de datos:CentralizadoCliente-servidorParalelo (multi-procesador)Distribuido
-
8/20/2019 Capitulo 1 Introduccion a aBD
24/26
Usuarios d e la b ase d e d atosUsuarios d e la b ase d e d atos
Usuarios son diferenciados por la forma en que esperan interactuar con
el sistemaProgramadores de aplicaciones – interactúan con el sistema a través
de llamadas LMDUsuarios sosticados – Formulan sus consultas en el lenguaje de
consultas de la base de datos, no usan un sistema aparte.
Usuarios especializados – E scriben aplicaciones de base de datosespecializadas que no encajan en el marco tradicional de procesamientode datos. (Sistemas CAD, Sistemas de conocimiento y e xpertos)
Usuarios no rmales – Interactúan con el sistema invocando alguno delos programas de aplicación escritos previamente.
Ejemplo, personas accediendo a bases de datos vía Web, Cajerodel banco
-
8/20/2019 Capitulo 1 Introduccion a aBD
25/26
Administradores de base de datosAdministradores de base de datos
Una de las principales razones de usar un SGBD es tener un
control centralizado tanto de los datos como de los programasque tienen acceso a esos datos.Las funciones del DBA incluyen:
La denición del esquemaLa denición de la estructura de almacenamiento y delmétodo de accesoLa modicación del esquema y de la organización físicaLa concesión de autorización para el acceso a los datosEl mantenimiento rutinario
-
8/20/2019 Capitulo 1 Introduccion a aBD
26/26
Fin del capitulo 1Fin del capitulo 1