saltar al contenido

Modelo de base de datos de red vs. Modelo relacional

Analizamos los pros y contras del modelo de base de datos relacional y en red. Cómo funciona cada modelo y destaca las fortalezas, debilidades y capacidades dentro de cada modelo. Las diferencias entre estos dos modelos pueden llevar al éxito o al fracaso en el desarrollo de una aplicación.

A continuación, se analiza cómo funciona cada modelo y se destacan las fortalezas, debilidades y capacidades dentro de cada modelo. Las diferencias entre estos dos modelos pueden llevar al éxito o al fracaso en el desarrollo de una aplicación.

 

 

Modelo de base de datos relacional

Estás sentado en el autobús, camino a casa. Un poco cansado pero no tan somnoliento, decides escuchar un poco de Bon Jovi. Pensándolo bien, quieres ver una de sus películas (me viene a la mente Cry Wolf). La búsqueda de reflectores del iPhone es agradable. Escriba "Bon Jovi" como palabra clave y el reproductor multimedia encontrará sin problemas tanto su música como sus películas (dos categorías diferentes) almacenadas en el dispositivo.

Las operaciones comunes como las anteriores generalmente utilizan un sistema de administración de bases de datos relacionales (RDBMS). La base de datos, llamémosla Media Collection, define tres tablas ARTISTA, ÁLBUM y PELÍCULA donde se almacenan los nombres de los artistas, álbumes y títulos de películas respectivamente. Cuando se selecciona un artista en particular, como Bon Jovi en nuestro ejemplo, se emite una consulta SQL para recuperar todos los álbumes y títulos de películas que pertenecen al artista seleccionado. Los datos devueltos se muestran en la pantalla del iPhone, generalmente en orden alfabético.

 

Debilidades del modelo de datos relacionales

Estos pasos aparentemente simples revelan dos debilidades fundamentales inherentes al modelo de datos relacionales. La primera debilidad es el hecho de que cada relación requiere columnas duplicadas en ambas tablas asociadas. Por ejemplo, tanto las tablas ARTISTA como ÁLBUM deben contener y así mantener una columna que almacene los nombres de los artistas para que se pueda establecer un vínculo entre un artista y sus álbumes. Esto significa que se requiere espacio de almacenamiento adicional, así como gastos generales de programación, para mantener las dos columnas "sincronizadas". Cambiar el nombre de un artista significa que todas las entradas del ÁLBUM de ese artista deben actualizar su columna "nombre del artista".

La segunda debilidad, y el aspecto más relevante de este artículo, es el hecho de que una sola relación solo puede contener dos tablas, la tabla de clave principal (principal) y la tabla de clave externa (referencia). Dentro de la base de datos de la colección de música, tanto la tabla ALBUM como la tabla MOVIE deben hacer referencia a la tabla ARTIST. Debido a esta limitación, es necesario definir dos relaciones separadas; uno que incluye la referencia de la tabla ALBUM a la tabla ARTIST y otro que tiene la tabla MOVIE que hace referencia a la tabla ARTIST.

 

Operación ineficiente de recuperación de datos: modelo de datos relacionales

Esto se traduce en una operación de recuperación de datos bastante ineficaz al encontrar todos los álbumes y películas asociados con un artista. Durante la primera operación, el sistema de base de datos recupera todos los álbumes relacionados de la tabla ALBUM y almacena el conjunto de resultados en una ubicación temporal. Durante la segunda operación, se realiza el mismo proceso que la primera, solo que esta vez recupera resultados de PELÍCULAS. La operación final fusiona los dos conjuntos de resultados, los reordena si es necesario y luego devuelve el conjunto de resultados fusionado.

La ineficacia del modelo relacional puede no ser un obstáculo cuando la cantidad de datos en la base de datos es relativamente pequeña y hay abundantes recursos informáticos disponibles, especialmente porque no es raro hoy en día que una persona promedio tenga una computadora con un sistema dual de 2 GHz. CPU central con 2 GB de memoria y un disco duro de 500 GB. Por otro lado, existe un mercado emergente para las computadoras pequeñas que requieren un sistema de base de datos (DBMS): teléfonos inteligentes, reproductores de música portátiles y dispositivos GPS, por nombrar algunos. Con una velocidad de CPU y una memoria limitadas, estos sistemas portátiles pueden beneficiarse enormemente de un DBMS que permite un almacenamiento y recuperación de datos flexible y eficiente en términos de rendimiento y uso del disco.

