Capítulo 1: Conceptos Básicos de Bases de Datos



Documentos relacionados
Conceptos básicos de bases de datos

BASES DE DATOS, MODELOS DE DATOS Y DBMS

1.1.- Objetivos de los sistemas de bases de datos Administración de los datos y administración de bases de datos Niveles de Arquitectura

INTRODUCCION. entidades. Modelo lógico de la base de datos. Matricula. carne. codigo_curso. año semestre nota. propiedades

Unidad 1. Introducción a los conceptos de Bases de Datos

ELEMENTO I INTRODUCCION A LOS SISTEMAS DE BASES DE DATOS

SQL (Structured Query Language)

A.1. Definiciones de datos en SQL

Capítulo 12: Indexación y asociación

Tema 11 Bases de datos. Fundamentos de Informática

SISTEMA DE GESTIÓN DE BASE DE DATOS (Database Management System (DBMS))

ARREGLOS DEFINICION GENERAL DE ARREGLO

Repaso de Conceptos Básicos de Bases de Datos

Universidad de Colima Facultad de Ingeniería Mecánica y Eléctrica. Base de Datos I. Maestra: Martha E. Evangelista Salazar

Capítulo 1: Introducción a los Sistemas de Gestión de Bases de Datos (SGBD)

ARQUITECTURA DE DISTRIBUCIÓN DE DATOS

BASES DE DATOS - SQL. Javier Enciso

En cualquier caso, tampoco es demasiado importante el significado de la "B", si es que lo tiene, lo interesante realmente es el algoritmo.

Registro (record): es la unidad básica de acceso y manipulación de la base de datos.

Base de datos relacional

DBMS (Data Base Management System) Un Sistema de Gestión de Base de Datos, consiste en una colección de datos interrelacionados y un conjunto de

Funciones del Administrador de Base de Datos. Ing. Anaylen López, MSc Base de Datos II

Patrones para persistencia (I) Ingeniería del Software II

Administración de la producción. Sesión 10: Gestor de Base de Datos (Access)

ADMINISTRACIÓN DE BASES DE DATOS DISTRIBUIDAS

Introducción. Componentes de un SI. Sistema de Información:

Bases de Datos: Structured Query Language (SQL)

Bases de datos relacionales y el modelo entidad-relación

Tecnología de la Información y la Comunicación. Base de datos. Consultas

TALLER No. 1 Capitulo 1: Conceptos Básicos de Bases de datos

GENERALIDADES DE BASES DE DATOS

Bases de Datos Indexación y Hashing 1. Indexación. Jorge Pérez Rojas Universidad de Talca, II Semestre 2006

BASE DE DATOS UNIVERSIDAD DE LOS ANDES FACULTAD DE MEDICINA T.S.U. EN ESTADISTICA DE SALUD CATEDRA DE COMPUTACIÓN II. Comenzar presentación

UNIDAD DIDACTICA 1: SISTEMAS GESTORES DE BASES DE DATOS

Bases de Datos. Sistemas de Gestión de Bases de Datos

- Bases de Datos - - Diseño Físico - Luis D. García

ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA Programación de sitios web Act 11: Reconocimiento de la unidad 3

3. Modelo relacional: Estructura e integridad.

Figura 4.1 Clasificación de los lenguajes de bases de datos

Bases de Datos SQL 1 SQL. Jorge Pérez R. Universidad de Talca, II Semestre 2006

Proyecto de Normalización Automática de Base de Datos

Bases de datos: Sistemas de bases de datos:

INTRODUCCION A LAS BASES DE DATOS Procesamiento de Archivos vs Bases de Datos ARCHIVOS BASES DE DATOS

SISTEMAS DE INFORMACIÓN II TEORÍA

Introducción a los sistemas de bases de datos

CAPÍTULO 2 Sistemas De Base De Datos Multiusuarios

QUÉ ES UNA BASE DE DATOS Y CUÁLES SON LOS PRINCIPALES TIPOS? EJEMPLOS: MYSQL, SQLSERVER, ORACLE, POSTGRESQL, INFORMIX (DV00204A)

Tutorial: Primeros Pasos con Subversion

Para qué XP_CRYPT y SQL Shield?

Maxpho Commerce 11. Gestión CSV. Fecha: 20 Septiembre 2011 Versión : 1.1 Autor: Maxpho Ltd

Registro: Es un conjunto de campos. También se llama Fila o Tupla. Son varios datos

Elementos requeridos para crearlos (ejemplo: el compilador)

Tema 1: Introducción

República Bolivariana de Venezuela Ministerio Popular de Educación y Deportes UNEFA Cátedra: Base de Datos Unidad I. Introducción

Maestría en Bioinformática. Bases de Datos y Sistemas de Información. Diseño Lógico. Ing. Alfonso Vicente, PMP alfonso.vicente@logos.com.

