Just another WordPress.com site

DICCIONARIO DE DATOS

Definición.

El primer paso en el diseño de una base de datos es recolectar información acerca de la empresa, que es, acerca de su uso, relaciones y significado de datos. Como el diseño de procesos es progresivo, es necesario depositar información acerca de la opinión lógica, interna y externa del modelo en la localización central. Una herramienta que facilita el control y manejo de la información acerca de datos en el diseño, implementación, operación y expansión de fases de una base de datos es llamado diccionario de datos.

El diccionario de datos es un lugar dónde se deposita información acerca de datos como origen, descripción, relaciones y otros datos, es decir el diccionario de datos es una base de datos misma, la cual deposita datos acerca de los datos, el diccionario de datos es una guía y contiene “mapas guías” para la base de datos en vez de “nuevos datos”, es decir es un lugar en dónde se almacena o se mantiene un conjunto de estados (controles), información relacionada con los diferentes tipos de registros (tablas) privilegios de los usuarios y estadísticas (cuantos registros tiene cada tabla, índices, etc.)

Los diccionarios de datos de los Sistemas de Base de datos (DBMS) no son iguales, aunque mantienen los mismos lineamientos o las mismas características.

En otras palabras, es un catálogo, un depósito, de los elementos en un sistema. Contiene las características lógicas de los sitios donde se almacenan los datos del sistema, incluyendo nombre, descripción, alias, contenido y organización. Identifica los procesos donde se emplean los datos y los sitios donde se necesita el acceso inmediato a la información, se desarrolla durante el análisis de flujo de datos y auxilia a los analistas que participan en la determinación de los requerimientos del sistema, su contenido también se emplea durante el diseño.

En un diccionario de datos se encuentra la lista de todos los elementos que forman parte del flujo de datos en todo el sistema. Los elementos más importantes son flujos de datos, almacenes de datos y procesos. El diccionario guarda los detalles y descripciones de todos estos elementos.

Si los analistas desean conocer cuántos caracteres abarca un determinado dato o qué otros nombres recibe en distintas partes del sistema, o dónde se utiliza, encontrarán las respuestas en un diccionario de datos desarrollado en forma apropiada.

5.2 Explotación.

Razones para la utilización de los diccionarios de datos:

  1. Para manejar los detalles en sistemas muy grandes, ya que tienen enormes cantidades de datos, aun en los sistemas más chicos hay gran cantidad de datos. Los sistemas al sufrir cambios continuos, es muy difícil manejar todos los detalles. Por eso se registra la información, ya sea sobre hoja de papel o usando procesadores de texto. Los analistas mas organizados usan el diccionario de datos automatizados diseñados específicamente para el análisis y diseño de software.
  2. Para asignarle un solo significado a cada uno de los elementos y actividades del sistema. Los diccionarios de datos proporcionan asistencia para asegurar significados comunes para los elementos y actividades del sistema y registrando detalles adicionales relacionados con el flujo de datos en el sistema, de tal manera que todo pueda localizarse con rapidez.
  3. Para documentar las características del sistema, incluyendo partes o componentes así como los aspectos que los distinguen. También es necesario saber bajo que circunstancias se lleva a cabo cada proceso y con que frecuencia ocurren. Produciendo una comprensión mas completa. Una vez que las características están articuladas y registradas, todos los participantes en el proyecto tendrán una fuente común de información con respecto al sistema.
  4. Para facilitar el análisis de los detalles con la finalidad de evaluar las características y determinar donde efectuar cambios en el sistema. Determina si son necesarias nuevas características o si están en orden los cambios de cualquier tipo. Se abordan las características:
  • Naturaleza de las transacciones: las actividades de la empresa que se llevan a cabo mientras se emplea el sistema.
  • Preguntas: solicitudes para la recuperación o procesamiento de información para generar una respuesta específica.
  • Archivos y bases de datos: detalles de las transacciones y registros maestros que son de interés para la organización.
  • Capacidad del sistema: Habilidad del sistema para aceptar, procesar y almacenar transacciones y datos.
  1. Localizar errores y omisiones en el sistema, detectan dificultades, y las presentan en un informe. Aun en los manuales, se revelan errores.

Contenido de un Registro de un Diccionario de Datos.

El diccionario tiene dos tipos de descripciones para el flujo de datos del sistema, son los elementos datos y estructura de datos.

