Arquitectura ANSI 3 niveles

En 1975 el Organismo de Estandarización de Los Estados Unidos (ANSI) publica un informe clave para la posterior evolución de los S.G.B.D. Insiste en la necesidad de conseguir total independencia entre datos y aplicaciones; propone una arquitectura a 3 niveles y define el modelo conceptual para conseguir tales objetivos



Arquitectura a tres niveles

En 1975 el Organismo de Estandarización de Los Estados Unidos (ANSI) publica un informe clave para la posterior evolución de los S.G.B.D. Insiste en la necesidad de conseguir total independencia entre datos y aplicaciones; propone una arquitectura a 3 niveles y define el modelo conceptual para conseguir tales objetivos
ANSI-SPARC_DB_model.jpg
La Estructura global de la arquitectura a 2 niveles se divide en dos, de forma que en una estructura quedan los aspectos lógicos y el Esquema Conceptual y en otra los aspectos físicos: el Esquema Interno.
La arquitectura interna de SGBD que sigue esta normativa presenta en su interior tres niveles perfectamente diferenciados:
  1. Nivel Interno o Físico
  2. Nivel Conceptual
  3. Nivel Externo o Lógico
El Nivel Físico se encarga de engranar con el software más interno de cada máquina (Sistema Operativo y Sistema de Gestión de ficheros). El Esquema Interno especifica qué y cómo son almacenados los datos. Describe la estructura de la B.D. en forma de Modelo Conceptual de almacenamiento.
El Nivel Conceptual materializa el lugar donde definir el resultado del diseño de la B.D.. El Esquema Conceptual debe captar y almacenar el “universo del discurso” que describe a la organización o empresa y que es necesaria para su funcionamiento (capacidad semántica) sirve de punto de control para futuros desarrollos de la B.D., aísla la representación de la información de los requerimientos de la máquina y de las exigencias de cada usuario en particular e independiza la definición de la información de los SGPD en concreto.
El Nivel Lógico o externo de descripción, contiene las vistas externas de la B.D. que están asociadas cada una a un Esquema Externo y permite ver a cada tipo de usuario de la B.D. sólo aquella parte del esquema que es de su interés.
De una B.D. se pueden derivar tantas vistas como haga falta. El propósito principal de esta arquitectura a 3 niveles es conseguir que el Esquema Conceptual sea una descripción estable de la organización e independiente de las “vistas” y de la forma de almacenamiento de los datos. De este modo se conseguiría 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 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.

Independencia de los datos.

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.
En los SGBD que tienen la arquitectura de varios niveles es necesario ampliar el catálogo o diccionario, de modo que incluya información sobre cómo establecer la correspondencia entre las peticiones de los usuarios y los datos, entre los diversos niveles. El SGBD utiliza una serie de procedimientos adicionales para realizar estas correspondencias haciendo referencia a la información de correspondencia que se encuentra en el catálogo.
La independencia de datos se consigue porque al modificarse el esquema en algún nivel, el esquema del nivel inmediato superior permanece sin cambios, sólo se modifica la correspondencia entre los dos niveles. No es preciso modificar los programas de aplicación que hacen referencia al esquema del nivel superior.
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.
Debido a la independencia de niveles, las B.D. son flexibles y adaptables a los cambios.

Transformación de datos entre niveles.

El SGBD debe poder garantizar la transferencia de los datos desde el nivel interno al nivel externo, a este proceso se llama transformación de datos o mapeo. Para ello existen dos niveles de correspondencia:
  • Correspondencia conceptual/interna: Permite el paso de la vista conceptual a la vista interna, y viceversa. Especifica cómo se representan los registros y campos conceptuales en el nivel interno. Si se modifica la estructura interna de la base de datos, la correspondencia conceptual/interna deberá modificarse, para que no varíe el esquema conceptual. De este modo se conserva la independencia de los datos.
  • Correspondencia externa/conceptual: Permite el paso de una vista externa específica a la vista conceptual, y viceversa. Los subesquemas, el esquema conceptual, el esquema interno y las correspondencias conceptual/interna y externa/conceptual, las describe el administrador de la base de datos y quedan almacenados dentro del diccionario de la base de datos para futuras consultas del SGBD. Cuando un usuario desea acceder a la base de datos, el SGBD examina el diccionario de datos para comprobar si la solicitud puede ser realizada y el modo de realizar las transformaciones pertinentes de los datos.

Modelos de referencia de ANSI

