tema 1: fundamentos y conceptos básicos de bases de datos · centralizado de la base de datos, el...

25
Universidad Central de Venezuela Facultad de Ciencias Escuela de Computación BASES DE DATOS Tema 1: Fundamentos y Conceptos Básicos de Bases de Datos Profa. Mercy Ospina T. Caracas, 03 de septiembre de 2009 Centro de Investigación en Sistemas de Información CISI.

Upload: lamdat

Post on 07-Oct-2018

216 views

Category:

Documents


0 download

TRANSCRIPT

Universidad Central de Venezuela

Facultad de Ciencias

Escuela de Computación

BASES DE DATOS

Tema 1:

Fundamentos y Conceptos Básicos de Bases de Datos

Profa. Mercy Ospina T.

Caracas, 03 de septiembre de 2009

Centro de Investigación en Sistemas de Información CISI.

Tema 1: Conceptos Básicos de Base de Datos

CISI - GDBD2009 2

INDICE

CONTENIDO INTRODUCCIÓN ...................................................................................................................................................3

CONCEPTOS BASICOS DE BASE DE DATOS. ..........................................................................................................4

1. Procesamiento de Archivos Vs. Procesamiento de Base de Datos .........................................................4

1.1. Sistemas de Procesamiento de Archivos. ......................................................................................4

1.2. Sistemas de Procesamiento de Base de Datos. .............................................................................6

2. ¿Qué es una Base de Datos? ..................................................................................................................8

2.1. Características de una Base de Datos ............................................................................................8

2.2. Desventajas de una Base de Datos ................................................................................................8

3. Sistemas de Bases de datos ....................................................................................................................9

3.1. Arquitectura para Sistemas de Bases de Datos .............................................................................9

3.2. Independencia de datos ..............................................................................................................11

3.3. Ejemplares y Esquemas ...............................................................................................................12

3.4. Lenguajes de Bases de Datos .......................................................................................................12

3.2. Componentes de un SBD .............................................................................................................14

4. Sistema Manejador de Base de Datos (SMBD) .....................................................................................16

4.1. Las Funciones del SMBD: .............................................................................................................17