Resumen. El rol del lenguaje SQL en los SGBDR y en la Relacional. cjimenez@inf.udec.cl, tamrstro@inf.udec.cl

Capítulo 5. Cliente-Servidor.

Bases de Datos 3º Informática de Sistemas

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 8. Elementos Básicos

INTRODUCCIÓN A LOS SISTEMAS GESTORES DE BASE DE DATOS

Unidad de trabajo 2: INFORMÁTICA BÁSICA (primera parte)

Una base de datos es una colección de información ordenada e interrelacionada que es de importancia para una empresa.

[CASI v.0110] Pág. 1

GESTIÓN DOCUMENTAL PARA EL SISTEMA DE CALIDAD

Tema 1 Introducción, Conceptos y el DBMS

CERTAMEN 2 90 minutos 20 puntos

Sistemas de Gestión de Documentos Electrónicos de Archivo (SGDEA)

Base de datos en Excel

x

Gestion de archivos. Problemas al almacenar datos sólo en la memoria:

Unidad I. 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal)

COMANDOS DE SQL, OPERADORES, CLAUSULAS Y CONSULTAS SIMPLES DE SELECCIÓN

Unidad didáctica 2: Metodologías de desarrollo de Bases de Datos. Unidad didáctica 1: Fase de análisis de requisitos Modelo E/R

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 5. Sistemas de Bases de Datos. frente a Sistemas de Ficheros

BASES DE DATOS TEMA 4 DISEÑO DE BASES DE DATOS RELACIONALES

Estas visiones de la información, denominadas vistas, se pueden identificar de varias formas.

Seminario de Informática. Modulo V: Bases de Datos Elementos Conceptuales

ANEXO 26-A COMITÉ PERMANENTE DE INTERPRETACIÓN SIC N 32 ACTIVOS INTANGIBLES COSTOS DE SITIOS WEB. (Modificada en 2008) (IV Difusión)

BASE DE DATOS QUÉ ES UNA BASE DE DATOS?

UNIDAD 3 ASPECTOS ASOCIADOS CON BASES DE DATOS. Diseno Físico de Bases de Datos Objetivo. 2.2 Visión General del Procesamiento de Consultas

Oficina Online. Manual del administrador

Modelos y Bases de Datos

BASES DE DATOS OFIMÁTICAS

Conoce los Tipos de Hosting que Existen y Elige el Mejor para tus Necesidades

Autenticación Centralizada

DOCENTES FORMADORES UGEL 03 PRIMARIA

Introducción a los Sistemas de Gestión de Bases de Datos

TEMA 3 PROFESOR: M.C. ALEJANDRO GUTIÉRREZ DÍAZ 2 3. PROCESAMIENTO DE CONSULTAS DISTRIBUIDAS

SISTEMAS DE GESTIÓN DE BASE DE DATOS SGBD / DBMS

No se requiere que los discos sean del mismo tamaño ya que el objetivo es solamente adjuntar discos.

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 9. Reglas de Integridad

Unidad III: Lenguaje de manipulación de datos (DML) 3.1 Inserción, eliminación y modificación de registros

Bases de Datos 2. Teórico

Toda base de datos relacional se basa en dos objetos

LABORATORIO 10. ADMINISTRACIÓN DE COPIAS DE SEGURIDAD EN SQL SERVER

Guía de Laboratorio Base de Datos I.

Introducción a las redes de computadores

BASES DE DATOS EL MODELO RELACIONAL: LAS TABLAS

Para detalles y funcionalidades ver Manual para el Administrador

, RECUPERACIoN DE DATOS:

Transcripción:

Capítulo 1: Conceptos Básicos de Bases de Datos Dr. José Torres Jiménez Laboratorio de Tecnologías de Información Centro de Investigación y de Estudios Avanzados del IPN Cinvestav-Tamaulipas Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 1 / 57

Outline Definición de base de datos 1 Definición de base de datos 2 Sistemas Manejadores de Bases de Datos Búsqueda Secuencial Búsqueda binaria Búsqueda indizada 3 Tipos de datos en una base de datos 4 Enfoques para bases de datos Enfoque Jerárquico Enfoque de Redes 5 Introducción a los Sublenguajes de Datos (DSL) SQL DML del SQL 6 Componentes de un Sistema de Base de Datos 7 Ventajas de Utilizar una Base de Datos 8 Conceptos Adicionales 9 Una Arquitectura para un SMBD Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 2 / 57

Definición de base de datos Base de datos Una base de datos es una colección de archivos relacionados con la finalidad de permitir el manejo de la información de alguna compañía. Cada uno de dichos archivos pueden ser vistos como una colección de registros y cada registro está compuesto de una colección de campos.cada uno de los campos de cada registro permite llevar información n de alguna característica o atributo de alguna entidad del mundo real. Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 3 / 57

