Apuntes unidad i_parte_i

11
APUNTES PARA LA ASIGNATURA DE BASE DE DATOS Dato: Es la unidad mínima de información, un dato simplemente existe y no tiene ningún significado más allá de su existencia, el cual puede existir en alguna forma usable o no. Información: Son datos que han obtenido significado mediante una conexión relacional como principal ejemplo se encuentran las bases de datos relacionales. Conocimiento: Es la colección adecuada de información, de tal manera que su intención es ser útil. Una aplicación de base de datos es simplemente un programa que interactúa con la base de datos en algún momento de su ejecución. ALGUNOS EJEMPLOS DE APLICACIONES DE BASE DE DATOS Compras de un supermercado: Cuando usted compra productos de su supermercado local, es probable que una base de datos sea visitada. El cajero utiliza un lector de código de barras para escanear cada una de sus compras. Esto está vinculado a un programa de aplicación que utiliza el código de barras para averiguar el precio del producto a partir de una base de datos de productos. Entonces, el programa reduce el número de tales artículos en stock y muestra el precio en la caja registradora. Compras usando tarjeta de crédito: Cuando usted compra mercancías a través de su tarjeta de crédito, el asistente comprueba que normalmente tiene crédito suficiente dejar hacer la compra. Esta comprobación puede llevarse a cabo por teléfono o puede llevarse a cabo automáticamente por un lector de tarjeta vinculada a un sistema informático. En cualquier caso, hay una base de datos en alguna parte que contiene información sobre las compras que usted ha hecho con su tarjeta de crédito. Para verificar su crédito, hay una aplicación de base de datos que utiliza su número de tarjeta de crédito para verificar que el precio de los bienes que desea comprar junto con la suma de las compras que ya han hecho este mes dentro de su límite de crédito. Uso de la biblioteca local: Su biblioteca local probablemente tiene una base de datos que contiene los detalles de los libros en la biblioteca, detalles de los lectores, reservas, etc. Habrá un índice computarizado que permite a los lectores encontrar un libro basado en su título o sus autores, o su área temática. El sistema de base de datos gestiona reservas para permitir que un lector pueda reservar un libro y ser informado por correo cuando el libro esté disponible. Control de estudiantes en una universidad: Si usted está en la universidad, habrá un sistema de base de datos que contiene información acerca de usted, el curso al cual está inscrito, detalles sobre su propuesta, las asignaturas que ha cursado en años anteriores o las que esta cursando actualmente, y los detalles de todos los resultados de los exámenes. También puede haber una base de datos que contiene datos relativos a los ingresos del próximo año y una

description

 

Transcript of Apuntes unidad i_parte_i

Page 1: Apuntes unidad i_parte_i

APUNTES PARA LA ASIGNATURA DE BASE DE DATOS

Dato: Es la unidad mínima de información, un dato simplemente existe y no tiene ningún

significado más allá de su existencia, el cual puede existir en alguna forma usable o no.

Información: Son datos que han obtenido significado mediante una conexión relacional como

principal ejemplo se encuentran las bases de datos relacionales.

Conocimiento: Es la colección adecuada de información, de tal manera que su intención es ser

útil.

Una aplicación de base de datos es simplemente un programa que interactúa con la base de

datos en algún momento de su ejecución.

ALGUNOS EJEMPLOS DE APLICACIONES DE BASE DE DATOS

Compras de un supermercado: Cuando usted compra productos de su supermercado local, es

probable que una base de datos sea visitada. El cajero utiliza un lector de código de barras

para escanear cada una de sus compras. Esto está vinculado a un programa de aplicación que

utiliza el código de barras para averiguar el precio del producto a partir de una base de datos

de productos. Entonces, el programa reduce el número de tales artículos en stock y muestra el

precio en la caja registradora.

Compras usando tarjeta de crédito: Cuando usted compra mercancías a través de su tarjeta

de crédito, el asistente comprueba que normalmente tiene crédito suficiente dejar hacer la

compra. Esta comprobación puede llevarse a cabo por teléfono o puede llevarse a cabo

automáticamente por un lector de tarjeta vinculada a un sistema informático. En cualquier