4.2. Componentes Funcionales del Sistema Manejador de Base de Datos[2 ...................................19

4.3. Ventajas y Limitaciones de los Sistemas Manejadores de Base de Datos: ..................................21

5. Administrador de BD (DBA: DATABASE ADMINISTRATOR) ...................................................................21

5.1. Funciones del ABD .......................................................................................................................22

6. Control de Seguridad ............................................................................................................................23

6.1. Conceptos básicos de seguridad ..................................................................................................23

6.2. El modelo de Seguridad básico. ...................................................................................................24

Tema 1: Conceptos Básicos de Base de Datos

CISI - GDBD2009 3

INTRODUCCIÓN

Toda empresa u organización necesita tener un control centralizado de sus datos, y las

computadoras operan sobre datos que han sido organizados dentro de agrupamientos

lógicos. Normalmente, los datos que las computadoras manejan están organizados en

agrupamientos lógicos, para que los procesos sean efectivos y los resultados obtenidos

sean útiles.

Este documento se ha realizado con el objetivo de servir de guía a los estudiantes de la

catedra Base de Datos, y se tomo como base el primer capítulo de la publicación de

docencia ND 2001- 02 de las Profesoras Concettina Di Vasta* y Rossana Díaz, realizada

en Abril de 2001 (Lecturas en Ciencias de la Computación ISSN 1316-6239), la cual fue

actualizada con las últimas ediciones de la bibliografía.

En esta guía se define lo que son las Bases de Datos y su origen, se estudiará en detalle

las características de las bases de datos, los distintos usuarios, lenguajes y operaciones

sobre las bases de datos, además se estudiará los sistemas manejadores de base de

datos, señalando sus principales componentes, ventajas y limitaciones, así como las

funciones del administrador de Base de Datos.

Tema 1: Conceptos Básicos de Base de Datos

CISI - GDBD2009 4

CONCEPTOS BASICOS DE BASE DE DATOS.

1. PROCESAMIENTO DE ARCHIVOS VS. PROCESAMIENTO DE BASE DE DATOS

Para realizar el procesamiento de la data con el objeto de obtener información utilizando

tecnología computacional se estudiaran dos enfoques:

Sistemas de Procesamiento de Archivos.

Sistemas de Procesamiento de Base de Datos.

1.1. SISTEMAS DE PROCESAMIENTO DE ARCHIVOS.

Los Sistemas de Procesamiento de Archivos fueron uno de los primeros intentos para informatizar

los sistemas de archivo manual, por ejemplo para almacenar la correspondencia, llevar control de

facturas, generación de informes periódicos, entre otros y fueron creados para satisfacer las

necesidades de las empresas para acceder de forma más eficiente a los datos. Estos sistemas

almacenan grupos de registros en archivos separados, los cuales se procesan de forma

independiente, como se muestra en la Figura # 1. Lo que se hizo fue usar un enfoque

descentralizado, en el que cada departamento, con ayuda de personal especializado, almacenaba

y controlaba sus propios datos

Programa de

aplicación para

clientes

Archivo

clientes

Servicio de Clientes

Programa de

aplicación para

ordenes

Entrada de Ordenes

Archivo

ordenes

FIGURA # 1. SISTEMA DE PROCESAMIENTO DE ARCHIVOS

En este enfoque, cada aplicación o área funcional de la organización tiene su propio conjunto de

archivos maestros y de transacciones, que se usan para almacenar, procesar y recuperar sus

propios datos. Los archivos y programas se diseñan específicamente para cada aplicación, y las

aplicaciones son independientes entre si. Además la manera según la cual se almacenan los datos

(estructura de registros) es propia de la aplicación y no puede ser alterada fácilmente.

Tema 1: Conceptos Básicos de Base de Datos

CISI - GDBD2009 5

PROBLEMAS DE LOS SISTEMAS DE PROCESAMIENTO DE ARCHIVOS

El enfoque anterior presentaba los siguientes inconvenientes:

1. Redundancia de Datos: consiste en el almacenamiento de información idéntica en múltiples

archivos. Debido al enfoque descentralizado, esta técnica promueve, o requiere, una

duplicación incontrolada de los datos por lo que la misma información pueden ser registrados

en más de una aplicación.

Almacenar y mantener los mismos datos en varios archivos a la vez resulta indeseable por

varias razones:

Implica un desperdicio de recursos, cuesta tiempo y dinero ingresar y mantener los datos

más de una vez.

Se consume espacio de almacenamiento innecesario ya que requiere guardar varias veces

los mismos datos.

Puede llevar a inconsistencia de la data, es decir, las diversas copias de los mismos datos

no concuerdan entre sí. Por ejemplo consideremos el caso de duplicación de datos en los

departamentos de personal y de nómina, si un empleado cambia de domicilio y este

cambio solo se comunica al departamento de personal y no al de nómina, la nómina de

este empleado puede ser enviada a la dirección incorrecta.

2. Falta de integridad de los datos: Los valores de datos almacenados en la BD deben satisfacer

ciertos tipos de restricciones de consistencia, por ejemplo. El saldo de una cuenta no puede

ser menor que 0, ya que una colección de datos tiene integridad si es lógicamente

consistente. Los programadores hacen cumplir estas restricciones añadiendo el código

correspondiente a los diferentes programas de aplicación. Sin embargo cuando se añaden

nuevas restricciones es difícil cambiar todos los programas de aplicación, lo cual se complica si

existe mucha redundancia.

3. Poca flexibilidad a los cambios: Cambiar algunas características de un archivo de manera

frecuente resulta extremadamente difícil, pues cualquier aplicación u otros archivos que

accedan al primero también deben ser cambiados. Asimismo emitir nuevas consultas o

informes también requiere cambios en los programas, y la creación de nuevos archivos. Esto

reduce la posibilidad de hacer cambios rápidamente.

4. Interdependencia del Programa y archivos de datos: Como ya se ha mencionado, la

estructura física y el almacenamiento de archivos y registros de datos, están definidos en el

código de la aplicación, por lo que cambiar las características de los campos en un archivo

determinado suele ser difícil o imposible. Si se requiere cambiar el tamaño de un campo, por

ejemplo, un campo de dirección pasa de 40 a 50 caracteres, o se desea agregar, o borrar un

campo, se requiere de la creación de un programa especial que cambie el formato del archivo,

Tema 1: Conceptos Básicos de Base de Datos

CISI - GDBD2009 6

con todas las operaciones que esto puede implicar. Si se ha agregado un nuevo campo al

registro, la información debe ser introducida manualmente para cada registro.

5. Dificultad para compartir datos entre aplicaciones: Debido a que la estructura de los archivos

está incrustada en los programas de aplicación, dicha estructura dependerá del lenguaje de

programación, esta incompatibilidad hace que difícil que una aplicación use archivos

generados por otra, para obtener datos que considere necesarios.

6. Problemas de seguridad: debido a la proliferación de archivos y programas de aplicación, se

alcanzo un punto donde era muy difícil gestionar todos los datos, por lo que a menudo se

omitían mecanismos de seguridad de manera que no todos los usuarios pudieran acceder a

todos los datos. Por ejemplo, en un sistema bancario, el personal de las nóminas solo necesita

ver información acerca de los distintos empleados del banco, no ver información sobre las

cuentas. En otras palabras no existe ningún control sobre el acceso o manipulación de los

datos, mas allá de los impuestos por los propios programas de aplicación.

1.2. SISTEMAS DE PROCESAMIENTO DE BASE DE DATOS.

La tecnología de base de datos fue desarrollada para superar las limitaciones y problemas de los

sistemas de procesamiento de archivos. En los sistemas de procesamiento de base de datos se usa

un enfoque centralizado de los datos para lo cual se añade un nuevo componente (Figura # 2), el

Sistema Manejador de Base de Datos (SMBD), que es el conjunto de programas y hardware que se

encargan del manejo de los datos.

Programa de

aplicación para

clientes

Servicio de Clientes

Programa de

aplicación para

ordenes

Entrada de Ordenes

Clientes

OrdenesSMBD

FIGURA # 2. SISTEMA DE PROCESAMIENTO DE BASE DE DATOS

VENTAJAS DE LOS SISTEMAS DE PROCESAMIENTO DE BASE DE DATOS.

1. Es posible disminuir la redundancia y la inconsistencia de datos: En esta técnica se trata de

disminuir la redundancia integrando los archivos en una estructura llamada Base de Datos,

por lo que se disminuye la duplicidad de los datos, Además un solo ente se encarga del

manejo y actualización de los datos, el Sistema Manejador de Base de Datos (SMBD). Los

Tema 1: Conceptos Básicos de Base de Datos

CISI - GDBD2009 7

programas de aplicación pueden preguntar al SMBD para acceder cualquier tipo de data, por

lo que cada área podrá ver y actualizar los mismos datos evitando la inconsistencia.

1. Es posible mantener la integridad: La integridad se suele expresar en términos de

restricciones que pueden aplicarse a los elementos de datos contenidos en un único registro o

a relaciones entre registros. El SMBD se encarga de hacer cumplir las diferentes restricciones

sobre los datos, y resulta sencillo cambiar o definir nuevas restricciones. Al tener un control

centralizado de la base de datos, el Administrador de la Base de Datos (DBA) puede garantizar

la observancia de todas las normas aplicables para la representación de los datos.

2. Es posible compartir los datos.: El compartir datos implica no sólo que las aplicaciones ya

existentes pueden compartir la información de la base de datos, sino también que se pueden

desarrollar nuevas aplicaciones para trabajar con los mismos datos almacenados, esto es

posible debido a que la base de datos no es propiedad de los departamentos sino de toda la

organización.

3. Mayor flexibilidad para los cambios: El SMBD maneja todas las definiciones de los archivos y

registros, por lo que tiene funcionalidades que permiten hacer cambios en los campos de

manera rápida, asimismo permite generar nuevas consultas e informes dinámicamente, sin

cambiar los programas de aplicación.

4. Es posible aplicar restricciones de seguridad: La seguridad de la BD es la protección de los

datos frente al uso por personas no autorizadas, la integración de los datos hace que estos

sean más vulnerables que en el enfoque de procesamiento de archivos. Sin embargo al tener

jurisdicción completa sobre la base de datos, el ABD puede:

a. Asegurar que el acceso a la base de datos sea sólo a través de los canales apropiados y,

por tanto,

b. Definir las verificaciones de seguridad a realizar cuando se intente acceder a información

delicada.

El SMBD hace posible el cumplimiento de las restricciones de seguridad definidas por el ABD.

5. Posibilidad de recuperación de los datos en caso de fallas: Los SMBD fueron diseñados con

mecanismos que permiten recuperar los datos en caso de que sucedan fallas que impliquen

perdidas de estos.

6. Mas accesibilidad a los datos y mejor capacidad de respuesta: Ahora los datos

pertenecientes a otros departamentos pueden ser accesibles desde cualquier lugar de la

organización y los SMBD proporcionan lenguajes que permiten a los usuarios plantear

consultas ad-hoc y tener la información requerida casi inmediatamente sin tener que contar

con un programador que escriba un programa que extraiga la información de la Base de

Datos.

Tema 1: Conceptos Básicos de Base de Datos

CISI - GDBD2009 8

2. ¿QUÉ ES UNA BASE DE DATOS?

Una base de datos es un repositorio centralizado de datos lógicamente relacionados, que permite

almacenar y organizar hechos ó eventos y restituirlos a demanda de el, o los usuarios para

producir información.

También se puede definir como una colección de registros o archivos relacionados lógicamente.

Una BD consolida muchos registros almacenados previamente en archivos independientes, de

modo que un cúmulo (pool) común de registros sirvan como una sola central para muchas

aplicaciones de procesos que necesitan este tipo de datos.

formada

Base de Datos Archivos Registros Campos

Una base de datos está constituida por un conjunto de datos persistentes diseñados para

satisfacer las necesidades de información de una organización, por lo que deja de ser propiedad

de un departamento y pasa a ser un recurso corporativo compartido.

2.1. CARACTERÍSTICAS DE UNA BASE DE DATOS

1.- Control centralizado de los datos.

2.- Integridad de los datos.

3.- Minimización de la redundancia.

4.- Independencia de los datos y las aplicaciones.

5.- Acceso concurrente a los datos.

6.- Costo mínimo de almacenamiento y mantenimiento.

7.- Versatilidad para la representación de relaciones.

8.- Establecimiento de medidas de seguridad.

9.- Facilidad para el cambio de hardware o software.

10.- Recuperación en caso de fallas.

2.2. DESVENTAJAS DE UNA BASE DE DATOS

Las BD más sofisticadas, enfocadas a grandes empresas son costosas, sin embargo debido

al desarrollo de software libre podemos encontrar algunas bases de datos muy buenas

que son gratuitas.

Representan un consumo de recursos elevados, lo cual ya no es tan problemático debido

a la disminución del costo de los medios de almacenamiento.

Tema 1: Conceptos Básicos de Base de Datos

CISI - GDBD2009 9

Se requiere de personal capacitado.

La recuperación de una base de datos después de una falla puede requerir bastante

tiempo.

3. SISTEMAS DE BASES DE DATOS

Un Sistema de Bases de Datos es un Sistema de Información diseñado para manejar grandes

cantidades de datos y producir información. Un sistema de bases de datos es básicamente un

sistema computarizado cuyo propósito general es mantener información y hacer que éste

disponible cuando se solicite. La información en cuestión puede ser cualquier cosa que se

considere importante para el individuo o la organización a la cual debe servir el sistema; dicho de

otro modo, cualquier cosa necesaria para apoyar el proceso general de atender los asuntos de un

individuo u organización [1].

3.1. ARQUITECTURA PARA SISTEMAS DE BASES DE DATOS

Para que el sistema sea útil debe recuperar los datos eficientemente, para ello los diseñadores

pueden definir estructuras de datos complejas (listas enlazadas, arboles, etc) para la

representación de los datos en la base de datos. Dado que muchos usuarios de sistemas de bases

de datos no tienen formación en informática se debe ocultar esta complejidad mediante varios

niveles de abstracción. [1]

En 1971 se elaboró una de las primeras propuestas de terminología estándar y de arquitectura

general para los sistemas de bases de datos, cuyo responsable fue el Data Base Task Group (DBTG,

grupo de trabajo de base de datos), la arquitectura ANSI/PARC [4], la cual divide el SBD en tres

niveles de abstracción (Figura # 4), denominados niveles interno, conceptual y externo. En

términos generales:

FIGURA # 4. LOS TRES NIVELES DE LA ARQUITECTURA.

Esquema de Vistas

Vista 1 Vista 2 Vista n . . .

Esquema

Lógico

Esquema

Físico

Nivel

Conceptual

Nivel

Interno

Nivel

Externo

Datos

Independencia Lógica

Independencia Física

Tema 1: Conceptos Básicos de Base de Datos

CISI - GDBD2009 10

a. Nivel Externo (Esquema de Vistas): Es el nivel más alto de abstracción, en él se describen sólo

vistas o subconjuntos de la BD completa, esto con el fin de mostrar a los usuarios sólo las

partes que necesitan. Es el nivel más cercano a los usuarios, es decir, es el que se ocupa de la

forma como los usuarios individuales perciben los datos.

Cada usuario tiene una vista del mundo real, e incluye únicamente aquella porción de los

datos que es de interés para el usuario, los demás datos seguirán existiendo pero el usuario

no será consciente de esto.

Además las diferentes vistas pueden ser diferentes representaciones de los mismos datos, por

ejemplo un usuario puede ver las fechas en formato (dia, mes, año) mientras que otros

podrán verlas con el formato (año, mes, dia), otras vistas pueden incluir datos calculados a

partir de los datos almacenados, por ejemplo la edad de un empleado.

b. Nivel Lógico o Conceptual (Esquema Conceptual): Es el siguiente nivel que se define, describe

que datos son realmente almacenados en la BD, así como las relaciones que existen entre

estos. Se describe la BD a través de un número pequeño de estructuras relativamente simples,

ocultando las estructuras complejas del nivel físico. Es un “nivel de mediación” entre los otros

dos. Los ABD usan este nivel de abstracción.

Este nivel contiene la estructura lógica de toda la Base de Datos, es una vista completa de los

datos de la organización, y proporciona soporte a cada una de las vistas externas, de manera

que todos los datos accesibles por el usuario deben estar contenidos o ser calculados con los

datos de este nivel.

c. Nivel Interno (Esquema Físico): Es el nivel más bajo, el más cercano al almacenamiento físico,

es decir, es el que se ocupa de la forma como se almacenan físicamente los datos y describe

en detalle las estructuras de datos complejas utilizadas.

Este nivel utiliza los métodos de acceso del sistema operativo (técnicas de manejo de

archivos y extracción de registro de datos) con el fin de almacenar los datos ingresados por el

usuario.

El nivel interno se ocupa de conceptos tales como:

La asignación de espacio de almacenamiento para los datos y otras estructuras de apoyo

como índices.

Las descripciones y ubicación de los registros

Compresión y cifrado de datos.

Tema 1: Conceptos Básicos de Base de Datos

CISI - GDBD2009 11

3.2. INDEPENDENCIA DE DATOS

Uno de los objetivos de la arquitectura de tres niveles es permitir implementar el concepto de

Independencia de Datos, definida como la capacidad de modificar la definición del esquema en

los niveles inferiores, sin que se vean afectados los niveles más altos, existen dos tipos de

independencia de datos:

Independencia Física: Se define entre el nivel físico y el nivel conceptual. Capacidad de modificar el

esquema físico sin alterar el esquema lógico de la BD.

Debe ser posible efectuar cambios en el esquema interno, como por ejemplo utilizar diferentes

estructuras o dispositivos de almacenamiento, modificar algoritmos de búsqueda, sin tener que

cambiar los esquemas conceptuales o externos.

Independencia Lógica: Se define entre el nivel externo y el nivel conceptual. Capacidad de

modificar el esquema lógico de la BD sin obligar a reescribir los programas de aplicación.

Debe ser posible efectuar cambios en el esquema lógico, como por ejemplo agregar un campo fax

a los datos de clientes o agregar a la base de datos una entidad productos, sin necesidad de

modificar los esquemas externos existentes ni reescribir los programas de aplicación disponibles.

Vista conceptual

Vista

externa B

Vista

externa A

Correspondencia

externa - conceptual A

Correspondencia

externa - conceptual B

*Esquema

externo A

*Esquema

externo B

Correspondencia

conceptual - interna

Sistema de

administración

de base de

datos

(DBMS)

Lenguaje

Anfitrión + DSL

Lenguaje

Anfitrión + DSL

Lenguaje

Anfitrión + DSL

Lenguaje

Anfitrión + DSL

Lenguaje

Anfitrión + DSL

Usuario A1 Uusario A2 Usuario B1 Usuario B2 Usuario B3

Base de datos almacenada (Vista interna)

Definición

de estructura de

almacenamiento

(esquema interno)

Esquemas y

correspondencias

construidas y

mantenidas por el

administrador de

base de datos

(DBA)

* Interfaz con el usuario

FIGURA # 5. ARQUITECTURA DETALLADA DEL SISTEMA

Tema 1: Conceptos Básicos de Base de Datos

CISI - GDBD2009 12

3.3. EJEMPLARES Y ESQUEMAS

Las Bases de Datos van cambiando a lo largo del tiempo conforme la información se inserta y se

elimina. La colección de información almacenada en un momento dado se denomina ejemplar o

instancia de la base de datos, también llamada estado. El diseño general se denomina esquema

de la base de datos. Los esquemas se modifican rara vez, si es que se modifican

Los sistemas de bases de datos tienen varios esquemas según los niveles de abstracción ya

explicados. El esquema físico describe el diseño de la base de datos a nivel físico (archivos y

registros), el esquema lógico describe el diseño de la base de datos a nivel lógico. Las bases de

datos pueden tener varios esquemas de vista llamados subesquemas, que describen las vistas las

vistas de la base de datos. [2]

3.4. LENGUAJES DE BASES DE DATOS

Un sistema de base de datos proporciona dos tipos de lenguajes diferentes: uno para especificar

el esquema de base de datos y el otro para expresar las consultas y actualizaciones de la base de

datos. [2]

1. Lenguaje de Definición de Datos (DDL: Data Definition Language): Un esquema de base de

datos se especifica mediante un conjunto de definiciones expresadas mediante un

lenguaje especial llamado Lenguaje de Definición de Datos.

Este lenguaje permite definir la estructura lógica (o esquema) de la BD y los subesquemas

o vistas. El esquema define las características de los registros dentro de un archivo: los

campos de cada registro, sus nombres, el tipo de dato y la extensión. Un subesquema es

la manera en la cual a un programa de aplicación o a un usuario específico se les permite

acceder los datos de un archivo. Esto puede limitar el acceso a los campos definir los

derechos de acceso (sólo leer, leer y escribir).

El resultado de la compilación de las instrucciones en DDL es un conjunto de tablas que se

almacenan en un archivo especial llamado Diccionario de Datos o Directorio de Datos.

Un diccionario de datos es un archivo que contiene metadatos; es decir, datos acerca de los datos.

Este archivo se consulta antes de leer o modificar los datos reales del sistema de base de datos.

La estructura de almacenamiento y los métodos de acceso usados por el sistema de base

de datos se especifican mediante un conjunto de definiciones en un tipo especial del DDL

llamado un lenguaje de almacenamiento y definición de datos. El resultado de la

compilación de estas definiciones es un conjunto de instrucciones para especificar los

detalles de implementación de los esquemas de la base de datos - los detalles

normalmente se ocultan a los usuarios.

2. Lenguaje de Manipulación de Datos (DML: Data Manipulation Language): Es un lenguaje

que permite a los usuarios tener acceso a los datos organizados mediante el modelo de

datos apropiado o manipularlos. Los tipos de acceso son:

Tema 1: Conceptos Básicos de Base de Datos

CISI - GDBD2009 13

La recuperación de información almacenada en la base de datos.

La inserción de información nueva en la base de datos.

El borrado de información de la base de datos.

La modificación de información almacenada en la base de datos.

Incluye todos los comandos que permiten al usuario almacenar, recuperar, cambiar,

borrar u ordenar los datos o registros dentro de la BD.

Hay dos tipos básicamente:

DML procedimentales: Requieren que el usuario especifique qué datos se necesitan y

cómo obtener esos datos.

DML declarativos (no procedimentales): Requieren que el usuario especifique qué datos

se necesitan, sin especificar cómo obtener esos datos.

Los DML declarativos suelen ser más fáciles de aprender y de usar que los

procedimentales, pero requieren que el SBD, determine la forma más eficiente de acceder

a los datos.

Una consulta es una instrucción de solicitud para recuperar información. La parte de un

DML que implica recuperación de información se llama lenguaje de consultas.

Algunas operaciones sobre una BD.

Consultas de BD: Solicitar a la BD la información específica. Una consulta puede ser una

búsqueda simple de un registro específico o una solicitud de seleccionar todos los

registros que satisfagan un conjunto de criterios. Una vez hecha la selección, se puede

producir un listado.

Ordenamiento de los datos: Para poder usar los datas en la forma más eficiente. Es

posible acomodar los registros en orden alfabético o numérico con base en los valores de

uno o más campos.

Impresión de informes, etiquetas y formatos de cartas: Salidas impresas, informes: lista

ordenada de los campos y registros seleccionados en un formato fácil de leer. Producir

etiquetas para envíos por correo y formatos de cartas personalizados.

Tema 1: Conceptos Básicos de Base de Datos

CISI - GDBD2009 14

3.2. COMPONENTES DE UN SBD

En la Figura # 3 se muestra la forma como se integran los cuatro componentes principales de un

sistema de base de datos: la información, el equipo, los programas y los usuarios [1].

Base de datos

Programas de

aplicación Usuarios

finales

Figura # 3. Esquema simplificado de un sistema de base de datos.

Información.

En general, la información en la base de datos estará integrada y además será compartida.

Integrada significa que la base de datos puede considerarse como una unificación de varios

archivos de datos, por lo demás distintos, y que elimina del todo o en parte cualquier redundancia

entre ellos. Por ejemplo, cierta base de datos podría tener un archivo de EMPLEADOS, con datos

de nombre, domicilio, departamento, salario, etc., y también un archivo de INSCRIPCIÓN, que

representaría la inscripción de empleados en cursos de adiestramiento. Supóngase que para llevar

a cabo el proceso de administración de los cursos de adiestramiento es preciso conocer el

departamento de cada estudiante inscrito. En este caso es evidente que no hace falta incluir esa

información, de manera redundante, en el archivo INSCRIPCIÓN, porque siempre podrá obtenerse

mediante una consulta al archivo EMPLEADOS.

Compartida significa que los elementos individuales de información en la base de datos pueden

compartirse entre varios usuarios distintos, en el sentido de que todos ellos pueden tener acceso

al mismo elemento de información (y diferentes usuarios pueden utilizarlo para propósitos

diferentes). Esta capacidad de compartir (en forma simultánea o no) se desprende en parte de la

integración de la base de datos. En el ejemplo de EMPLEADOS/INSCRIPCIÓN, los datos de

departamento del archivo EMPLEADOS seguramente serán compartidos por los usuarios del

Tema 1: Conceptos Básicos de Base de Datos

CISI - GDBD2009 15

Departamento de Personal y los Departamentos de Educación, estos departamentos utilizarían la

información con diferentes propósitos.

Equipo.

Los componentes de equipo del sistema son:

Los volúmenes de almacenamiento secundario - por lo regular discos magnéticos de

cabeza móvil - donde se conservan los datos almacenados , junto con los dispositivos de

E/S asociados (unidades de disco, etc..), controladores de dispositivos, canales de E/S y

demás.

El procesador o procesadores y la memoria principal asociada que hacen posible la

ejecución de los programas del sistema de bases de datos.

Programas.

Entre la base de datos física misma (los datos y como están almacenados) y los usuarios del

sistema existe un nivel de programas, el manejador de base de datos o, en la mayoría de los

casos, el sistema de administración de base de datos (SMBD, database management system).

Usuarios.

Hay 4 tipos diferentes de usuarios, diferenciados por la forma en que esperan interactuar con el

sistema.

Usuario Interacción con el SBD

Programadores de aplicaciones

Profesionales en computación que escriben programas de aplicación usando un lenguaje de programación (Cobol, Java, C, etc..). donde incorporan llamadas en DML, las cuales tendrán un formato propio del lenguaje.

Usuarios sofisticados No escriben programas, escriben sus preguntas en un lenguaje de consultas de BD

Usuarios especializados

Escriben aplicaciones de BD que no encajan en el marco tradicional de procesamiento de datos; sistemas de diseño ayudados por computadoras, sistemas expertos y basados en conocimiento, entre otros.

Usuarios ingenuos Usuarios no sofisticados que interactúan con el sistema invocando a uno de los programas de aplicación. Ejemplo: Transferencia (cajero de un banco).

Tema 1: Conceptos Básicos de Base de Datos

CISI - GDBD2009 16

4. SISTEMA MANEJADOR DE BASE DE DATOS (SMBD)

Es el conjunto de programas que maneja todo acceso a la base de datos.

Un SMBD consiste de un conjunto de datos relacionados entre sí y un conjunto de herramientas

de software (y/o hardware) para tener acceso a esos datos. Consiste de un conjunto de

programas que son usados para definir, procesar y administrar la BD y sus aplicaciones.

Conjunto de equipos y programas que organiza los datos y proporciona los mecanismos utilizados

para crear un archivo computarizado de BD; añadir, borrar o cambiar datos dentro del archivo;

cambiar el modo en que están almacenados los datos dentro de los archivos de una BD, buscar en

la BD aquellos datos que cumplen ciertos criterios, etc..

El SMBD para organizaciones grandes requiere de un gran número de personas y altos gastos de

equipos, programas y capacitación personal.

Conceptualmente, lo que sucede es lo siguiente:

1.- Un usuario emite una solicitud de acceso utilizando algún lenguaje de manipulación de datos

específico (DML: Data Manipulation Language).

2.- El SMBD lee la solicitud y la interpreta.

3.-El SMBD inspecciona en orden a) el esquema externo, b) la correspondencia externa /

conceptual, c) el esquema conceptual, d) la correspondencia conceptual/interna y e) la definición

