Modelos de organización de bases de datos. El diseño de bases de datos consiste en construir un conjunto de modelos de datos interconectados. Sin embargo, teniendo una idea de la funcionalidad de cualquier base de datos, podemos imaginar una tecnología generalizada para el trabajo del usuario en esta.

Cualquier base de datos refleja información sobre un área temática específica. Dependiendo del nivel de abstracción en el que se representa un dominio de problema, existen diferentes niveles de modelos de datos. Un modelo de datos de información es una forma de describir la información contenida en un área temática. A continuación, se considerarán modelos de datos estructurados. Para estos modelos, existen cuatro niveles principales de modelos: infológico (conceptual), datalógico o lógico, físico y nivel de modelos externos.

En el primer nivel, la descripción del área temática se construye de manera que sea lo más general posible, no dependa de las características del DBMS seleccionado posteriormente y la información sea accesible a una amplia categoría de usuarios: desde los clientes hasta el sistema. programadores que diseñarán una base de datos basada en este modelo. Para ello, la información inicial sobre el área temática se analiza y se presenta de alguna forma formalizada. Esta descripción formalizada del área temática debe reflejar sus detalles y usarse en las siguientes etapas del diseño de la estructura de la base de datos en el contexto de las características del DBMS específico seleccionado. Esta descripción formalizada del área temática se denomina modelo infológico o conceptual.

Luego se construye un modelo en términos del DBMS específico seleccionado para el diseño de la base de datos. Este nivel se llama modelo datalógico (lógico). La descripción de la estructura datalógica de una base de datos en el lenguaje del DBMS seleccionado se denomina esquema.

El siguiente nivel es el modelo de datos físicos. En el marco de este modelo, se determinan los métodos para colocar físicamente los datos en un entorno de almacenamiento y se desarrolla el llamado esquema de almacenamiento de datos. Dado que diferentes DBMS tienen diferentes capacidades y características de organización física de los datos, el modelado físico se lleva a cabo solo después del desarrollo de un modelo de datos.

Varios DBMS modernos tienen la capacidad de describir la estructura de una base de datos desde el punto de vista de un usuario específico. Esta descripción se llama modelo externo. Para cada tipo de usuario, el modelado externo le permite desarrollar un subesquema de base de datos basado en las necesidades de diferentes categorías de usuarios. Este enfoque es conveniente desde el punto de vista de facilitar el trabajo de los usuarios con la base de datos, ya que el usuario puede, sin conocer toda la estructura de la base de datos, trabajar solo con aquella parte que está directamente relacionada con él. Además, el mecanismo para crear subesquemas sirve como medio adicional para proteger la información almacenada en la base de datos.

Por lo tanto, si el DBMS admite la capacidad de crear subesquemas, entonces la arquitectura de la base de datos pasa a ser de tres niveles: nivel de esquema de almacenamiento, nivel de esquema y nivel de subesquema.

Consideremos ahora los principales tipos de modelos de datos.

El modelo de base de datos jerárquico es uno de los primeros modelos de bases de datos. Esto se debe principalmente al hecho de que es precisamente este modelo el que refleja más naturalmente múltiples conexiones entre objetos del mundo real, cuando un objeto actúa como padre, con el que están asociados una gran cantidad de objetos subordinados.

El principio del modelo de base de datos jerárquico es que todas las conexiones entre datos se describen mediante la construcción de un gráfico ordenado (árbol). Un árbol se ordena según una jerarquía de conjuntos de elementos llamados nodos. Todos los nodos están conectados entre sí mediante ramas. En este caso, para describir el esquema de una base de datos jerárquica, se utiliza el concepto de “árbol” como tipo de datos específico. Este tipo de datos es compuesto y puede incluir subtipos o subárboles. Una base de datos es una colección de árboles, cada uno de los cuales en el lenguaje del modelo jerárquico se denomina base de datos física. Cada árbol consta de un único tipo de raíz (principal, principal) y un conjunto ordenado asociado de tipos subordinados (secundarios). Un tipo raíz es aquel que tiene subtipos y ningún tipo principal. Los tipos de niños que tienen el mismo tipo de padre se llaman gemelos. Cada uno de los tipos subordinados para un tipo raíz determinado puede ser un tipo de “registro” simple o compuesto.

Hay tres tipos de árboles: equilibrados, desequilibrados y binarios. En un árbol equilibrado, cada nodo tiene el mismo número de ramas. Esta organización de datos es físicamente la más simple, pero a menudo la estructura lógica de datos requiere un número variable de ramas en cada nodo, lo que corresponde a un árbol desequilibrado. Los árboles binarios permiten como máximo dos ramas por nodo.

Por tanto, un modelo de base de datos jerárquico puede interpretarse como una colección ordenada de instancias de árbol, cada una de las cuales contiene instancias de registro. El contenido real de la base de datos se almacena en los campos de los registros. Un campo de registro se define como la unidad de datos más pequeña e indivisible.

Al construir un modelo de base de datos jerárquico, siempre debe recordar respaldar la integridad de las relaciones, lo que implica que:

  • - siempre hay al menos un tipo padre, que puede tener un número arbitrario de tipos hijos;
  • - los tipos secundarios no pueden existir sin la presencia de un tipo principal, y para cada tipo subordinado en la base de datos hay un único nivel raíz;
  • - el tipo raíz no tiene necesariamente tipos subordinados.

Cabe señalar que algunas notaciones pueden utilizar terminología diferente. Así, en la notación de la American Database Association DBTG (Data Base Task Group), el término “registro” corresponde al término “segmento”, y un registro es el conjunto completo de registros que pertenecen a una instancia del “árbol”. tipo.

La principal ventaja del modelo de base de datos jerárquico es la velocidad relativamente alta de procesamiento de la información al acceder a los datos. Las desventajas incluyen su complejidad en presencia de conexiones lógicas complejas entre los datos.

El modelo de base de datos en red es, en cierto sentido, una generalización del modelo jerárquico. La principal diferencia entre un modelo de red y uno jerárquico es que en un modelo de red, un tipo subordinado puede tener un número arbitrario de tipos principales. Los conceptos principales del modelo de red son conjunto, agregado, registro y elemento de datos. En este caso, un elemento de datos debería significar lo mismo que en un modelo jerárquico: la unidad mínima de datos. Hay dos tipos de agregados de datos: un agregado vectorial y un agregado de grupo repetido. Un agregado de tipo vector corresponde a un conjunto de elementos de datos. Un agregado de tipo grupo repetido corresponde a una colección de vectores de datos. Un registro es una colección de agregados de datos. Cada registro tiene un tipo específico y consta de una colección de instancias de registros. Un conjunto es un gráfico que conecta dos tipos de registros. Así, el conjunto refleja la relación jerárquica entre los dos tipos de registros. El tipo de registro principal de un conjunto determinado se denomina propietario del conjunto y el tipo de registro secundario se denomina miembro del mismo conjunto. Para dos tipos de registros cualesquiera, se puede especificar cualquier número de conjuntos que los conecten. En este caso, se puede definir un número diferente de conjuntos entre los dos tipos de registros. Sin embargo, el mismo tipo de registro no puede ser al mismo tiempo propietario y miembro de un conjunto.

Una ventaja indudable del modelo de datos de red es la posibilidad de una visualización más flexible de múltiples conexiones entre objetos. Uno de los inconvenientes más importantes es la alta complejidad del esquema de construcción de la base de datos, que se ve agravada por el debilitamiento del control sobre la integridad de las conexiones debido a su gran número.

El modelo de datos relacionales se basa en el concepto de relación, que es una tabla bidimensional que contiene muchas filas (tuplas) y columnas (campos o atributos). La tabla corresponde a un objeto específico del área temática, sus campos describen la propiedad de este objeto y sus filas describen instancias específicas del objeto. Cada relación siempre debe contener un atributo o conjunto de atributos que identifique de forma única la única tupla de esta relación: la clave primaria. Para reflejar la relación entre objetos, las tablas se vinculan de acuerdo con ciertas reglas utilizando las llamadas claves externas, que se analizarán en detalle en las siguientes secciones.

La principal ventaja del modelo relacional es su simplicidad y cierre lógico, pero la desventaja es la complejidad del sistema para describir varias relaciones entre tablas.