caso, hay una base de datos en alguna parte que contiene información sobre las compras que

usted ha hecho con su tarjeta de crédito. Para verificar su crédito, hay una aplicación de base

de datos que utiliza su número de tarjeta de crédito para verificar que el precio de los bienes

que desea comprar junto con la suma de las compras que ya han hecho este mes dentro de su

límite de crédito.

Uso de la biblioteca local: Su biblioteca local probablemente tiene una base de datos que

contiene los detalles de los libros en la biblioteca, detalles de los lectores, reservas, etc. Habrá

un índice computarizado que permite a los lectores encontrar un libro basado en su título o

sus autores, o su área temática. El sistema de base de datos gestiona reservas para permitir

que un lector pueda reservar un libro y ser informado por correo cuando el libro esté

disponible.

Control de estudiantes en una universidad: Si usted está en la universidad, habrá un sistema

de base de datos que contiene información acerca de usted, el curso al cual está inscrito,

detalles sobre su propuesta, las asignaturas que ha cursado en años anteriores o las que esta

cursando actualmente, y los detalles de todos los resultados de los exámenes. También puede

haber una base de datos que contiene datos relativos a los ingresos del próximo año y una

Page 2: Apuntes unidad i_parte_i

base de datos que contiene detalles de los funcionarios que trabajan en la universidad, dando

detalles personales y salariales relacionados con los detalles de la oficina de nómina.

Pueden existir muchos otros ejemplos, lo importante aquí es hacer notar donde se realiza el

vínculo con la base de datos.

SISTEMAS BASADOS EN ARCHIVOS

Fueron un primer intento de informatizar el sistema de archivo manual con el que todos

estamos familiarizados. Por ejemplo, en una organización un sistema de archivos está

configurado para mantener toda la correspondencia interna y externa relativa a un proyecto,

producto, tarea, cliente o empleado. Típicamente, hay muchos archivos, y por seguridad están

etiquetados y almacenados en uno o más armarios. Los gabinetes pueden tener cerraduras o

pueden ser localizados en las áreas de seguridad del edificio. En nuestra propia casa, es

probable que tenga algún tipo de sistema de archivos que contenga recibos, garantías,

facturas, extractos bancarios, y cosas así. ¿Cuándo tenemos que buscar algo, vamos al sistema

de archivo y búsqueda a través del sistema a partir de la primera entrada hasta que

encontremos lo que buscamos. Alternativamente, es posible que tengamos un sistema de

indexación para ayudar a localizar lo que queremos con mayor rapidez. Por ejemplo, podemos

tener divisiones en el sistema de archivos o carpetas separadas para los diferentes tipos de

elementos que se encuentran de alguna manera lógicamente relacionados.

El sistema de registro manual funciona bien mientras que el número de elementos que se

almacenan es pequeño. También funciona muy adecuadamente cuando hay un gran número

de artículos y sólo tenemos que almacenar y recuperar ellos. Sin embargo, el sistema de

registro manual se rompe cuando tenemos una referencia cruzada o proceso de la información

en los archivos. Por ejemplo, una agencia de compra y venta de bienes raíces puede tener un

archivo separado para cada propiedad en venta o alquiler, cada potencial comprador y el

arrendatario, y cada miembro del personal. Consideremos el esfuerzo que se requeriría para

responder a las siguientes preguntas:

¿Qué propiedades que están en venta cuentan con tres recamaras, jardín y garaje?

¿Qué departamentos se tienen en alquiler dentro de un rango de tres kilómetros de una determinada ciudad?

¿Cuál es el costo promedio de renta para un departamento con dos recamaras?

Claramente, el sistema basado en archivos es inadecuado para este tipo de trabajo. El sistema

basado en archivos fue desarrollado en respuesta a las necesidades de la industria para

acceder a los datos de manera más eficiente. Sin embargo, en lugar de establecer un almacén

centralizado para la organización de los datos, un enfoque descentralizado fue tomado, donde

cada departamento, almacenaba y controlaba sus propios datos.

Page 3: Apuntes unidad i_parte_i