de la estructura de almacenamiento.

4.- El SMBD realiza las operaciones necesarias sobre la base de datos almacenada.

Un SMBD puede organizar, procesar y presentar los datos seleccionados de una BD. Esta

capacidad permite a quienes toman decisiones rastrear, probar y consultar el contenido de la BD

para extraer las respuestas a las preguntas no recurrentes y no previstas en informes regulares.

El Objetivo primordial de un SMBD es proporcionar un entorno para recuperar información y

almacenar nueva información en la BD de manera segura, y garantizando la integridad de los

datos, para lo cual debe proporcionar a los usuarios una visión abstracta de estos, es decir, los

detalles de cómo se almacenan y se mantienen los datos, son transparentes para los usuarios.

Esto se debe a que muchos de ellos, no tienen experiencia en computadores, por ello se les

esconde la complejidad a través de diversos niveles de abstracción, para simplificar la interacción

con el sistema.

Tema 1: Conceptos Básicos de Base de Datos

CISI - GDBD2009 17

4.1. LAS FUNCIONES DEL SMBD:

En esta sección se examinaran los tipos de funciones y servicios que debe proporcionar un SMBD.

1) Definición de datos: El SMBD debe ser capaz de aceptar definiciones de datos (esquema

externo, el esquema conceptual, el esquema interno y todas las correspondencias

asociadas) en versión fuente y convertirlas en la versión objeto apropiada.