El desarrollo del modelo relacional condujo al surgimiento del llamado modelo de datos post-relacional, cuya principal diferencia es la admisibilidad de campos multivalor (campos cuyos valores constan de muchos subvalores). Los campos con varios valores se pueden interpretar como tablas independientes integradas en la tabla de origen. Además, el modelo post-relacional admite múltiples campos asociados que juntos forman una asociación: en cada fila, el primer valor de una columna de asociación corresponde a los primeros valores de todas las demás columnas de asociación.

La principal ventaja del modelo post-relacional es que le permite almacenar datos de manera más eficiente y la cantidad de tablas en este modelo es notablemente menor en comparación con el relacional. La desventaja es que es difícil mantener la coherencia lógica de los datos.

La teoría de los modelos de datos multidimensionales se ha desarrollado activamente recientemente. El concepto de modelo multidimensional significa la multidimensionalidad de la representación lógica de la estructura de la información. Los conceptos principales de un modelo multidimensional son dimensión y celda.

Una dimensión es un conjunto de datos del mismo tipo que forman la cara de un cubo de n dimensiones. Una celda es un campo cuyo valor está determinado por el conjunto completo de medidas. El valor de la celda puede ser una variable o una fórmula.

Para trabajar con modelos de datos multidimensionales, se utilizan DBMS multidimensionales especiales, que se basan en los conceptos de agregabilidad, historicidad y previsibilidad. La agregabilidad de datos se refiere a varios niveles de generalización de la información. La historicidad de los datos significa un alto nivel de estaticidad tanto de los datos en sí como de las conexiones entre ellos, así como la ordenación de los datos en el tiempo durante el proceso de su procesamiento y presentación a los usuarios. Garantizar la previsibilidad se logra mediante el uso de funciones especiales de pronóstico.

Los DBMS multidimensionales utilizan dos esquemas de organización de datos: policúbico e hipercúbico. En el modelo policúbico, los cubos de n dimensiones pueden tener diferentes dimensiones y diferentes dimensiones-caras. En el modelo hipercúbico, todas las dimensiones de los cubos son iguales y las dimensiones de los diferentes cubos son las mismas.

Una porción es un subconjunto determinado de un cubo de n dimensiones, definido fijando un número determinado de dimensiones. Un segmento tiene una dimensión menor que n y se utiliza, en particular, para presentar información a los usuarios en forma de tablas bidimensionales legibles. La rotación también se utiliza a menudo para representar datos en dos dimensiones e implica cambiar el orden de las dimensiones. Las operaciones de agregación y desglose significan una presentación de información más general o más detallada.

Los modelos de datos multidimensionales son especialmente convenientes para trabajar con grandes bases de datos, ya que permiten procesar de manera eficiente grandes cantidades de información, y esta es su indudable ventaja.

La principal diferencia entre el modelo orientado a objetos y los discutidos anteriormente es el uso de métodos de manipulación de datos orientados a objetos: encapsulación, herencia y poliformismo.

Encapsulación significa la capacidad de diferenciar el acceso de diferentes programas, aplicaciones, métodos y funciones (en un sentido más amplio, el acceso de diferentes categorías de usuarios) a diversas propiedades de los objetos de datos. En el contexto del término "encapsulación", a menudo se utiliza el concepto de visibilidad: el grado de accesibilidad de las propiedades individuales de un objeto. En los sistemas de programación orientados a objetos modernos (como Delphi o C++ Builder) existen los siguientes niveles de encapsulación (visibilidad), que generalmente se denominan secciones:

  • 1. Secciones Públicas, Publicadas y Automatizadas: con pequeñas características distintivas, las propiedades del objeto descrito como perteneciente a estas secciones son totalmente accesibles.
  • 2. Sección privada: esta sección impone las restricciones más severas a la visibilidad de las propiedades de los objetos. Como regla general, dichas propiedades sólo están disponibles para el propietario de este objeto (el módulo de programa en el que se creó este objeto).
  • 3. Sección protegida: a diferencia de la sección Privada, las propiedades de un objeto quedan disponibles para los herederos del propietario del objeto.

A diferencia de la encapsulación, la herencia implica la transferencia completa de todas las propiedades de un objeto principal a los objetos secundarios. Si es necesario, la herencia de propiedades de un objeto se puede extender a objetos que no sean sus hijos.

Polimorfismo significa la capacidad de la misma aplicación para manipular datos de diferentes tipos: las aplicaciones (métodos, procedimientos y funciones) que procesan objetos de diferentes tipos pueden tener el mismo nombre.

La principal ventaja de los modelos orientados a objetos es la capacidad de modelar una variedad de relaciones complejas entre objetos.

Tipos de modelos de datos de bases de datos

Modelos de organización de datos. Modelos de red, relacionales, jerárquicos.

El núcleo de cualquier base de datos es el modelo de datos. Utilizando un modelo de datos, se pueden representar los objetos de dominio y las relaciones entre ellos.

modelo de datos Es un conjunto de estructuras de datos y sus operaciones de procesamiento. Veamos tres tipos principales de modelos de datos: jerárquico, de red y relacional.

Tipos de modelos de datos de bases de datos

Jerárquico El modelo de base de datos se representa como un árbol. Los nodos del árbol representan una colección de datos, como registros lógicos.

Modelo jerárquico es un conjunto de elementos dispuestos en el orden de su subordinación de lo general a lo específico y formando un árbol (gráfico) de estructura invertida.

Los conceptos básicos de una estructura jerárquica incluyen nivel, nodo y relación. Nudo es un conjunto de atributos de datos que describen un objeto. En un diagrama de árbol jerárquico, los nodos se representan como vértices en el gráfico. Cada nodo de un nivel inferior está conectado a un solo nodo de un nivel superior. Un árbol jerárquico tiene un solo vértice, no subordinado a ningún otro vértice y ubicado en el nivel más alto: el primer nivel. Los nodos dependientes (esclavos) se encuentran en el segundo, tercer nivel, etc. La cantidad de árboles en la base de datos está determinada por la cantidad de registros raíz. Cada registro de la base de datos tiene sólo una ruta jerárquica desde el registro raíz.

Red Los modelos de bases de datos corresponden a una clase más amplia de objetos de gestión, aunque requieren costes adicionales para su organización.

En la estructura de la red. con los mismos conceptos básicos (nivel, nodo, conexión), cada elemento se puede conectar con cualquier otro elemento.

Relacional El modelo de base de datos representa objetos y relaciones entre ellos en forma de tablas, y todas las operaciones con datos se reducen a operaciones en estas tablas. Casi todos los DBMS modernos se basan en este modelo. Este modelo es más comprensible y “transparente” para el usuario final de la organización de datos.

modelo relacional presenta los objetos de datos y las conexiones entre ellos en forma de tablas, mientras que las conexiones también se consideran objetos. Todas las filas que componen una tabla en una base de datos relacional deben tener una clave principal. Todas las herramientas DBMS modernas admiten el modelo de datos relacionales.

Este modelo se caracteriza por la simplicidad de la estructura de datos, la representación tabular fácil de usar y la capacidad de utilizar el aparato formal de álgebra relacional y cálculo relacional para el procesamiento de datos.

Cada tabla relacional es una matriz bidimensional y tiene las siguientes propiedades:

1. Cada elemento de la tabla corresponde a un elemento de datos.

2. Todas las columnas de la tabla son homogéneas, es decir. Todos los elementos de una columna tienen el mismo tipo y longitud.

3. Cada columna tiene un nombre único.

4. No hay filas idénticas en la tabla;

5. El orden de filas y columnas puede ser arbitrario.

Temas:modelos lógicos de bases de datos, identificación de objetos y registros, búsqueda de registros.

1. Modelos de datos jerárquicos y de red.

El núcleo de cualquier base de datos es el modelo de datos. Un modelo de datos es un conjunto de estructuras de datos y operaciones de procesamiento. Según el método para establecer conexiones entre datos, distinguen Modelos jerárquicos, de red y relacionales.

Modelo jerárquico le permite construir bases de datos con una estructura de árbol. En ellos, cada nodo contiene su propio tipo de datos (entidad). En el nivel superior del árbol en este modelo hay un nodo: la "raíz", en el siguiente nivel hay nodos asociados con esta raíz, luego nodos asociados con. nodos del nivel anterior, etc. Además, cada nodo puede tener solo un antepasado (Fig.1)