LIMITACIONES DE LOS SISTEMAS BASADOS EN ARCHIVOS

Separación y aislamiento de datos

Cuando los datos se aíslan en archivos separados, es más difícil acceder a los datos que deben

estar disponibles. Por ejemplo, si queremos producir una lista de todas las casas que

responden a los requisitos de clientes, primero tenemos que crear un archivo temporal de

aquellos clientes que tienen 'casa' como el tipo preferido. A continuación, debemos buscar en

el archivo “PROPIEDADES EN RENTA” aquellas propiedades donde el tipo de propiedad es

"casa" y el alquiler es inferior a la renta máxima del cliente.

Duplicación de datos

Debido al enfoque descentralizado adoptado por cada departamento, el enfoque basado en

archivos propicia, si no necesario, la duplicación incontrolada de los datos. Por ejemplo, en

Filmina 8 que muestra el proceso del sistema basado en archivos podemos ver claramente que

existe una duplicación de la propiedad y datos de cliente en los Departamentos de Ventas y

Contratos. La duplicación incontrolada de los datos no es deseable por varias razones, entre

ellas:

La duplicación es un desperdicio. Cuesta tiempo y dinero para introducir los datos más de una vez.

Se necesita espacio de almacenamiento adicional, una vez más con los costos asociados. A menudo, la duplicación datos de se puede evitar mediante el intercambio de archivos de datos.

La duplicación puede conducir a la pérdida de integridad de los datos, es decir, los datos ya no son coherentes.

Dependencia de datos

La estructura física y el almacenamiento de los archivos de datos y los registros se definen en

el código de la aplicación. Esto significa que los cambios en una estructura existente son

difíciles de hacer. Por ejemplo, aumentar el tamaño del campo dirección en el archivo

“PROPIEDADES EN RENTA” de 40 a 41 caracteres suena como un cambio simple, pero requiere

de la creación de un programa de una sola vez (es decir, un programa que se ejecuta sólo una

vez y luego puede ser desechado) que convierte el archivo “PROPIEDADES EN RENTA” al nuevo

formato.

Formatos de archivos incompatibles

Debido a la estructura de archivos está incrustado en los programas de aplicación, las

estructuras son depende del lenguaje de programación de aplicaciones. Por ejemplo, la

estructura de un archivo generado por un programa COBOL puede ser diferente de la

estructura de un archivo generado por una 'C' del programa. La incompatibilidad directa de

dichos archivos los hace difíciles de procesar en forma conjunta.

Page 4: Apuntes unidad i_parte_i

Consultas estáticas y proliferación de programas de aplicación

Los sistemas basados en archivos son muy dependientes de los desarrolladores de

aplicaciones, quienes tienen que escribir todas las consultas o informes que se requieren. Por

lo que en el caso de que hubiera nuevos requisitos por parte del usuario final estos terminaban

satisfaciéndose mediante el desarrollo de nuevos programas lo que aumento

considerablemente la cantidad de programas de aplicación.

Todas las limitaciones del enfoque basado en archivos son atribuidas a dos factores:

1.- La definición de datos esta embebida en lugar de estar almacenada por separado y de forma independiente.

2.- No hay control sobre el acceso y la manipulación de datos más allá de la impuesta por los programas de aplicación.

Para solucionar las limitaciones anteriormente mencionadas un nuevo enfoque fue requerido.

Lo que surgió fue la base de datos y el sistema manejador de base de datos (DBMS).

BASE DE DATOS Y EL SISTEMA MANEJADOR DE BASE DE DATOS (DBMS).

Base de Datos: Una colección compartida de datos lógicamente relacionados, y una

descripción de estos datos, diseñados para conocer la información necesaria de una

organización.

La base de datos es un único depósito, posiblemente grande de datos que puede ser utilizado

simultáneamente por muchos departamentos y usuarios. En lugar de archivos desconectados

con datos redundantes, todos los elementos de datos son integrados con una cantidad mínima

de duplicación. La base de datos ya no es propiedad de un departamento, sino un recurso de la

empresa común. La base de datos contiene no sólo los datos operativos de una organización

