logo

Abstracción de datos e independencia de datos

Los sistemas de bases de datos comprenden estructuras de datos complejas. Para hacer que el sistema sea eficiente en términos de recuperación de datos y reducir la complejidad en términos de usabilidad de los usuarios, los desarrolladores utilizan la abstracción, es decir, ocultan detalles irrelevantes a los usuarios. Este enfoque simplifica el diseño de la base de datos. 

Nivel de abstracción en un DBMS

Existen principalmente 3 niveles de abstracción de datos: 



  • Nivel Físico o Interno
  • Nivel lógico o conceptual
  • Vista o Nivel Externo

Nivel Físico o Interno

Este es el nivel más bajo de abstracción de datos. Nos dice cómo se almacenan realmente los datos en la memoria. Para lo mismo se utilizan métodos de acceso como acceso secuencial o aleatorio y métodos de organización de archivos como árboles B+ y hash. La usabilidad del tamaño de la memoria y la cantidad de veces que se almacenan los registros son factores que debemos conocer al diseñar la base de datos. 
Supongamos que necesitamos almacenar los datos de un empleado. Los bloques de almacenamiento y la cantidad de memoria utilizada para estos fines se mantienen ocultos para el usuario. 

Nivel lógico o conceptual

Este nivel comprende la información que realmente está almacenada en la base de datos en forma de tablas. También almacena la relación entre las entidades de datos en estructuras relativamente simples. En este nivel se desconoce la información disponible para el usuario a nivel de vista. 
Podemos almacenar los diversos atributos de un empleado y sus relaciones, p. con el administrador también se pueden almacenar. 

Por tanto, el nivel lógico describe toda la base de datos en términos de un pequeño número de estructuras relativamente simples. Aunque la implementación de estructuras simples en el nivel lógico puede implicar estructuras complejas en el nivel físico, el usuario del nivel lógico no necesita ser consciente de esta complejidad. Esto se conoce como independencia física de los datos. Los administradores de bases de datos que deben decidir qué información conservar en la base de datos utilizan el nivel lógico de abstracción.



Vista o Nivel Externo

Este es el nivel más alto de abstracción. Los usuarios sólo ven una parte de la base de datos real. Este nivel existe para facilitar el acceso de la base de datos por parte de un usuario individual. Los usuarios ven los datos en forma de filas y columnas. Las tablas y relaciones se utilizan para almacenar datos. Pueden existir varias vistas de la misma base de datos. Los usuarios pueden simplemente ver los datos e interactuar con el almacenamiento de la base de datos y los detalles de implementación están ocultos para ellos. Aunque el nivel lógico utiliza estructuras más simples, la complejidad persiste debido a la variedad de información almacenada en una gran base de datos. Muchos usuarios del sistema de base de datos no necesitan toda esta información; en lugar de eso, necesitan acceder sólo a una parte de la base de datos. El nivel de abstracción de vista existe para simplificar su interacción con el sistema.

Ejemplo: En caso de almacenar datos de clientes

tcp vs udp
  • Nivel fisico - contendrá un bloque de almacenamiento (bytesGBTBetc)
  • Nivel lógico -  contendrá los campos y los atributos de los datos.
  • Ver nivel - funciona con CLI o GUI acceso a la base de datos




Abstracción de datos' src='//techcodeview.com/img/dbms/89/data-abstraction-and-data-independence.webp' title=Abstracción de datos

El objetivo principal de la abstracción de datos es lograr la independencia de los datos para ahorrar el tiempo y el costo necesarios cuando se modifica o altera la base de datos. 

Independencia de datos

Independencia de datos se define principalmente como una propiedad de DBMS que le ayuda a cambiar el esquema de la base de datos en un nivel de un sistema sin necesidad de cambiar el esquema en el siguiente nivel. Ayuda a mantener los datos separados de todos los programas que los utilizan.
Tenemos concretamente dos niveles de independencia de datos que surgen de estos niveles de abstracción: 

  • fisico i independencia de datos a nivel de calibración
  • Independencia de datos a nivel lógico
Abstracción-de-datos-e-independencia-de-datos' src='//techcodeview.com/img/dbms/89/data-abstraction-and-data-independence-1.webp' title=Independencia de datos

Independencia de datos a nivel físico

Se refiere a la característica de poder modificar el esquema físico sin ninguna alteración del esquema conceptual o lógico realizado con fines de optimización, p. la estructura conceptual de la base de datos no se vería afectado por ningún cambio en el tamaño de almacenamiento del servidor del sistema de base de datos. Un ejemplo de ello es cambiar de archivos de acceso secuencial a archivos de acceso aleatorio. Estas alteraciones o modificaciones a la estructura física pueden incluir: 

  • Utilizar nuevos dispositivos de almacenamiento.
  • Modificar las estructuras de datos utilizadas para el almacenamiento.
  • Alterar índices o utilizar técnicas alternativas de organización de archivos, etc.

Independencia de datos de nivel lógico

Se refiere a la característica de poder modificar el esquema lógico sin afectar el esquema externo o programa de aplicación. La vista del usuario de los datos no se vería afectada por ningún cambio en la vista conceptual de los datos. Estos cambios pueden incluir la inserción o eliminación de atributos que alteren las estructuras de las tablas, entidades o relaciones con el esquema lógico, etc.