Está en la página 1de 26

Unidad 1 Introducción a los Sistemas de Base de  

Datos

1.1 Sistemas de información y bases de datos.

1.1.1 Concepto de sistema de información.

Un sistema de información es un conjunto de elementos que interactúan entre sí con el


fin de apoyar las actividades de una empresa o negocio.

El equipo computacional: el hardware es necesario para que el sistema de información


pueda operar.

El recurso humano que interactúa con el Sistema de Información, el cual está


formado por las personas que utilizan el sistema.

Un sistema de información realiza cuatro actividades básicas: entrada,


almacenamiento, procesamiento y salida de información.

Una base de datos (cuya abreviatura es BD) es una entidad en la cual se


pueden almacenar datos de manera estructurada, con la menor redundancia posible.
Diferentes programas y diferentes usuarios deben poder utilizar estos datos. Por lo
tanto, el concepto de base de datos generalmente está relacionado con el de red ya
que se debe poder compartir esta información. De allí el término base. “Sistema de
información” es el término general utilizado para la estructura global que incluye todos
los mecanismos para compartir datos que se han instalado.

1.2 Sistemas de información para la gestión y para la ayuda en latoma de decisiones.

Un Sistema de información puede definirse (Laudon y Laudon, 1996) como un conjunto


de componentes interrelacionados que permiten capturar, procesar, almacenar y
distribuir información para apoyar la toma de decisiones y el control de una institución,
además de ayudar a dichos directivos y personal a analizar problemas, visualizar
cuestiones complejas y crear nuevos productos en un ambiente intensivo de
información.

Los Sistemas de Información tienen una enorme importancia en el incremento de la


capacidad organizacional frente al cambio del entorno. La voluntad de lograr un sistema
de información útil, que permita obtener una ventaja competitiva, implica la posibilidad
de ofrecer múltiples, frecuentes, oportunas y relevantes informaciones.

La necesidad actual de tomar decisiones en poco tiempo para poder hacer frente a la
agresividad del entorno hace necesaria la inmediatez de la información procesada con
una gran dosis de veracidad.

La gestión está caracterizada por una visión más amplia de las posibilidades reales de
una organización para resolver determinada situación o arribar a un fin determinado.
Puede asumirse, como la “disposición y organización de los recursos de un individuo o
grupo para obtener los resultados esperados”. Pudiera generalizarse como una forma
de alinear los esfuerzos y recursos para alcanzar un fin determinado.
Los sistemas de gestión han tenido que irse modificando para dar respuesta a la
extraordinaria complejidad de los sistemas organizativos que se han ido adoptando, así
como a la forma en que el comportamiento del entorno ha ido modificando la manera en
que incide sobre las organizaciones.

En todo este desarrollo, el control ha ido reforzando una serie de etapas que lo
caracterizan como un proceso en el cual las organizaciones deben definir la información
y hacerla fluir e interpretarla acorde con sus necesidades para tomar decisiones.

Ha llegado el momento de considerar la calidad de la información como un objetivo


principal a perseguir y no como un subproducto del proceso de creación y desarrollo
de bases de datos.

1.3 Sistemas de bases de datos y sus aplicaciones.

Un sistema de bases de datos es una colección de archivos interrelacionados y un


conjunto de programas que permitan a los usuarios acceder y modificar estos archivos.

Las bases de datos son ampliamente usadas. Las siguientes son algunas de sus
aplicaciones más representativas:

• Banca. Para información de los clientes, cuentas y préstamos, y transacciones


bancarias.

• Líneas aéreas. Para reservas e información de planificación.

Las líneas aéreas fueron de los primeros en usar las bases de datos de forma
distribuida geográficamente (los terminales situados en todo el mundo accedían al
sistema de bases de datos centralizado a través de las líneas telefónicas y otras redes
de datos).

• Universidades. Para información de los estudiantes, matrículas de las asignaturas y


cursos.

• Transacciones de tarjetas de crédito. Para compras con tarjeta de crédito y generación


mensual de extractos.

• Telecomunicaciones. Para guardar un registro de las llamadas realizadas, generación


mensual de facturas, manteniendo el saldo de las tarjetas telefónicas de prepago y para
almacenar información sobre las redes de comunicaciones.

• Finanzas. Para almacenar información sobre grandes empresas, ventas y compras de


documentos formales financieros, como bolsa y bonos.

• Ventas. Para información de clientes, productos y compras.

• Producción. Para la gestión de la cadena de producción y para el seguimiento de la


producción de elementos en las factorías, inventarios de elementos en almacenes y
pedidos de elementos.
• Recursos humanos. Para información sobre los empleados, salarios, impuestos y
beneficios, y para la generación de las nóminas.

COMENTARIO

En este punto lo que entendí fue que el sistema de base de datos es una serie de
archivos relacionados con un orden y que facilita el funcionamiento de los trabajos de la
vida cotidiana. Las aplicaciones que se encuentran en este punto son importantes e
interesantes ya que facilitan el trabajo del humano. Una aplicación que se maneja aquí
es la universitaria, esta creo que es importante porque se relaciona con el nivel de
estudio en el que estamos pues en cada institución creo que es importante tener una
base de datos que lleva el control de todo el alumnado y docentes, creo que esto facilita
al jefe ya que cuando necesita datos de un alumno rápidamente va a la base de datos
de alumnos y lo encuentra por matricula y enseguida encuentra al alumno, en el grupo y
semestre en el que esta.

1.4 Sistemas de bases de datos frente a los sistemas de archivos.

Considérese parte de una empresa de cajas de ahorros que mantiene información


acerca de todos los clientes y cuentas de ahorros. Una manera de mantener la
información en un computador es almacenarla en archivos del sistema operativo. Para
permitir a los usuarios manipular la información, el sistema tiene un número de
programas de aplicación que manipula los archivos, incluyendo:

• Un programa para efectuar cargos o abonos en una cuenta.

• Un programa para añadir una cuenta nueva.

• Un programa para calcular el saldo de una cuenta.

• Un programa para generar las operaciones mensuales.

COMENTARIO

Un sistema de base de datos es muy sencillo de usar y facilita el trabajo a cualquier


usuario tal es el caso en el ejemplo anterior de una empresa de caja de ahorros. A
dicha empresa le fue útil este sistema y fue más sencillo pues tiene que mantener la
información de cada uno de los clientes y sus respectivas cuentas de ahorro. Y así ellos
poder depositar, extraer o consultar saldo de sus cuentas. Esto mencionado se hace en
una base de datos donde se lleva a cabo cada una de las relaciones que hay entre un
cliente y su cuenta de ahorro.

1.5 Los distintitos niveles de abstracción de una base de datos.

Para que el sistema sea útil debe recuperar los datos eficientemente. Esta
preocupación ha conducido al diseño de estructuras de datos complejas para la
representación de los datos en la base de datos. Como muchos usuarios de sistemas
de bases de datos no están familiarizados con computadores, los desarrolladores
esconden la complejidad a los usuarios a través de varios niveles de abstracción para
simplificar la interacción de los usuarios con el sistema:

• Nivel físico: El nivel más bajo de abstracción describe cómo se almacenan realmente


los datos. En el nivel físico se describen en detalle las estructuras de datos complejas
de bajo nivel.

• Nivel lógico: El siguiente nivel más alto de abstracción describe qué datos se


almacenan en la base de datos y qué relaciones existen entre esos datos. La base de
datos completa se describe así en términos de un número pequeño de estructuras
relativamente simples. Aunque la implementación de estructuras simples en el nivel
lógico puede involucrar estructuras complejas del nivel físico, los usuarios del nivel
lógico no necesitan preocuparse de esta complejidad. Los administradores de bases de
datos, que deben decidir la información que se mantiene en la base de datos, usan el
nivel lógico de abstracción.

• Nivel de vistas: El nivel más alto de abstracción describe sólo parte de la base de
datos completa.

A pesar del uso de estructuras más simples en el nivel lógico, queda algo de
complejidad, debido a la variedad de información almacenada en una gran base de
datos. Muchos usuarios del sistema de base de datos no necesitan toda esta
información. En su lugar, tales usuarios necesitan acceder sólo a una parte de la base
de datos. Para que su interacción con el sistema se simplifique, se define la abstracción
del nivel de vistas. El sistema puede proporcionar muchas vistas para la misma base de
datos.

