Download R.A. 1.1 tema A
Transcript
MODELOS ORIENTADOS A DATOS. Los modelos de datos aportan la base conceptual para diseñar aplicaciones que hacen un uso intensivo de datos, así como la base formal para las herramientas y técnicas empleadas en el desarrollo y uso de sistemas de información. Con respecto al diseño de bases de datos, el modelado de datos puede ser descrito así (Brodie 1984:20): "dados los requerimientos de información y proceso de una aplicación de uso intensivo de datos (por ejemplo, un sistema de información), construir una representación de la aplicación que capture las propiedades estáticas y dinámicas requeridas para dar soporte a los procesos deseados (por ejemplo, transacciones y consultas). Además de capturar las necesidades dadas en el momento de la etapa de diseño, la representación debe ser capaz de dar cabida a eventuales futuros requerimientos". Un modelo de datos es por tanto una colección de conceptos bien definidos matemáticamente que ayudan a expresar las propiedades estáticas y dinámicas de una aplicación con un uso de datos intensivo. Conceptualmente, una aplicación puede ser caracterizada por: Propiedades estáticas: entidades (u objetos), propiedades (o atributos) de esas entidades, y relaciones entre esas entidades. Propiedades dinámicas: operaciones sobre propiedades o relaciones entre operaciones. entidades, sobre Reglas de integridad sobre las entidades y las operaciones (por ejemplo, transacciones). Así, un modelo de datos se distingue de otro por el tratamiento que da a estas tres categorías. El resultado de un modelado de datos es una representación que tiene dos componentes: las propiedades estáticas se definen en un esquema y las propiedades dinámicas se definen como especificaciones de transacciones, consultas e informes. Un esquema consiste en una definición de todos los tipos de objetos de la aplicación, incluyendo sus atributos, relaciones y restricciones estáticas. Correspondientemente, existirá un repositorio de información, la base de datos, que es una instancia del esquema. Un determinado tipo de procesos sólo necesita acceder a un subconjunto predeterminado de entidades definidas en un esquema, por lo que este tipo de procesos puede requerir sólo un subconjunto de las propiedades estáticas del esquema general. A este subconjunto de propiedades estáticas se le denomina subesquema. Una transacción consiste en diversas operaciones o acciones sobre las entidades de esquema o subesquema. Una consulta se puede expresar como una expresión lógica sobre los objetos y relaciones definidos en el esquema; una consulta identifica un subconjunto de la base de datos. Las herramientas que se usan para realizar las operaciones de definición de las propiedades estáticas y dinámicas de la base de datos son los lenguajes de definición y manipulación de datos (DDL, DML), junto con los lenguajes de consulta (QL) que ya hemos mencionado. La investigación moderna sobre modelos de datos se ha centrado en los aspectos lógicos de las bases de datos y sobre los conceptos, herramientas y técnicas para el diseño de las mismas (Brodie 1984). Aspectos relativos a la implementación de los modelos, tales como velocidad de ejecución, concurrencia, integridad física y arquitecturas no son factores relevantes en el estadio de análisis de modelos de datos. La investigación más temprana sobre modelos de datos sí estaba más centrada en los aspectos de representación física. Cuando hablamos de modelos de datos clásicos, nos estamos refiriendo a la segunda de las generaciones de modelos de datos. Brodie (1984) distingue cuatro generaciones: Modelos de datos primitivos (orientados al fichero). Modelos de datos clásicos. Modelos de datos semánticos. Modelos de datos de propósito específico (orientados a la aplicación). Los modelos de datos primitivos estaban absolutamente orientados al fichero: las entidades se representan en registros (divididos en campos, que representan sus propiedades), que se agrupan en ficheros. Las 1 relaciones entre entidades son únicamente aquellas que pueden ser representadas usando directorios, por ejemplo índices y listas invertidas. Un ejemplo de DBMS comercial de fichero, concretamente del tipo "lista invertida", es el CA-DATACOMB de Computer Associates International. Los modelos de datos clásicos son tres: el jerárquico, el de red y el relacional. MODELOS ORIENTADOS A OBJETOS. En una base de datos orientada a objetos, la información se representa mediante objetos como los presentes en la programación orientada a objetos. Cuando se integra las características de una base de datos con las de un lenguaje de programación orientado a objetos, el resultado es un sistema gestor de base de datos orientada a objetos (ODBMS, object database management system). Un ODBMS hace que los objetos de la base de datos aparezcan como objetos de un lenguaje de programación en uno o más lenguajes de programación a los que dé soporte. Un ODBMS extiende los lenguajes con datos persistentes de forma transparente, control de concurrencia, recuperación de datos, consultas asociativas y otras capacidades. Las bases de datos orientadas a objetos se diseñan para trabajar bien en conjunción con lenguajes de programación orientados a objetos como Java, C#, Visual Basic.NET y C++. Los ODBMS usan exactamente el mismo modelo que estos lenguajes de programación. Los ODBMS son una buena elección para aquellos sistemas que necesitan un buen rendimiento en la manipulación de tipos de dato complejos. Los ODBMS proporcionan los costes de desarrollo más bajos y el mejor rendimiento cuando se usan objetos gracias a que almacenan objetos en disco y tienen una integración transparente con el programa escrito en un lenguaje de programación orientado a objetos, al almacenar exactamente el modelo de objeto usado a nivel aplicativo, lo que reduce los costes de desarrollo y mantenimiento. MODELOS SEMÁNTICOS El modelado semántico resume la complejidad lógica representativa de la Base de Datos, esto permite mayor usabilidad por parte de más usuarios, se extiende el amplio dominio para la redes de comunicaciones donde los usuarios no son conscientes de la estructura lógica de una base de datos remota. La abstracción de datos y la separación de componente lógicos y conceptuales son propiedades importantes en las Bases de Datos Semántica por tanto permiten la representación de la realidad a modo de espejo. También trae consigo mayor complejidad lógica y problemas de interpretación de las consultas, debido a su acercamiento al lenguaje natural, produce ambigüedades. La base de datos Semántica permite la adaptación de datos derivados, no existentes en la base de datos pero que para el usuario es obvio su existencia. El nuevo estándar trata de minimizar el problema de ambigüedad en la base de datos. Los modelos semánticos fueron introducidos como herramientas de diseño de esquemas. El motivo principal de su uso radicaba en la exactitud del modelo de datos, como muchos autores aseveran, el modelado semántico, no es más, que una representación del mundo real, estas propiedades no las tenían las aplicaciones de bases de datos típicas. Hoy en día se ha tratado de estandarizar ello, con la llegada del estándar SQL3, que no es más que una extensión del modelo relacional. El modelado semántico y el modelo lógico planteaba un modelo que sugería colocar el nombre de Semantic-SQL, que pueda ser una estándar en lenguajes de consultas semánticas y planteaba una arquitectura del sistema donde el modelo relacional actuaba de forma independiente al modelo semántico, este último actuaba de manera directa con el usuario y traducía la consulta a un modelo lógico entendible por el Sistema de un esquema podía ser diseñado en un alto nivel de modelado semántico y traducido en un medio tradicional para la implementación 2