La búsqueda de datos en un sistema jerárquico siempre comienza desde la raíz. Luego se realiza un descenso de un nivel a otro hasta alcanzar el nivel deseado. El desplazamiento a través del sistema de un registro a otro se realiza mediante enlaces.

El uso de enlaces para organizar el acceso a elementos individuales de la estructura no permite acortar el procedimiento de búsqueda, que se basa en una búsqueda secuencial. El procedimiento de búsqueda será más eficaz si se preestablece algún orden de transición al siguiente elemento del árbol.

Las principales ventajas del modelo jerárquico son la facilidad para describir estructuras jerárquicas del mundo real y la rápida ejecución de consultas que coinciden con la estructura de datos; sin embargo, a menudo contienen datos redundantes; Además, no siempre es conveniente comenzar a buscar los datos necesarios desde la raíz cada vez y no existe otra forma de moverse por la base de datos en estructuras jerárquicas.

Los modelos jerárquicos son comunes en muchos dominios, pero en muchos casos un solo registro requiere más de una vista o está vinculado a varias otras. El resultado suele ser estructuras más complejas en comparación con las que parecen árboles. En una estructura de red, cualquier elemento puede conectarse a cualquier otro elemento. En la figura 2 se muestran ejemplos de estructuras de red. 2

Estructura de red se puede describir utilizando los elementos originales y generados. Es conveniente representarlo de manera que los elementos generados queden ubicados debajo de los originales.

Es aconsejable distinguir entre estructuras de red simples y complejas.

Si un objeto de información está conectado a un conjunto completo de otros objetos o todos los objetos están conectados a todos, entonces dicha estructura se llama compleja.

Por ejemplo, un grupo de estudiantes está conectado con todos los estudiantes del grupo. O en el ejemplo de una institución educativa en la Fig. 3 cada profesor puede enseñar a muchos (teóricamente a todos) los estudiantes, y cada estudiante puede aprender de muchos (teóricamente a todos) los profesores. Como esto es naturalmente imposible en la práctica, tenemos que recurrir a algunas restricciones.


Algunas estructuras contienen bucles. Un ciclo es una situación en la que el predecesor de un nodo es al mismo tiempo su sucesor. La relación “generada por la fuente” forma un circuito cerrado. Por ejemplo, una fábrica produce diversos productos. Algunos productos se fabrican en otras fábricas subcontratadas. Un contrato puede implicar la producción de varios productos. La representación de estas relaciones forma un ciclo.

A veces los objetos están relacionados con otros objetos del mismo tipo. Esta situación se llama bucle. En la figura. La Figura 4 muestra dos situaciones bastante comunes en las que se pueden utilizar bucles. En un array de empleados se especifican las relaciones que existen entre algunos empleados. Se ha introducido una complicación adicional en la base de datos de la lista de materiales: algunos conjuntos se componen a su vez de conjuntos.

Es necesario dividir las estructuras de red en simples y complejas porque las estructuras complejas requieren métodos más complejos de representación física. Esto no siempre es una desventaja, ya que una estructura de red compleja puede (y en la mayoría de los casos debe) reducirse a una forma simple.

El uso de modelos jerárquicos y de red acelera el acceso a la información de la base de datos. Pero como cada elemento de datos debe contener referencias a otros elementos, se requieren importantes recursos tanto en el disco como en la memoria principal de la computadora. La falta de memoria principal, por supuesto, reduce la velocidad de procesamiento de datos. Además, estos modelos se caracterizan por la complejidad de implementar un sistema de gestión de bases de datos (DBMS).

2. Identificación de objetos y registros

En tareas de procesamiento de información, atributos son llamados(designar) y atribuirles significados.

Al procesar información, el usuario trata con un conjunto de objetos, información sobre propiedades cada uno de los cuales debe guardarse (registrarse) como datos, para que al resolver problemas se puedan encontrar y realizar las transformaciones necesarias.

Por tanto, cualquier estado de un objeto se caracteriza por un conjunto de atributos que tienen algunos de los valores en ese momento. Los atributos se registran en algún medio material en la forma archivos. Registro— un conjunto (grupo) de formalizados elementos de datos(valores de atributos presentados en un formato u otro). valor del atributo identifica objeto, es decir El uso de un valor como función de búsqueda le permite implementar un criterio de selección simple basado en la condición de comparación.

Un objeto individual es siempre único, por lo que el registro que contiene datos sobre él también debe tener un identificador único y ningún otro objeto debe tener el mismo identificador. Dado que un identificador es el valor de un elemento de datos, en algunos casos es necesario utilizar más de un elemento para garantizar la unicidad. Por ejemplo, para identificar de forma única registros de disciplinas curriculares, es necesario utilizar los elementos SEMESTRE y NOMBRE DE LA DISCIPLINA, ya que es posible enseñar una disciplina en diferentes semestres.

El esquema propuesto anteriormente representa método de identificación atributiva contenido del objeto. Ella es lo suficientemente natural para bien estructurado datos (fácticos). Además, la estructura se refiere no sólo a la forma de presentación de los datos (formato, método de almacenamiento), sino también a la forma en que el usuario interpreta el significado(El valor del parámetro no sólo se presenta en una forma predefinida, sino que también suele ir acompañado de una indicación de la dimensión del valor, lo que permite al usuario comprender su significado sin comentarios adicionales). Por lo tanto, la evidencia sugiere la posibilidad de que directo interpretaciones.

Sin embargo, este método es prácticamente inadecuado para la identificación. información mal estructurada, asociado con objetos que tienen perfecto naturaleza. Estos objetos suelen definirse de forma lógica e indirecta, a través de otros objetos. Se utilizan naturales o artificiales para describirlos. En consecuencia, para comprender el significado, el usuario necesita utilizar las reglas apropiadas del lenguaje y disponer de alguna información que le permita identificar y asociar la información recibida con el conocimiento existente. Es decir, el proceso de interpretación de este tipo de datos tiene mediado naturaleza y requiere el uso de información adicional, tal que no necesariamente está presente de forma formalizada en la base de datos.

3. Buscar registros

El programador o usuario debe poder acceder a registros individuales o elementos de datos individuales que necesite.

Para hacer esto, puede utilizar los siguientes métodos:

Configure la dirección de la máquina de los datos y lea el valor de acuerdo con el formato físico del registro. Estos son casos en los que el programador debe ser un “navegante”.

Dígale al sistema el nombre del registro o elemento de datos que desea recuperar y posiblemente la organización del conjunto de datos. En este caso, el propio sistema realizará la selección (según el esquema anterior), pero para ello deberá utilizar información auxiliar sobre la estructura de los datos y la organización del conjunto. Dicha información será esencialmente redundante con respecto al objeto, pero la comunicación con la base de datos no requerirá que el usuario tenga conocimientos de programador.

Como llave Al proporcionar acceso a un registro, puede utilizar un identificador, un elemento de datos independiente. Llave, que identifica de forma única un registro se llama primario (principal).

En el caso cuando llave identifica un determinado grupo de registros que tienen una determinada propiedad común, llave llamado secundaria (alternativa). Un conjunto de datos puede tener varias claves secundarias, cuya necesidad está determinada por el requisito de optimizar los procesos de búsqueda de registros para la clave correspondiente.

A veces se utiliza como identificador. llave de enclavamiento compuesta- varios elementos de datos que juntos, por ejemplo, garantizarán la identificación única de cada registro en un conjunto de datos.

En este caso, la clave se puede almacenar como parte del registro o por separado. Por ejemplo, es recomendable almacenar la clave para los registros que tienen valores de atributos no únicos por separado para eliminar la redundancia.

El concepto introducido de clave es lógico y no debe confundirse con la implementación física de una clave: índice, proporcionando acceso a registros correspondientes a valores clave individuales.

Una forma de utilizar una clave secundaria como entrada es organizar una lista invertida, donde cada entrada contenga el valor de la clave junto con una lista de ID de registro correspondientes. Los datos en el índice están organizados en orden ascendente o descendente, por lo que el algoritmo para encontrar el valor deseado es bastante simple y efectivo, y después de encontrar el valor, el registro se localiza mediante el indicador de ubicación física. La desventaja de un índice es que ocupa espacio adicional y debe actualizarse cada vez que se elimina, actualiza o agrega un registro.

En general, se puede construir una lista invertida para cualquier clave, incluidas las compuestas.