Una analogía con el concepto de tipos de datos en lenguajes de programación puede


clarificar la distinción entre los niveles de abstracción. La mayoría de lenguajes de
programación de alto nivel soportan la estructura de tipo registro. Por ejemplo, en un
lenguaje tipo Pascal, se pueden declarar registros como sigue:

type cliente = record
nombre-cliente : string;
id-cliente : string;
calle-cliente : string;
ciudad-cliente : string;
end;

Este código define un nuevo registro llamado cliente con cuatro campos. Cada campo
tiene un nombre y un tipo asociado a él. Una empresa bancaria puede tener varios tipos
de registros, incluyendo:

• cuenta, con campos número-cuenta y saldo.

• empleado, con campos nombre-empleado y sueldo.

En el nivel físico, un registro cliente, cuenta o empleado se puede describir como un


bloque de posiciones almacenadas consecutivamente (por ejemplo, palabras o bytes).
El compilador del lenguaje esconde este nivel de detalle a los programadores.
Análogamente, el sistema de base de datos esconde muchos de los detalles de
almacenamiento de nivel inferior a los programadores de bases de datos. Los
administradores de bases de datos pueden ser conscientes de ciertos detalles de
la organización física de los datos.

En el nivel lógico cada registro de este tipo se describe mediante una definición de tipo,
como se ha ilustrado en el fragmento de código previo, y se define la relación entre
estos tipos de registros. Los programadores, cuando usan un lenguaje de
programación, trabajan en este nivel de abstracción. De forma similar, los
administradores de bases de datos trabajan habitualmente en este nivel de abstracción.

Finalmente, en el nivel de vistas, los usuarios de computadores ven un conjunto de


programas de aplicación que esconden los detalles de los tipos de datos.
Análogamente, en el nivel de vistas se definen varias vistas de una base de datos y los
usuarios de la misma ven única y exclusivamente esas vistas. Además de esconder
detalles del nivel lógico de la base de datos, las vistas también proporcionan un
mecanismo de seguridad para evitar que los usuarios accedan a ciertas partes de la
base de datos. Por ejemplo, los cajeros de un banco ven únicamente la parte de la base
de datos que tiene información de cuentas de clientes; no pueden acceder a la
información referente a los sueldos de los empleados.

1.6 Usuarios y administradores de la base de datos.

Un objetivo principal de un sistema de bases de datos es recuperar información y


almacenar nueva información en la base de datos. Las personas que trabajan con una
base de datos se pueden catalogar como usuarios de bases de datos o como
administradores de bases de datos.

Usuarios de bases de datos e interfaces de usuario:

Hay cuatro tipos diferentes de usuarios de un sistema de base de datos, diferenciados


por la forma en que ellos esperan interactuar con el sistema. Se han diseñado
diferentes tipos de interfaces de usuario para diferentes tipos de usuarios.

• Usuarios normales. Son usuarios no sofisticados que interactúan con el sistema


mediante la invocación de alguno de los programas de aplicación permanentes que se
ha escrito previamente. Por ejemplo, un cajero bancario que necesita transferir 50 € de
la cuenta A a la cuenta B invoca un programa llamado transferir. Este programa pide al
cajero el importe de dinero a transferir, la cuenta de la que el dinero va a ser transferido
y la cuenta a la que el dinero va a ser transferido.

Como otro ejemplo, considérese un usuario que desee encontrar su saldo de cuenta en
World Wide Web. Tal usuario podría acceder a un formulario en el que introduce su
número de cuenta. Un programa de aplicación en el servidor Web recupera entonces el
saldo de la cuenta, usando el número de cuenta proporcionado, y pasa la información al
usuario.
La interfaz de usuario normal para los usuarios normales es una interfaz de formularios,
donde el usuario puede rellenar los campos apropiados del formulario. Los usuarios
normales pueden también simplemente leer informes generados de la base de datos.

• Programadores de aplicaciones. Son profesionales informáticos que escriben


programas de aplicación.

Los programadores de aplicaciones pueden elegir entre muchas herramientas para


desarrollar interfaces de usuario. Las herramientas de desarrollo rápido de aplicaciones
(DRA) son herramientas que permiten al programador de aplicaciones construir
formularios e informes sin escribir un programa. Hay también tipos especiales de
lenguajes de programación que combinan estructuras de control imperativo (por
ejemplo, para bucles for, bucles while e instrucciones ifthen- else) con instrucciones del
lenguaje de manipulación de datos. Estos lenguajes, llamados a veces lenguajes de
cuarta generación, a menudo incluyen características especiales para facilitar la
generación de formularios y la presentación de datos en pantalla. La mayoría de los
sistemas de bases de datos comerciales incluyen un lenguaje de cuarta generación.

• Los usuarios sofisticados interactúan con el sistema sin programas escritos. En su


lugar, ellos forman sus consultas en un lenguaje de consulta de bases de datos. Cada
una de estas consultas se envía al procesador de consultas, cuya función es
transformar instrucciones LMD a instrucciones que el gestor de almacenamiento
entienda. Los analistas que envían las consultas para explorar los datos en la base de
datos entran en esta categoría.

Las herramientas de procesamiento analítico en línea (OLAP, Online Analytical


Processing) simplifican la labor de los analistas permitiéndoles ver resúmenes de datos
de formas diferentes.

Por ejemplo, un analista puede ver las ventas totales por región (por ejemplo, norte, sur,
este y oeste), o por producto, o por una combinación de la región y del producto (es
decir, las ventas totales de cada producto en cada región). Las herramientas también
permiten al analista seleccionar regiones específicas, examinar los datos con más
detalle (por ejemplo, ventas por ciudad dentro de una región) o examinar los datos con
menos detalle (por ejemplo, agrupando productos por categoría).

Otra clase de herramientas para los analistas son las herramientas de recopilación de
datos, que les ayudan a encontrar ciertas clases de patrones de datos.

• Usuarios especializados. Son usuarios sofisticados que escriben aplicaciones de


bases de datos especializadas que no son adecuadas en el marco de procesamiento de
datos tradicional. Entre estas aplicaciones están los sistemas de diseño asistido por
computador, sistemas de bases de conocimientos y sistemas expertos, sistemas que
almacenan los datos con tipos de datos complejos (por ejemplo, datos gráficos y datos
de audio) y sistemas de modelado del entorno.

Administrador de la base de datos:


Una de las principales razones de usar SGBDs es tener un control centralizado tanto de
los datos como de los programas que acceden a esos datos. La persona que tiene este
control central sobre el sistema se llama administrador de la base de datos (ABD). Las
funciones del ABD incluyen las siguientes:

• Definición del esquema. El ABD crea el esquema original de la base de datos


escribiendo un conjunto de instrucciones de definición de datos en el LDD.

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

• Modificación del esquema y de la organización física. Los ABD realizan cambios en el


esquema y en la organización física para reflejar las necesidades cambiantes de la
organización, o para alterar la organización física para mejorar el rendimiento.

• Concesión de autorización para el acceso a los datos. La concesión de diferentes


tipos de autorización permite al administrador de la base de datos determinar a qué
partes de la base de datos puede acceder cada usuario. La información de autorización
se mantiene en una estructura del sistema especial que el sistema de base de datos
consulta cuando se intenta el acceso a los datos en el sistema.

• Mantenimiento rutinario. Algunos ejemplos de actividades rutinarias de mantenimiento


del administrador de la base de datos son:

Copia de seguridad periódica de la base de datos, bien sobre cinta o sobre servidores
remotos, para prevenir la pérdida de datos en caso de desastres como inundaciones.