En 1985 el DAFTG (Database Architecture Frame-work Task Group) del ANSI / X3 / SPARC Database System Study Group presenta el estudio final “Modelo de Referencia para la estandarización de los SGBD”.
El Modelo de Referencia MR no es por si mismo un estándar sino un marco conceptual cuyo objetivo principal es simplificar el trabajo de estandarización de los distintos componentes y sus relaciones de un SGBD. Los objetivosdel Modelo de Referencia ANSI/SPARC son:
  • Servir de herramienta para el desarrollo y coordinación de estándar en el área de SGBD.
  • Describir las interacciones entre el SGBD y otros componentes lógicos del Sistema de Información, tales como el Sistema de Diccionario de Datos.
  • Facilitar la formación del personal dando un marco común para la descripción de los SGBD.
  • Permitir la clasificación de los productos comerciales.
  • Ayudar a los usuarios a analizar, cambiar e introducir SGBD en su organización.
Los beneficios que puede traer la estandarización de los SGBD también son múltiples:
  • Portabilidad de las aplicaciones
  • Mejora de la productividad y disminución de gastos de formación
  • Simplificación de los procesos de evaluación y selección de los SGBD
  • Reducción de costes
  • Posibilidad de intercambio de datos entre distintos SGBD
Para alcanzar los objetivos del Modelo de Referencia se deben cumplir los siguientes requisitos:
  • La definición del Modelo debe adaptarse a los nuevos desarrollos tecnológicos (Base de Datos Distribuidos, máquinas de BD, etc.)
  • La simplificación de la arquitectura ANSI/SPARC de 3 niveles.
  • La Unificación de los modelos de Datos
  • La compatibilidad con otros Modelos
El Modelo de Referencia representa el marco común para la descripción de los SGBD, facilitando su estudio e investigación. Simplifica su análisis, evaluación y selección. Conduce a la estandarización y a la compatibilidad de los distintos elementos constituyentes de los SGBD. Aumenta la portabilidad de las aplicaciones y como consecuencia de esto, la conectividad total imprescindible en la implantación de Sistemas Abiertos, hoy tan invocados y necesarios en el sector. El Modelo de Referencia está basado en la Arquitectura de tres niveles de ANSI (1975), aunque la revisa, la simplifica y describe las interacciones del SGBD.
Los datos pasan por los distintos niveles de la arquitectura, separados y aislados por interfaces consiguiendo de esta forma la independencia entre niveles.
ANSI-SPARC-MEJORADO.gif
Arquitectura del modelo de referencia ANSI/X3/SPARC.
Estos 3 tipos de esquemas conceptual, externo e interno suponen tres tipos de funciones de administración:
  1. Administración de la empresa: diseña Esquema Conceptual
  2. Administración de la BD: especifica el Esquema Interno más eficiente para el esquema conceptual ya almacenado en los Metadatos.
  3. Administración de Aplicaciones: construye Esquemas Externos a partir del conceptual y controla los distintos programas de aplicación que utiliza la BD.
En esta estructura lógica de tres tipos de esquemas se diferencian 2 partes:
  • La parte superior para la Definición de la BD
  • La parte inferior para la Manipulación de la BD
Se describen distintas funciones, Humanas, funciones software, interfaces -pudiendo ser interfaces físicas, lógicas, firmware, etc- y metadatos o diccionarios de datos que desempeñan un papel fundamental en esta arquitectura.
Estamos empleando la terminología utilizada por el documento del grupo X3 de ANSI en el que se describe el modelo de referencia. El "Administrador de la Empresa" sería el equivalente al analista de negocio encargado de hacer el modelo de alto nivel de la información de la empresa, el "Administrador de la base de datos" sería el diseñador del modelo de datos, y el "Administrador de Aplicaciones" serían los analistas de las aplicaciones que atacan al modelo de datos de la organización, y que pueden definir sus propias vistas para simplificar el uso del modelo de datos subyacente al problema o tratamiento de datos que cada aplicación en cuestión quiere realizar.
En la fase de definición, una serie de interfaces permiten la creación de los metadatos que se convierten en el eje de esta arquitectura. La creación de la base de datos comienza con la elaboración del esquema conceptual realizándola el administrador de la empresa (actualmente es el diseñador, pero ANSI no lo llamó así). Ese esquema se procesa utilizando un procesador del esquema conceptual(normalmente una herramienta CASE, interfaz 1 del dibujo) que lo convierte en los metadatos (interfaz 2).
La interfaz 3 permite mostrar los datos del esquema conceptual a los otros dos administradores: el administrador de la base de datos y el de aplicaciones (el desarrollador). Mediante esta información construyen los esquemas internos y externos mediante las interfaces 4 y 5 respectivamente, los procesadores de estos esquemas almacenan la información correspondiente a estos esquemas en los metadatos (interfaces 6 y 7).
En la fase de manipulación el usuario puede realizar operaciones sobre la base de datos usando la interfaz 8 (normalmente una aplicación) esta petición es transformada por el transformador externo/conceptual que obtiene el esquema correspondiente ayudándose también de los metadatos (interfaz 9).
El resultado lo convierte otro transformador en el esquema interno (interfaz 10) usando también la información de los metadatos (interfaz 11).
Finalmente del esquema interno se pasa a los datos usando el último transformador (interfaz 12) que también accede a los metadatos (interfaz
13) y de ahí se accede a los datos (interfaz 14). Para que los datos se devuelvan al usuario en formato adecuado para él se tiene que hacer el proceso contrario.