En el contexto de las tareas de búsqueda, podemos decir que hay dos formas principales de organizar los datos: el primer método representa la organización directa de la matriz, el segundo es el inverso del primero. La organización de matriz directa es conveniente para buscar según la condición "¿Cuáles son las propiedades del objeto especificado?", y la organización invertida es conveniente para buscar según la condición "¿Qué objetos tienen la propiedad especificada?".

Hay muchas formas de implementar unidades de datos elementales y, por lo tanto, se conocen una variedad de modelos de datos. El modelo de datos proporciona reglas para estructurarlo. Como regla general, las operaciones con datos están relacionadas con su estructura. La variedad de modelos de datos existentes corresponde a la variedad de aplicaciones y preferencias de los usuarios.

Para representar datos se utilizan modelos basados ​​en formas de representación de la información. Estos modelos se llaman sintáctico.

En la literatura especializada existe una descripción de un número bastante grande de modelos de datos. Los métodos jerárquicos, de red y relacionales se utilizan ampliamente. Además de ellos, los más famosos incluyen el modelo binario y la red semántica.

Se considera que el modelo de datos clásico y más utilizado se basa en estructura de tipo árbol jerárquico(Se muestra un fragmento en la Fig. 10). También se utiliza a menudo el modelo de "árbol ordenado", en el que el orden relativo de los subárboles es significativo. En dicho modelo, cada unidad de información posterior está asociada solo con una anterior, y las anteriores pueden estar asociadas con varias posteriores.


Modelo de datos de red se basa en una representación de información en la que una unidad de información se puede asociar con un número arbitrario de otras (Fig. 11).


Modelo de datos relacionales Se basa en métodos tabulares y medios de presentación y manipulación de datos. En dicho modelo, la información sobre el área temática se muestra en una tabla llamada "relación" (Fig. 12). Una fila de una tabla de este tipo se denomina tupla y una columna se denomina atributo. Cada atributo puede tomar un subconjunto de valores de un área específica: dominio.

La gran mayoría de los DBMS destinados a computadoras personales son sistemas construidos sobre la base de un modelo de datos relacionales: los DBMS relacionales.

modelo de datos binarios es un modelo de gráfico en el que los vértices reflejan representaciones de atributos simples e inequívocos, y los arcos representan representaciones de relaciones binarias entre atributos (Fig. 13).


El modelo binario no se utiliza mucho, pero en varios casos encuentra aplicación práctica. Así, en el campo de la inteligencia artificial se llevan a cabo desde hace mucho tiempo investigaciones con el objetivo de representar la información en forma de relaciones binarias.

Redes semánticas han sido propuestos como modelos de datos por investigadores que trabajan en diversos problemas de inteligencia artificial. Al igual que en los modelos de red y binario, las estructuras básicas de una red semántica se pueden representar mediante un gráfico, cuyo conjunto de vértices y arcos forma la red. Sin embargo, las redes semánticas están diseñadas para representar y sistematizar conocimientos de carácter muy general.

Por lo tanto, cualquier modelo de gráfico (por ejemplo, un gráfico binario etiquetado) puede considerarse una red semántica si inicialmente se establece claramente qué significan los vértices y arcos y cómo se utilizan.

Las redes semánticas son una rica fuente de ideas de modelado de datos que son extremadamente útiles para resolver el problema de representar situaciones complejas. Se pueden utilizar de forma independiente o junto con ideas subyacentes a otros modelos de datos. Su característica interesante es que la distancia medida en la red (distancia semántica o métrica) juega un papel importante a la hora de determinar la proximidad de conceptos interrelacionados. Al mismo tiempo, se puede enfatizar explícitamente que la distancia semántica es grande. Como se muestra en la Fig. 14, TIENDA se correlaciona con la personalidad del VENDEDOR, y al mismo tiempo, el VENDEDOR tiene PESO. La relación entre personalidad y especialidad es obvia, pero esto no significa necesariamente la relación entre TIENDA y PESO.


Hay que decir que los modelos de datos como la red semántica, a pesar de toda la riqueza de sus capacidades para modelar situaciones complejas, se caracterizan por su complejidad y cierta ineficiencia en términos conceptuales.

Echemos un vistazo más de cerca a los modelos de datos relacionales, jerárquicos y de red.

modelo relacional Los datos se caracterizan por los siguientes componentes:

– construcción de información: una relación con una estructura de dos niveles;

– operaciones válidas: proyección, selección, conexión y algunas otras;

– restricciones: dependencias funcionales entre atributos de la relación.

Cada clase de objetos R el mundo material está asociado con un cierto conjunto de atributos, por ejemplo A 1 , A 2 , ..., Un. Objeto de clase única R descrito por una cadena de valores ( un 1, un 2, ..., un), Dónde un yo– valor del atributo yo.

Línea ( un 1, un 2, ..., un) se llama tupla. Una clase de objeto completa tiene un conjunto correspondiente de tuplas llamado relación. Denotemos la relación que describe la clase de objetos. R, también a través de R.

Expresión R(un 1, un 2, ..., Un) se llama esquema de relación R.

Para cada componente de tupla, se debe especificar su relación con el atributo correspondiente. En el modelo de datos relacional, para asegurar esta conexión, el orden de los componentes de la tupla coincide con el orden de los atributos en el esquema de relación.

Cada relación refleja el estado de una clase de objetos en algún momento. En consecuencia, diferentes relaciones pueden corresponder al mismo esquema de relaciones en diferentes momentos del tiempo.

El conjunto de valores de relación se puede representar en forma de tabla en la que se observan las siguientes correspondencias:

– el nombre de la tabla y la lista de nombres de columnas corresponden al diagrama de relaciones;

– una fila de la tabla corresponde a una tupla de relación;

– todas las filas de la tabla (y por tanto todas las tuplas) son diferentes;

– el orden de las filas y columnas es arbitrario (en particular, el modelo de datos relacionales no requiere una clasificación especial de las filas).

La descripción de los procesos de procesamiento de relaciones se puede realizar de dos formas:

– indicar una lista de operaciones cuya ejecución conduce al resultado requerido (enfoque procedimental),

– una descripción de las propiedades que debe satisfacer la relación resultante (enfoque declarativo).

consideremos enfoque procesal. El conjunto de relaciones y operaciones sobre ellas forma el álgebra relacional. Normalmente, la lista de operaciones contiene proyección, selección, unión, intersección, resta y unión.

Una proyección es una operación que transfiere las columnas de la relación original especificada en la condición de operación a la relación resultante. La representación algebraica de la proyección tiene la forma

t = R[incógnita],

Dónde R– actitud inicial; t– relación resultante; incógnita– lista de atributos en la estructura de relación t(condición de proyección).

Considere la relación oh 1, que contiene información sobre las ventas de productos en 2010 (Tabla 1).

Tabla 1

Actitud T 1, que contiene información únicamente sobre la producción real de productos, se obtiene como resultado de realizar la proyección

T 1 = o 1[Tienda, Productos, Hecho]

y parece una mesa. 2.

Tabla 2

Las columnas se pueden especificar en cualquier orden:

t 1 = ACERCA DE 1 [Productos, Tienda, Hecho].

Una selección es una operación que transfiere a la relación resultante aquellas filas de la relación original que satisfacen la condición de selección. La condición de selección se prueba en cada fila de la relación individualmente y no puede abarcar información en varias filas. Hay dos tipos más simples de condiciones de muestreo:

1) Nombre del atributo 1<знак сравнения>Valor donde se permiten signos de comparación =, #, >, ≥,<, ≤. Например: Цена > 100.

Los nombres de los atributos deben estar contenidos en la estructura de la relación fuente. La notación algebraica para la muestra tiene la forma

t = R[pag],

Dónde R– actitud inicial; t– relación resultante; r– condición de muestreo.

Por ejemplo, obtenemos los valores. t 2 = ACERCA DE 1 [Producto = “P 1”] (Tabla 3).

Tabla 3

Las operaciones de unión, intersección y resta se realizan sobre dos relaciones originales con la misma estructura.

Denotemos las relaciones iniciales por R 1 y R 2 , la resultante – a través de t.

Asociación t = Ud.(R 1 , R 2) contiene filas presentes ya sea en relación R 1, o en R 2 .

Intersección t = I(R 1 , R 2) contiene las filas presentes en las relaciones R 1 y R 2 al mismo tiempo.