Definición de base de datos Base de Datos Si hablamos de una UNIVERSIDAD, las entidades de interés podrían ser: ALUMNOS, PROFESORES, SALONES, etc. Respecto a la entidad ALUMNO, los atributos o características importantes podrían ser: NOMBRE,DIRECCION,TELEFONO,CARRERA, MATRICULA, etc. Si hablamos de una INDUSTRIA, las entidades de interés podrían ser: DEPARTAMENTOS,EMPLEADOS,PRODUCTOS, etc. Respecto a la entidad DEPARTAMENTO, los atributos a características importantes podrían ser: NOMBRE DEL DEPARTAMENTO, NOMBRE DEL DIRECTOR DEL DEPARTAMENTO, FUNCION DEL DEPARTAMENTO, etc. Un archivo de una base de datos también puede ser pensado como una tabla en la que tenemos renglones y columnas, cada renglón correspondiendo a un registro del archivo y cada columna correspondiendo a un campo. Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 4 / 57

Outline Sistemas Manejadores de Bases de Datos 1 Definición de base de datos 2 Sistemas Manejadores de Bases de Datos Búsqueda Secuencial Búsqueda binaria Búsqueda indizada 3 Tipos de datos en una base de datos 4 Enfoques para bases de datos Enfoque Jerárquico Enfoque de Redes 5 Introducción a los Sublenguajes de Datos (DSL) SQL DML del SQL 6 Componentes de un Sistema de Base de Datos 7 Ventajas de Utilizar una Base de Datos 8 Conceptos Adicionales 9 Una Arquitectura para un SMBD Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 5 / 57

Sistemas Manejadores de Bases de Datos SMBD Los sistemas manejadores de bases de datos han sido usados ampliamente para: ORGANIZAR Y MANIPULAR GRANDES VOLUMENES DE DATOS DE LAS EMPRESAS. Estos Sistemas Manejadores de Bases de Datos solo podrían ser corridos en instalaciones computacionales grandes (MAINFRAMES). Afortunadamente esta situación empezó a cambiar debido al bajo costo de las mini/microcomputadoras y a la aparición de Sistemas Manejadores de Bases de Datos para las microcomputadoras. Un sistema manejador de base de datos no es más que UN SISTEMA COMPUTARIZADO PARA LLEVAR REGISTROS. Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 6 / 57

Sistemas Manejadores de Bases de Datos SMBD Algunas de las facilidades que proporciona el sistema a los usuarios son: Agregar Nuevos Archivos a la Base de Datos. Agregar Nuevos Registros a los Archivos existentes. Recuperación de Datos. Actualización de Datos. Borrar registros. Borrar Archivos. Proporcionar los mecanismos para el control del acceso concurrente a los datos. Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 7 / 57

Sistemas Manejadores de Bases de Datos Una base de datos es una colección de información útil organizada en una manera específica. Por ejemplo para llevar el control de los teléfonos de personas podría ser útil una base de datos que constaría de los datos de la tabla agenda. Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 8 / 57

Sistemas Manejadores de Bases de Datos Nombre Teléfono Vargas Rubén 18-20-67 Díaz Raúl 13-67-90 Ruiz Pedro 12-89-90 Martínez Raúl 12-54-46 Cuadro 1: Tabla para llevar una agenda telefónica Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 9 / 57

Sistemas Manejadores de Bases de Datos Búsqueda Secuencial Búsqueda Secuencial El problema de la tabla agenda es que, dado que los datos no están ordenados, buscar un teléfono en partícular puede ser lento. Asumiendo que tenemos N renglones en la tabla, localizar un elemento en particular tendría los siguientes casos: Mejor Caso: Sólo se busca en 1 renglón. Peor Caso: Se busca en los N renglones. Caso Promedio: Se busca en N+1 2 renglones. Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 10 / 57

Sistemas Manejadores de Bases de Datos Búsqueda Secuencial Los casos Mejor y Peor son fáciles de derivar para calcular el caso promedio se ha hecho uso de la fórmula: CasoPromedio= ΣTodosCasos NúmeroCasos. Y tenemos que: ΣTodosCasos = N i. Para obtener simbólicamente el valor i=1 de esta sumatoria sumemos dos veces de la siguiente manera: 1 2 3... N 1 N N N 1 N 2... 2 1 de donde (N +1) (N +1) (N +1)... (N +1) (N +1) N(N +1) = 2 N i i=1 Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 11 / 57