Dicho de otro modo, el SMBD debe incluir componentes procesadores de lenguajes para

cada uno de los diversos lenguajes de definición de datos (DDL).

2) Manipulación de datos: El SMBD debe ser capaz de atender las solicitudes del usuario para

extraer, poner al día, datos que ya existen en la base de datos o para agregar en ella datos

nuevos. Dicho de otro modo, el SMBD debe incluir componentes procesadores de

lenguajes para cada uno de los diversos lenguajes de manipulación de datos (DML).

3) Seguridad e integridad de los datos: El SMBD debe supervisar las solicitudes de los

usuarios y rechazar los intentos de violar las medidas de control y seguridad definidas por

el DBA.

4) Control de concurrencia de los datos: El SMBD debe proporcionar un mecanismo para

garantizar que la base de datos se actualice correctamente cuando haya varios usuarios

actualizando de manera concurrente la base de datos.

5) Recuperación: El SMBD debe poder recuperar la base de datos en caso de que esta resulte

dañada de alguna forma.

6) Diccionario de Datos accesible por el usuario: El SMBD debe incluir un catálogo en el que

se almacenen las descripciones de los datos y que sea accesible por parte de los usuarios.

Un diccionario de datos es un repositorio de información que describe los datos

contenidos en la base de datos, es decir, ‘datos acerca de los datos’ o metadatos.