Varias operaciones sobre la base de datos forman a menudo una única unidad lógica
de trabajo. Un ejemplo es la transferencia de fondos, en el que una cuenta (A) se carga
y otra cuenta, (B) se abona. Claramente es esencial que, o bien tanto el cargo como el
abono tengan lugar, o bien no ocurra ninguno. Es decir, la transferencia de fondos debe
ocurrir por completo o no ocurrir en absoluto. Este requisito de todo o nada se
denomina atomicidad. Además, es esencial que la ejecución de la transferencia de
fondos preserve la consistencia de la base de datos. Es decir, el valor de la
suma A + B se debe preservar. Este requisito de corrección se llama consistencia.
Finalmente, tras la ejecución correcta de la transferencia de fondos, los nuevos valores
de las cuentas A y B deben persistir, a pesar de la posibilidad de fallo del sistema. Este
requisito de persistencia se llama durabilidad.

Una transacción es una colección de operaciones que se lleva a cabo como una única
función lógica en una aplicación de bases de datos. Cada transacción es una unidad de
atomicidad y consistencia. Así, se requiere que las transacciones no violen ninguna
restricción de consistencia de la base de datos. Es decir, si la base de datos era
consistente cuando la transacción comenzó, la base de datos debe ser consistente
cuando la transacción termine con éxito. Sin embargo, durante la ejecución de una
transacción, puede ser necesario permitir inconsistencias temporalmente, ya que o el
cargo de A o el abono de B se debe realizar uno antes que otro. Esta inconsistencia
temporal, aunque necesaria, puede conducir a dificultades si ocurre un fallo.
Es responsabilidad del programador definir adecuadamente las diferentes
transacciones, de tal manera que cada una preserve la consistencia de la base de
datos.

Por ejemplo, la transacción para transferir fondos de la cuenta A a la cuenta B se podría


definir como compuesta de dos programas separados: uno que carga la cuenta A y otro
que abona la cuenta B. La ejecución de estos dos programas uno después del otro
preservará realmente.

Un sistema de bases de datos se divide en módulos que se encargan de cada una de


las responsabilidades del sistema completo. Los componentes funcionales de un
sistema de bases de datos se pueden dividir a grandes rasgos en los componentes
gestor de almacenamiento y procesador de consultas.

El gestor de consultas es importante porque las bases de datos requieren normalmente


una gran cantidad de la consistencia. Sin embargo, cada programa en sí mismo no
transforma la base de datos de un estado consistente en otro nuevo estado consistente.
Así, estos programas no son transacciones.

Asegurar las propiedades de atomicidad y durabilidad es responsabilidad del propio


sistema de bases de datos, específicamente delcomponente de gestión de
transacciones. En ausencia de fallos, toda transacción completada con éxito y atómica
se archiva fácilmente.

Sin embargo, debido a diversos tipos de fallos, una transacción puede no siempre
completar su ejecución con éxito. Si se asegura la propiedad de atomicidad, una
transacción que falle no debe tener efecto en el estado de la base de datos. Así, la base
de datos se restaura al estado en que estaba antes de que la transacción en cuestión
comenzara su ejecución. El sistema de bases de datos debe realizar la recuperación de
fallos, es decir, detectar los fallos del sistema y restaurar la base de datos al estado que
existía antes de que ocurriera el fallo.

Finalmente, cuando varias transacciones actualizan la base de datos


concurrentemente, la consistencia de los datos puede no ser preservada, incluso
aunque cada transacción individualmente sea correcta. Es responsabilidad del gestor
de control de concurrencia controlar la interacción entre las transacciones concurrentes
para asegurar la consistencia de la base de datos.

Los sistemas de bases de datos diseñados para uso sobre pequeños computadores
personales pueden no tener todas las características vistas. Por ejemplo, muchos
sistemas pequeños imponen la restricción de permitir el acceso a un único usuario a la
base de datos en un instante de tiempo. Otros dejan las tareas de copias de seguridad
y recuperación a los usuarios. Estas restricciones permiten un gestor de datos más
pequeño, con menos requisitos de recursos físicos, especialmente de memoria
principal. Aunque tales enfoques de bajo coste y prestaciones son suficientes para
bases de datos personales pequeñas, son inadecuadas para satisfacer las necesidades
de una empresa de media a gran escala.

1.7 Componentes de los sistemas de bases de datos.


Un sistema de bases de datos se divide en módulos que se encargan de cada una de
las responsabilidades del sistema completo. Los componentes funcionales de un
sistema de bases de datos se pueden dividir a grandes rasgos en los componentes
gestor de almacenamiento y procesador de consultas.

El gestor de consultas es importante porque las bases de datos requieren normalmente


una gran cantidad de espacio de almacenamiento. Las bases de datos corporativas
tienen un tamaño de entre cientos de gigabytes y, para las mayores bases de datos,
terabytes de datos.

Un gigabyte son 1.000 megabytes (1.000 millones de bytes), y un terabyte es 1 millón


de megabytes (1 billón de bytes). Debido a que la memoria principal de los
computadores no puede almacenar esta gran cantidad de información, esta se
almacena en discos. Los datos se trasladan entre el disco de almacenamiento y la
memoria principal cuando es necesario. Como la transferencia de datos a y desde el
disco es lenta compara- da con la velocidad de la unidad central de procesamiento, es
fundamental que el sistema de base de datos estructure los datos para minimizar la
necesidad de movimiento de datos entre el disco y la memoria principal.

El procesador de consultas es importante porque ayuda al sistema de bases de datos a


simplificar y facilitar el acceso a los datos. Las vistas de alto nivel ayudan a conseguir
este objetivo. Con ellas, los usuarios del sistema no deberían ser molestados
innecesariamente con los detalles físicos de implementación del sistema. Sin embargo,
el rápido procesamiento de las actualizaciones y de las consultas es importante. Es
trabajo del sistema de bases de datos traducir las actualizaciones y las consultas
escritas en un lenguaje no procedimental, en el nivel lógico, en una secuencia de
operaciones en el nivel físico.

Gestor de almacenamiento:

Un gestor de almacenamiento es un módulo de pro- grama que proporciona la interfaz


entre los datos de bajo nivel en la base de datos y los programas de aplicación y
consultas emitidas al sistema. El gestor de almacena- miento es responsable de la
interacción con el gestor de archivos. Los datos en bruto se almacenan en disco usando
un sistema de archivos, que está disponible habitualmente en un sistema operativo
convencional. El gestor de almacenamiento traduce las diferentes instrucciones LMD a
órdenes de un sistema de archivos de bajo nivel. Así, el gestor de almacenamiento es
responsable del almacenamiento, recuperación y actualización de los datos en la base
de datos.

Los componentes del gestor de almacenamiento incluyen:

•  Gestor de autorización e integridad, que comprueba que se satisfagan las


restricciones de integridad y la autorización de los usuarios para acceder a los datos.

•  Gestor de transacciones, que 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 si conflictos.
•  Gestor de archivos, que gestiona la reserva de espacio de almacenamiento de disco y
las estructuras de datos usadas para representar la información almacenada en disco.

•  Gestor de memoria intermedia, que es responsable de traer los datos del disco de
almacenamiento a memoria principal y decidir qué datos tratar en memoria caché. El
gestor de memoria intermedia es una parte crítica del sistema de bases de datos, ya
que permite que la base de datos maneje tamaños de datos que son mucho mayores
que el tamaño de la memoria principal.

El gestor de almacenamiento implementa varias estructuras de datos como parte de la


implementación física del sistema:

•  Archivos de datos, que almacenan la base de datos en sí.

•  Diccionario de datos, que almacena metadatos acerca de la estructura de la base de


datos, en particular, el esquema de la base de datos.

•  Índices, que proporcionan acceso rápido a elementos de datos que tienen valores
particulares.

1.8 Arquitectura de los sistemas de bases de datos.

La mayoría de usuarios de un sistema de bases de datos no están situados


actualmente junto al sistema de bases de datos, sino que se conectan a él a través de
una red.

Se puede diferenciar entonces entre las máquinas cliente, en donde trabajan los
usuarios remotos de la base de datos, y las máquinas servidor, en las que se ejecuta el
sistema de bases de datos.

Las aplicaciones de bases de datos se dividen usualmente en dos o tres partes. En una
arquitectura de dos capas, la aplicación  se  divide  en  un  componente  que  reside 
en  la máquina cliente, que llama a la funcionalidad del sistema de bases de datos en la
máquina servidor mediante instrucciones del lenguaje de consultas. Los estándares de
interfaces de programas de aplicación como ODBC y JDBC se usan para la interacción
entre el cliente y el servidor.