Sistemas Manejadores de Bases de Datos Búsqueda Secuencial Concluyendo entonces que: N i=1 por lo que concluimos que: CasoPromedio= N(N+1) 2 i = N(N+1) 2. El valor de NumeroCasos es N N = (N+1) 2. Este tipo de búsqueda se le conoce como búsqueda secuencial y es la única alternativa de búsqueda cuando los datos no están ordenados y no se cuenta con estructuras auxiliares. Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 12 / 57

Sistemas Manejadores de Bases de Datos Búsqueda binaria Búsqueda binaria Si los datos anteriores son ordenados (lo cuál podría hacerse con un algoritmo similar al QuickSort que tiene un orden de NlogN) esto se ilustra en la tabla 2. Podemos utilizar una búsqueda binaria. La ventaja de la búsqueda binaria es que en cada operación el tamaño del problema se reduce a la mitad. Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 13 / 57

Sistemas Manejadores de Bases de Datos Búsqueda binaria Nombre Teléfono Díaz Raúl 13-67-90 Martínez Raúl 12-54-46 Ruiz Pedro 12-89-90 Vargas Rubén 18-20-67 Cuadro 2: Tabla para llevar una agenda telefónica Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 14 / 57

Sistemas Manejadores de Bases de Datos Búsqueda binaria Originalmente el tamaño del problema de búsqueda de un elemento en particular es N, con el primer intento el tamaño del problema se reduce a: N 2 con el segundo intento se reduce a: N 2 2 = N 2 2, y con el iésimo intento se reduce a: N 2 i, de esta manera en el peor de los casos se tendrían que realizar tantos intentos como el valor de i en la expresión N 2 i, despejando de esta fórmula tenemos que: i = log 2 (N). Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 15 / 57

Sistemas Manejadores de Bases de Datos Búsqueda binaria Como conclusión tenemos entonces: Mejor Caso= 1 Peor Caso= log 2 (N). Caso Promedio= 1+ log 2 (N) 2 Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 16 / 57

Sistemas Manejadores de Bases de Datos Búsqueda indizada Búsqueda indizada El inconveniente de utilizar una búsqueda binaria es que al hacer altas, bajas y cambios sobre una tabla ordenada, tenemos que organizar los datos para que se mantengan ordenados, y esto podría tomar mucho tiempo. Ante este problema una alternativa es la utilización de un indice (similar al de la parte final de un libro) que contendría el nombre de la persona y un apuntador a dónde esta el elemento dentro de la tabla. Como puede notarse, los datos en la tabla podrán estar físicamente desordenados, pero a través del índice se ven lógicamente ordenados. El índice (normalmente) es un archivo aparte del archivo que contiene los datos, la manera más popular de construir y mantener un índice es a traves del algoritmo de arboles balanceados B-Tree. Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 17 / 57

Sistemas Manejadores de Bases de Datos Búsqueda indizada Los casos para este tipo de búsqueda son: Mejor Caso= 1 Peor Caso= log m (N). Caso Promedio= 1+ log m (N) 2 Dónde m indica el número de vías que tiene el árbol. La gran ventaja de un indice es que el algorimo de mantenimiento es mucho más eficiente que el algoritmo para mantener un archivo ordenado, y por otro lado es mucho más rápido dado que m es mayor que 2. Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 18 / 57

Outline Tipos de datos en una base de datos 1 Definición de base de datos 2 Sistemas Manejadores de Bases de Datos Búsqueda Secuencial Búsqueda binaria Búsqueda indizada 3 Tipos de datos en una base de datos 4 Enfoques para bases de datos Enfoque Jerárquico Enfoque de Redes 5 Introducción a los Sublenguajes de Datos (DSL) SQL DML del SQL 6 Componentes de un Sistema de Base de Datos 7 Ventajas de Utilizar una Base de Datos 8 Conceptos Adicionales 9 Una Arquitectura para un SMBD Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 19 / 57

Tipos de datos en una base de datos Tipos de datos en una base de datos Los datos pueden ser divididos en dos grandes categorías: ALFANUMERICA NUMERICA Los datos alfanuméricos consisten de caracteres alfabéticos (A a la Z, ó a la z), caracteres numéricos (0 al 9) y de algunos símbolos especiales como # $%. v.g. el número de serie de un televisor: RTA-XA100 Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 20 / 57

Tipos de datos en una base de datos Los datos numéricos están compuestos por los dígitos del 0 al 9, punto decimal y signo. v.g. el sueldo de un empleado: 1000000.00 Adicionalmente a estos tipos existen otros tipos que son utilizados como: LÓGICO FECHA MEMO GENERAL (Puede contener objetos audio, vídeo, imágenes,...) Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 21 / 57