Normalmente el diccionario de datos almacena:

Los nombres, tipos y tamaños de los elementos de datos

Los nombres de las entidades que agrupan los datos

Las restricciones de integridad aplicables a los datos

Los nombres de usuarios autorizados a acceder a los datos y sus contraseñas.

Los elementos de datos que cada usuario puede acceder y los tipos de acceso

permitido. (inserción, actualización, borrado y lectura).

Los esquemas externos, conceptual e interno y las correspondencias entre los

esquemas.

Tema 1: Conceptos Básicos de Base de Datos

CISI - GDBD2009 18

Las estadísticas de uso y acceso a los datos.

7) Desempeño: El SMBD debe ejecutar todas las funciones recién identificadas en la forma

más eficiente posible.

El SMBD, integra muchos conjuntos de datos que antes se manejaban de manera separada y

proporcionan un conjunto completo de programas que sirven como interfaz entre uno o varios

usuarios y sus diversas aplicaciones.

En un SMBD, los datos se pueden crear, borrar o cambiar en una BD integrada. El término

integrada se refiere a la capacidad del SMBD de relacionar lógicamente un registro con otro. El

usuario tiene acceso directo mediante instrucciones en el teclado.

Un SMBD permite entonces:

1. Independencia de los Datos: La independencia de los datos es un objetivo primordial de