Sustracción t = METRO(R 1 , R 2) contiene esas líneas de R 1 que falta en R 2 .

Una operación de unión de relaciones se realiza en dos relaciones de origen y crea una relación resultante. Cada fila de la primera relación fuente se compara a su vez con todas las filas de la segunda relación, y si se cumple la condición de unión para este par de filas, entonces se concatenan y forman la siguiente fila en la relación resultante. La condición de conexión tiene la forma.

Nombre del atributo 1<знак сравнения>Nombre del atributo 2,

donde el Nombre del atributo 1 está en una relación de origen y el Nombre del atributo 2 está en otra. Usaremos la siguiente notación para la operación de unión:

t = R yo [ pag] R 2 ,

Dónde R 1 y R 2 – relaciones iniciales; t– relación resultante; r– condición de conexión.

Uno de los casos especiales más importantes de unión se denomina unión natural y tiene las siguientes características:

– el signo de comparación en la condición de conexión es “=";

– El nombre de atributo 1 y el nombre de atributo 2 deben coincidir, o mejor dicho, contener la intersección de las listas de atributos de las relaciones fuente;

– la lista de atributos de la relación resultante se forma como resultado de combinar las listas de atributos de las relaciones originales.

La designación de un compuesto natural no contiene una condición de conexión y tiene la forma t = R l* R 2 .

Enfoque declarativo El procesamiento de bases de datos relacionales se basa en la interpretación de los conceptos y métodos de la lógica matemática. En particular, el cálculo relacional se basa en el cálculo de predicados. Nombramos los conceptos de lógica matemática necesarios para el cálculo relacional.

1. Símbolos de variables y constantes. En el lenguaje constructivo del cálculo relacional, corresponden a los nombres de atributos y variables, así como a constantes.

2. Conectivos lógicos “y”, “o”, “no” y signos de comparación =, # (no iguales), >,<, ≥, ≤.

3. Términos, es decir, cualquier constante y variable, así como funciones cuyos argumentos sean términos.

4. Las fórmulas elementales son predicados cuyos argumentos son términos. Los predicados conectados por las operaciones "y", "o", "no" también son fórmulas elementales. Las fórmulas elementales son, por ejemplo, las expresiones Apellido = “Petrov” y Importe ≤ Total.

5. Fórmulas, es decir, el resultado de aplicar cuantificadores de generalidad o existencia a fórmulas elementales. La fórmula corresponde a una consulta a una base de datos relacional, expresada en términos de cálculo relacional.

La tarea principal del diseño de una base de datos EIS es determinar el número de relaciones (u otras unidades constituyentes de información) y su composición de atributos.

El problema de agrupar atributos en relaciones cuyo conjunto no está fijado de antemano permite muchas soluciones diferentes. Las opciones de agrupación racional deben tener en cuenta los siguientes requisitos:

– el conjunto de relaciones debería garantizar una redundancia mínima en la presentación de la información;

– el ajuste de las relaciones no debería dar lugar a ambigüedad o pérdida de información;

– la reestructuración del conjunto de relaciones al agregar nuevos atributos a la base de datos debe ser mínima.

Normalización representa uno de los métodos más estudiados para transformar relaciones, permitiendo mejorar las características de la base de datos de acuerdo con los criterios enumerados.

Existen muchas restricciones sobre los valores almacenados en una base de datos relacional. El cumplimiento de estas restricciones en aspectos específicos está asociado con la presencia de las llamadas formas normales. El proceso de convertir las relaciones de la base de datos a una u otra forma normal se llama normalización de relaciones. . Las formas normales están numeradas secuencialmente desde 1 en orden ascendente. Cuanto mayor sea el número de formulario normal, más restricciones se deben observar en los valores almacenados en el aspecto relevante.

Las restricciones típicas del modelo de datos relacionales son las dependencias funcionales y multivaluadas, así como sus generalizaciones. En principio, el conjunto de restricciones adicionales puede crecer y, por tanto, aumentará el número de formas normales. Las restricciones aplicadas tienen como objetivo reducir la información redundante en la base de datos relacional.

Una relación en primera forma normal (1NF) es una relación ordinaria con una estructura de dos niveles. Las siguientes formas normales (segunda y tercera) utilizan restricciones asociadas con el concepto de dependencia funcional. Las dependencias funcionales se definen para atributos que están en la misma relación que satisface 1NF.

El caso más simple de dependencia funcional involucra dos atributos. Acerca de R(A, B, ..., j) atributo A define funcionalmente un atributo EN, si en algún momento cada valor A EN(denotado AEN).

En otras palabras, EN funcionalmente depende de A (EN = F(A)). La primera designación resulta más conveniente cuando el número de dependencias funcionales crece y sus relaciones se vuelven difíciles de discernir; Se utilizará en el futuro. La ausencia de dependencia funcional se denota como AEN.

Para atributos A Y EN alguna relación, son posibles las siguientes situaciones:

– falta de dependencia funcional;

- disponibilidad AEN(o ENA), pero no ambas dependencias juntas;

– presencia de correspondencia uno a uno AEN.

El concepto de dependencia funcional se extiende a situaciones con tres o más atributos de la siguiente forma. Grupo de atributos ( A, EN, CON) define funcionalmente el atributo D acerca de t(A, B, do, D, ..., j), si cada combinación de valores<a, b, Con> coincide con un solo valor d (A- significado A; b- significado EN; Con- significado CON; d- significado D). La presencia de tal dependencia funcional se denotará por A, EN, COND.

La existencia de dependencias funcionales está asociada con los métodos de codificación de atributos utilizados. Por lo tanto, para muchas instituciones, se puede argumentar que cada departamento (como objeto del área temática) pertenece a una sola institución. Sin embargo, esto no es suficiente para demostrar la dependencia funcional Departamento → Institución. Si en cada institución los departamentos están numerados secuencialmente, comenzando con 1, entonces la relación funcional es incorrecta. Si el código de departamento, además del número, también contiene el código de institución (o se garantiza la unicidad de los códigos de alguna otra manera), entonces la relación funcional Departamento → Institución es válida.

Para un indicador con muchos atributos de atributo R = (R 1 , R 2 , ..., p norte) y el atributo base q la dependencia funcional es válida Rq, aunque no se puede decir que esta sea la única dependencia de los atributos especificados.

Pista probable una relación es un conjunto de atributos, cada combinación de valores ocurre solo en una fila de la relación, y ningún subconjunto de atributos tiene esta propiedad. Puede haber varias claves posibles en una relación. Su importancia en el procesamiento de datos está determinada por el hecho de que el muestreo por un valor conocido de una clave probable da como resultado una fila de relación o ninguna.

En la práctica, los atributos de la clave probable de una relación están asociados con las propiedades de aquellos objetos y eventos sobre los cuales se almacena información en la relación. Si, como resultado del ajuste de la relación, los nombres de los atributos que forman la clave han cambiado, entonces la información quedará seriamente distorsionada. Por tanto, comprobar sistemáticamente las propiedades de una clave probable permite controlar la fiabilidad de la información en una relación.

Cuando hay varias claves candidatas en una relación, observarlas simultáneamente es muy difícil. Es recomendable elegir uno de ellos como principal (primario). clave primaria Una relación se denomina clave probable, cuyos valores se utilizan para controlar la confiabilidad de la información en la relación.

En lo que respecta a la información económica, en la gran mayoría de los casos las relaciones obtenidas a partir de documentos económicos existentes contienen una única clave probable, que es también la clave primaria. Esto se debe a que todos los usuarios comprenden por igual el contenido de los documentos económicos. En lo que sigue tendremos en cuenta sólo esas relaciones. La presencia de dos o más pistas probables en una relación con información significativa puede explicarse por la presencia de varias formas posibles de interpretar los mismos datos. La clave principal a menudo se denomina simplemente clave.

En relaciones con una gran cantidad de filas, encontrar la clave principal aplicando directamente la definición es bastante difícil. Además, en la etapa de diseño de EIS, los valores de muchas relaciones simplemente se desconocen, por lo que prácticamente la clave primaria de una relación se calcula en función de las dependencias funcionales existentes.