En cambio, en una arquitectura de tres capas, la máquina cliente actúa simplemente


como frontal y no contiene ninguna llamada directa a la base de datos. En su lugar, el
cliente se comunica con un servidor de aplicaciones, usualmente mediante una interfaz
de formularios. El servidor de aplicaciones, a su vez, se comunica con el sistema de
bases de datos para acceder a los datos.

La lógica de negocio de la aplicación, que establece las acciones a realizar bajo


determinadas condiciones, se incorpora en el servidor de aplicaciones, en lugar de ser
distribuida a múltiples clientes. Las aplicaciones de tres capas son más apropiadas para
grandes aplicaciones, y para las aplicaciones que se ejecutan en World Wide Web.
 
 
UNIDAD1 Introducción a los Sistemas de Base de Datos.

1.1  Sistemas de información y bases de datos.

1.1.1. Concepto de Sistema de Información:

Un sistema de información es un conjunto de procedimientos ordenados que, al ser


ejecutados, proporcionan información para apoyar la toma de decisiones y el control de
la Institución. La información se define como una entidad tangible o intangible que
permite reducir la incertidumbre acerca de algún estado o suceso.

1.1.2 Sistemas de información para la gestión y para la ayuda en la toma de decisiones:


Velocidad, para la planificación, la toma de decisiones y el control.

La velocidad y exactitud con que los directivos pueden recibir información sobre lo que
está funcionando bien o lo que está funcionando mal determinarán, en gran medida, la
eficacia que tendrán los sistemas de control. Dado que los sistemas de información
desempeñan un papel tan importante en la administración de instituciones educativas,
ahora es fundamental que los directivos entiendan cómo deben diseñar aplicar y
manejar tales sistemas. Ante las presiones económicas y de inscripciones que las
universidades enfrentan en estos tiempos, la importancia de los sistemas de
información administrativa le saltará a la vista, todos los días.

1.3.  Sistemas de bases de datos y sus aplicaciones.

Las bases de datos están en todos lados (toda nuestra información está en el sistema
de BDD), ejemplo de ello es:

1.-La banca: información de clientes, cuentas, transacciones, préstamos, etc.

2.-Líneas aéreas: información Clientes, horarios, vuelos, destinos, etc. (1ras bases
distribuidas geográficamente).

3.-Universidades: información Estudiantes, carreras, horarios, materias, etc.

4.-Transacciones de tarjeta de crédito: para comprar con tarjetas de crédito y la


generación de los extractos mensuales.

5.-Telecomunicaciones: para guardar registros de llamadas realizadas, generar facturas


mensuales, mantener el saldo de las tarjetas, telefónicas de prepago y almacenar
información sobre las redes.

6.-Finanzas: para almacenar información sobre compañías tenedoras, ventas y


compras de productos financieros, como acciones y bonos, también para almacenar
datos del mercado en tiempo real para permitir a los clientes compraventa en línea y las
compañías de compraventa automática.

7.-ventas: para información de clientes, productos y compras.


8.-produccion:para la gestión de la cadena de proveedores y para el seguimiento de la
producción de artículos en factorías, inventarios en los almacenes  y pedidos.

1.4 Sistemas de base de datos frente a los sistemas de archivos.

En computación, un sistema de archivos es un método para el almacenamiento y


organización de archivos de computadora y los datos que estos contienen, para hacer
más fácil la tarea encontrarlos y accederlos. Los sistemas de archivos son usados en
dispositivos de almacenamiento como discos duros y CD-ROM e involucran el
mantenimiento de la localización física de los archivos.

Más formalmente, un sistema de archivos es un conjunto de tipo de datos abstractos


que son implementados para el almacenamiento, la organización jerárquica, la
manipulación, el acceso, el direccionamiento y la recuperación de datos. Los sistemas
de archivos comparten mucho en común con la tecnología de las bases de datos.

1.5 Distintos niveles de abstracción de una base de datos:

Para que el sistema sea útil debe recuperar los datos eficientemente. La necesidad de
eficiencia a llevado a los diseñadores a usar estructuras de datos complejas para la
representación de los datos en la base de datos. Dado que los  usuarios de sistemas de
base de datos no tienen formación en  informática, los desarrolladores esconden la
complejidad a los usuarios a través de varios niveles de abstracción para simplificar la
interacción de los usuarios con el sistema.

•Nivel físico. El nivel más bajo de abstracción describe como se almacenan realmente
los datos. En el nivel físico se describen en detalle las estructuras de datos complejas
de bajo nivel.

•Nivel lógico. Es un  nivel de alta superioridad  de abstracción describe que datos se
almacenan en la base de datos y que relaciones existen entre esos datos. El nivel
lógico, describe así en términos de un número pequeño de estructuras relativamente
simples la implementación de las estructuras simples en el nivel lógico, los usuarios del
nivel lógico no necesitan preocuparse de esta complejidad. Los administradores de
base de datos, que deben decidir la información que se mantiene en la base de datos,
usan el nivel lógico de abstracción.

•Nivel de vistas. El nivel más elevado de abstracción describe solo parte de la base de
datos. Aunque en el nivel lógico usa una  estructura más simple, queda algo de
complejidad, debido a la variedad de información almacenada en una gran base de
datos. Muchos usuarios del sistema de base de datos no necesitan toda esta
información. Los usuarios  solo necesitan acceder solo a una parte de la base de datos.
Para que su interacción con el sistema se simplifique, se define la abstracción a nivel de
vistas. El sistema puede proporcionar muchas vistas para la misma base de datos.

1.6 Usuarios y administradores de una base de datos.

Unos de los objetivos principales de los sistemas de base de datos es recuperar


información de la base de datos y almacenar en ella información nueva.
Hay cuatro tipos diferentes de usuarios en los sistemas de base de datos, diferenciados
en que interactúan en el sistema.

Las usuarios de una base de datos pueden clasificarse en diferentes roles: usuarios, y
por otro que son los administradores.

•Usuarios normales: Usuarios no sofisticados, que interactúan con el sistema invocando


alguno de los programas  mediante la ejecución de programas específicos escritos por
otras personas. Normalmente la interfaz consiste en formularios e informes generados.
Los usuarios normales también pueden limitarse a leer informes generados por la base
de datos.

•Programadores de aplicaciones: Profesionales informáticos que escriben los


programas de aplicación. Los programadores pueden elegir entre muchas herramientas
para desarrollar las interfaces de usuario,  suelen usar lenguajes convencionales,
entornos de herramientas de desarrollo rápido de aplicaciones (RAD – Rapid
Application Development) o lenguajes de cuarta generación.

•usuarios sofisticados: interactúan con el sistema sin escribir programas. En su lugar,


formulan sus consultas en un lenguaje de consulta de base de datos. Remiten cada una
de las consultas al procesador de consultas, cuya función es dividir las instrucciones  
LMD en instrucciones que el gestor  de almacenamiento entiende.

•Usuarios especializados: Interactúan con el sistema sin usar aplicaciones específicas,


usando directamente el lenguaje de consultas. Los analistas que utilizan consultas para
explotar los datos en la base de datos entran en esta categoría.

•Usuarios especiales o avanzados – especialistas: son usuarios sofisticados que


escriben aplicaciones de BD especializadas que no son adecuadas en el marco de
procesamiento de datos tradicional.

1.7  Componentes de un sistema de base de datos:

Datos del usuario. En la actualidad, casi todas las bases de datos representan los datos
del usuario como afinidades que son tablas de datos. No todas las afinidades son
igualmente deseables; algunas están mejor estructuradas que otras. Para crear
afinidades bien estructuradas se realiza un proceso llamado normalización.

Índices. Están encaminados a mejorar el funcionamiento y la accesibilidad de la base


de datos. Se usan para ordenar y para obtener un acceso rápido a los datos. Los
índices son muy valiosos pero implican un costo. Cada vez que se actualiza una fila en
una afinidad o tabla, también deben actualizarse los índices. Esto no es malo; sólo
significa que los índices no son gratuitos y que deben reservarse para casos en los que
sean de verdad necesarios.

Metadatos de aplicación. Se usan para almacenar la estructura y el formato de formas,


