stringtranslate.com

Esquema de base de datos

Esquema de base de datos de MediaWiki 1.28.0. Muchas herramientas de software FOSS permiten modelar esquemas y diseños de bases de datos como este. La representación visual también se puede exportar como código fuente listo para producción creado en lenguajes compatibles con bases de datos como SQL .

El esquema de base de datos es la estructura de una base de datos descrita en un lenguaje formal soportado típicamente por un sistema de gestión de bases de datos relacionales (RDBMS). El término "esquema" se refiere a la organización de datos como un plano de cómo se construye la base de datos (dividida en tablas de base de datos en el caso de bases de datos relacionales ). La definición formal de un esquema de base de datos es un conjunto de fórmulas (oraciones) llamadas restricciones de integridad impuestas a una base de datos. [ cita requerida ] Estas restricciones de integridad aseguran la compatibilidad entre partes del esquema. Todas las restricciones se pueden expresar en el mismo lenguaje. Una base de datos puede considerarse una estructura en la realización del lenguaje de base de datos . [1] Los estados de un esquema conceptual creado se transforman en un mapeo explícito, el esquema de base de datos. Esto describe cómo se modelan las entidades del mundo real en la base de datos.

"Un esquema de base de datos especifica, basándose en el conocimiento del administrador de la base de datos de las posibles aplicaciones, los hechos que pueden entrar en la base de datos, o aquellos de interés para los posibles usuarios finales ". [2] La noción de un esquema de base de datos juega el mismo papel que la noción de teoría en el cálculo de predicados . Un modelo de esta "teoría" corresponde estrechamente a una base de datos, que puede verse en cualquier instante del tiempo como un objeto matemático . Por lo tanto, un esquema puede contener fórmulas que representan restricciones de integridad específicamente para una aplicación y las restricciones específicamente para un tipo de base de datos, todas expresadas en el mismo lenguaje de base de datos. [1] En una base de datos relacional , el esquema define las tablas , campos , relaciones , vistas , índices , paquetes , procedimientos , funciones , colas , disparadores , tipos , secuencias , vistas materializadas , sinónimos , enlaces de base de datos, directorios , esquemas XML y otros elementos.

Una base de datos generalmente almacena su esquema en un diccionario de datos . Aunque un esquema se define en el lenguaje de bases de datos de texto, el término se utiliza a menudo para referirse a una representación gráfica de la estructura de la base de datos. En otras palabras, el esquema es la estructura de la base de datos que define los objetos de la misma.

En un sistema de base de datos Oracle , el término "esquema" tiene una connotación ligeramente diferente.

Requisitos ideales para la integración de esquemas

Los requisitos que se enumeran a continuación influyen en la estructura detallada de los esquemas que se generan. Algunas aplicaciones no requerirán que se cumplan todas estas condiciones, pero estos cuatro requisitos son los más ideales.

Preservación de superposición
Cada uno de los elementos superpuestos especificados en la asignación de entrada también está en una relación de esquema de base de datos. [3]
Preservación de superposición extendida
Los elementos específicos de la fuente que están asociados con los elementos superpuestos de una fuente se pasan al esquema de la base de datos. [3]
Normalización
Las entidades y relaciones independientes en los datos de origen no deben agruparse en la misma relación en el esquema de la base de datos. En particular, los elementos de esquema específicos de la fuente no deben agruparse con elementos de esquema superpuestos, si la agrupación ubica en el mismo lugar entidades o relaciones independientes. [3]
Minimalismo
Si se omiten algunos elementos del esquema de la base de datos, entonces el esquema de la base de datos no es ideal. [3]

Ejemplo de dos integraciones de esquemas

Supongamos que queremos un esquema mediado para integrar dos bases de datos de viajes, Go-travel y Ok-flight.

Go-traveltiene dos relaciones:

Go-flight(número de vuelo, hora, comida(si/no))Go-price(número de vuelo, fecha, precio)

Ok-flighttiene sólo una relación:

Ok-vuelo(número de vuelo, fecha, hora, precio, sin escalas(sí/no))

La información superpuesta en los esquemas de Go-travel y Ok-flight podría representarse en un esquema mediado: [3]