sino también una descripción de estos datos. Por esta razón, una base de datos puede

definirse también como una colección auto descriptiva de registros integrados. La

descripción de los datos es conocido como el catálogo del sistema (o diccionario de datos o

metadatos -"datos sobre los datos"). Esta es la naturaleza auto descriptiva de la base de datos

que provee a los programas independencia de datos.

Una entidad es un objeto distinto (una persona, lugar, cosa, concepto, o evento) en la

organización que se va a representar en la base de datos. Un atributo es una propiedad que

describe algún aspecto del objeto que se desea registrar, y una relación es una asociación

entre entidades.

Page 5: Apuntes unidad i_parte_i

Por ejemplo, en la siguiente figura se un esquema Entidad-Relación (ER) para un entorno de

una universidad

En el esquema de la figura anterior se visualizan dos entidades ALUMNO y CLASE que se

encuentran relacionados por una relación de pertenencia la entidad ALUMNO posee como

propiedades un número de control del alumno DNI y el NOMBRE obviamente del alumno, por

lo que podemos entender a las propiedades o atributos como aquellas características que

definen a una entidad. Para el caso de la entidad ALUMNO también podríamos tener como

propiedades/atributos sus APELLIDOS, ESTATURA, GRADO QUE CURSA, CARRERA, etc. En el

caso de la entidad CLASE posee como propiedades N CLASE correspondiente al número de

control de la clase y NOMBRE DE LA CLASE generalmente al nombre de la clase, como

atributos adicionales que pudieran también incluirse está ACADEMIA A LA QUE PERTENECE,

NUMERO DE CREDITOS, AULA EN LA QUE SE IMPARTE etc.

Basándonos en el ejemplo anterior podemos obtener las siguientes entidades para un

NEGOCIO DE RENTA DE PELICULAS el cual seria nuestro entorno.

1.- ¿Que entidades u objetos intervienen en este entorno?

CLIENTES, PELICULAS

3.- ¿Cuáles serian los atributos para los clientes?

N-CLIENTE, NOMBRE, APELLIDOS, DIRECCIÓN, TELÉFONO, ETC

4.- ¿Cuáles serian los atributos para las películas?

N-PELICULA, NOMBRE, CLASIFICACIÓN, PAÍS DE ORIGEN, PROTAGONISTAS

5.- ¿Cómo se relacionan?

LOS CLIENTES RENTAN PELÍCULAS

El sistema manejador de base de datos (DBMS): Es un sistema de software que permite a los

usuarios definir, crear, mantener y controlar el acceso a la base de datos. El DBMS es el

software que interactúa con los programas de aplicación de los usuarios y la base de datos. Por

lo general, un DBMS proporciona los siguientes servicios:

- Permite a los usuarios definir la base de datos, por lo general a través de un lenguaje de definición de datos (DDL). El DDL permite a los usuarios especificar los tipos de datos y estructuras y las restricciones en los datos que se almacenan en la base de datos.

Page 6: Apuntes unidad i_parte_i

- Permite a los usuarios insertar, actualizar, eliminar y recuperar datos de la base de datos, por lo general a través de un lenguaje de manipulación de datos (DML). Tener un repositorio central para todos datos y descripciones de datos permite que el DML para proporcionar una instalación de investigación general a esta datos, llamado un lenguaje de consulta.

- Proporciona un acceso controlado a la base de datos a través de: o Un sistema de seguridad, que impide que usuarios no autorizados accedan a

la base de datos. o Un sistema de integridad, que mantiene la consistencia de los datos

almacenados o Un sistema de control de concurrencia, que permite el acceso compartido de

la base de datos. o Un sistema de control de la recuperación, que restaura la base de datos a un

estado coherente anterior después de un fallo de hardware o software. o Un catálogo accesible por el usuario, el cual contiene descripciones de los

datos en la base de datos.

VISTAS: Permiten que cada usuario tenga su propia vista de la base de datos (una vista es un

subconjunto de la base de datos). Por ejemplo, podríamos configurar una vista que permite al

Departamento de Contratos para ver sólo los datos que quieren ver para casas de alquiler.