Elementos Datos: Son los bloques básicos para todos los demás datos del sistema, por si mismos no le dan un significado suficiente al usuario. Se agrupan para formar una estructura de datos.

  • Descripción: Cada entrada en el diccionario consiste de un conjunto de detalles que describen los datos utilizados o producidos por el sistema.

Cada uno esta identificado con:

  • Un nombre: para distinguir un dato de otro.
  • Descripción: indica lo que representa en el sistema.
  • Alias: porque un dato puede recibir varios nombres, dependiendo de quien uso este dato.
  • Longitud: porque es de importancia de saber la cantidad de espacio necesario para cada dato.
  • Valores de los datos: porque en algunos procesos solo son permitidos valores muy específicos para los datos. Si los valores de los datos están restringidos a un intervalo especifico, esto debe estar en la entrada del diccionario.

Estructura de Datos: Es un grupo de datos que están relacionados con otros y que en conjunto describen un componente del sistema.

  • Descripción: Se construyen sobre cuatro relaciones de componentes. Se pueden utilizar las siguientes combinaciones ya sea individualmente o en conjunción con alguna otra.
  • Relación secuencial: Define los componentes que siempre se incluyen en una estructura de datos.
  • Relación de selección: (uno u otro), define las alternativas para datos o estructuras de datos incluidos en una estructura de datos.
  • Relación de iteración: (repetitiva), define la repetición de un componente.
  • Relación opcional: los datos pueden o no estar incluidos, o sea, una o ninguna iteración.
  • Notación: Los analistas usan símbolos especiales con la finalidad de no usar demasiada cantidad de texto para la descripción de las relaciones entre datos y mostrar con claridad las relaciones estructurales. En algunos casos se emplean términos diferentes para describir la misma entidad (alias) estos se representan con un signo igual (=) que vincula los datos.

Diccionario de Datos y las Interfases.

El diccionario de datos puede componerse básicamente de dos interfases así:

  • La interfase con la gente involucrada, por ejemplo, el administrador de la base de datos, programador de sistemas, programador de aplicaciones, manejadores, y finalmente usuarios y observadores.
  • La interfase con el software por ejemplo, sistema de manejo de bases de datos, librerías, sistemas operativos y generador de reportes.

El diccionario de datos puede ser usado como una herramienta efectiva para la función de administrador de base de datos en el diseño, implementación y fase de operaciones en la base de datos. Es responsabilidad del DBMS proteger el diccionario de datos por refuerzos estándar, seguridad y obligaciones privadas. Un diccionario de datos es el lugar ideal para encontrar respuestas a las preguntas como ” dónde se usa “, ” quién usa “, ” cuando se usa”.

Estas interfases muestran que existen dos tipos de usos del diccionario de datos, un tipo de uso es por la gente que tiene funciones como administrador de base de datos, programador de sistemas, analista de sistemas, programador de aplicaciones, usuarios. Y el otro tipo de uso es por el software en áreas semejantes como manejadores de base de datos, sistemas, librerías, sistemas operativos y generador de reportes.

Estos dos tipos de interfase enlazan al manejador y control del medio de la base de datos como un resultado de la eficiente comunicación entre las partes involucradas.

Diccionario de Datos Ideal: Sus requerimientos y su Organización.

La siguiente es una lista de requerimientos convenientes de un diccionario de base de datos para describir los datos, no quiere decir que cualquier paquete de diccionario de datos particular abarca ahora todos estos requerimientos.

Modelo Conceptual.- la información acerca de los datos necesaria en el proceso de diseño del modelo conceptual incluye entidades, campos o atributos y las relaciones entre campos, atributos, también incluye información acerca de cuales departamentos y usuarios están usando o intentan usar que atributos y con que frecuencia estos datos son usados, conjuntamente con las descripciones textuales y con significados y propósitos. Las entidades y relaciones deberían tener títulos apropiados, versiones, estados, los membership (campo de una entidad el cual va ha servir de referencia).

Modelo Lógico.- la información siguiente acerca del modelo lógico de la base de datos debería ser almacenada en el diccionario de datos: el campo de agrupación con su llave (estos grupos pueden ser los subgrupos de los grupos especificados en el modelo conceptual), el fundamento del modelo de datos, la relaciones de los grupos basados en el modelo de datos, el modelo externo soportado por el modelo lógico, las transacciones lógicas, los programas y los módulos, la referencia cruzada de la información entre las transacciones, también deberían ser almacenados. Otra información necesaria es el lenguaje de programación y el tipo de programa (bath o en línea) para los programas y transacciones.