los sistemas de bases de datos. Esta independencia puede definirse como la inmunidad de

las aplicaciones ante los cambios en la estructura de almacenamiento y en la técnica de

acceso, lo cual implica que las aplicaciones en cuestión no dependen de una estructura de

almacenamiento o una técnica de acceso.

Todos los datos necesarios pueden ser almacenados en una base general. Si hay que hacer

cualquier cambio a los datos pueden efectuarse sin necesidad de cambiar los programas

que accedan datos. Esto es posible porque el SMBD proporciona dos aspectos de los

datos. La visión física de una BD, se relaciona con la localización actual de los datos en el

dispositivo de almacenamiento. La visión lógica representa los registros.

2. Eliminación de la redundancia e incremento de la integridad de los datos: Todos los datos

relacionados se almacenan en un lugar, si un elemento de los datos debe ser cambiado

sólo tiene que hacerse en un lugar.

3. Datos integrados, a partir de otros archivos: Un usuario puede recabar datos de cierto

número de archivos de una base de datos y aplicar esos datos combinados, a reportes u

otras aplicaciones, creando relaciones entre los registros. Realza la flexibilidad.

4. Mayor seguridad, a través del manejo de acceso de datos: La capacidad para negar el

acceso a usuarios no autorizados, a datos restringidos, mejora enormemente la seguridad

de los datos y pone a salvo la integridad.

5. Normalización de reportes y consultas: Un SMBD permite a un usuario que realizar