Outline Enfoques para bases de datos 1 Definición de base de datos 2 Sistemas Manejadores de Bases de Datos Búsqueda Secuencial Búsqueda binaria Búsqueda indizada 3 Tipos de datos en una base de datos 4 Enfoques para bases de datos Enfoque Jerárquico Enfoque de Redes 5 Introducción a los Sublenguajes de Datos (DSL) SQL DML del SQL 6 Componentes de un Sistema de Base de Datos 7 Ventajas de Utilizar una Base de Datos 8 Conceptos Adicionales 9 Una Arquitectura para un SMBD Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 22 / 57

Enfoques para bases de datos Enfoques para bases de datos Existen 3 enfoques principales para el manejo de BASES DE DATOS: ENFOQUE RELACIONAL ENFOQUE JERÁRQUICO ENFOQUE DE REDES Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 23 / 57

Enfoques para bases de datos Enfoque relacional El enfoque relacional ve a los datos como un conjunto de TABLAS(ARCHIVOS) constando de un conjunto de RENGLONES(REGISTROS) y cada RENGLON constando de un conjunto de COLUMNAS(CAMPOS). La RELACION entre las TABLAS(ARCHIVOS) se establece solo por nombres de atributos comunes. Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 24 / 57

Enfoques para bases de datos Ejemplo Tenemos una empresa en la que se necesita tener la información de las PARTES que utiliza, los PROVEEDORES de la empresa y el detalle de QUE PARTES SUMINISTRA UN PROVEEDOR y LOS PROVEEDORES DE UNA PARTE (Relación N a M). Se sabe que un proveedor puede suministrar 0 ó más partes y que una parte puede ser suministrada por 0 ó más proveedores. Nuestra base de datos podría ser vista como lo ilustra la figura 1. Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 25 / 57

Enfoques para bases de datos PROVE NOMBRE CALIDAD S1 JUAN 9 S2 PEDRO 8 S3 RAMÓN 10 S4 ANA 7 PARTE NOMBRE COLOR P1 TUERCA GRIS P2 CLAVO GRIS P3 TUERCA BLANCO P4 LÁPIZ AMARILLO PROVE PARTE CANTIDAD S1 P1 100 S2 P2 300 S2 P3 500 S3 P4 200 S4 P1 100 S4 P2 150 S4 P3 200 S4 P4 300 Figura 1: Modelo Relacional de la Base de Datos de Partes-Proveedores y Pedidos Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 26 / 57

Enfoques para bases de datos Enfoque Jerárquico Enfoque jerarquico Permite ver una base de datos como compuesta de un CONJUNTO DE RELACIONES PADRE-HIJO, v.g. la base de datos anterior se vería como en la figura 2. En donde se modela claramente las partes que suministra un proveedor, pero no sería posible representar partes que no sean suministradas (NO PUEDE HABER HIJOS SIN PADRE). Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 27 / 57

Enfoques para bases de datos Enfoque Jerárquico Figura 2: Modelo Jerárquico de Bases de Datos de Partes, Proveedores y Pedidos Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 28 / 57 PROVE NOMBRE CALIDAD S1 JUAN 9 PARTE NOMBRE COLOR CANTIDAD P1 TUERCA GRIS 100 PROVE NOMBRE CALIDAD S2 PEDRO 8 PARTE NOMBRE COLOR CANTIDAD P2 CLAVO GRIS 300 P3 TUERCA BLANCO 500 PROVE NOMBRE CALIDAD S3 RAMÓN 10 PARTE NOMBRE COLOR CANTIDAD P4 LAPIZ AMARILLO 200 PROVE NOMBRE CALIDAD S4 ANA 7 PARTE NOMBRE COLOR CANTIDAD P1 TUERCA GRIS 100 P2 CLAVO GRIS 150 P3 TUERCA BLANCO 200 P4 LAPIZ AMARILLO 300

Enfoques para bases de datos Enfoque Jerárquico Además no es fácil saber quien suministra una determinada parte, por lo que se podría modelar la misma base de datos como se ilustra en la figura 3 Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 29 / 57

Enfoques para bases de datos Enfoque Jerárquico Figura 3: Otra forma del Modelo Jerárquico de Bases de Datos de Partes, Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 30 / 57 PARTE NOMBRE COLOR P1 TUERCA GRIS PROVEE NOMBRE CALIDAD CANTIDAD S1 JUAN 9 100 S4 ANA 7 100 PARTE NOMBRE COLOR P2 CLAVO GRIS PARTE NOMBRE COLOR CANTIDAD S2 PEDRO 8 300 S4 ANA 7 150 PARTE NOMBRE COLOR P3 TUERCA BLANCO PARTE NOMBRE COLOR CANTIDAD S2 PEDRO 8 500 S4 ANA 7 200 PARTE NOMBRE COLOR P4 LAPIZ AMARILLO PROVEE NOMBRE CALIDAD CANTIDAD S3 RAMON 10 200 S4 ANA 7 300