reportes, consultas de usuarios, y otros componentes de aplicación. Normalmente no se
accede de forma directa a los metadatos de aplicación sino que se hace a través de
herramientas proporcionadas por el DBMS para tal fin.
Aplicaciones de bases de datos:

Formas. Se emplean para introducir información a la base de datos. En algunas


ocasiones los identificadores (ID) de los objetos no son desplegados en la aplicación.
La razón es que en el modelo del usuario no existen y por lo tanto carecen de
significado para él. Se utilizan para que el DBMS identifique cada fila de cada tabla y se
denominan claves sustitutas.

Consultas. Se usan cuando los usuarios desean consultar los datos para contestar
preguntas o para identificar problemas o situaciones particulares. Para expresar las
consultas se puede usar el lenguaje SQL de acceso a los datos, otra posibilidad es usar
la consulta por ejemplo (QBE). En la mayoría de los DBMS las consultas se pueden
guardar como parte de la aplicación, de modo que sea posible volverlas a ejecutar.
Además en las consultas se pueden especificar parámetros, lo que significa que se
estructuran de forma tal que acepten valores de criterios durante su funcionamiento.

Reportes. Un reporte es una presentación que tiene un formato de la información de


una base de datos. Suelen estar divididos por secciones como Encabezado, títulos,
grupos, detalles, subtotales, totales y pié de página. La presentación de la información
casi siempre tiene uno o más ordenamientos.

Menús. Se usan para organizar los distintos componentes de la aplicación con el


propósito de que el usuario final acceda a ellos con facilidad, mostrándole las opciones
disponibles y ayudándole a seleccionar las acciones que desea realizar.

Programas de aplicación. Los programas de aplicación vienen a ser como el pegamento


que nos permite unir el resto de los componentes de manera coherente y permite
realizar procesos y cálculos a la aplicación. Adicionalmente suele haber algunas
limitaciones que los DBMS no pueden en forzar directamente en la estructura de los
datos y que deben ser codificadas en el programa de aplicación.

1.8 Arquitectura de los sistemas de base de datos:

La definición de un sistema de información es la descripción detallada de la arquitectura


del sistema. Las arquitecturas de bases de datos han evolucionado mucho desde sus
comienzos, aunque la considerada estándar hoy en día es la descrita por el comité
ANSI/X3/SPARC (Standard Planning and Requirements Committee of the American
National Standards Institute on Computers and Information Processing), que data de
finales de los años setenta. Este comité propuso una arquitectura general para DBMSs
basada en tres niveles o esquemas: el nivel físico, o de máquina, el nivel externo, o de
usuario, y el nivel conceptual. Así mismo describió las interacciones entre estos tres
niveles y todos los elementos que conforman cada uno de ellos.

Arquitectura ANSI:

La arquitectura de sistemas de bases de datos de tres esquemas fue aprobado por la


ANSI-SPARC (American National Standard, Institute Standards Planning and
Requirements Committee) en 1975 como ayuda para conseguir la separación entre los
programas de aplicación y los datos, el manejo de múltiples vistas por parte de los
usuarios y el uso de un catálogo para almacenar el esquema de la base de datos.

• Nivel interno: Tiene un esquema interno que describe la estructura física de


almacenamiento de base de datos. Emplea un modelo físico de datos y los únicos datos
que existen están realmente en este nivel.

• Nivel conceptual: tiene esquema conceptual. Describe la estructura de toda la base de


datos para una comunidad de usuarios. Oculta los detalles físicos de almacenamiento y
trabaja con elementos lógicos como entidades, atributos y relaciones.

• Nivel externo o de vistas: tiene varios esquemas externos o vistas de usuario. Cada
esquema describe la visión que tiene de la base de datos a un grupo de usuarios,
ocultando el resto.

El objetivo de la arquitectura de tres niveles es el de separar los programas de


aplicación de la base de datos física.

Hay que destacar que los tres esquemas no son más que descripciones de los mismos
datos pero con distintos niveles de abstracción. Los únicos datos que existen realmente
están a nivel físico, almacenados en un dispositivo como puede ser un disco. En un
SGBD basado en la arquitectura de tres niveles, cada grupo de usuarios hace
referencia exclusivamente a su propio esquema externo. Por lo tanto, el SGBD debe
transformar cualquier petición expresada en términos de un esquema externo a una
petición expresada en términos del esquema conceptual, y luego, a una petición en el
esquema interno, que se procesará sobre la base de datos almacenada. Si la petición
es de una obtención (consulta) de datos, será preciso modificar el formato de la
información extraída de la base de datos almacenada, para que coincida con la vista
externa del usuario. El proceso de transformar peticiones y resultados de un nivel a otro
se denomina correspondencia o transformación. Estas correspondencias pueden
requerir bastante tiempo, por lo que algunos SGBD no cuentan con vistas externas.

La arquitectura de tres niveles es útil para explicar el concepto de independencia de


datos que podemos definir como la capacidad para modificar el esquema en un nivel
del sistema sin tener que modificar el esquema del nivel inmediato superior.

Se pueden definir dos tipos de independencia de datos:

•  La independencia lógica es la capacidad de modificar el esquema conceptual sin


tener que alterar los esquemas externos ni los programas de aplicación. Se puede
modificar el esquema conceptual para ampliar la base de datos o para reducirla. Si, por
ejemplo, se reduce la base de datos eliminando una entidad, los esquemas externos
que no se refieran a ella no deberán verse afectados.

• La independencia física es la capacidad de modificar el esquema interno sin tener que
alterar el esquema conceptual (o los externos). Por ejemplo, puede ser necesario
reorganizar ciertos ficheros físicos con el fin de mejorar el rendimiento de las
operaciones de consulta o de actualización de datos. Dado que la independencia física
se refiere sólo a la separación entre las aplicaciones y las estructuras físicas de
almacenamiento, es más fácil de conseguir que la independencia lógica.

Por lo tanto, la arquitectura de tres niveles puede facilitar la obtención de la verdadera


independencia de datos, tanto física como lógica. Sin embargo, los dos niveles de
correspondencia implican un gasto extra durante la ejecución de una consulta o de un
programa, lo cual reduce la eficiencia del SGBD. Es por esto que muy pocos SGBD han
implementado esta arquitectura completa.

Arquitectura funcional ANSI/X3/SPARC:

El nivel clave en esta arquitectura, como se puede adivinar, es el conceptual. Éste


contiene la descripción de las entidades, relaciones y propiedades de interés para la
empresa (UoD), y constituye una plataforma estable desde la que proyectar los distintos
esquemas externos, que describen los datos según los programadores, sobre el
esquema interno, que describe los datos según el sistema físico. Las posibles
proyecciones de datos quedan resumidas en la grafica.

Posibles proyecciones de datos:

Como cabría esperar, en la práctica cotidiana de implementación de bases de datos,


esta arquitectura no es seguida al cien por cien por los DBMSs comerciales. Existen
muy pocos productos que contengan aplicaciones para facilitar la fase de análisis. Por
lo general, el nivel conceptual se obvia en los productos comerciales, salvo honrosas
excepciones. Lo habitual es que el DBA realice el modelado conceptual usando sus
propios recursos, o tal vez asistido por alguna aplicación de análisis, ya sea general o
específica. El procesador del esquema conceptual, es por tanto el propio DBA. Los
DBMSs sí suelen ofrecer facilidades para la creación de esquemas externos, pero sin
pasar por el nivel conceptual. Por supuesto, un DBMS comercial no está obligado a
seguir las recomendaciones de estandarización de arquitecturas del comité
ANSI/X3/SPARC. Por lo que respecta al modelo relacional de bases de datos11, que ya
existía antes del informe de este comité, los fabricantes de RDBMSs se ajustan en
mayor o menor medida al modelo teórico y, en cuanto a la arquitectura, han intentado
seguir las recomendaciones del grupo RDBTG (Relational Data Base Task Group),
parte del comité ANSI/X3/SPARC.

El resultado de este grupo fue restar importancia a las arquitecturas y realzar la de los
lenguajes e interfaces. Como consecuencia, el lenguaje SQL, está hoy en día
totalmente estandarizado, y en cambio encontramos distintas arquitecturas de RDBMS.
Sin embargo se pueden distinguir dos tipos generales de arquitecturas para estos
sistemas de bases de datos.

