introducción a los conceptos de bases de datos final

Upload: robert-cabeza

Post on 08-Apr-2018

217 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/6/2019 Introduccin a los conceptos de bases de datos Final

    1/15

    Introduccin a los conceptos de bases dedatos

    1.1 Definicin de Base de Datos

    Todo buen curso necesita empezar con algunos conceptos bsicospara el mejor entendimiento del mismo, por lo tanto empezaremoscon las definiciones que involucran a las bases de datos.

    Dato:Conjunto de caracteres con algn significado, pueden ser

    numricos, alfabticos, o alfanumricos.

    Informacin:

    Es un conjunto ordenado de datos los cuales son manejados segnla necesidad del usuario, para que un conjunto de datos pueda serprocesado eficientemente y pueda dar lugar a informacin, primerose debe guardar lgicamente en archivos.

    Conceptos bsicos de archivos computacionales.

    Campo: Es la unidad ms pequea a la cual uno puede referirse en unprograma. Desde el punto de vista del programador representa unacaracterstica de un individuo u objeto.

    Registro:Coleccin de campos de iguales o de diferentes tipos.

    Archivo:Coleccin de registros almacenados siguiendo una estructura

    homognea.

    Base de datos:Es una coleccin de archivos interrelacionados, son creados con un

    DBMS. El contenido de una base de datos engloba a la informacinconcerniente(almacenadas en archivos) de una organizacin, de talmanera que los datos estn disponibles para los usuarios, unafinalidad de la base de datos es eliminar la redundancia o al menosminimizarla. Los tres componentes principales de un sistema de basede datos son el hardware, el software DBMS y los datos a manejar, ascomo el personal encargado del manejo del sistema.

    Sistema Manejador de Base de Datos. (DBMS)Un DBMS es una coleccin de numerosas rutinas de software

    interrelacionadas, cada una de las cuales es responsable de una tarea

    especfica.

  • 8/6/2019 Introduccin a los conceptos de bases de datos Final

    2/15

    El objetivo primordial de un sistema manejador base de datoses proporcionar un contorno que sea a la vez conveniente y eficientepara ser utilizado al extraer, almacenar y manipular informacin de labase de datos. Todas las peticiones de acceso a la base, se manejancentralizadamente por medio del DBMS, por lo que este paquete

    funciona como interfase entre los usuarios y la base de datos.

    Esquema de base de datos:Es la estructura por la que esta formada la base de datos, se

    especifica por medio de un conjunto de definiciones que se expresamediante un lenguaje especial llamado lenguaje de definicin dedatos. (DDL)

    Administrador de base de datos (DBA):Es la persona o equipo de personas profesionales responsables del

    control y manejo del sistema de base de datos, generalmente tiene(n)

    experiencia en DBMS, diseo de bases de datos, Sistemas operativos,comunicacin de datos, hardware y programacin.

    Los sistemas de base de datos se disean para manejar grandescantidades de informacin, la manipulacin de los datos involucratanto la definicin de estructuras para el almacenamiento de lainformacin como la provisin de mecanismos para la manipulacinde la informacin, adems un sistema de base de datos debe detener implementados mecanismos de seguridad que garanticen laintegridad de la informacin, a pesar de cadas del sistema o intentos

    de accesos no autorizados.

    Un objetivo principal de un sistema de base de datos esproporcionar a los usuarios finales una visin abstracta de los datos,esto se logra escondiendo ciertos detalles de como se almacenan ymantienen los datos.

    1.2 Objetivos de los sistemas de bases dedatos.

    Los objetivos principales de un sistema de base de datos esdisminuir los siguientes aspectos:

    Redundancia e inconsistencia de datos.

    Puesto que los archivos que mantienen almacenada la informacinson creados por diferentes tipos de programas de aplicacin existe laposibilidad de que si no se controla detalladamente elalmacenamiento, se pueda originar un duplicado de informacin, esdecir que la misma informacin sea ms de una vez en un dispositivode almacenamiento. Esto aumenta los costos de almacenamiento yacceso a los datos, adems de que puede originar la inconsistenciade los datos - es decir diversas copias de un mismo dato no

  • 8/6/2019 Introduccin a los conceptos de bases de datos Final

    3/15

    concuerdan entre si -, por ejemplo: que se actualiza la direccin de uncliente en un archivo y que en otros archivos permanezca la anterior.

    Dificultad para tener acceso a los datos.

    Un sistema de base de datos debe contemplar un entorno de datosque le facilite al usuario el manejo de los mismos. Supngase unbanco, y que uno de los gerentes necesita averiguar los nombres detodos los clientes que viven dentro del cdigo postal 78733 de laciudad. El gerente pide al departamento de procesamiento de datosque genere la lista correspondiente. Puesto que esta situacin no fueprevista en el diseo del sistema, no existe ninguna aplicacin deconsulta que permita este tipo de solicitud, esto ocasiona unadeficiencia del sistema.

    Aislamiento de los datos.

    Puesto que los datos estn repartidos en varios archivos, y estos nopueden tener diferentes formatos, es difcil escribir nuevos programasde aplicacin para obtener los datos apropiados.

    Anomalas del acceso concurrente.

    Para mejorar el funcionamiento global del sistema y obtener untiempo de respuesta ms rpido, muchos sistemas permiten quemltiples usuarios actualicen los datos simultneamente. En un

    entorno as la interaccin de actualizaciones concurrentes puede darpor resultado datos inconsistentes. Para prevenir esta posibilidaddebe mantenerse alguna forma de supervisin en el sistema.

    Problemas de seguridad.

    La informacin de toda empresa es importante, aunque unos datoslo son ms que otros, por tal motivo se debe considerar el control deacceso a los mismos, no todos los usuarios pueden visualizar algunainformacin, por tal motivo para que un sistema de base de datos sea

    confiable debe mantener un grado de seguridad que garantice laautentificacin y proteccin de los datos. En un banco por ejemplo, elpersonal de nminas slo necesita ver la parte de la base de datosque tiene informacin acerca de los distintos empleados del banco yno a otro tipo de informacin.

    Problemas de integridad.

    Los valores de datos almacenados en la base de datos debensatisfacer cierto tipo de restricciones de consistencia. Estasrestricciones se hacen cumplir en el sistema aadiendocdigos

    apropiados en los diversos programas de aplicacin.

  • 8/6/2019 Introduccin a los conceptos de bases de datos Final

    4/15

    1.3 Abstraccin de la informacin.

    Una base de datos es en esencia una coleccin de archivosrelacionados entre s, de la cual los usuarios pueden extraerinformacin sin considerar las fronteras de los archivos.

    Un objetivo importante de un sistema de base de datos esproporcionar a los usuarios una visin abstracta de los datos, es decir,el sistema esconde ciertos detalles de cmo se almacenan ymantienen los datos. Sin embargo para que el sistema sea manejable,los datos se deben extraer eficientemente.

    Existen diferentes niveles de abstraccin para simplificar lainteraccin de los usuarios con el sistema; Interno, conceptual yexterno, especficamente el de almacenamiento fsico, el del usuario

    y el del programador.

    Nivel fsico.

    Es la representacin del nivel ms bajo de abstraccin, en ste sedescribe en detalle la forma en como de almacenan los datos en losdispositivos de almacenamiento(por ejemplo, mediante sealadores ondices para el acceso aleatorio a los datos).

    Nivel conceptual.

    El siguiente nivel ms alto de abstraccin, describe que datos sonalmacenados realmente en la base de datos y las relaciones queexisten entre los mismos, describe la base de datos completa entrminos de su estructura de diseo. El nivel conceptual deabstraccin lo usan los administradores de bases de datos, quienesdeben decidir qu informacin se va a guardar en la base de datos.

    Consta de las siguientes definiciones:

    1. Definicin de los datos:Se describen el tipo de datos y la

    longitud de campo todos los elementos direccionables en labase. Los elementos por definir incluyen artculos elementales(atributos), totales de datos y registros conceptuales(entidades).

    2. Relaciones entre datos:Se definen las relaciones entre datospara enlazar tipos de registros relacionados para elprocesamiento de archivos mltiples.

    En el nivel conceptual la base de datos aparece como una coleccinde registros lgicos, sin descriptores de almacenamiento. En realidadlos archivos conceptuales no existen fsicamente. La transformacin

    de registros conceptuales a registros fsicos para el almacenamientose lleva a cabo por el sistema y es transparente al usuario.

  • 8/6/2019 Introduccin a los conceptos de bases de datos Final

    5/15

    Nivel de visin.

    Nivel ms alto de abstraccin, es lo que el usuario final puedevisualizar del sistema terminado, describe slo una parte de la basede datos al usuario acreditado para verla. El sistema puede

    proporcionar muchas visiones para la misma base de datos.La interrelacin entre estos tres niveles de abstraccin se ilustra en

    la siguiente figura.

    1.4 Modelos de datos.

    Para introducirnos en este tema, empezaremos definiendo que esun modelo.

    modelo:Es una representacin de la realidad que contiene las

    caractersticas generales de algo que se va a realizar. En base dedatos, esta representacin la elaboramos de forma grfica.

    Qu es modelo de datos?

    Es una coleccin de herramientas conceptuales para describir losdatos, las relaciones que existen entre ellos, semntica asociada a losdatos y restricciones de consistencia.

    Los modelos de datos se dividen en tres grupos:

    Modelos lgicos basados en objetos.Modelos lgicos basados en registros.Modelos fsicos de datos.

  • 8/6/2019 Introduccin a los conceptos de bases de datos Final

    6/15

    Modelos lgicos basados en objetos.

    Se usan para describir datos en los niveles conceptual y de visin,es decir, con este modelo representamos los datos de tal forma comonosotros los captamos en el mundo real, tienen una capacidad de

    estructuracin bastante flexible y permiten especificar restriccionesde datos explcitamente. Existen diferentes modelos de este tipo,pero el ms utilizado por su sencillez y eficiencia es el modeloEntidad-Relacin.

    * Modelo Entidad-Relacin.

    Denominado por sus siglas como: E-R;Estemodelo representaa la realidad a travs deentidades, que son objetos que existen yque se distinguen de otros por sus caractersticas, por ejemplo: un

    alumno se distingue de otro por sus caractersticas particulares comolo es el nombre, o el numero de control asignado al entrar a unainstitucin educativa, as mismo, un empleado, una materia, etc. Lasentidades pueden ser de dos tipos:

    Tangibles :Son todos aquellos objetos fsicos que podemos ver,

    tocar o sentir.

    Intangibles:Todos aquellos eventos u objetos conceptuales que no

    podemos ver, aun sabiendo que existen, por ejemplo:la entidad materia, sabemos que existe, sin embargo, no lapodemos visualizar o tocar.

    Las caractersticas de las entidades en base de datos se llamanatributos,por ejemplo el nombre, direccin telfono, grado, grupo,etc. son atributos de la entidad alumno; Clave, nmero de segurosocial, departamento, etc., son atributos de la entidad empleado. A suvez una entidad se puede asociar o relacionar con ms entidades atravs de relaciones.

    Pero para entender mejor esto, veamos un ejemplo:

    Consideremos una empresa que requiere controlar a losvendedores y las ventas que ellos realizan; de este problemadeterminamos que los objetos o entidades principales a estudiar sonel empleado (vendedor) y el artculo (que es el producto en venta), ylas caractersticas que los identifican son:

    Empleado: Artculo:

    Nombre DescripcinPuesto Costo

  • 8/6/2019 Introduccin a los conceptos de bases de datos Final

    7/15

    Salario ClaveR.F.C.

    La relacin entre ambas entidades la podemos establecer comoVenta.

    Bueno, ahora nos falta describir como se representa un modelo E-Rgrficamente, la representacin es muy sencilla, se empleansmbolos, los cuales son:

    Smbolo Representa

    As nuestro ejemplo anterior quedara representado de la siguienteforma:

    Existen ms aspectos a considerar con respecto a los modelosentidad relacin, estos sern considerados en el tema Modelo EntidadRelacin.

    Modelos lgicos basados en registros.

    Se utilizan para describir datos en los niveles conceptual y fsico.Estos modelos utilizan registros e instancias para representar larealidad, as como las relaciones que existen entre estos registros(ligas) o apuntadores. A diferencia de los modelos de datos basados

    en objetos, se usan para especificar la estructura lgica global de la

    http://sistemas.itlp.edu.mx/tutoriales/basedat1/tema2_1.htmhttp://sistemas.itlp.edu.mx/tutoriales/basedat1/tema2_1.htmhttp://sistemas.itlp.edu.mx/tutoriales/basedat1/tema2_1.htmhttp://sistemas.itlp.edu.mx/tutoriales/basedat1/tema2_1.htm
  • 8/6/2019 Introduccin a los conceptos de bases de datos Final

    8/15

    base de datos y para proporcionar una descripcin a nivel ms alto dela implementacin.

    Los tres modelos de datos ms ampliamente aceptados son:

    Modelo RelacionalModelo de RedModelo Jerrquico

    * Modelo relacional.

    En este modelo se representan los datos y las relaciones entreestos, a travs de una coleccin de tablas, en las cuales los renglones(tuplas) equivalen a los cada uno de los registros que contendr labase de datos y las columnas corresponden a lascaractersticas(atributos) de cada registro localizado en la tupla;

    Considerando nuestro ejemplo del empleado y el artculo:

    Tabla del empleado

    Ahora te preguntaras cmo se representan las relaciones entrelas entidades en este modelo?

    Existen dos formas de representarla; pero para ello necesitamosdefinir que es una llave primaria: Es un atributo el cual definimoscomo atributo principal, es una forma nica de identificar a unaentidad. Por ejemplo, el RFC de un empleado se distingue de otro porque los RFC no pueden ser iguales.

    Ahora si, las formas de representar las relaciones en este modeloson:

  • 8/6/2019 Introduccin a los conceptos de bases de datos Final

    9/15

    1. Haciendo una tabla que contenga cada una de las llaves

    primarias de las entidades involucradas en la relacin.

    Tomando en cuenta que la llave primaria del empleado es su RFC, yla llave primaria del articulo es la Clave.

    2. Incluyendo en alguna de las tablas de las entidades

    involucradas, la llave de la otra tabla.

    * Modelo de red.

    Este modelo representa los datos mediante colecciones de

    registrosy sus relaciones se representan por medio de ligas o enlaces,los cuales pueden verse como punteros. Los registros se organizanen un conjunto de grficas arbitrarias.

    Ejemplo:

    * Modelo jerrquico.

    Es similar al modelo de red en cuanto a las relaciones y datos,ya que estos se representan por medio de registros y sus ligas. Ladiferencia radica en que estn organizados por conjuntos de arbolesen lugar de grficas arbitrarias.

  • 8/6/2019 Introduccin a los conceptos de bases de datos Final

    10/15

    Para profundizar ms en el tema visita: Modelo de datosjerrquico.

    Modelos fsicos de datos.

    Se usan para describir a los datos en el nivel ms bajo, aunqueexisten muy pocos modelos de este tipo, bsicamente capturanaspectos de la implementacin de los sistemas de base de datos.Existen dos clasificaciones de este tipo que son:

    Modelo unificadorMemoria de elementos.

    1.5 Instancias y esquemas.

    Con el paso del tiempo la informacin que se va acumulando ydesechando en la base de datos, ocasiona que est cambie.

    Denominamos:

    Instancia.

    Al estado que presenta una base de datos en un tiempo dado.Vemoslo como una fotografa que tomamos de la base de datos enun tiempo t, despus de que transcurre el tiempo t la base de datosya no es la misma.

    Esquema.

    Es la descripcin lgica de la base de datos, proporciona los

    nombres de las entidades y sus atributos especificando las relacionesque existen entre ellos. Es un banco en el que se inscriben los valoresque irn formando cada uno de los atributos. El esquema no cambialos que varan son los datos y con esto tenemos una nueva instancia.

    Ejemplo:

    Considerando el ejemplo del vendedor que vende artculos, esquemae instancia segn nuestro ejemplo, quedara:

    Esquema:

    { Vendedor : Nombre, puesto, salario, RFC }

    http://sistemas.itlp.edu.mx/tutoriales/basedat1/tema6_1.htmhttp://sistemas.itlp.edu.mx/tutoriales/basedat1/tema6_1.htmhttp://sistemas.itlp.edu.mx/tutoriales/basedat1/tema6_1.htmhttp://sistemas.itlp.edu.mx/tutoriales/basedat1/tema6_1.htm
  • 8/6/2019 Introduccin a los conceptos de bases de datos Final

    11/15

    { Articulo : Clave, costo, descripcin }

    Instancia:

    Como podemos observar el esquema nos muestra la estructura enel cual se almacenaran los datos, en este caso en registros cuyosnombres de campos son: por parte del vendedor (Nombre,puesto,salario, RFC) y por el artculo (Clave, costo,descripcin); Lainstancia representa a una serie de datos almacenados en losregistros establecidos por el esquema, estos datos varan, nopermanecen fijos en el tiempo.

    1.6 Lenguaje de definicin de datos

    El lenguaje de definicin de datos, denominado por sus siglascomo: DDL(Data definition Language).

    Permite definir un esquema de base de datos por medio de unaserie de definiciones que se expresan en un lenguaje especial, elresultado de estas definiciones se almacena en un archivo especialllamado diccionario de datos.

    1.7 Lenguaje de manipulacin de datos

    La manipulacin de datos se refiere a las operaciones de insertar,recuperar, eliminar o modificar datos; dichas operaciones sonrealizadas a travs del lenguaje de manipulacin de datos (DML, DataManipulation Language), que es quin permite el acceso de losusuarios a los datos.

    1.8 Manejador de Bases de Datos

    El sistema manejador de bases de datos es la porcin ms

    importante del software de un sistema de base de datos. Un DBMS esuna coleccin de numerosas rutinas de software interrelacionadas,cada una de las cuales es responsable de alguna tarea especfica.

    Las funciones principales de un DBMS son:

    Crear y organizar la Base de datos.

    Establecer y mantener las trayectorias de acceso a la base

    de datos de tal forma que los datos puedan ser accesadosrpidamente.

  • 8/6/2019 Introduccin a los conceptos de bases de datos Final

    12/15

    Manejar los datos de acuerdo a las peticiones de losusuarios.

    Registrar el uso de las bases de datos.

    Interaccin con el manejador de archivos.Esto a travs de las sentencias en DML al comando de el

    sistema de archivos. As el Manejador de base de datos esel

    responsable del verdadero almacenamiento de los datos.

    Respaldo y recuperacin.Consiste en contar con mecanismos implantados que

    permitan la recuperacin fcilmente de los datos en casode ocurrir fallas en el sistema de base de datos.

    Control de concurrencia.Consiste en controlar la interaccin entre los usuarios

    concurrentes para no afectar la inconsistencia de los datos.

    Seguridad e integridad.Consiste en contar con mecanismos que permitan el

    control de la consistencia de los datos evitando que estosse vean perjudicados por cambios no autorizados o

    previstos.

    El DBMS es conocido tambin como Gestor de Base de datos.

    La figura muestra el DBMS como interfase entre la base de datos

    fsica y las peticiones del usuario. El DBMS interpreta las peticiones deentrada/salida del usuario y las manda al sistema operativo para latransferencia de datos entre la unidad de memoria secundaria y lamemoria principal.

    En s, un sistema manejador de base de datos es el corazn de labase de datos ya que se encarga del control total de los posiblesaspectos que la puedan afectar.

    1.9 Administrador de Bases de Datos

  • 8/6/2019 Introduccin a los conceptos de bases de datos Final

    13/15

    Denominado por sus siglas como: DBA, Database Administrator.

    Es la persona encargada y que tiene el control total sobre elsistema de base de datos, sus funciones principales son:

    Definicin de esquema.Es el esquema original de la base de datos se crea escribiendo un

    conjunto de definiciones que son traducidas por el compilador de DDLa un conjunto de tablas que son almacenadas permanentemente enel diccionario de datos.

    Definicin de la estructura de almacenamiento del mtodo deacceso.

    Estructuras de almacenamiento y de acceso adecuados se creanescribiendo un conjunto de definiciones que son traducidas por ecompilador del lenguaje de almacenamiento y definicin de datos.

    Concesin de autorizacin para el acceso a los datos.Permite al administrador de la base de datos regular las partes de

    las bases de datos que van a ser accedidas por varios usuarios.

    Especificacin de lmitantes de integridad.Es una serie de restricciones que se encuentran almacenados en

    una estructura especial del sistema que es consultada por el gestorde base de datos cada vez que se realice una actualizacin alsistema.

    1.10 Usuarios de las bases de datos.

    Podemos definir a los usuarios como toda persona que tenga todotipo de contacto con el sistema de base de datos desde que este sedisea, elabora, termina y se usa.

    Los usuarios que accesan una base de datos pueden clasificarsecomo:

    Programadores de aplicaciones.Los profesionales en computacin que interactuan con el sistemapor medio de llamadas en DML (Lenguaje de Manipulacin de Datos),las cuales estn incorporadas en un programa escrito en un lenguajede programacin (Por ejemplo, COBOL, PL/I, Pascal, C, etc.)

    Usuarios sofisticados.Los usuarios sofisticados interactuan con el sistema sin escribir

    programas. En cambio escriben sus preguntas en un lenguaje deconsultas de base de datos.

    Usuarios especializados.Algunos usuarios sofisticados escriben aplicaciones de base de

  • 8/6/2019 Introduccin a los conceptos de bases de datos Final

    14/15

    datos especializadas que no encajan en el marco tradicional deprocesamiento de datos.

    Usuarios ingenuos.Los usuarios no sofisticados interactuan con el sistema invocando

    a uno de los programas de aplicacin permanentes que se han escritoanteriormente en el sistema de base de datos, podemos mencionar alusuario ingenuo como el usuario final que utiliza el sistema de basede datos sin saber nada del diseo interno del mismo por ejemplo: uncajero.

    1.11 Estructura general del sistema.

    Un sistema de base de datos se encuentra dividido en mduloscada uno de los cuales controla una parte de la responsabilidad total

    de sistema. En la mayora de los casos, el sistema operativoproporciona nicamente los servicios ms bsicos y el sistema de labase de datos debe partir de esa base y controlar adems el manejocorrecto de los datos. As el diseo de un sistema de base de datosdebe incluir la interfaz entre el sistema de base de datos y el sistemaoperativo.

    Los componentes funcionales de un sistema de base de datos, son:

    Gestor de archivos.Gestiona la asignacin de espacio en la memoria del disco y

    de las estructuras de datos usadas para representar informacin.

    Manejador de base de datos.Sirve de interfaz entre los datos y los programas de

    aplicacin.

    Procesador de consultas.Traduce las proposiciones en lenguajes de consulta a

    instrucciones de bajo nivel. Adems convierte la solicitud delusuario en una forma ms eficiente.

    Compilador de DDL.Convierte las proposiciones DDL en un conjunto de tablas

    que contienen metadatos, estas se almacenan en el diccionariode datos.

    Archivo de datos.En l se encuentran almacenados fsicamente los datos de una

    organizacin.

    Diccionario de datos.

    Contiene la informacin referente a la estructura de la basede datos.

  • 8/6/2019 Introduccin a los conceptos de bases de datos Final

    15/15

    Indices.Permiten un rpido acceso a registros que contienen valores

    especficos.

    Una forma grfica de representar los componentes antes

    mencionados y la relacin que existe entre ellos sera la siguiente.