Enfoques para bases de datos Enfoque Jerárquico Pero, en este caso, no es posible tener la información de proveedores que no suministran algo, y no es fácil identificar las partes que suministra un proveedor. En ambos casos el enfoque jerárquico tiene la desventaja de una gran redundancia de datos. Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 31 / 57

Enfoques para bases de datos Enfoque de Redes Enfoque de redes Modela la información como conjuntos, donde hay dos tipos de conjuntos: PROPIETARIOS(Equivale a un padre en el enfoque jerárquico) y MIEMBROS (Equivale a un hijo dentro del enfoque jerárquico). En el enfoque de REDES la redundancia se reduce al máximo, no se pierde información debido a que una parte no se suministre o a que un proveedor no suministre alguna parte. Es el enfoque más eficiente para representar relaciones N a M, sin embargo, tiene la desventaja de ser MUY COMPLEJO. El modelo de bases de datos de este enfoque se puede ver en la figura 4 Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 32 / 57

Enfoques para bases de datos Enfoque de Redes PROVEE NOMBRE CALIDAD PROVEE NOMBRE CALIDAD PROVEE NOMBRE CALIDAD PROVEE NOMBRE CALIDAD S1 JUAN 9 S2 PEDRO 8 S3 RAMON 10 S4 ANA 7 CANTIDAD CANTIDAD CANTIDAD CANTIDAD CANTIDAD CANTIDAD CANTIDAD CANTIDAD 100 300 500 200 100 150 200 300 PARTE NOMBRE COLOR PARTE NOMBRE COLOR PARTE NOMBRE COLOR PARTE NOMBRE COLOR P1 TUERCA GRIS P2 CLAVO GRIS P3 TUERCA BLANCO P4 LÁPIZ AMARILLO Figura 4: Modelo de redes de Bases de Datos de Partes, Proveedores y Pedidos Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 33 / 57

Enfoques para bases de datos Enfoque de Redes De los tres enfoques el más usado y el que tiene bases más formales es el enfoque relacional, motivo por el cuál casi el 100 de los manejadores son construidos con este enfoque. Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 34 / 57

Introducción a los Sublenguajes de Datos (DSL) Outline 1 Definición de base de datos 2 Sistemas Manejadores de Bases de Datos Búsqueda Secuencial Búsqueda binaria Búsqueda indizada 3 Tipos de datos en una base de datos 4 Enfoques para bases de datos Enfoque Jerárquico Enfoque de Redes 5 Introducción a los Sublenguajes de Datos (DSL) SQL DML del SQL 6 Componentes de un Sistema de Base de Datos 7 Ventajas de Utilizar una Base de Datos 8 Conceptos Adicionales 9 Una Arquitectura para un SMBD Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 35 / 57

Introducción a los Sublenguajes de Datos (DSL) Muchos sistemas manejadores de base de datos tienen un SUBLENGUAJE DE DATOS (Data Sub Language) que está constituido en dos partes: Lenguaje de Definición de Datos (Data Definition Language DDL) Lenguaje de Manipulación de Datos (Data Manipulation Language DML) El lenguaje de definición de datos está constituido por las instrucciones que permiten crear/mantener: Las estructuras de almacenamiento de los archivos de datos. La estructura de las estrategias de acceso(heap, Indice, Hash, etc.) El lenguaje de manipulación está compuesto por las instrucciones que permiten realizar ALTAS, BAJAS, CAMBIOS y OBTENCION DE INFORMACION de los archivos de datos. Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 36 / 57

Introducción a los Sublenguajes de Datos (DSL) SQL SQL Dentro de los sublenguajes de datos más difundidos y de amplio uso tenemos el SQL (Structured Query Language). DDL del SQL Como ejemplo del DDL del SQL veremos como se crea una tabla. Supongamos que deseamos crear una base de datos simple(compuesta por una sola tabla), para llevar el control de calificaciones de los exámenes de alumnos de una materia, suponiendo que los atributos importantes son: MATRICULA NOMBRE PARCIAL 1 PARCIAL 2 PARCIAL 3 FINAL Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 37 / 57

Introducción a los Sublenguajes de Datos (DSL) SQL La forma de crear esta tabla sería: CREATE TABLE CALIF(MATRICULA INTEGER NOT NULL, NOMBRE CHAR(35), PARCIAL1 SMALLINT, PARCIAL2 SMALLINT, PARCIAL3 SMALLINT, FINAL SMALLINT); Para soportar el concepto de llave (No duplicados) es necesario crear un índice único sobre los atributos llave (que fueron especificados con NOT NULL): CREATE UNIQUE INDEX CALIX ON CALIF (MATRICULA); Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 38 / 57