Especificaciones del Modelo de Referencia ANSI: componentes, funciones y datos de un Sistema de Gestión de Base de Datos.

El modelo de referencia plantea tres enfoques para estudiar los Sistemas de Gestión de Base de Datos (SGBD), el de los componentes, el de las funciones que realiza y el de los datos que es capaz de gestionar.
El enfoque de los componentes consiste en dividir el SGBD en piezas que, al tener interfaces, podrían ser adquiridas a distintos suministradores buscando un objetivo de compatibilidad entre los varios módulos de un SGBD, y de compatibilidad en el mercado (estrategia de sistemas abiertos). Este es el enfoque que habría de aplicarse en el diseño de un SGBD, mientras que el de funciones es más apropiado cuando se trata de analizar un SGBD. El MR está basado en la arquitectura ANSI/SPARC pero dado el elevado número de interfaces de la primitiva arquitectura y su excesiva complejidad, en el MR se revisa este aspecto con fines de simplificación, ocupándose del análisis (requisitos a cubrir) pero nunca de la implementación.
El objetivo del Modelo de Referencia ANSI/X3 es describir las interrelaciones del SGBD, pero no indicar nada acerca de su instrumentación. También el MR intenta contestar algunas de las preguntas acerca de los metadatos y de su naturaleza.
Los componentes definidos en el modelo de referencia que debe tener todo Sistema de Gestión de Base de Datos son:
  • El sistema de control de transformación de datos (SCTD), que es el núcleo (kernel) del SGBD y que provee operadores para la descripción y manipulación de datos.
  • el interfaz de lenguaje de datos (LD), que permite a los usuarios y a los procesadores especificar sus peticiones para la recuperación de los datos por el SGBD.
  • el interfaz de lenguaje de datos interno (LD-i), que permite el uso de los servicios de los procesadores que soportan el funcionamiento de los SGBD, en especial los del SO.
En el entorno del SGBD destacan las herramientas de gestión de datos (HGD), que son componentes de soporte lógico, como los lenguajes de cuarta generación (L4G), soporte para ayuda a la decisión, facilidades para realizar el ajuste (tuning), utilidades para el volcado de ficheros, sistemas de diccionario de datos, etc.
ANSI-RM-INTERFASES.JPG
El informe llama la atención sobre la necesidad de que el SGBD facilite a cada tipo de usuario los instrumentos precisos para que pueda realizar su trabajo. Se destaca en el informe el conflicto entre las facilidades para los usuarios y la eficiencia de los procesadores, recomendando para resolverlo un único interfaz eficiente para los procesadores e instrumentar sobre él una serie de interfaces amistosos destinados a los usuarios finales. Otra recomendación importante que es preciso destacar es la que aconseja que todos los datos relacionados con el control centralizado de la BD (reglas de integridad y de seguridad) deben encontrarse en la metabase (diccionario de datos) y no se deben dejar en manos de los usuarios (sean éstos finales o programadores).
Respecto al núcleo (kernel) del SGBD, está soportado en un modelo de datos (sin especificar ninguno en concreto). El MR presenta un análisis bidimensional de los datos atendiendo a dos aspectos:
  • dimensión del punto de vista: Constituye la arquitectura a tres niveles que se ha tratado anteriormente, pero bastante simplificada.
  • dimensión intensión/extensión: Presenta cuatro niveles para la descripción de los datos, donde cada nivel es la extensión (datos) del nivel