Cada valor de clave principal aparece en una sola fila de la relación. El valor de cualquier atributo de esta línea también es único. si a través A denota los atributos de la clave primaria en la relación R(A, B, do, ..., j), entonces son válidas las siguientes dependencias funcionales: AA, AEN, ACON, ..., Aj. Un conjunto de atributos de clave principal define funcionalmente cualquier atributo de una relación. Lo contrario también es cierto: si se encuentra un grupo de atributos que define funcionalmente todos los atributos de una relación individualmente, y este grupo no se puede reducir, entonces se encuentra la clave primaria de la relación.

Para el conjunto inicial de dependencias funcionales, existen varios patrones, cuyo conocimiento permite obtener dependencias derivadas. Notemos algunos de ellos:

- Si A, ENA, entonces A, ENEN;

- AEN Y ACON entonces y sólo cuando ASol;

- Si AEN Y ENCON, Eso ACON;

- Si AEN, Eso C.A.EN (CON arbitrariamente);

- Si AEN, Eso C.A.Sol (CON arbitrariamente);

- Si AEN Y SolD, Eso C.A.D.

Si se sabe de antemano que sólo hay una clave probable en una relación, entonces se puede encontrar de forma sencilla. Una clave probable (si es única, es decir, coincide con la clave principal) es un conjunto de atributos que no ocurren en el lado derecho de todas las dependencias funcionales. En otras palabras, de la lista completa de atributos de relación, es necesario eliminar los atributos que se encuentran en el lado derecho de todas las dependencias funcionales. Los atributos restantes forman la clave principal.

Una relación está en segunda forma normal (2NF) si corresponde a 1NF y no contiene dependencias funcionales incompletas.

Una dependencia funcional incompleta consta de dos dependencias:

– una clave de relación probable define funcionalmente algún atributo que no es clave,

– parte de la clave probable define funcionalmente el mismo atributo no clave.

Una relación que no cumple con 2NF se caracteriza por la redundancia de datos almacenados. Una base de datos está en 2NF si todas sus relaciones están en 2NF.

Una relación corresponde a 3NF si corresponde a 2NF y no existen dependencias funcionales transitivas (FD) entre sus atributos.

La Ley Federal Transitiva incluye dos Leyes Federales:

– una clave de relación probable define funcionalmente un atributo que no es clave;

– Este atributo define funcionalmente otro atributo no clave.

Si A– la clave de la relación, A, EN– atributos no clave y AA, AEN Si las leyes federales son justas, entonces son transitivas. Un caso especial de ley federal transitiva es una ley federal incompleta, cuando A = CON, mi Y Ami, miA.

Una base de datos está en 3NF si todas sus relaciones están en 3NF.

Una base de datos relacional, que generalmente corresponde a la tercera forma normal, se caracteriza por una serie de propiedades cuyo conocimiento facilita y agiliza los procesos de procesamiento de datos. La implementación de consultas de bases de datos utilizando operadores de álgebra relacional se puede describir mediante las siguientes reglas.

1. En la formulación verbal de la solicitud, resaltar los nombres de los atributos que componen el shell, la entrada y salida de la solicitud, así como las condiciones de selección.

2. Arreglar muchos atributos del shell. Si todos los atributos necesarios están en una relación, las operaciones posteriores de selección y proyección se llevan a cabo solo con ella. Si los atributos requeridos se distribuyen en varias relaciones, entonces estas relaciones deben estar conectadas. Cada par de relaciones está conectado por la condición de igualdad de atributos con nombres coincidentes (o definidos en un dominio común). Después de cada conexión, utilizando la proyección, puede cortar atributos que no sean necesarios para operaciones posteriores.

4. Si una consulta se puede dividir en partes (subconsultas), entonces su implementación también se divide en partes, donde el resultado de cada subconsulta es una relación separada.

5. Esta secuencia de acciones es estándar, pero puede crear relaciones intermedias que sean demasiado grandes. Esta desventaja se puede compensar realizando algunas selecciones y proyecciones sobre las relaciones originales (antes de realizar la unión) y cambiando el orden relativo de las uniones requeridas.

Base de datos de red Se representa como un conjunto de relaciones y relaciones entre fans. Las relaciones se dividen en primarias y dependientes.

Relación de fans W(R, S) es un par de relaciones que consta de una principal ( R), una relación de dependencia ( S) y las conexiones entre ellos, siempre que cada valor de la relación dependiente esté asociado a un único valor de la relación principal. Esta condición es una característica limitante del modelo de datos de red en su conjunto. La forma de implementar esta limitación en la memoria de la computadora es diferente para diferentes DBMS de red.

Las operaciones permitidas en el modelo de datos de red representan diferentes opciones de muestreo.

Las bases de datos de la red, según las restricciones a la entrada de personas en las relaciones con los fanáticos, se dividen en redes de dos niveles y de varios niveles.

Una limitación de las redes de dos niveles es que cada relación puede existir en uno de los siguientes roles:

– fuera de cualquier relación con los fans;

– como la relación principal en cualquier número de relaciones con los fans;

– como una relación de dependencia en cualquier número de relaciones con los fans.

Está prohibido que una relación exista como principal en un contexto y al mismo tiempo como dependiente en otro.

Las redes multinivel no prevén restricciones en la interconexión de relaciones de ventilador; en algunos DBMS de red se permiten incluso estructuras de red cíclicas.

Para los DBMS de red de dos niveles, se introducen dos restricciones más (desde un punto de vista teórico, opcional):

– la clave primaria de la relación principal sólo puede tener un atributo;

– existe una relación de abanico si la clave primaria de la relación principal es parte de la clave primaria de la relación dependiente.

Para organizar una relación en forma de abanico en la memoria de la computadora, se introduce un atributo adicional llamado dirección de comunicación en la estructura de las relaciones principal y dependiente. Los valores de la dirección de comunicación trabajan juntos para garantizar que cada valor de relación dependiente corresponda en una relación de fans. S a un solo valor de la relación principal R.

El valor de una proporción cuando se almacena en la memoria de una computadora a menudo se denomina registro. La dirección de comunicación es un atributo dentro de un registro que almacena la dirección inicial o el número del siguiente registro a procesar.

La conexión entre los valores de la relación dependiente y el valor único de la relación principal en el caso más simple se garantiza de la siguiente manera. La dirección de enlace de un determinado registro de relación principal apunta a uno de los registros de relación dependiente (el valor de la dirección de enlace de relación principal es la dirección inicial de ese registro de relación dependiente), la dirección de enlace del registro de relación dependiente especificado apunta al siguiente registro de relación dependiente asociado con el mismo registro de relación principal, etc. El último registro de relación dependiente en esta cadena aborda el registro de relación principal mencionado anteriormente. Esto da como resultado una estructura en anillo de direcciones de comunicación llamada como un fan, donde el papel de “mango” del aficionado lo desempeña la grabación de la relación principal. En ilustraciones gráficas, la dirección de comunicación se representa mediante una flecha dirigida desde la dirección de comunicación de un registro determinado al registro cuya dirección inicial (número) sirve como valor de esta dirección de comunicación.

Existen convenciones estándar sobre cómo incluir y excluir datos en una relación de fans. El método de activación se puede caracterizar como automático o no automático.

El método automático indica que cuando aparece un nuevo valor de la relación principal, inmediatamente se pone en correspondencia con algún valor de la relación dependiente y forma un nuevo elemento de la relación de abanico. El incumplimiento de esta regla es típico del método no automático.

Los métodos de exclusión pueden ser obligatorios u opcionales. En el método obligatorio, una vez que un valor se incluye en la relación principal, se convierte en miembro permanente de la relación principal. Se puede actualizar, pero no se puede eliminar de la relación. El método opcional le permite eliminar cualquier valor de la relación subyacente.

De la analogía de las definiciones de relación fan y dependencia funcional, se desprende la afirmación: si existe una relación fan, entonces la clave de la relación dependiente determina funcionalmente la clave de la relación principal, y viceversa, si la clave de una La relación determina funcionalmente la clave de la segunda relación, entonces la primera relación puede ser dependiente y la segunda, principal, en forma de abanico.

En un diagrama de base de datos de red, las relaciones y las relaciones de fans a menudo se tratan como archivos y conexiones, lo que permite ver la estructura de la red como un conjunto de archivos.

F = {F yo ( incógnita 1), F 2 (incógnita 2), ..., F yo(X yo), ..., fn(xn)},

Dónde X yo– atributos clave en el archivo F yo.