Arquitectura separada de RDBMS

Arquitectura integrada de RDBMS

El tipo de arquitectura integrada es en general preferible a la arquitectura separada y el


más común entre los RDBMSs comerciales. De todos modos, la consecuencia de una
integración de los lenguajes de definición de datos (DDL) y los de manipulación de
datos (DML) en un sólo lenguaje (DMDL: Data Manipulation and Description Language),
son a nuestro parecer positivas y negativas. Por un lado, esta integración resulta muy
cómoda para el DBA, puesto que le basta con aprender un solo lenguaje formal para
realizar todas las tareas de creación y mantenimiento de la base de datos. Pero por otro
lado, estos sistemas (tanto los separados como los uniformes) fuerzan una proyección
directa desde el nivel externo al interno, haciendo que el nivel conceptual, el
fundamental según la arquitectura ANSI/X3/SPARC, desaparezca o se implemente en
el nivel externo como una vista global externa. Por esta razón algunos DBAs inexpertos
tienden a obviar la fase de análisis, cuando de hecho es la vital para la correcta
implementación de la base de datos. Insistimos en que un buen modelado conceptual
es una condición indispensable para el correcto desarrollo de una base de datos.
Pensamos que lo ideal es usar un DBMS que nos permita desarrollar todas las tareas
(de descripción y de manipulación) lo más fácilmente posible, pero no sin antes
disponer de todas las herramientas necesarias para un correcto modelado conceptual,
estén estas o no incluidas en el DBMS.

El enfoque jerárquico:

Un DBMS jerárquico utiliza jerarquías o árboles para la representación lógica de los


datos. Los archivos son organizados en jerarquías, y normalmente cada uno de ellos se
corresponde con una de las entidades de la base de datos. Los árboles jerárquicos se
representan de forma invertida, con la raíz hacia arriba y las hojas hacia abajo.

Estructura de un árbol jerárquico:

Un DBMS jerárquico recorre los distintos nodos de un árbol en un pre orden que
requiere tres pasos:

1. Visitar la raíz.

2. Visitar el hijo más a la izquierda, si lo hubiera, que no haya sido visitado.

3. Si todos los descendientes del segmento considerado se han visitado, volver a su
padre e ir al punto 1.

Cada nodo del árbol representa un tipo de registro conceptual, es decir, una entidad. A
su vez, cada registro o segmento está constituido por un número de campos que los
describen, las propiedades o atributos de las entidades. Las relaciones entre entidades
están representadas por las ramas. Cada departamento es una entidad que mantiene
una relación de uno a muchos con los profesores, que a su vez mantienen una relación
de uno a muchos con los cursos que imparten.

Base de datos jerárquica. Estructura lógica y ejemplo:

A modo de resumen, enumeramos las siguientes características de las bases de datos


jerárquicas:

1. Los segmentos de un archivo jerárquico están dispuestos en forma de árbol.


2. Los segmentos están enlazados mediante relaciones uno a muchos.

3. Cada nodo consta de uno o más campos.

4. Cada ocurrencia de un registro padre puede tener distinto número de ocurrencias de


registros hijos.

5. Cuando se elimina un registro padre se deben eliminar todos los registros hijos
(integridad de los datos).

6. Todo registro hijo debe tener un único registro padre excepto la raíz.

Las reglas de integridad en el modelo jerárquico prácticamente se reducen a la ya


mencionada de eliminación en cadena de arriba a abajo. Las relaciones muchos a
muchos no pueden ser implementadas de forma directa. Este modelo no es más que
una extensión del modelo de ficheros.

Redundancia:

Esta se presenta cuando se repiten innecesariamente datos en los archivos que


conforman la base de datos. Esta redundancia aumenta los costes de almacenamiento
y acceso y además puede llevar a inconsistencia de los datos.

Si un cliente ha realizado más de un pedido todos los datos de este cliente estarán
repetidos tantas veces como pedidos haya, lo mismo sucede para los artículos esto es
opuesto al principal objetivo de una base de datos que consiste en evitar la repetición
de los mismos.

Redundancia e inconsistencia de datos: Puesto que los archivos que mantienen


almacenada la información son creados por diferentes tipos de programas de aplicación
existe la posibilidad de que si no se controla detalladamente el almacenamiento, se
pueda originar un duplicado de información, es decir que la misma información sea más
de una vez en un dispositivo de almacenamiento. Esto aumenta los costos de
almacenamiento y acceso a los taos, además de que puede originar la inconsistencia
de los datos, es decir diversas copias de un mismo dato no concuerdan entre sí, por
ejemplo: que se actualiza la dirección de un cliente en un archivo y que en otros
archivos permanezca la anterior.

Integridad:

El objetivo en cuanto a la integridad es proteger la base de datos contra operaciones


que introduzcan inconsistencias en los datos, por eso hablamos de integridad en el
sentido de corrección, validez o precisión de los datos de la base. El subsistema de
integridad de un SGBD debe, por tanto, detectar y corregir, en la medida de lo posible,
las operaciones incorrectas. Existen dos tipos de operaciones que pueden atentar
contra la integridad de los datos que son las operaciones semánticamente
inconsistentes y las interferencias debidas a accesos concurrentes.
Seguridad e integridad de los datos
Se trata de garantizar la coherencia de los datos, comprobando que sólo los usuarios
autorizados puedan efectuar las operaciones correctas sobre la base de datos. Esto se
consigue mediante:

•Un control sobre los usuarios que acceden a la base de datos y los tipos de
operaciones que están autorizados a realizar. Este control se llama gestión de
autorizaciones, y permite crear o borra usuarios y conceder o retirar derechos a
efectuar determinados tipos de operaciones (por ejemplo: crear objetos, borrar objetos,
modificar datos, etc.

•La validación de las operaciones realizadas con los datos. Este control se hace
mediante un conjunto de reglas llamadas restricciones de integridad. Existen varios
tipos de restricciones de integridad, como por ejemplo, las restricciones de integridad
referencial, que imponen que las modificaciones realizadas sobre algunos datos,
obliguen a realizar modificaciones de otros datos con los que están enlazados (por
ejemplo, si se modifica el código de un artículo, se debería modificar ese código en
todos los pedidos que soliciten el artículo.

•Una protección de los datos contra los accesos malintencionados y los fallos. Los
accesos malintencionados se suelen evitar con la asignación de palabras de paso
(password) a los usuarios, la definición de vistas, protección física de los datos
(encriptado de los datos). Con respecto a los fallos causados por manipulaciones
incorrectas, o accidentes lógicos o físicos, los S.G.B.D. suelen disponer de utilidades de
recuperación de los datos después de un fallo.

La correcta utilización de todas estas operaciones de seguridad e integridad constituye


una tarea esencial del Administrador de la base de datos (gestión de usuarios y sus
derechos, gestión de vistas y recuperación después de un fallo).

Terminología en la arquitectura de la bases de datos:

•Incoherencia de los datos: Si una operación de puesta al día múltiple no se ha


realizado completamente el estado de la base de datos queda incoherente y puede
producir errores importantes.

•Versatilidad para representar la información: Ofrecer diferentes visiones de la


información que se almacena en la BD.

•Desempeño: Debe dar respuesta en un tiempo adecuado, permitiendo el acceso


simultáneo al mismo o diferente datos.

•Capacidad de acceso: Debe responder en tiempo adecuado a consultas previstas e


imprevistas.

•Simplicidad: Cambios en los requerimientos no deben suponer grandes cambios en el


modelo de datos.

•Seguridad: Capacidad para proteger los datos contra pérdidas totales y/o parciales,
Contra accesos indebidos a los datos.
•Privacidad: Debe reservar la información de accesos de personas no autorizadas.

•Afinación: Organización de datos afines para obtener buenos tiempos de respuesta.

•Integridad: Que los datos sean correctos y se correspondan a los requerimientos del
dominio.

•Abstracción de la información. Los usuarios de los SGBD ahorran a los usuarios


detalles acerca del almacenamiento físico de los datos. Da lo mismo si una base de
datos ocupa uno o cientos de archivos, este hecho se hace transparente al usuario. Así,
se definen varios niveles de abstracción.

•Independencia. La independencia de los datos consiste en la capacidad de modificar el


esquema (físico o lógico) de una base de datos sin tener que realizar cambios en las
aplicaciones que se sirven de ella.

• Redundancia mínima. Un buen diseño de una base de datos logrará evitar la aparición
de información repetida o redundante. De entrada, lo ideal es lograr una redundancia
nula; no obstante, en algunos casos la complejidad de los cálculos hace necesaria la
aparición de redundancias.

• Consistencia. En aquellos casos en los que no se ha logrado esta redundancia nula,


será necesario vigilar que aquella información que aparece repetida se actualice de
forma coherente, es decir, que todos los datos repetidos se actualicen de forma
simultánea.

• Seguridad. La información almacenada en una base de datos puede llegar a tener un


gran valor. Los SGBD deben garantizar que esta información se encuentra asegurada
frente a usuarios malintencionados, que intenten leer información privilegiada; frente a
ataques que deseen manipular o destruir la información; o simplemente ante las
torpezas de algún usuario autorizado pero despistado. Normalmente, los SGBD
disponen de un complejo sistema de permisos a usuarios y grupos de usuarios, que
permiten otorgar diversas categorías de permisos.

•Integridad. Se trata de adoptar las medidas necesarias para garantizar la validez de los
datos almacenados. Es decir, se trata de proteger los datos ante fallos de hardware,
datos introducidos por usuarios descuidados, o cualquier otra circunstancia capaz de
corromper la información almacenada.

•Respaldo y recuperación. Los SGBD deben proporcionar una forma eficiente de


realizar copias de seguridad de la información almacenada en ellos, y de restaurar a
partir de estas copias los datos que se hayan podido perder.

•Tiempo de respuesta. Lógicamente, es deseable minimizar el tiempo que el SGBD


tarda en darnos la información solicitada y en almacenar los cambios realizados.
•Inconsistencia Ocurre cuando existe información contradictoria o incongruente en la
base de datos.
•Dificultad en el acceso de los datos debido a que los sistemas de procesamiento de
archivos generalmente se conforman en distintos tiempos o épocas y ocasionalmente
por distintos programadores, el formato de la información no es uniforme y se requiere
de establecer métodos de enlace y conversión para combinar datos contenidos en
distintos archivos.

•Aislamiento de los datos, Se refiere a la dificultad de extender las aplicaciones que


permitan controlar a la base de datos, como pueden ser, nuevos reportes, utilerías y
demás debido a la diferencia de formatos en los archivos almacenados.

•Anomalías en el acceso concurrente Ocurre cuando el sistema es multiusuario y no se


establecen los controles adecuados para sincronizar los procesos que afectan a la base
de datos. Comúnmente se refiere a la poca o nula efectividad de los procedimientos de
bloqueo.

•Problemas de integridad Ocurre cuan no existe a través de todo el sistema


procedimientos uniformes de validación para los datos.

•Archivos de datos Almacenan a la base de datos.

•Diccionario de datos Almacenan información referente a la estructura de la base de


datos.

•Manejador de Archivo Asigna espacio en el medio de almacenamiento para las


estructuras que habrán de almacenar la información.

•Procesador de consulta Se encarga de traducir las proposiciones de un lenguaje de


consultas a instrucciones de bajo nivel.

Unidad I
Introducción a los Sistemas de Base de Datos
 
1.1  Sistemas de información y bases de datos
 
1.1.1. Concepto de Sistema de Información:
Un sistema de información es un conjunto de procedimientos ordenados que, al ser
ejecutados, proporcionan información para apoyar la toma de decisiones y el control de
la Institución. La información se define como una entidad tangible o intangible que
permite reducir la incertidumbre acerca de algún estado o suceso.
 
1.1.2 Sistemas de información para la gestión y para la ayuda en la toma de decisiones:
Velocidad, para la planificación, la toma de decisiones y el control.
La velocidad y exactitud con que los directivos pueden recibir información sobre lo que
está funcionando bien o lo que está funcionando mal determinarán, en gran medida, la
eficacia que tendrán los sistemas de control. Dado que los sistemas de información
desempeñan un papel tan importante en la administración de instituciones educativas,
ahora es fundamental que los directivos entiendan cómo deben diseñar aplicar y
manejar tales sistemas. Ante las presiones económicas y de inscripciones que las
universidades enfrentan en estos tiempos, la importancia de los sistemas de
información administrativa le saltará a la vista, todos los días.
 
1.3.  Sistemas de bases de datos y sus aplicaciones.

1. La banca: información de clientes, cuentas, transacciones, préstamos, y


transacciones bancarias.

2. Líneas aéreas: para reservas e información de horarios, las  líneas aéreas fueron los
primeros en utilizar la base de datos de forma distribuida geográficamente.

3.            universidades: para la información de los estudiantes, matriculas en las


asignaturas y cursos.

4.            Transacciones de tarjeta de crédito: para compras con tarjetas de crédito y la


generación de los extractos mensuales.

5.            Telecomunicaciones: para guardar registros de llamadas realizadas, generar


facturas mensuales, mantener el saldo de las tarjetas, telefónicas de prepago y
almacenar información sobre las redes.

6.- Finanzas: para almacenar información sobre compañías tenedoras, venta y compra
de productos financieros, como acciones y botones.

7.- Ventas: para información de clientes, productos y compras.

8.- Comercio en línea: para los datos de venta ya mencionados y para el seguimiento
de los productos web.

9.- Recursos Humanos: para la información sobre empleados,  salarios, impuestos


sobre los sueldos y prestaciones sociales.
 
1.4 Sistemas de base de datos frente a los sistemas de archivos:

(File System). En computación, un sistema de archivos es un método para el


almacenamiento y organización de archivos de computadora y los datos que estos
contienen, para hacer más fácil la tarea encontrarlos y accederlos. Los sistemas de
archivos son usados en dispositivos de almacenamiento como discos duros y CD-ROM
e involucran el mantenimiento de la localización física de los archivos.

Más formalmente, un sistema de archivos es un conjunto de tipo de datos abstractos


que son implementados para el almacenamiento, la organización jerárquica, la
manipulación, el acceso, el direccionamiento y la recuperación de datos. Los sistemas
de archivos comparten mucho en común con la tecnología de las bases de datos.
 
1.5 Distintos niveles de abstracción de una base de datos:

Para que el sistema sea útil debe recuperar los datos eficientemente,  la necesidad de
la eficiencia a hecho que los diseñadores usen estructuras de datos complejas. Dado
que  muchos usuarios de sistemas de base de datos no la formación necesaria en el
área de informática, los desarrolladores acultan la complejidad a los usuarios  mediante
varios niveles de abstracción para simplificar la interacción de los usuarios con el
sistema.
 
 •Nivel físico. El nivel más bajo de abstracción describe como se almacenan
realmente los datos. El nivel físico  describe en detalle las estructuras de datos
complejas de bajo nivel.

•Nivel lógico. El nivel inmediatamente superior de  abstracción describe que datos se


almacenan en la base de datos y que relaciones existen entre esos datos. El nivel
lógico, por tanto describe en toda base de datos en  términos de un número pequeño de
estructuras relativamente simples,. Los administradores de base de datos, que deben
decidir la información que se mantiene en la base de datos, usan el nivel lógico de
abstracción.

•Nivel de vistas. El nivel más elevado  de abstracción describe solo parte de la base de
datos completa. Aunque el  nivel lógico usa estructuras mas simples, queda algo de
complejidad debido ala variedad de información almacenada en las grandes bases de
datos. El sistema puede proveer varias vistas para ‘la misma base de datos.

1.6 Usuarios y administradores de una base de datos.


Unos de los objetivos principales de los  sistemas de bases de datos  es recuperar
información  de la base de datos y almacenar en ella infromacion nueva.
Existen cuatro tipos de usuarios en los sistemas de base de datos los cuales son:
Usuarios normales: son usuarios no sosfisticados  que interactan  con el sistema
invocando algunos de los programas de aplicación que se an escrito con anterioridad.
Programadores de aplicaciones: : Profesionales informáticos que escriben los
programas de aplicación que utilizan los usuarios. Las herramientas de desarrollo
rápido de aplicaciones(DRA) son herramientas que permiten al programador de
aplicaciones crear formularios e informes con un mínimo de esfuerzo de programación.
Usuarios sofisticados: son aquellos que interactúan con el sistema sin escribir
programas. En su  ligar , formulan sus consultas en un lenguaje de base de datos.
Remiten cada una de las consultas al proceso de consultas, cuya función es dividir las
instrucciones LMD.
Usuarios especializados: son aquellos usuarios que escriben aplicaciones de base de
datos que no encajan en el marco tradicional del procesamiento de datos, entre estas
aplicaciones están los sistemas de diseño asistidos por computadora.
La persona que tiene dicho control central sobre el sistema se le denomina
administrador de base de datos (ADB).las funciones del ADB son:
Definición de esquemas: crea el esquema original dela base de datos mediante la
ejecución de un conjunto de instrucciones de definición de datos en el LDD.
Definición de estructuras y método.
La modificación del esquema y de la organización física
La concesión de autorización para el acceso a los datos
Mantenimiento rutinario.
1.7  Componentes de un sistema de base de datos
Datos del usuario. En la actualidad, casi todas las bases de datos representan los datos
del usuario como afinidades que son tablas de datos. No todas las afinidades son
igualmente deseables; algunas están mejor estructuradas que otras. Para crear
afinidades bien estructuradas se realiza un proceso llamado normalización.
Metadatos. Debido a que los productos DBMS están diseñados para almacenar y
manipular tablas, la mayor parte de ellos almacenan los metadatos en forma de tablas,
algunas veces llamadas tablas del sistema.
Índices. Están encaminados a mejorar el funcionamiento y la accesibilidad de la base
de datos. Se usan para ordenar y para obtener un acceso rápido a los datos. Los
índices son muy valiosos pero implican un costo. Cada vez que se actualiza una fila en
una afinidad o tabla, también deben actualizarse los índices. Esto no es malo; sólo
significa que los índices no son gratuitos y que deben reservarse para casos en los que
sean de verdad necesarios.
Metadatos de aplicación. Se usan para almacenar la estructura y el formato de formas,
reportes, consultas de usuarios, y otros componentes de aplicación. Normalmente no se
accede de forma directa a los metadatos de aplicación sino que se hace a través de
herramientas proporcionadas por el DBMS para tal fin.
 
Sistema administrador de base de datos:
Herramientas de diseño. El subsistema de herramientas de diseño tiene una serie de
elementos que facilitan el diseño y la creación de la base de datos y sus aplicaciones.
Por lo general, incluye recursos para crear tablas, formas, consultas y reportes. Los
productos DBMS también proporcionan lenguajes de programación e interfaces para
estos.
Utilerías de tiempo de ejecución. El subsistema de tiempo de ejecución procesa los
componentes de aplicación que se desarrollan usando las herramientas de diseño.
Otras utilerías de tiempo de ejecución responden a consultas e imprimen reportes.
Adicionalmente hay un componente de tiempo de ejecución que procesa las solicitudes
del programa de aplicación para leer y escribir datos de la base de datos.
Motor del sistema administrador de base de datos. Es el intermediario entre las
herramientas de diseño y las utilerías del subsistema de tiempo de ejecución, y los
datos mismos.
 
Aplicaciones de bases de datos:
Formas. Se emplean para introducir información a la base de datos. En algunas
ocasiones los identificadores (ID) de los objetos no son desplegados en la aplicación.
La razón es que en el modelo del usuario no existen y por lo tanto carecen de
significado para él. Se utilizan para que el DBMS identifique cada fila de cada tabla y se
denominan claves sustitutas.
Consultas. Se usan cuando los usuarios desean consultar los datos para contestar
preguntas o para identificar problemas o situaciones particulares. Para expresar las
consultas se puede usar el lenguaje SQL de acceso a los datos, otra posibilidad es usar
la consulta por ejemplo (QBE). En la mayoría de los DBMS las consultas se pueden
guardar como parte de la aplicación, de modo que sea posible volverlas a ejecutar.
Además en las consultas se pueden especificar parámetros, lo que significa que se
estructuran de forma tal que acepten valores de criterios durante su funcionamiento.
Reportes. Un reporte es una presentación que tiene un formato de la información de
una base de datos. Suelen estar divididos por secciones como Encabezado, títulos,
grupos, detalles, subtotales, totales y pié de página. La presentación de la información
casi siempre tiene uno o más ordenamientos.
Menús. Se usan para organizar los distintos componentes de la aplicación con el
propósito de que el usuario final acceda a ellos con facilidad, mostrándole las opciones
disponibles y ayudándole a seleccionar las acciones que desea realizar.
Programas de aplicación. Los programas de aplicación vienen a ser como el pegamento
que nos permite unir el resto de los componentes de manera coherente y permite
realizar procesos y cálculos a la aplicación. Adicionalmente suele haber algunas
limitaciones que los DBMS no pueden en forzar directamente en la estructura de los
datos y que deben ser codificadas en el programa de aplicación.
1.8 Arquitectura de los sistemas de base de datos
Existen  tres características importantes inherentes a los sistemas de bases de datos: la
separación entre los programas de aplicación y los datos, el manejo de múltiples vistas
por parte de los usuarios y el uso de un catálogo para almacenar el esquema de la base
de datos.
 
 
Arquitectura ANSI
La arquitectura de sistemas de bases de datos de tres esquemas fue aprobado por la
ANSI-SPARC (American National Standard Institute – Standards Planning and
Requirements Committee) en 1975 como ayuda para conseguir la separación entre los
programas de aplicación y los datos, el manejo de múltiples vistas por parte de los
usuarios y el uso de un catálogo para almacenar el esquema de la base de datos.
•             Nivel interno: Tiene un esquema interno que describe la estructura física de
almacenamiento de base de datos. Emplea un modelo físico de datos y los únicos datos
que existen están realmente en este nivel.
•             Nivel conceptual: tiene esquema conceptual. Describe la estructura de toda la
base de datos para una comunidad de usuarios. Oculta los detalles físicos de
almacenamiento y trabaja con elementos lógicos como entidades, atributos y
relaciones.
•             Nivel externo o de vistas: tiene varios esquemas externos o vistas de usuario.
Cada esquema describe la visión que tiene de la base de datos a un grupo de usuarios,
ocultando el resto.
El objetivo de la arquitectura de tres niveles es el de separar los programas de
aplicación de la base de datos física.
La mayoría de los SGBD no distinguen del todo los tres niveles. Algunos incluyen
detalles del nivel físico en el esquema conceptual. En casi todos los SGBD que se
manejan vistas de usuario, los esquemas externos se especifican con el mismo modelo
de datos que describe la información a nivel conceptual, aunque en algunos se pueden
utilizar diferentes modelos de datos en los niveles conceptual y externo.
Hay que destacar que los tres esquemas no son más que descripciones de los mismos
datos pero con distintos niveles de abstracción. Los únicos datos que existen realmente
están a nivel físico, almacenados en un dispositivo como puede ser un disco. En un
SGBD basado en la arquitectura de tres niveles, cada grupo de usuarios hace
referencia exclusivamente a su propio esquema externo. Por lo tanto, el SGBD debe
transformar cualquier petición expresada en términos de un esquema externo a una
petición expresada en términos del esquema conceptual, y luego, a una petición en el
esquema interno, que se procesará sobre la base de datos almacenada. Si la petición
es de una obtención (consulta) de datos, será preciso modificar el formato de la
información extraída de la base de datos almacenada, para que coincida con la vista
externa del usuario. El proceso de transformar peticiones y resultados de un nivel a otro
se denomina correspondencia o transformación. Estas correspondencias pueden
requerir bastante tiempo, por lo que algunos SGBD no cuentan con vistas externas.
La arquitectura de tres niveles es útil para explicar el concepto de independencia de
datos que podemos definir como la capacidad para modificar el esquema en un nivel
del sistema sin tener que modificar el esquema del nivel inmediato superior.

También podría gustarte