Modelo Interno.- la información física acerca de los atributos como por ejemplo: longitud (caracteres), modo (cadena de caracteres, decimales, datos de simple precisión, empaquetados), justificación (derecha izquierda), formas de presentación, reglas de edición (constantes, rango de valores), derivación algorítmica, secuencia o posición secuencial que un atributo particular ocupa en una ocurrencia, seguridad (códigos de seguridad para leer, actualizar), medio de almacenamiento (tarjetas, discos, cintas, video), el control de acceso a la información debería ser almacenado en el diccionario de datos.

Un diccionario de datos ideal debería se una parte integral de todo el medio ambiente de la base de datos y el administrador de la base de datos es el responsable de la entrada al diccionario de datos, señalando que un diccionario de datos tiene que ser salvado en copias de respaldo para evitar efectos desastrosos debido a un mal funcionamiento del sistema o cualquier destrucción no intencional de la versión producida del diccionario de datos, la función del administrador de base de datos lleva la gran responsabilidad de proteger la parte vital del medio de la base de datos “el diccionario de datos”.

Sistemas Ideales del Diccionario de Datos.

  1. El diccionario de datos debe soportar los modelos conceptual, lógico, interno y externo.
  2. El diccionario de datos debe ser integrado con el manejador del sistema de base de datos.
  3. El diccionario de datos debe soportar varias versiones de documentación (historial)
  4. El diccionario de datos debe apoyar la transferencia eficiente de información al manejador del sistema de base de datos. Idealmente la conexión entre los modelos interno y externo debe ser realizada en tiempo de ejecución.
  5. Un diccionario de datos debería comenzar con la reorganización de versiones de producción de la base de datos como un resultado de los cambios para la descripción de la base de datos. Similarmente, cualquier cambio a la descripción de programas debe ser reflejado automáticamente en la librería de descripción de programas con la ayuda del diccionario de datos.

    Unidad VI. Herramientas del Sistema.

    1. Afinación, Medición del Desempeño, Reorganización Física y Lógica.
  6. El diccionario de datos para ser eficiente deberá ser almacenado en un medio de almacenamiento con acceso directo para la fácil recuperación de información.

Afinación.

La afinación se refiere a ajustes y cambios en la organización del almacén de datos después de que el sistema ha entrado en servicio y se han aclarado suficientemente las pautas de uso. Este proceso de ajuste de la base de datos se llama afinación (Tunning).

El uso de la base de datos evoluciona continuamente, a medida que más personas se van familiarizando con ella y se van creando más programas de aplicación. Los ajustes en la organización del almacén para el óptimo desempeño se convierten en un proceso continuo.

El responsable de realizar la afinación de la base de datos es el administrador de o su grupo, y es importante que este tenga libertad para introducir los cambios que sean necesarios, sin hacer estragos en los programas de aplicación.

Requisitos para una correcta afinación:

  • Independencia física de los datos. Es la capacidad de modificar el esquema interno sin alterar el esquema conceptual, ni los programas de aplicación.
  • Medios: Para supervisar automáticamente el uso de la base de datos con el fin de que puedan hacerse los ajustes necesarios.

Los manejadores actuales de bases de datos ya incorporan medios para la afinación automática.

Medición del Desempeño.

Es responsabilidad del DBA organizar el sistema de modo que se obtenga el desempeño que sea “mejor para la empresa”, y realizar los ajustes apropiados cuando cambien los requerimientos. Es necesario reorganizar la base de datos (descargarla y volverla a cargar) en forma periódica con el fin de garantizar que los niveles de desempeño sigan siendo aceptables.

Los datos obtenidos del desempeño se comparan con aquellos datos esperados. esta razón proporciona los factores de multiprogramación, Mn, para cada uno de los procesos básicos h que son parte de los cálculos de la base de datos. En la práctica estos factores pueden variar de 1 a 0.1.

Para ver la fórmula seleccione la opción “Descargar” del menú superior