Vuelo(número de vuelo, fecha, hora, precio)

Especificidad de la base de datos Oracle

En el contexto de las bases de datos Oracle , un objeto de esquema es una estructura lógica de almacenamiento de datos . [4]

Una base de datos Oracle asocia un esquema independiente con cada usuario de la base de datos . [5] Un esquema comprende una colección de objetos de esquema. Algunos ejemplos de objetos de esquema incluyen:

Por otra parte, los objetos no esquemáticos pueden incluir: [6]

Los objetos de esquema no tienen una correspondencia uno a uno con los archivos físicos en el disco que almacenan su información. Sin embargo, las bases de datos Oracle almacenan objetos de esquema de forma lógica dentro de un espacio de tabla de la base de datos. Los datos de cada objeto están contenidos físicamente en uno o más archivos de datos del espacio de tabla . Para algunos objetos (como tablas, índices y clústeres), un administrador de base de datos puede especificar cuánto espacio en disco asigna Oracle RDBMS para el objeto dentro de los archivos de datos del espacio de tabla.

No existe una relación necesaria entre los esquemas y los espacios de tablas: un espacio de tablas puede contener objetos de diferentes esquemas y los objetos de un único esquema pueden residir en diferentes espacios de tablas. Sin embargo, la especificidad de la base de datos Oracle exige el reconocimiento de la plataforma de los diferenciales de secuencia no homogeneizados, lo que se considera un factor limitante crucial en las aplicaciones virtualizadas. [7]

Véase también

Referencias

  1. ^ ab Rybinski, H. (1987). "Sobre bases de datos de lógica de primer orden". ACM Transactions on Database Systems . 12 (3): 325–349. doi : 10.1145/27629.27630 . S2CID  2439329.
  2. ^ Imielinski, T. ; Lipski, W. (1982). "Un enfoque sistemático a la teoría de bases de datos relacionales". Actas de la conferencia internacional ACM SIGMOD de 1982 sobre gestión de datos - SIGMOD '82 . Nueva York, NY: ACM. págs. 8–14. doi :10.1145/582353.582356. ISBN 978-0897910736.S2CID2034345  .​
  3. ^ abcde Pottinger, P.; Berstein, P. (2008). "Fusión de esquemas y creación de mapas para fuentes relacionales". Actas de la 11.ª conferencia internacional sobre la extensión de la tecnología de bases de datos: avances en la tecnología de bases de datos . Nueva York, NY: ACM. págs. 73–84. CiteSeerX 10.1.1.405.2990 . doi :10.1145/1353343.1353357. ISBN.  9781595939265.S2CID15742995  .​
  4. ^ Ashdown, Lance; Kyte, Tom (febrero de 2010). Oracle Database Concepts 11g Release 2 (11.2). et al . Oracle Corporation. Archivado desde el original el 29 de enero de 2010. Consultado el 14 de abril de 2010. Un esquema de base de datos es un contenedor lógico para estructuras de datos, denominadas objetos de esquema . Ejemplos de objetos de esquema son las tablas y los índices.
  5. ^ Oracle Database Concepts 10g Release 2 (10.2) Número de pieza B14220-02 . Consultado el 26 de noviembre de 2012 . Un esquema es una colección de estructuras lógicas de datos u objetos de esquema. Un esquema es propiedad de un usuario de base de datos y tiene el mismo nombre que ese usuario. Cada usuario posee un único esquema. Los objetos de esquema se pueden crear y manipular con SQL.
  6. ^ Ashdown, Lance; Kyte, Tom (febrero de 2010). Oracle Database Concepts 11g Release 2 (11.2). et al. Oracle Corporation. Archivado desde el original el 29 de enero de 2010. Consultado el 14 de abril de 2010. Otros tipos de objetos también se almacenan en la base de datos y se pueden crear y manipular con sentencias SQL, pero no están contenidos en un esquema. Estos objetos incluyen usuarios de base de datos, roles, contextos y objetos de directorio.
  7. ^ McDougall, R (2010). "Rendimiento de la virtualización: perspectivas y desafíos futuros". ACM SIGOPS Operating Systems Review . 44 (4). doi :10.1145/1899928.1899933. S2CID  16112550.

Enlaces externos