Introducción a los Sublenguajes de Datos (DSL) SQL Supongamos que ya se cargaron datos, un ejemplo de contenido es dado en la tabla 3. MATRICULA NOMBRE PARCIAL1 PARCIAL2 PARCIAL3 FINAL 331243 JUAN MARTINEZ 8 8 6 7 335467 PEDRO LOPEZ 10 10 6 9 337890 MARIA ALONSO 9 9 6 10 558967 FRIDA GUTIERREZ 7 8 7 10 578990 DIANA CAMACHO 6 7 8 9 654321 LUIS PEREZ 8 5 9 9 723445 FRANCIS RIQUELME 8 6 10 8 Cuadro 3: Tabla para control de calificaciones Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 39 / 57

Introducción a los Sublenguajes de Datos (DSL) DML del SQL Inserción INSERT INTO CALIF VALUES (331232, LUIS PEREZ MARTINEZ, 1,1,1,1); Borrado DELETE FROM CALIF WHERE MATRICULA=331289; Actualización UPDATE CALIF SET PARCIAL1=PARCIAL1+1; Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 40 / 57

Introducción a los Sublenguajes de Datos (DSL) DML del SQL Consulta SELECT AVG(PARCIAL1) FROM CALIF; SELECT MATRICULA, NOMBRE FROM CALIF WHERE PARCIAL1=PARCIAL2; Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 41 / 57

Componentes de un Sistema de Base de Datos Outline 1 Definición de base de datos 2 Sistemas Manejadores de Bases de Datos Búsqueda Secuencial Búsqueda binaria Búsqueda indizada 3 Tipos de datos en una base de datos 4 Enfoques para bases de datos Enfoque Jerárquico Enfoque de Redes 5 Introducción a los Sublenguajes de Datos (DSL) SQL DML del SQL 6 Componentes de un Sistema de Base de Datos 7 Ventajas de Utilizar una Base de Datos 8 Conceptos Adicionales 9 Una Arquitectura para un SMBD Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 42 / 57

Componentes de un Sistema de Base de Datos Componentes de un sistema de base de datos Involucra los siguientes componentes: Datos +Hardware +Software +Usuarios Datos Los datos dentro de una base de datos están integrados y son compartidos: INTEGRADOS Puesto que la base de datos es la unificación de varios archivos con redundancia parcial o totalmente eliminada. COMPARTIDOS Esto implica que los datos pueden ser accesados concurrentemente por diferentes usuarios. Hardware Consiste básicamente de unidades de almacenamiento secundario, principalmente discos duros, discos compactos, cintas magnéticas etc. Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 43 / 57

Componentes de un Sistema de Base de Datos Software Entre la base de datos física y los usuarios existe una capa de Software denominada SISTEMA MANEJADOR DE BASE DE DATOS(SMBD ó DBMS). Todos los requerimientos de acceso a la base de datos son manejados por el SMBD. Usuarios Hay 3 tipos de Usuarios: Programador de Aplicaciones: Se encarga de escribir programas para el manejo de la Base de Datos Usando un lenguaje de alto nivel. Usuario Final: Es el que utiliza un lenguaje de comandos (Query Language) y/o Programas de aplicación. Administrador de la base de datos (DBA): Es el responsable de definir poĺıticas de acceso a la Base de Datos. Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 44 / 57

Outline Ventajas de Utilizar una Base de Datos 1 Definición de base de datos 2 Sistemas Manejadores de Bases de Datos Búsqueda Secuencial Búsqueda binaria Búsqueda indizada 3 Tipos de datos en una base de datos 4 Enfoques para bases de datos Enfoque Jerárquico Enfoque de Redes 5 Introducción a los Sublenguajes de Datos (DSL) SQL DML del SQL 6 Componentes de un Sistema de Base de Datos 7 Ventajas de Utilizar una Base de Datos 8 Conceptos Adicionales 9 Una Arquitectura para un SMBD Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 45 / 57

Ventajas de Utilizar una Base de Datos Ventajas de utilizar una base de datos Compactez No se necesitan voluminosos archivos de papel. Velocidad. La velocidad de operación es mayor a la que se tiene con un sistema manual. Menos Tedio Actualización. La información se puede mantener más fácilmente actualizada. Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 46 / 57

Ventajas de Utilizar una Base de Datos Ventajas de Tener el Control Centralizado de una Base de Datos Se puede reducir la redundancia. Se evita la inconsistencia. Los datos pueden ser compartidos. Se pueden reforzar los estándares. Se tiene el control del acceso. La integridad puede ser mantenida. Se pueden balancear requerimientos conflictivos. Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 47 / 57

Ventajas de Utilizar una Base de Datos Inconsistencia Cuando dos instancias del mismo elemento no tienen valores iguales. v.g. Si hay dos registros para el alumno con matricula 331540 (en diferentes archivos), los atributos iguales deben tener los mismos valores. Falta de Integridad Se da la falta de integridad cuando una instancia de un elemento tiene valores raros: v.g. Que el número de horas trabajadas a la semana por un empleado sea de 400. Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 48 / 57