Tales pruebas no requieren la existencia de la base de datos completa y puede ser que ni siquiera exista el estudio piloto, que consiste en la ejecución de una secuencia adecuada de operaciones aleatorias o secuenciales de lectura o escritura, junto con una cantidad equivalente del uso del cpu. Es posible escribir y ejecutar un programa que imite la operación propuesta, en el sistema real que se va a utilizar, con el costo del esfuerzo de unos cuantos días.

Reorganización Física y Lógica.

La reorganización consiste en leer el archivo en forma en que se utilizaría al realizar el procesamiento serial y escribir los registros nuevos y viejos en el archivo nuevo, dejando fuera todos los registros marcados como eliminados lógicamente; y se crearán nuevos índices con base a los nuevos valores.

La frecuencia de reorganización depende de la actividad de inserción dentro del archivo; y se debe de realizar antes de que el archivo esté realmente lleno para evitar problemas en tiempos de mucha actividad.  Las reorganizaciones físicas son necesarias para mejorar el rendimiento, añadir una nueva estructura de acceso, agilizar las operaciones de obtención y actualización, disminuir los tiempos de respuesta, minimizar el espacio de almacenamiento y optimizar el consumo de recursos. Las reorganizaciones lógicas pueden modificar el esquema conceptual, pero no alterar el esquema externo ni los programas de aplicación; puede ser un orden de visualización en las vistas.

  1. Auditoria.

Para asegurar la calidad de la información contenida en el sistema, es necesario tener un experto que esté involucrado en el ajuste o hacer uso de un sistema que examine la información para asegurar su confiabilidad.

Existen dos tipos de auditores:

  • Internos. Trabajan para la misma organización, dueña del sistema.
  • Externos. Contratados del exterior de la organización que auditan el sistema para asegurar la legalidad de los estados financieros.
  1. Respaldo y Recuperación.

El DBA debe definir y poner en práctica un plan de recuperación adecuado que incluya una descarga o vaciado periódico de la base de datos en un medio de almacenamiento de respaldo y procedimientos para volver a cargar la base de datos a partir del vaciado más reciente. El respaldo y recuperación consiste en contar con un mecanismo que permiten la fácil recuperación de los datos en caso de ocurrir fallos en el sistema de la base de datos.

El objetivo del concepto de recuperación es el de proteger la base de datos contra fallas lógicas y físicas que destruyan los datos en todo o en parte independientemente de la naturaleza de las fallas estas pueden afectar los aspectos de  almacenamiento de la base de datos como son:

  • Fallas que provocan la pérdida de la memoria volátil.
  • Fallas que provocan la pérdida del contenido de la memoria secundaria.

En un sistema de base de datos, recuperación significa, restaurar la base de datos a un estado que se sabe que es correcto, después de una falla que provoca que se considere que el estado actual es incorrecto. Podemos tener la seguridad de que la base de datos es recuperable, si aseguramos que cualquier parte de la información que contiene, puede ser reconstruida, a partir de otra información que se encuentra almacenada redundantemente en algún lugar del sistema.

Pasos para recuperar la información:

  • Detección del error.- El proceso de recuperación se inicia al detectar la existencia de un error. Es posible distinguir una variedad de puntos de entrada en le proceso de recuperación. Se considerarán fallas de sistemas detectadas por falta de acción del sistema o por verificaciones irrecuperables de redundancia y salida incorrecta observada por un usuario.
  • Determinación de la fuente del error.- para decidir cual es la mejor acción correctora es necesario determinar la extensión del daño. Desde luego este esfuerzo es muy relacionado con la determinación del tiempo y la causa del error. Después de una caída o cuando el procesamiento sea interrumpido debido a una señal de error, es necesario determinar tantos aquellas áreas del archivo de datos que sean sospechosas como cuál fue la transacción que no se concluyo.
  • Ubicación de errores secundarios.- cuando se ha detectado un error que provocó una modificación inadecuada a un archivo un rastreo a través de las listas de actividad encontrara aquellas transacciones que emplearon el bloque correcto. Entonces es posible volver a introducir automáticamente el bloque correcto de las transacciones afectadas y producir resultados correctos. Si se actualizaron bloques mediante transacciones que leyeron bloques incorrectos antes de existir es necesario restaurar a un más el archivo.
  • Aplicación de correcciones. Si la extensión del daño es limitada, puede utilizarse un proceso de volver a enrollar. Las porciones dañadas del archivo se restauran aplicando primero aquellas imágenes anteriores a los bloques en error reemplazando después de las transacciones incompletas. La salida proveniente de estas transacciones se suprime de ser posible, para evitar duplicar resultados que previamente se hayan enviado a los usuarios.
  1. Migración de Datos.