El modelo de base de datos de red ofrece exactamente eso.

 

Modelo de base de datos de red

Una forma mejorada del modelo de datos jerárquico, el modelo de red representa datos en un árbol de registros. Las relaciones entre tablas (registros) se expresan como conjuntos. Un conjunto tiene un registro principal (propietario) y uno o más registros secundarios (miembros). Los registros relacionados en un conjunto están directamente vinculados por punteros, en lugar de hacer coincidir columnas duplicadas como es el caso en el modelo de datos relacionales.

 

Modelo de datos relacionales Modelo de datos de red

 

Registros asociados a un único propietario

El modelo de base de datos de red permite que los registros de más de una tabla se asocien con un solo registro de propietario de otra tabla. Esto proporciona una ventaja definitiva sobre la contraparte relacional cuando se consultan los resultados de varias tablas de clave externa asociadas con una tabla de clave primaria. En la base de datos de la colección de medios, los registros de ÁLBUM y PELÍCULA también pueden ser miembros del registro de ARTISTA en un conjunto, como se muestra en la Figura 2. Esto significa que tanto los álbumes como las películas de un artista determinado se pueden recuperar en una sola operación. Esto elimina la necesidad de almacenar y potencialmente reordenar los resultados temporales en medio de la operación, lo que resulta en un mejor rendimiento de las consultas. Sin la necesidad de almacenar y mantener columnas duplicadas, las bases de datos de red también ayudan a reducir el uso de memoria y espacio en disco.

 

Estudio de caso de rendimiento

Los datos de la vida real muestran que el aumento de rendimiento y el ahorro de recursos derivados del uso de bases de datos de red pueden ser bastante significativos. En una estructura de datos que utiliza una relación de tres vías entre las tablas ARTIST, ALBUM y SONG, nuestros desarrolladores de SQL compararon la modificación de datos y el rendimiento de las consultas de los modelos de bases de datos relacionales y de red utilizando sistemas de escritorio y pequeños dispositivos de consumo. Descubrieron que el modelo de red usaba un 29 por ciento menos de espacio en disco para almacenar la misma cantidad de registros y relaciones que el modelo de datos relacionales. Todos los ahorros de almacenamiento se pueden atribuir al reemplazo de los índices de clave externa ARTIST-ALBUM y ALBUM-SONG por punteros establecidos.

La eliminación de estas estructuras de datos tuvo un efecto enorme en los requisitos de almacenamiento porque un índice B-Tree típico requiere aproximadamente 1,3 veces el espacio de lo que indexa. También descubrieron que el modelo de base de datos de red logró un rendimiento de inserción hasta 23 veces mejor y un rendimiento de consulta hasta 123 veces más rápido, como se muestra en la Tabla 1.

 

Puntos de referencia de red frente a relacionales
Tabla 1 - Resultados comparativos de modelos relacionales y de red en sistemas x86 y ARM7.

 

Diferentes requisitos de gestión significan diferentes estructuras de datos y diferentes métodos de almacenamiento y acceso a los datos. El sistema resultante puede constar de unas pocas tablas sin relaciones o cientos de tablas asociadas con relaciones complejas. Si bien el modelo de datos relacionales es el estándar de facto, ahora sabemos que no siempre brinda las soluciones óptimas para problemas de administración de datos más complejos. Seleccionar el modelo de datos apropiado, o incluso combinar varios modelos, puede producir un resultado mucho más eficiente que el modelo de datos relacionales por sí solo. El resultado es un ahorro de costes significativo, una mejora de la calidad y una experiencia de usuario mejorada.

 

Navegación por conjuntos de modelos de red

Conclusión: modelo de red para la velocidad, relacional para la usabilidad

Mientras que la modelo de datos relacionales es muy popular debido a su facilidad de uso, requiere tablas de claves e índices que ralentizan drásticamente una aplicación. La modelo de base de datos de red proporciona un acceso más rápido a los datos y es el método óptimo para una aplicación rápida. Entonces, si hace clic en su artista favorito y ve la lista de sus más de 20 álbumes y títulos de películas en una fracción de segundo en su reproductor multimedia, es posible que solo sea impulsado por un motor de base de datos de modelos de red debajo del capó. Raima Database Manager aprovecha ambos modelos, conozca más sobre nuestro modelado de datos avanzado o Descargue una versión de prueba gratis ahora.

¿Listo para empezar?