Ventajas de Utilizar una Base de Datos Independencia de Datos Se dice que un sistema tiene INDEPENDENCIA DE DATOS: Si los programas de aplicación no tienen que ser modificados al cambiar: la estructura de almacenamiento y/o la estrategia de acceso. Dicho de otro modo es: LA INMUNIDAD DE LAS APLICACIONES A LOS CAMBIOS EN LA ESTRUCTURA DE ALMACENAMIENTO Y/O LA ESTRATEGIA DE ACCESO. Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 49 / 57

Outline Conceptos Adicionales 1 Definición de base de datos 2 Sistemas Manejadores de Bases de Datos Búsqueda Secuencial Búsqueda binaria Búsqueda indizada 3 Tipos de datos en una base de datos 4 Enfoques para bases de datos Enfoque Jerárquico Enfoque de Redes 5 Introducción a los Sublenguajes de Datos (DSL) SQL DML del SQL 6 Componentes de un Sistema de Base de Datos 7 Ventajas de Utilizar una Base de Datos 8 Conceptos Adicionales 9 Una Arquitectura para un SMBD Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 50 / 57

Conceptos Adicionales Conceptos adicionales Campo Almacenado: Es la unidad de datos más pequeña que se encuentra almacenada. Registro Almacenado: Es una colección de campos almacenados que están relacionados. Archivo Almacenado: Es el conjunto de todas las ocurrencias de un registro almacenado. Representación de Datos Numéricos: Se pueden almacenar como: Un String de Caracteres, un Decimal Empacado, en Binario. Representación de Datos Caracter: Se Pueden almacenar en ASCII, EBCDIC, etc. Manejo de Objetos: Se pueden manejar como campos objeto que pueden ser Gráficas, Sonido, Hojas de Calculo, Textos, etc. Codificación de Datos: Resulta útil en ocasiones almacenar los datos en forma codificada. v.g. En lugar de almacenar los nombres de los colores podríamos codificarlos para ahorrar espacio y facilidad de uso de acuerdo a la tabla 4. Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 51 / 57

Conceptos Adicionales Color Número Negro 0 Café 1 Rojo 2 Naranja 3 Amarillo 4 Verde 5 Azul 6 Violeta 7 Gris 8 Blanco 9 Cuadro 4: Tabla de Codificación de Colores Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 52 / 57

Conceptos Adicionales Materialización de Datos Existen campos virtuales, debido a que no tienen equivalencia con un campo almacenado, y para poder ser accesados deben ser calculados. v.g. Un campo virtual llamado PROMEDIO que depende de otros datos, de forma que para ser accesado debe ser calculado primero. Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 53 / 57

Outline Una Arquitectura para un SMBD 1 Definición de base de datos 2 Sistemas Manejadores de Bases de Datos Búsqueda Secuencial Búsqueda binaria Búsqueda indizada 3 Tipos de datos en una base de datos 4 Enfoques para bases de datos Enfoque Jerárquico Enfoque de Redes 5 Introducción a los Sublenguajes de Datos (DSL) SQL DML del SQL 6 Componentes de un Sistema de Base de Datos 7 Ventajas de Utilizar una Base de Datos 8 Conceptos Adicionales 9 Una Arquitectura para un SMBD Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 54 / 57

Una Arquitectura para un SMBD Una arquitectura para un SMBD La arquitectura consta de 3 niveles que son ilustrados en la figura 5, los niveles son: Nivel Interno: Es el más cercano al almacenamiento físico. Se refiere a la forma de almacenamiento de los datos. Nivel Externo: Es el más cercano al usuario, se refiere a la forma en que el usuario final ve los datos. Nivel Conceptual: Es un nivel de indirección entre los otros dos, se refiere a la forma en que los diseñadores de sistemas ven los datos. Trata de expresar como son los datos realmente. Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 55 / 57

Una Arquitectura para un SMBD VISTA EXTERNA 1 VISTA EXTERNA 2 VISTA EXTERNA N VISTA CONCEPTUAL VISTA INTERNA Figura 5: Arquitectura de un SMBD de tres niveles Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 56 / 57

Una Arquitectura para un SMBD Vistas Solo existe una vista interna. Solo existe una vista conceptual. Existen tantas vistas externas según se necesiten. Entre una vista externa y la vista conceptual existe un mapeo EXTERNO / CONCEPTUAL. Entre la vista conceptual y la vista interna existe un mapeo CONCEPTUAL / INTERNO. El nivel interno se refiere a la forma en la que son almacenados / accesados físicamente los datos. Dr. José Torres Jiménez (Cinvestav-LTI) Capítulo 1 Bases de Datos 57 / 57