Es conveniente mudar un conjunto de datos dentro del almacén de datos a posiciones accesibles de acuerdo con su actividad. En algunos sistemas se hace automáticamente, en otros, los hacen los programadores del sistema o el DBA.

El DBA se encarga de supervisar y mantener la vista lógica global de los datos. Es deseable almacenar los datos de uso frecuente de manera que resulte fácil y rápido de acceder a ellas.

Otra forma de migrar datos es cuando se migra de una versión anterior del SGBD a otra versión más actualizada (se trabaja con la versión 8i de Oracle y se desea actualizar esta versión a la 9i, por lo que se tiene que respaldar la información y migrarlo a la versión 9i de Oracle) o cuando se cambia de un manejador a otro (supongamos que actualmente se trabaja con S QL Server y se desea migrar a otro manejador como Oracle, entonces, se tiene que migrar la tablas de la base de datos de SQL a tablas de Oracle).

Unidad VII. Implicaciones de Bases de datos Distribuidas.

La evolución de los sistemas de información y el crecimiento no planeado de la información dentro de las organizaciones, ha traído dispersión de los datos en sitios local o geográficamente dispersos. La necesidad de integrar y compartir dicha información implica el nacimiento de una nueva tecnología  capaz de conformar de manera consistente la información de las organizaciones. Una de las tecnologías que trabaja en el problema de integración de información, es la de bases de datos distribuidas (BDD).

Para ver el gráfico seleccione la opción “Descargar” del menú superior

Evolución de las bases de datos.

Base de datos centralizada:- Los equipos están conectados a un servidor centralizado, donde esta almacenada la base de datos.

Para ver el gráfico seleccione la opción “Descargar” del menú superior

La interacción con el usuario como la aplicación residen en el cliente, siendo el servidor el depositario de los datos. En un sistema centralizado, la caída o desconexión del servidor, provoca la caída total del sistema.

Base de datos distribuidos:- Una base de datos esta dividida en fragmentos, almacenados en diferentes sitios de la red. Todas las operaciones realizadas en los sitios se ven reflejadas en la base de datos que esta almacenada en el servidor.

Para ver el gráfico seleccione la opción “Descargar” del menú superior

El cliente debe conocer la topología de la red, así como la disposición y ubicación de los datos. Se delega parte de la gestión de la base de datos a los clientes.

Arquitectura Cliente-Servidor:- Es la integración distribuida en un sistema de red, con los recursos, medios y aplicaciones, que definidos modularmente en los servidores, administran, ejecutan y atienden a las solicitudes de los clientes; todos interrelacionados física y lógicamente. En un esquema cliente-servidor, se denomina cliente a la máquina que solicita un determinado servicio, y servidor a aquella que proporciona tal servicio.

Para ver el gráfico seleccione la opción “Descargar” del menú superior

Arquitectura Cliente-Servidor.

Objetivos de un Sistema Distribuido.

Un sistema distribuido debe aparecer al usuario  como un sistema centralizado.

  • Transparencia a la localización.
  • Transparencia a la fragmentación.
  • Transparencia a la replicación.

Desventajas de un Sistema Distribuido.

  • Optimización en el procesamiento de preguntas.
  • Propagación de actualizaciones.
  • Mayor problema con los accesos concurrentes.

Ventajas de un Sistema Distribuido.

  • Autonomía local
    • Cada grupo es responsable de sus datos.
    • El tratamiento local es más rápido.
  • Capacidad y Crecimiento incremental.
    • Se pueden abordar proyectos de más envergadura.
    • Se puede ampliar la información sin cambiar todo el sistema.
  • Fiabilidad y Disponibilidad.
    • Los fallos suelen ser locales.
    • Se admite un cierto nivel de redundancia.
  • Eficiencia y Flexibilidad.

7.1 Distribución de Datos.

El problema de diseño de bases de datos distribuidos se refiere, a hacer decisiones acerca de la ubicación de datos y programas a través de los diferentes sitios de una red de computadoras.