Además, se introduce un gráfico de estructura de red. EN con vértices ( incógnita yo, incógnita 2 , ..., X yo, ..., xn). Arco<X yo, Xj> en la columna EN existe si X yo es parte Xj Y fj[X yo] es un subconjunto F yo. La última condición tiene el mismo significado que la inclusión sintáctica de relaciones en el modelo de datos relacionales. Esto supone que la clave del archivo principal está contenida en el archivo dependiente. Gráfico EN similar al gráfico de conexión para una base de datos relacional.

Base de datos administrador de bases de datos llamado acíclico, si entre dos vértices cualesquiera del gráfico EN hay como máximo un camino. Las redes de dos capas son siempre acíclicas. .

Para muchos archivos F base de datos acíclica administrador de bases de datos La operación es bastante aplicable.

metro(administrador de bases de datos) = F 1 & F 2 & ... & F yo & ...& fn,

llamado intersección máxima. Su análogo puede ser una secuencia de conexiones en una base de datos relacional.

En los DBMS de red, el número de operaciones de muestreo es bastante grande. Las funciones de operación de proyección para un DBMS de red realizan la descripción de un subesquema de base de datos de red. Un esquema de base de datos de red es una descripción de todas las relaciones que indica la composición de atributos y las claves de cada relación, así como las relaciones entre fans. En el programa de aplicación, es posible declarar parte de las relaciones de una base de datos de red, en cada relación, un cierto subconjunto de atributos (con la retención obligatoria de atributos clave) y solo algunas relaciones de fans. La descripción de datos correspondiente se denomina subesquema. Las relaciones, relaciones de fans y atributos no especificados en el subesquema se vuelven inaccesibles para el programa de aplicación. A diferencia de la operación de proyección, la base de datos correspondiente al subesquema no se crea físicamente, sino restringiendo el acceso a la base de datos de origen, que está definida en el esquema.

Los resultados de las conexiones válidas se registran en el DBMS de la red mediante cadenas de direcciones de comunicación. El acceso a los resultados de una posible unión comienza desde alguna relación principal a un abanico de valores en la relación dependiente correspondiente, los valores clave alcanzados en la relación dependiente se recuerdan y se utilizan para buscar en alguna otra relación principal; de esta relación principal es posible una transición a una nueva dependiente, etc.

Modelo jerárquico Los datos tienen muchas similitudes con el modelo de datos de red; cronológicamente apareció incluso antes. Las estructuras de información válidas en el modelo de datos jerárquico son relación, relación de abanico y base de datos jerárquica. A diferencia de los modelos de datos discutidos anteriormente, en los que se suponía que el mapeo de información de un área temática es una base de datos, el modelo jerárquico permite el mapeo de un área temática en varias bases de datos jerárquicas.

Los conceptos de relación y relación de fans en el modelo de datos jerárquico no cambian.

Una base de datos jerárquica es un conjunto de relaciones y relaciones de fans para las cuales se cumplen dos restricciones:

1) existe una relación única, llamada raíz, que no depende de ninguna relación de abanico;

2) todas las demás relaciones (excepto la raíz) son relaciones dependientes en una sola relación de abanico.

El esquema de base de datos jerárquico es idéntico en composición a la base de datos de red. Las restricciones anteriores son compatibles con los DBMS jerárquicos.

La restricción que se mantiene en el modelo de datos jerárquico es que es imposible violar los requisitos que aparecen en la definición de la base de datos jerárquica. Esta limitación está garantizada por una disposición especial de los valores de relación en la memoria de la computadora. A continuación veremos una de las implementaciones más simples para diseñar una base de datos jerárquica.

Cabe señalar que existen varias posibilidades para pasar por valores organizados jerárquicamente en una secuencia lineal. El principio utilizado para las bases de datos jerárquicas se llama final del pasaje. Enumeremos sus reglas.

1. A partir del primer valor de la relación raíz, se enumeran los primeros valores de las relaciones correspondientes en cada nivel, hasta el último.

2. Se enumeran todos los valores en la relación del ventilador donde se detuvo el paso 1.

3. Se enumeran los valores de todos los fans de esta relación de fans.

4. A partir del nivel alcanzado se produce el ascenso al nivel anterior, y si es posible aplicar el paso 1, entonces se repite el proceso.

Un registro de base de datos jerárquica es un conjunto de valores que contienen un valor de la relación raíz y todos los ventiladores que se extienden a partir de él de acuerdo con la estructura de la base de datos jerárquica. En nuestro ejemplo, un registro consta de datos relacionados con una facultad (ver Fig. 11).

Para las relaciones de fans dentro de una base de datos jerárquica, el patrón ya conocido es válido: si hay una relación de fans, entonces la clave de la relación dependiente determina funcionalmente la clave de la relación principal. Y viceversa: si la clave de una relación determina funcionalmente la clave de la segunda relación, entonces la primera relación puede ser dependiente y la segunda, la principal, en alguna relación fan.

Además, la restricción de que exista una única relación raíz en una base de datos jerárquica se traduce en el requisito de que la clave primaria de cada relación no raíz debe definir funcionalmente la clave primaria de la relación raíz.

El algoritmo para obtener la estructura de una base de datos jerárquica fue compilado por A.I. Mishenin.

Al comparar modelos de datos, es muy difícil separar los factores que caracterizan las características fundamentales del modelo de los factores asociados con la implementación de estos modelos de datos utilizando DBMS específicos.

Teniendo en cuenta las ventajas y desventajas de los modelos de datos más famosos, vale la pena señalar una serie de ventajas indudables del enfoque relacional:

– simplicidad: en el modelo relacional sólo hay una estructura de información, que formaliza la presentación tabular de los datos, familiar para los usuarios economistas;

– justificación teórica: la presencia de métodos teóricamente fundamentados para normalizar las relaciones y comprobar la aciclicidad de la estructura permite obtener bases de datos con las características requeridas;

– independencia de los datos: cambiar la estructura de una base de datos relacional, por regla general, conduce a cambios mínimos en los programas de aplicación.

Entre las desventajas del modelo de datos relacionales se encuentran las siguientes:

– baja velocidad al realizar una operación de conexión;

– alto consumo de memoria para representar una base de datos relacional. Aunque el diseño en 3NF está diseñado para una redundancia mínima (cada hecho se representa en la base de datos una vez), otros modelos de datos en las mismas condiciones proporcionan menos consumo de memoria. Por ejemplo, la longitud de una dirección de comunicación suele ser mucho más corta que la longitud de un valor de atributo.

Las ventajas de un modelo de datos jerárquico son:

– simplicidad: aunque el modelo utiliza tres estructuras de información, el principio jerárquico de subordinación de conceptos es natural para muchas tareas económicas (por ejemplo, para organizar informes estadísticos);

– consumo mínimo de memoria: para tareas que se pueden implementar utilizando cualquiera de los tres modelos de datos, el modelo jerárquico permite obtener una representación con la memoria mínima requerida.

Desventajas del modelo jerárquico:

– no universalidad: muchas opciones importantes para la interconexión de datos no pueden implementarse utilizando un modelo jerárquico sin aumentar la redundancia en la base de datos;

– admisibilidad únicamente del principio de navegación de acceso a los datos;

– se accede a los datos sólo a través de la relación raíz.

Cabe señalar las siguientes ventajas del modelo de datos de red:

– universalidad: las capacidades expresivas del modelo de datos de red son las más amplias en comparación con otros modelos;

– la capacidad de acceder a datos a través de los valores de varias relaciones (por ejemplo, a través de cualquier relación principal).

Las desventajas del modelo de datos de red incluyen:

– complejidad, es decir, la abundancia de conceptos, variantes de sus relaciones y características de implementación;

– admisibilidad únicamente del principio de navegación de acceso a los datos.

Los resultados obtenidos para bases de datos acíclicas sugieren que las bases de datos relacionales acíclicas, las bases de datos de red de dos niveles y una base de datos jerárquica sin conexiones lógicas tienen capacidades de presentación de información equivalentes.

El análisis de modelos de datos no abordó el problema de ordenar valores en las relaciones de bases de datos. Para el modelo relacional, este orden es opcional desde un punto de vista teórico, pero en los otros dos modelos se usa ampliamente para mejorar la eficiencia de la implementación de consultas.