ALGUNOS BENEFICIOS DE LAS VISTAS SON:

Proporcionan un nivel de seguridad: Las vistas se pueden configurar para excluir los datos de

que algunos usuarios no deben ver.

Proporcionar un mecanismo para personalizar el aspecto de la base de datos: Por ejemplo, el

Departamento de Contratos podría llamar el campo de renta mensual (renta) por el nombre

más obvio, renta mensual.

Proporcionar un mecanismo para personalizar el aspecto de la base de datos. Por ejemplo, el

Departamento de Contratos podría llamar el campo de renta mensual (renta) por el nombre

más obvio, renta mensual.

Puede presentar una imagen coherente: Que no cambia de la estructura de la base de datos

incluso si la base de datos subyacente se cambia (por ejemplo, agregar o quitar campos, las

relaciones cambiadas, dividir archivos, restructurarlos o cambiado de nombre).

COMPONENTES DEL ENTORNO DE UN SISTEMA GESTOR DE BASE DE DATOS (DBMS)

Hardware: El DBMS y las aplicaciones requieren hardware para correr. El hardware puede

variar desde un único ordenador personal, a un solo mainframe, a una red de ordenadores. El

hardware particular depende de las necesidades de la organización y el DBMS utilizado.

Algunos DBMS sólo se ejecutan en hardware o sistemas operativos particulares, mientras que

otros se ejecutan en una amplia variedad de hardware y sistemas operativos. Un DBMS

requiere una cantidad mínima de memoria y espacio en disco para correr, pero esta

configuración mínima no necesariamente puede dar rendimiento aceptable.

Software: El componente de software comprende el software DBMS y los programas de

aplicación, junto con el sistema operativo, incluyendo el software de red si el DBMS está

Page 7: Apuntes unidad i_parte_i

siendo utilizado través de una red. Típicamente, los programas de aplicación se escriben en un

lenguaje de programación de como 'C', C + +, Java, Visual Basic, Cobol, Fortran, Ada, Pascal, o

mediante un lenguaje de cuarta generación (4GL), tal como SQL, incrustado en un lenguaje

como los antes mencionados.

Datos: Quizás el componente más importante del entorno DBMS, ciertamente desde el punto

de los usuarios finales, es el de datos. Los datos actúan como un puente entre los

componentes de la máquina y de los componentes humanos. La base de datos contiene tanto

los datos operativos y de los metadatos "datos sobre datos".

Procedimientos: Se refieren a las instrucciones y normas que rigen el diseño y uso de la base

de datos. Los usuarios del sistema y el personal que gestiona la base de datos requieren

documentar procedimientos sobre cómo utilizar o ejecutar el sistema. Estos pueden consistir

en instrucciones sobre cómo:

- Iniciar sesión en el DBMS. - Uso de un DBMS particular, o el programa de aplicación. - Iniciar y parar el DBMS. - Hacer copias de seguridad de la base de datos. - Manejo de hardware o fallas de software. Esto puede incluir los procedimientos para

identificar el componente que ha fallado, cómo solucionar el componente que ha fallado.

Gente: Se refiere a toda la gente envuelta en el uso del sistema.

ROLES EN EL ENTORNO DE UN SISTEMA GESTOR DE BASE DE DATOS (DBMS)

Administrador de datos (DA): es responsable de la gestión de los recursos de datos de base de

datos que incluye la planificación, el desarrollo y el mantenimiento de las normas, políticas,

procedimientos, y el diseño de la base de datos lógico/ conceptual.

Administrador de la base de datos (DBA): es responsable de la realización física de la base de

datos, incluyendo el diseño e implementación de base de datos, la seguridad y el control de

integridad, mantenimiento del sistema operativo, y garantizar un rendimiento satisfactorio.

Diseñador de base de datos

- Lógico: Se ocupa de la identificación de los datos (es decir, las entidades y atributos), las relaciones entre los datos, y las restricciones en los datos que van a ser almacenados en la base de datos.

- Físico: decide cómo el diseño de bases de datos lógica es físicamente realizado. Esto implica:

o Mapear el diseño de base de datos lógica en un conjunto de tablas y restricciones de integridad.