superior y, al mismo tiempo, la intensión (esquema) del nivel inferior.
Esta dimensión de intensión/extensión, que en nuestra opinión es posiblemente la parte más original del informe, considera que cualquier metadato o esquema, es a su vez (en su extensión), un conjunto de datos que puede ser considerado como una BD, con su correspondiente descripción.
Esta descripción recursiva nos lleva a una jerarquía de niveles de esquemas, el más alto de los cuales ha de quedar embebido en el equipo lógico. La autodescripción, resultado de extender la arquitectura ANSI/SPARC, es uno de los conceptos clave del MR.
Termina el informe con unas conclusiones que más bien podrían considerarse como un resumen y con dos recomendaciones referidas a la estandarización de cada uno de los dos interfaces, LD y LD-i, a fin de conseguir así una clara separación entre las herramientas de gestión de datos (HGD) y el núcleo del SGBD, y entre éste y el sistema operativo (SO). Todo ello con objeto de proporcionar al usuario una mayor libertad e independencia frente a los suministradores.
Asimismo, se realiza en el informe un análisis de las funciones de un SGBD a los cuatro niveles de la descripción recursiva. Las funciones se considera que pueden ser de tres tipos distintos. Se describe también un conjunto de herramientas para la administración, así como la interacción con el SO. Se llama la atención sobre las duplicidades que existen en la actualidad entre los SGBD y los SO, expresándose el deseo de que los diseñadores del futuro sean más sensibles respecto a este problema y traten de evitar esta duplicación de funciones que tan perjudicial resulta.

Modelo de Referencia de Facilidades de Usuarios.

Posteriormente, en junio de 1988, otro subgrupo del DBSSG, el UFTG (User Facility Task Group) ha propuesto un modelo de referencia para facilidades de usuario (MRFU) que puede considerarse como una prolongación del modelo de referencia descrito anteriormente.
Basándose en modelos gráficos, de psicología cognitiva, tecnología de las bases de datos, de informática teórica y otros, el UFTG ha elaborado un modelo de referencia en el cual el usuario es el elemento más importante. En este informe se deja de considerar a los usuarios como administradores, programadores o usuarios finales y se examinan atendiendo al papel que en un momento determinado pueden desempeñar, y al interfaz que cada uno de estos papeles requiere.
Para aislar al usuario de detalles concretos sobre las herramientas de gestión de Datos (HGD), el MRFU propone interponer entre el SGBD y el usuario unas componentes, denominadas Facilidades de Usuario, que serían las encargadas de transformar una demanda de usuario, para obtener información de la base de datos en una petición funcional a las HGD, y transformar la salida de éstas en un formato de presentación al usuario. En el modelo se introducen además dos nuevos interfaces, LDU (Lenguajes de Datos de Usuario) y LDU-i (Lenguaje interno de Datos de Usuario), que, como sus homólogos LD y LD-i, son candidatos a una posible estandarización.
ANSI-SPARC-UF.JPG
Un SGBD está en realidad formado por varias capas que actúan como interfaces entre el usuario y los datos. El propio ANSI/X3/SPARC introdujo una mejora de su modelo en 1988 a través de un grupo de trabajo llamado UFTG (User Facilities Task Group, grupo de trabajo para las facilidades de usuario). Este modelo toma como objeto principal, al usuario habitual de la base de datos y orienta el funcionamiento de la base de datos de modo que este usuario ignora el funcionamiento externo.
Desde esta óptica para llegar a los datos hay que pasar una serie de capas que poco a poco van entrando más en la realidad física de la base de datos.
  • El núcleo. El núcleo de la base de datos es el encargado de traducir las operaciones que le llegan a instrucciones ejecutables por el sistema operativo en el lenguaje que éste último requiera.
  • Diccionario de datos. Se trata del elemento que posee todos los metadatos. Gracias a esta capa las solicitudes de los clientes se traducen en instrucciones que hacen referencia al esquema interno de la base de datos. La capa de acceso a datos es la que permite comunicar a las aplicaciones de usuario con el diccionario de datos a través de las herramientas de gestión de datos que incorpore el SGBD.
  • Facilidades de usuario. Son las herramientas que proporciona el SGBD a los usuarios para permitir un acceso más sencillo a los datos. Actúan de interfaz entre el usuario y la base de datos, y son el único elemento que maneja el usuario.




Si te ha gustado esta entrada, suscríbete para recibir las próximas entradas por correo electrónico. Por favor, apoya este blog.

1 comentario:

  1. Me agrado mucho la información, y de hecho me ayudo bastante en un trabajo de investigación que realizo.

    ResponderEliminar

Entradas populares