reportes normalizados. Esto permite que el usuario formule preguntas breves.

Tema 1: Conceptos Básicos de Base de Datos

CISI - GDBD2009 19

4.2. COMPONENTES FUNCIONALES DEL SISTEMA MANEJADOR DE BASE DE DATOS[2

Los componentes funcionales se pueden dividir a grandes rasgos en componentes de

procesamiento de consultas y componentes de gestión de almacenamiento.

FIGURA # 6. COMPONENTES FUNCIONALES DEL SISTEMA MANEJADOR DE BASE DE DATOS.

Los componentes de procesamiento de consultas incluyen:

Compilador DML: Traduce las instrucciones del DML a un plan de evaluación que consiste en

instrucciones de bajo nivel que entiende el Motor de Evaluación de Consultas. Las consultas del

usuario se suelen traducir en varios planes de evaluación que dan el mismo resultado, para luego

elegir el plan de menor costo posible, encontrando así una buena estrategia para ejecutar la

consulta.

Precompilador DML: Convierte instrucciones en DML incorporadas en un programa de aplicación

en llamadas a procedimientos normales. El precompilador debe interactuar con el compilador

DML para generar el código objeto apropiado.

Usuario

s

Procesador

de Consultas

Gestor de

almacenamiento

S

M

B

D

Usuarios normales (cajeros, agentes,

usuarios Web)

Programadores de aplicaciones

Usuarios sofisticados (analistas)

Administrador de Bases de Datos

Interfaces de aplicación

Programas de aplicación

Herramientas de consulta

Herramientas de administración

Precompilador del DML

Código objeto de los programas de

aplicación Motor de evaluación

de consultas

Consultas DML

Compilador del DML

Interprete del DDL

Gestor de transacciones

Gestor de archivos

Gestor memoria

intermedia

Gestor de autorización e

integridad

Archivos de Datos Índices

Diccionario de datos

Datos estadísticos

Almacenamiento

en disco

Usa Usa Usa Escribe

Tema 1: Conceptos Básicos de Base de Datos

CISI - GDBD2009 20

Intérprete DDL: Interpreta las instrucciones del DDL y las registra en un conjunto de tablas que

contiene metadatos, estas tablas se almacenan a continuación en el catálogo del sistema.

Motor de Evaluación de Consultas: Ejecuta las instrucciones a bajo nivel generadas por el

compilador del DML.

Los componentes de gestión de almacenamiento proporcionan la interfaz entre los datos de bajo

nivel almacenados en la base de datos y los programas de aplicación y envío de consultas al

sistema. El gestor de almacenamiento incluye:

Gestor de Transacciones: Asegura que la base de datos quede en un estado consistente (correcto)

a pesar de los fallos del sistema, y que las ejecuciones de transacciones concurrentes ocurran sin

conflictos.

Gestor de Archivos: Gestiona la reserva de espacio de almacenamiento de disco y las estructuras

de datos utilizadas para representar la información almacenada en disco.

Gestor de Memoria Intermedia: Responsable de traer los datos del disco de almacenamiento a

memoria principal y decidir qué datos tratar en la memoria caché.

Gestor a autorizaciones e integridad: Comprueba que se satisfagan las restricciones de integridad

y la autorización de los usuarios para tener acceso a los datos.

Además, se necesitan varias estructuras de datos como parte de la implementación física del

sistema:

Archivos de Datos: Almacenan la BD.

Diccionario de Datos: Almacena metadatos (datos acerca de los datos), en particular su esquema.

Índices: Proporcionan acceso rápido a elementos de datos que tienen valores particulares, por

ejemplo el índice de este trabajo

Datos estadísticos: Almacenan información estadística sobre los datos en la base de datos. El

procesador de consultas utiliza esta información para seleccionar las formas eficientes para

ejecutar una consulta.

Tema 1: Conceptos Básicos de Base de Datos

CISI - GDBD2009 21

4.3. VENTAJAS Y LIMITACIONES DE LOS SISTEMAS MANEJADORES DE BASE DE DATOS:

VENTAJAS LIMITACIONES

Mejor integración y menos duplicidad de los

datos que se originan en los diferentes

puntos.

Se necesitan hardware y software más

complejos y caros.

Menos errores cuando varios registros

pueden actualizarse en forma simultánea.

Fallas del hardware o del software pueden

ocasionar la destrucción de información vital

de la BD.

Ahorran en el costo de desarrollo de nuevas

aplicaciones, así como en los costos de

entrada de los datos y su almacenamiento.

Pueden requerirse un largo período de

conversión, elevados gastos de capacitación y

habilidades mayores en quienes son

responsables del Sistema de BD.

Facilitan la organización y reorganización de

la información.

Facilitan la recuperación rápida y flexible de

la información.

Facilitan el almacenamiento de grandes

cantidades de información.

5. ADMINISTRADOR DE BD (DBA: DATABASE ADMINISTRATOR)

Los SMBD y la BD son recursos de la organización, los cuales deben administrarse al igual que

cualquier otro recurso, el Administrador de Base de Datos ABD, es quien tiene el control sobre

estos recursos, y es designado usualmente por la dirección de una compañía y provisto de un

personal que trabaje con los usuarios para crear, mantener y salvaguardar los datos en la BD.

Asimismo dentro de las organizaciones se cuenta con los Administradores de datos, por lo que es

conveniente definir el rol de cada uno:

Administrador de Datos: Es la persona que toma las decisiones estratégicas y de políticas con

respecto a la información de la empresa.

Administrador de BD (DBA: database administrator): es la persona que proporciona el apoyo

técnico necesario para poner en práctica las decisiones tomadas por el administrador de datos.

Tema 1: Conceptos Básicos de Base de Datos

CISI - GDBD2009 22

5.1. FUNCIONES DEL ABD

Las funciones del ABD incluyen:

1. Definición del esquema de la BD.

Desarrollo y mantenimiento de un diccionario de datos (DD). EL DD define el significado de

cada elemento de datos (cada campo) en la BD; esto incluye los nombres de los datos

(nombres de los campos), tipos de datos, tamaño del campo y cualquier interrelación entre

elementos de datos.

2. Modificación del esquema y de la organización física de la BD: El ABD debe hacer

modificaciones en el esquema y en la organización física para reflejar las necesidades

cambiantes de la organización, altera la organización física para mejorar el rendimiento

del sistema.

3. Definición de la estructura de almacenamiento y del método de acceso.

4. Mantenimiento de un control de transacciones: Un control de transacciones contiene una

auditoria completa de toda la actividad de una BD en un tiempo. El control ayuda al

respaldo, en el caso de que un dato quedará inutilizado o destruido, el control lleva un

registro de todos los cambios, que sirve para restaurar la BD a su condición original.

5. Definición de las verificaciones de seguridad e integridad : Mediante la concesión de

diferentes tipos de autorización, el ABD puede regular las partes de la base de datos que

puede acceder cada usuario. La información de autorización se guarda dentro del SMBD y

se consulta cada vez que alguien intenta acceder a los datos.

6. Definición de los procedimientos de respaldo y recuperación. El DBA debe definir y poner

en práctica un plan de recuperación adecuado que incluya, por ejemplo, el realizar

backups periódicos de la base de datos como respaldos y procedimientos para cargar la

base de datos a partir del respaldo más reciente que se tenga. El DBA asegura que se

ejecute el respaldo apropiado de la BD. El respaldo se refiere a las copias y al registro de

todos los cambios que han sido hechos a la BD. Si sucede algo que dañe o destruya la BD;

esta puede ser reconstruida (recuperada) usando el respaldo.

7. Supervisión del desempeño y respuesta a los cambios en los requerimientos. Podría ser

necesario reorganizar la base de datos en forma periódica con el fin de garantizar que los

niveles de desempeño sigan siendo aceptables. Realizar cambios a nivel físico y actualizar

la correspondencia interna - conceptual.

8. Especificación de las restricciones de integridad, cada vez que hay actualización en el

sistema.

Tema 1: Conceptos Básicos de Base de Datos

CISI - GDBD2009 23

6. CONTROL DE SEGURIDAD

La operación continua exitosa de una empresa con sus operaciones computarizadas demanda:

a. Que la dada confidencial esté disponible sólo para las personas autorizadas, de manera

tal que los requerimientos de privacidad sean satisfechos y los secretos de la empresa sean

guardados.

b. Que la data refleje precisamente el estado de la empresa, esto es, que la data esté

protegida contra alteraciones o destrucciones accidentales o premeditadas.

La información ha sido reconocida como un recurso con valor económico para la empresa y como

sucede con otra clase de recursos, la información necesita ser protegida y administrada para

maximizar su valor. Sin embargo, en contraste con otros bienes tangibles, el valor de la información

es difícil de cuantificar pero usualmente la información crítica puede ser identificada y se pueden

tomar medidas contra accesos no autorizados y así asegurar su precisión y disponibilidad.

Tan importante como el valor económico de la información es la privacidad de los individuos.

El efecto de alterar o revelar información de una persona puede ser catastrófico para ella. Por esto

que existen también razones legales para que una empresa mantenga la seguridad e integridad de

su información.

6.1. CONCEPTOS BÁSICOS DE SEGURIDAD

Seguridad de la información: es la protección de la información contra destrucción, alternación o

revelación no autorizada.

Seguridad de base de datos: es la protección de la información mantenida en la base de datos.

Privacidad: es el derecho que tienen los individuos de controlar la información disponible de ellos

mismos.

Autorización: es la especificación de reglas que definen, para un sujeto, que derechos de acceso

tiene sobre que objetos de informador..

Protección: en un ambiente computacional son mecanismos de seguridad que se refieren a

técnicas que controlan el acceso de usuarios y programas a la data almacenada.

Control de acceso: es el proceso que asegura que la información y otros objetos protegidos sean

accedidos solamente en formas autorizadas.

Políticas de Seguridad: guías y criterios basados en aspectos legales, morales y de organización sobre

acceso y manipulación de los datos.

Mecanismos de Seguridad: aquellos que permiten programar o implementar las políticas de seguridad

Tema 1: Conceptos Básicos de Base de Datos

CISI - GDBD2009 24

Existen razones de privacidad, legalidad, confidencialidad, protección contra fraudes y secreto

para establecer mecanismos que controlen el acceso y manipulación de la información por parte

de los usuarios en un ambiente de BD.

En un ambiente de BD, se usan mecanismos de seguridad para asegurar que se cumplan las políticas de

seguridad exigidas por la organización.

Existen diferentes modelos en los cuales se pueden basar los mecanismos de seguridad centralizados

implementados. Entre ellos tenemos:

6.2. EL MODELO DE SEGURIDAD BÁSICO.

En este modelo se definen reglas de acceso que le permiten a un sujeto especifico tener un tipo de acceso

determinado sobre algún objeto de la BD. Por esto, una regla de acceso en este modelo se puede ver

como una tupla:

Ri=(Si,Oi,Ti) Donde la regla Ri define que el sujeto Si tiene derecho acceder el objeto Oi según el tipo de

acceso Ti.

Operacionalmente, el conjunto de todas las reglas de acceso se pueden representar a través de una Matriz

de Acceso A [Si, Oi] en donde cada posición va a tener asociada una lista de tipos de acceso posibles.

Tema 1: Conceptos Básicos de Base de Datos

CISI - GDBD2009 25

BIBLIOGRAFÍA

[1] DATE, C.J. “Introducción a los Sistemas de Bases de Datos”. Vol I. Quinta Edición.

Addison-Wesley Iberoamericana. 2000.

[2] KORTH H., SILBERSCHATZ A. “Fundamentos de bases de datos”. 5ta Edición. McGraw-

Hill. 2006.

[3] HANSEN & HANSEN. “Diseño y Administración de Base de Datos”. 2da. Edición. 1997.

[4] CONNOLLY T. M, BEGG C. E. “Sistemas de bases de datos”. 4ta Edición, Pearson

educación S.A., 2005,

Di Vasta C., Díaz R. “Sistemas de Base de datos”. ND 2001 -02, Abril 2001.