o Selección de estructuras específicas de almacenamiento y métodos de acceso a los datos para lograr un buen rendimiento.

o Diseño de cualquier medida de seguridad exigidas en los datos.

Programadores/Desarrolladores de aplicaciones: trabajan a partir de una especificación producida por los analistas de sistemas. Cada programa contiene sentencias que solicitan la intervención del DBMS para realizar alguna operación en la base de datos. Esto incluye la

Page 8: Apuntes unidad i_parte_i

recuperación de datos, insertar actualizar y eliminar datos. Se principal objetivo es proveer la funcionalidad requerida por los usuarios finales.

Usuarios

Nativos: generalmente no están conscientes del DBMS. Ellos tienen acceso a la base de datos a

través de los programas de aplicación que tratan de hacer las operaciones tan simples como

sea posible. Invocan las operaciones de base de datos mediante la introducción de órdenes

sencillas o elección de opciones de un menú.

Sofisticados: Este tipo de usuarios esta familiarizado con la estructura de la base de datos y las

facilidades ofrecidas por el DBMS. Los usuarios finales pueden utilizar un lenguaje de consulta

de alto nivel, tales como SQL para realizar las operaciones requeridas. Algunos sofisticados

usuarios finales pueden incluso escribir programas de aplicación para su propio uso.

VENTAJAS DE LOS SISTEMAS MANEJADORES DE BASE DE DATOS

Control de redundancia de datos: El enfoque de base de datos intenta eliminar la redundancia

mediante la integración de los archivos para que múltiples copias de los mismos datos no se

almacenen. Sin embargo, el enfoque de la base de datos no elimina la redundancia

completamente, pero controla la cantidad de redundancia inherente en la base de datos. A

veces, es necesario duplicar los elementos de datos clave a las relaciones del modelo. En otras

ocasiones, es deseable duplicar algunos elementos de datos para mejorar el rendimiento.

Consistencia de datos: Eliminado o el controlando la redundancia, se reduce el riesgo de que

se produzcan inconsistencias. Si un elemento de datos se almacena sólo una vez en la base de

datos, cualquier actualización de su valor tiene que ser realizada sólo una vez y el nuevo valor

está disponible de inmediato para todos los usuarios. Si un elemento de datos es almacenado

más de una vez y el sistema está al tanto de esto, el sistema puede garantizar que todas las

copias del elemento mantener la consistencia. Desafortunadamente, muchos de los DBMS

actuales no asegurar este tipo de consistencia automáticamente.

Mayor información desde un mismo monto de datos: Con la integración de los datos

operacionales funcionamiento, puede ser posible para que la organización obtener

información adicional sobre los mismos datos. Por ejemplo, el hecho de que los datos se

encuentren entrelazados a través de entidades facilita las consultas desde cualquier punto de

la unidad organizativa.

Compartición de datos: Normalmente, los archivos son propiedad de las personas o

departamentos que los utilizan. Por otra parte, la base de datos pertenece a toda la

organización y puede ser compartida por todos los usuarios autorizados. De esta manera, más

usuarios comparten más datos. Además, las nuevas aplicaciones pueden aprovechar los datos

existentes en la base de datos y agregar datos únicos que no se encuentran almacenados

actualmente, en lugar de tener que definir todos los requisitos de datos de nuevo. Las nuevas

aplicaciones también pueden confiar en las funciones proporcionadas por el DBMS, tales como

la definición y manipulación de datos, control de concurrencia y recuperación, en lugar de

tener que proporcionar estas funciones ellas mismas.

Page 9: Apuntes unidad i_parte_i

Mejora la integridad de datos: Integridad de base de datos se refiere a la validez y

consistencia de los datos almacenados. La integridad es generalmente expresada en términos

de limitaciones, que son reglas de consistencia que la base de datos no permite violar. Las

restricciones pueden aplicar a elementos de datos dentro de un registro único o puede que

apliquen a las relaciones entre los registros. Por ejemplo, una restricción de integridad podría

indicar que un miembro de sueldo del personal no puede ser mayor que 40.000 pesos o que el

número de sucursal contenida en un expediente personal, en representación de la sucursal en

la que el miembro del personal trabaja, debe corresponde a una sucursal existente. Una vez

más, la integración permite que el DBA definir y el DBMS para hacer cumplir las restricciones

de integridad.

Mejor seguridad: es la protección de la base de datos de usuarios no autorizados. Sin medidas

de seguridad adecuadas, la integración hace que los datos sean más vulnerables que los

sistemas basados en ficheros. Sin embargo, la integración permite que el DBA defina y el DBMS

hacer cumplir, la seguridad de las bases de datos. Esto puede tomar la forma de los nombres

de usuario y contraseñas para identificar a las personas autorizadas para utilizar la base de

datos. El acceso que un usuario autorizado tiene permitido en los datos puede estar limitado

por el tipo de operación (recuperación, inserción, actualización, eliminación). Por ejemplo, el

DBA tiene acceso a todos los datos en la base de datos, un gerente de sucursal puede tener

acceso a todos los datos que se refiere a su oficina, y un asistente de ventas puede tener

acceso a todos los datos en relación a las propiedades, pero no el acceso a los datos

confidenciales, como información de sueldos del personal.

Aplicación de estándares: nuevamente, la integración permite que el DBA defina y hace

cumplir las normas necesarias. Estos pueden incluir normas departamentales, las

institucionales, nacionales o internacionales para cosas como los formatos de datos para

facilitar el intercambio de datos entre sistemas, las convenciones de nomenclatura, estándares

de documentación, procedimientos de actualización y las reglas de acceso.

Economía de escalable: La combinación de todos los datos operativos de la organización en

una base de datos y la creación de un conjunto de aplicaciones que funcionan en esta fuente

de datos, puede resultar en un ahorro de costos. En este caso, el presupuesto que

normalmente se le asigna a cada departamento para el desarrollo y mantenimiento de su

sistema basado en archivo se pueden combinar, resultando posiblemente en un menor costo

total, lo que conduce a una economía de escala.

Balance de requerimiento de conflictos: Cada usuario o departamento tiene necesidades que

puedan estar en conflicto con las necesidades de otros usuarios. Desde la base de datos está

bajo el control de DBA, el DBA puede tomar decisiones sobre el diseño y uso operativo de la

base de datos que proporcionan el mejor uso de los recursos para la organización como un

todo. Estas decisiones proporcionarán un rendimiento óptimo para las aplicaciones.

Mejora en accesibilidad y capacidad de respuesta: Una vez más, como resultado de la

integración, los datos que cruzan límites departamentales son directamente accesibles para los

usuarios finales. Esto proporciona un sistema una mayor funcionalidad que puede ser utilizada

para proporcionar mejores servicios a los que el usuario final o clientes de la organización

Muchos DBMS proporcionan lenguajes de consulta o redactores de informes que permiten a

Page 10: Apuntes unidad i_parte_i

los usuarios hacer preguntas a la medida y obtener la información requerida de inmediato a

su terminal, sin necesidad de un programador para escribir algún software para extraer esta

información.

Incremento de la productividad: Como se mencionó anteriormente, el DBMS proporciona muchas de las funciones estándar que el programador normalmente tendría que escribir en una aplicación basada en archivos. La provisión de estas funciones permite al programador concentrarse en la funcionalidad específica requerida por los usuarios. Muchos DBMS también proporcionan un entorno de cuarta generación consistente de herramientas para simplificar el desarrollo de aplicaciones de base de datos. Esto resulta en aumento de la productividad y el tiempo de desarrollo reducido (con un ahorro de costos asociados). Mejora del mantenimiento a través de la independencia de datos: En los sistemas basados en ficheros, las descripciones de los datos y la lógica para acceder a los datos están integrados en cada programa de aplicación, por lo que los programas depende de los datos. Un cambio en la estructura de los datos, por ejemplo haciendo una dirección de 41 caracteres en lugar de 40 caracteres, o un cambio en la forma en que se almacenan los datos en el disco, puede requerir considerable alteraciones de los programas que se ven afectados por el cambio. En contraste, un DBMS separa las descripciones de los datos de las aplicaciones, con lo que las aplicaciones inmunes a cambios en las descripciones de los datos. Esto se conoce como independencia de datos. Incremento de concurrencia: En algunos sistemas basados en archivos, si dos o más usuarios pueden tener acceso al mismo archivo simultáneamente, es posible que los accesos se interfieren entre sí, dando como resultado en la pérdida de información o incluso pérdida de la integridad. Muchos DBMS gestionan el acceso concurrente a la base de datos y asegurar que tales problemas no pueden ocurrir. Mejores servicios de respaldo y recuperación: Muchos sistemas basados en archivos dejan la responsabilidad en el usuario de proporcionar medidas de protección de los datos de fallos en el sistema de ordenador o programa de aplicación. Esto puede consistir en tomar una copia de seguridad nocturna de los datos. En el caso de un fallo durante el día siguiente, la copia de seguridad se restaura y el trabajo que ha tenido lugar desde esta copia de seguridad se pierde y tiene a introducirse de nuevo. En contraste, los DBMS modernos proporcionan instalaciones para minimizar la cantidad de procesamiento que se pierde después de un fracaso. DESVENTAJAS DE LOS SISTEMAS MANEJADORES DE BASE DE DATOS

Complejidad: La disposición de la funcionalidad que se espera de un buen DBMS hace del

DBMS una pieza muy compleja de software. Diseñadores y desarrolladores de bases de datos,

y administradores de bases de datos y usuarios finales deben comprender esta funcionalidad

para aprovechar al máximo las ventajas de ello. No entender el sistema puede dar lugar a

malas decisiones de diseño, que pueden tener graves consecuencias para una organización.

Tamaño: La complejidad y la amplitud de la funcionalidad hacen que el DBMS un pedazo muy

grande de software, ocupando muchos megabytes de espacio de disco y que requieren

cantidades sustanciales de memoria para ejecutar de manera eficiente.

Costo de los DBMSs: El costo de los DBMS varía significativamente, dependiendo del entorno y

la funcionalidad proporcionada. Por ejemplo, un DBMS de usuario único para un ordenador

personal puede costar EE.UU. $ 100. Sin embargo, una gran computadora central multi-usuario

Page 11: Apuntes unidad i_parte_i

de DBMS previendo servicio a cientos de usuarios puede ser extremadamente caro, tal vez

100.000 dólares EE.UU. o EE.UU. $ 1.000.000. También existen los costos recurrentes de

mantenimiento anual, que suele ser un porcentaje del precio de lista.

Costos de hardware adicional: Los requisitos de almacenamiento en disco para la base de

datos del DBMS puede requerir la compra de espacio de almacenamiento adicional. Además,

para lograr el rendimiento requerido, podría ser necesario comprar una máquina más grande,

tal vez incluso una máquina dedicada a la ejecución del DBMS. La obtención de hardware

adicional resulta en un gasto adicional.

Costo de conversión: En algunas situaciones, el costo del hardware y DBMS adicional puede

ser insignificante en comparación con el costo de convertir las aplicaciones existentes para

ejecutar en un hardware y DBMS nuevo. Este costo incluye el costo de la capacitación del

personal para utilizar estos nuevos sistemas, y posiblemente la contratación de personal

especializado para ayudar con la conversión y el funcionamiento del sistema. Este costo es una

de las razones principales por las que algunas organizaciones se sienten atados a sus sistemas

actuales y no se puede cambiar a la tecnología de base de datos más moderna.

Rendimiento: Típicamente, un sistema basado en archivos se escribe para una aplicación

específica, como la facturación. Como resultado, el rendimiento es en general muy bueno. Sin

embargo, el DBMS está escrito para ser más general, para atender a muchas aplicaciones en

lugar de sólo uno. El efecto es que algunas aplicaciones no puede correr tan rápido como lo

hacían antes.

Alto impacto de una falla: La centralización de recursos aumenta la vulnerabilidad del sistema.

Puesto que todos los usuarios y aplicaciones se basan en la disponibilidad de la DBMS, el

fracaso de determinados componentes puede la detención de las operaciones.