La elección final de un modelo de datos está influenciada por muchos factores adicionales, por ejemplo, la disponibilidad de DBMS probados, las calificaciones de los programadores de aplicaciones, el tamaño de la base de datos, etc.

Recientemente, los DBMS relacionales han tomado una posición predominante como medio para desarrollar sistemas de información electrónicos. Las desventajas del modelo relacional se compensan con el aumento de la velocidad y los recursos de memoria de las computadoras modernas. Debido a los procesos de descentralización de la gestión en la economía, muchas bases de datos EIS tienen una estructura simple que se transforma fácilmente en sistemas comprensibles de tablas (relaciones).

Preguntas y tareas de prueba

1. Enumere los tipos de modelos de datos más famosos.

2. Explicar los modelos de datos jerárquicos y de red. ¿Cuáles son sus similitudes y diferencias?

3. Describe el modelo relacional.

4. Describir el modelo binario y su alcance.

5. ¿Cuáles son las características específicas de las redes semánticas y su propósito?

6. Enumere construcciones de información para diversas tecnologías.

7. Nombra los componentes del modelo de datos relacionales.

8. Defina tupla y relación.

9. ¿De qué maneras se puede describir el procesamiento relacional?

10. Revelar la esencia de la descripción procesal de los procesos de tratamiento de datos.

11. Explique el enfoque declarativo para procesar bases de datos relacionales.

12. ¿Qué es la normalización de relaciones?

13. ¿Cuántos atributos hay en la dependencia funcional más simple?

14. Definir la dependencia funcional de los atributos en términos del enfoque relacional.

15. ¿Qué es una clave de relación probable?

16. ¿Qué es una clave primaria? ¿Cuál es otro nombre para ello?

17. Explique los patrones de muchas dependencias funcionales.

18. Describe la segunda y tercera formas normales de relación.

19. Explique el acceso a una base de datos relacional.

20. Nombra las estructuras de información en el modelo de red.

21. ¿Qué es una “actitud de fan”?

22. Dé una definición de redes de dos niveles.

23. Definir redes multinivel.

24. ¿Qué es una “dirección de comunicación”?

25. ¿Qué se llama “fanático”?

26. ¿Qué componentes contiene un esquema de base de datos de red?

27. ¿Qué convenciones estándar conoces sobre cómo incluir y excluir datos en una relación con un fan?

28. ¿Qué son archivos y conexiones?

29. ¿Qué es la “intersección máxima”?

30. Nombra las estructuras de información en el modelo jerárquico.

31. Definir una base de datos jerárquica.

32. Cuéntanos sobre las reglas del paso final.

33. Defina un registro base jerárquico.

34. Nombra las ventajas y desventajas del enfoque relacional.

35. Enumere las ventajas y desventajas del modelo jerárquico.

36. Describa las fortalezas y debilidades del modelo de datos de red.

38. Complete las tareas 2.1 a 2.20 sobre operaciones en las relaciones del taller.

39. Complete las tareas 2.21–2.32 sobre el tema “Dependencias y claves funcionales” del taller.

40. Complete las tareas 2.33–2.60 sobre el tema “Formas normales de relaciones” del taller.

41. Complete las tareas 2.61–2.71 sobre el tema “Bases de datos acíclicas” del taller.

42. Complete las tareas 2.72–2.93 sobre el tema “Redes y modelos de datos jerárquicos” del taller.

El núcleo de cualquier base de datos es el modelo de datos. modelo de datos representa una gran variedad de estructuras de datos, restricciones de integridad y operaciones de manipulación de datos. Mediante un modelo de datos se pueden representar los objetos del área temática y las relaciones entre ellos. modelo de datos Es un conjunto de estructuras de datos y sus operaciones de procesamiento. El DBMS moderno se basa en el uso jerárquico, de red, relacional y orientado a objetos modelos de datos, combinaciones de estos modelos o algún subconjunto de ellos.

Veamos tres tipos principales de modelos de datos. : jerárquico, de red, relacional Y orientado a objetos.

Modelo de datos jerárquico. Una estructura jerárquica representa un conjunto de elementos conectados entre sí según ciertas reglas. Los objetos conectados por relaciones jerárquicas forman un gráfico dirigido (árbol invertido). Los conceptos básicos de una estructura jerárquica incluyen: nivel, elemento (nodo), conexión. El modelo jerárquico organiza los datos en una estructura de árbol. Nudo es una colección de atributos de datos que describen un objeto. En un diagrama de árbol jerárquico, los nodos parecen vértices de un gráfico. Cada nodo de un nivel inferior está conectado a un solo nodo, que está en un nivel superior. Un árbol jerárquico tiene un solo vértice (la raíz del árbol), que no está subordinado a ningún otro vértice. Los nodos dependientes (subordinados) se encuentran en el segundo, tercer y otros niveles. La cantidad de árboles en la base de datos está determinada por la cantidad de registros raíz.

Modelo de datos de red.

Red modelo significa representar datos en forma de un gráfico arbitrario. La ventaja de los modelos de red y de datos jerárquicos es la posibilidad de su implementación eficiente en términos de costos de memoria y eficiencia. La desventaja del modelo de datos de red es la alta complejidad y rigidez del esquema de base de datos construido sobre su base.

Relacional modelo de datos. El concepto de relacional está asociado con los desarrollos del famoso especialista estadounidense en el campo de los sistemas de bases de datos E.F. Codda. Estos modelos se caracterizan por una estructura de datos simple, una forma de presentación fácil de usar en forma de tablas y la capacidad de utilizar aparatos de álgebra relacional y computación relacional para el procesamiento de datos.

En el lenguaje de las matemáticas, una relación se define de esta manera. que se dé norte establece D1,D2, ...,Dn. Entonces R es una relación entre estos conjuntos si R es un conjunto de conjuntos ordenados de la forma , donde d1 es un elemento con D1, d2 es un elemento con D2, ..., dn es un elemento con Dn. En este caso, conjuntos de la forma se llaman tuplas y los conjuntos D1,D2, ...Dn se llaman dominios. Cada tupla consta de elementos que se seleccionan de sus dominios. Estos elementos se denominan atributos y sus valores se denominan valores de atributo.

Entonces, el modelo relacional se centra en organizar datos en forma de tablas bidimensionales, cualquiera de las cuales tiene las siguientes propiedades:

Cada elemento de la tabla es un elemento de datos;

Todas las columnas de las tablas son homogéneas, es decir, todos los elementos de la columna son del mismo tipo (carácter, numérico, etc.);

Cada columna tiene un nombre único;

No hay filas idénticas en las tablas.

Las tablas tienen filas que corresponden a registros (o tuplas) y columnas que corresponden a atributos de relaciones (dominios, campos).

Los siguientes términos son equivalentes:

actitud, tabla, archivo (para localDB);

desfile de automóviles,línea, registro;

atributo, columna, campo.

Bases de datos orientadas a objetos combinan dos modelos de datos, relacional y de red, y se utilizan para crear grandes bases de datos con estructuras de datos complejas.

Una base de datos relacional es un conjunto de relaciones que contienen toda la información necesaria y están unidas por varias conexiones.

Se considera DB normalizado , si se cumplen las siguientes condiciones:

Cada mesa tiene una llave maestra;

Todos los campos de cada tabla dependen únicamente de la clave maestra;

No hay grupos de valores duplicados en las tablas.

Para trabajar con éxito con bases de datos de varias tablas, por regla general, es necesario establecer conexiones entre ellas. En este caso se utilizan los términos “tabla base” (principal) y “tabla subordinada”. La relación entre tablas se obtiene a través de dos campos, uno de los cuales está en la tabla base y el segundo en la tabla subordinada. Estos campos pueden tener un valor que se repite. Si el valor en el campo relacionado de un registro de la tabla base y en el campo de la tabla subordinada es el mismo, entonces estos registros se denominan relacionados.

Hay cuatro tipos de relaciones entre tablas. : cara a cara , uno a muchos, muchos a uno, muchos a muchos .

Actitud cara a cara significa que cada entrada en uno corresponde a la tabla sólo uno registros en otra tabla.

Relación uno a muchos significa que uno se puede vincular un registro de la primera tabla con más de uno un registro de otra tabla.

mesa principal es una tabla que contiene clave primaria y forma parte uno acerca de uno a muchos.

clave externa es un campo que contiene el mismo tipo de información en la tabla del lado muchos.

Trabajo practico




Arriba