Consideraciones para la base de datos distribuidos:

  • Diseño de la fragmentación, este se determina por la forma en que las relaciones globales se subdividen en fragmentos horizontales, verticales o mixtos.
  • Diseño de la asignación de los fragmentos, esto se determina en la forma en que los fragmentos se mapean a las imágenes físicas, en esta forma, también se determina la solicitud de fragmentos.

Objetivos del Diseño de la Distribución de datos.

En el diseño de la distribución de los datos, se deben de tomar en cuenta los siguientes objetivos:

  • Procesamiento local. La distribución de los datos, para maximizar el procesamiento local corresponde al principio simple de colocar los datos tan cerca como sea posible de las aplicaciones que los utilizan. Se puede realizar el diseño de la distribución de los datos para maximizar el procesamiento local agregando el número de referencias locales y remotas que le corresponden a cada fragmentación candidata y la localización del fragmento, que de esta forma se seleccione la mejor solución de ellas.
  • Distribución de la carga de trabajo. La distribución de la carga de trabajo sobre los sitios, es una característica importante de los sistemas de cómputo distribuidos. Esta distribución de la carga se realiza para tomar ventaja de las diferentes características (potencia) o utilizaciones de las computadoras de cada sitio, y maximizar el grado de ejecución de paralelismo de las aplicaciones. Sin embargo, la distribución de la carga de trabajo podría afectar negativamente el procesamiento local deseado.
  • Costo de almacenamiento y disponibilidad. La distribución de la base de datos refleja el costo y disponibilidad del almacenamiento en diferentes sitios. Para esto, es posible tener sitios especializados en la red para el almacenamiento de datos. Sin embargo el costo de almacenamiento de datos no es tan relevante si éste se compara con el del CPU, I/O y costos de transmisión  de las aplicaciones.

Requerimientos de Información.

Con el fin de realizar una fragmentación adecuada, es necesario proporcionar información que ayude a realizarla. Esta información normalmente debe ser proporcionada por el usuario y tiene que ver con cuatro tipos:

  • Información sobre el significado de los datos.
  • Información sobre las aplicaciones que lo usan.
  • Información acerca de la red de comunicaciones.
  • Información acerca de los sistemas de cómputo.

Tipos de Fragmentación.

Existen tres tipos de fragmentaciones principales:

  1. Fragmentación horizontal. Esta fragmentación se divide en primaria y derivada.
  • Fragmentación horizontal primaria. Consiste del particionamiento en tuplas de una relación R en subconjuntos, donde cada subconjunto puede contener datos que tienen propiedades comunes y se puede definir expresando cada fragmento como una operación de selección sobre la relación R.
  • Fragmentación horizontal derivada. Se define partiendo de una fragmentación horizontal. En esta operación se requiere de semi-junta(semi-join) el cual nos sirve para derivar las tuplas o registros de dos relaciones.
  1. Fragmentación vertical. Una relación R produce fragmentos R1,R2,…,Rn; cada fragmento contiene subconjuntos de atributos Pr así como la clave primaria de R. Cada atributo debe encontrarse al menos en un fragmento.
  2. Fragmentación híbrida (mixta). La relación R se divide en una serie de fragmentos R1,R2,…,Rn. Cada fragmento se obtiene como resultado de la aplicación del esquema de fragmentación horizontal o vertical a la relación R, o un fragmento de R obtenido con anterioridad. Resultado de la combinación de las dos fragmentaciones anteriores.

Asignación.

Encontrar la distribución óptima de los fragmentos F en los nodos S.

  • Mínimo coste:
    • almacenamiento.
    • modificación de un fragmento en toda sede.
    • coste de comunicación.
  • Rendimiento:
    • minimizar tiempos de respuesta.
    • maximizar la capacidad de procesamiento del sistema en cada nodo

7.2 Seguridad y Control de Concurrencia.

La protección de los datos deberá llevarse a cabo contra fallos físicos, fallos lógicos y fallos humanos (intencionados o no). Estos fallos alteran indebidamente los datos, los corrompen con lo que la base de datos ya no puede servir a los fines para los que fue creada.

El SGBD facilita normalmente mecanismos para prevenir los fallos (subsistema de control), para detectarlos una vez que se han producido (subsistema de detección) y para corregirlos después de haber sido detectados (subsistema de recuperación).

Aspectos fundamentales de la seguridad:

  • Confidencialidad. No desvelar datos a usuarios no autorizados. Comprende también la privacidad (protección de datos personales).
  • Accesibilidad. La información debe estar disponible.
  • Integridad. Permite asegurar que los datos no han sido falseados.

