Archivo de la categoría: Uncategorized

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 la toma de decisiones.

Un Sistema de informacion 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 saldo

• empleado, con campos nombre-empleado sueldo

En el nivel físico, un registro clientecuenta 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 programadoresde 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 tipo 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.

En el Capítulo 22 se estudiarán las herramientas de recopilación 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. Varias de estas aplicaciones se tratan en los Capítulos 8 y 9.

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 administrado 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 que se vio en el Apartado 1.2 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 denominaatomicidad. 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 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 usan- do 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

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.

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  estructuras más simples, 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 éstas 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 fundamentos de base de datos

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 las primeros en utilizar las base de datos de forma distribuida geográficamente.

3.            universidades: para la información de los estudiantes, matriculas en la 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 echo 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 area de informatica, 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.

 

 


BIENVENIDOS

Welcome to WordPress.com. This is your first post. Edit or delete it and start blogging!

http://www.itsescarcega.edu.mx/. Instituto Tecnologico de Escarcega .

OBJETIVO GENERAL DEL CURSO
El estudiante comprenderá los fundamentos teóricos básicos para modelar,
diseñar y consultar bases de datos.


Seguir

Recibe cada nueva publicación en tu buzón de correo electrónico.