La seguridad en las bases de datos abarca varios temas:

  • Cuestiones éticas y legales relativas al derecho a tener acceso a cierta información.
  • Cuestiones de política en el nivel gubernamental, institucional o corporativo relacionadas con la información que no debe estar disponible para el público.
  • Cuestiones relacionadas con el sistema.
  • Necesidad en algunas organizaciones de identificar múltiples niveles de seguridad y de clasificar los datos y los usuarios según estos niveles.

El SGBD debe proveer técnicas que permitan a ciertos usuarios tener acceso a porciones selectas de una base de datos sin tener acceso al resto. Por lo regular un SGBD cuenta con un subsistema de seguridad de autorización de la base de datos que se encarga de garantizar la seguridad de porciones de la base de datos contra el acceso no autorizado.

Existen dos tipos de mecanismos de seguridad:

  • Discrecionales, se usan para otorgar privilegios a los usuarios.
  • Obligatorios, sirven para imponer seguridad de múltiples niveles clasificando los datos y los usuarios en varias clases de seguridad e implementando después la política de seguridad apropiada de la organización.

Otro problema de seguridad es el acceso a una base de datos estadística, la cual sirve para proporcionar información estadística a partir de diversos criterios. Los usuarios de bases de datos estadísticas están autorizados para usarlas para obtener información estadística sobre una población pero no para tener acceso a información confidencial detallada sobre individuos específicos. La seguridad en bases de datos estadísticas debe cuidar que la información sobre individuos no sea accesible. En ocasiones es posible deducir ciertos hechos relativos a los individuos a partir de consultas, esto tampoco debe permitirse.

Otra técnica de seguridad es el cifrado de datos que sirve para proteger datos confidenciales que se transmiten por satélite o algún tipo de red de comunicaciones. Asimismo el cifrado puede proveer protección adicional a secciones confidenciales de una base de datos. Los datos se codifican mediante algún algoritmo de codificación. Un usuario no autorizado tendrá problemas para descifrar los datos codificados, pero un usuario autorizado contará con algoritmos para descifrarlos.

Entre las obligaciones del DBA está otorgar privilegios a los usuarios y clasificar los usuarios y los datos de acuerdo con la política de la organización. Las órdenes privilegiadas del DBA incluyen los siguientes tipos de acciones:

  1. Creación de cuentas
  2. Concesión de privilegios.
  3. Revocación de privilegios.
  4. Asignación de niveles de seguridad.

La acción 1 de la lista sirve para controlar el acceso al SGBD en general, la 2 y la 3 para controlar las autorizaciones discrecionales y la 4 controla la autorización obligatoria.

Para ver el gráfico seleccione la opción “Descargar” del menú superior

Amenazas a la seguridad.

          Un sistema de manejo de bases de datos confiable es aquel que puede continuar procesando las solicitudes de usuario aún cuando el sistema sobre el que opera no es confiable. En otras palabras, aun cuando los componentes de un sistema distribuido fallen, un DDMBS confiable debe seguir ejecutando las solicitudes de usuario sin violar la consistencia de la base de datos. El control de concurrencia trata con los problemas de aislamiento y consistencia del procesamiento de transacciones.

El control de concurrencia distribuido de una DDBMS asegura que la consistencia de la base de datos se mantiene en un ambiente distribuido multiusuario. Si las transacciones son internamente consistentes, la manera más simple de lograr este objetivo es ejecutar cada transacción sola, una después de otra. Sin embargo, esto puede afectar grandemente el desempeño de un DDBMS dado que el nivel de concurrencia se reduce al mínimo. El nivel de concurrencia, el número de transacciones activas, es probablemente el parámetro más importante en sistemas distribuidos. Por lo tanto, los mecanismos de control de concurrencia buscan encontrar un balance entre el mantenimiento de la consistencia de la base de datos y el mantenimiento de un alto nivel de concurrencia.

Si no se hace un adecuado control de concurrencia, se pueden presentar dos anomalías. En primer lugar, se pueden perder actualizaciones provocando que los efectos de algunas transacciones no se reflejen en la base de datos. En segundo término, pueden presentarse recuperaciones de información inconsistentes.

About these ads

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Tag Cloud

Follow

Get every new post delivered to your Inbox.

%d bloggers like this: