Sistema de gestión de bases de datos relacionales o RDBMS
Un sistema de gestión de bases de datos relacionales (RDBMS) es una colección de programas y capacidades que permiten a los equipos de TI y a otros crear, actualizar, administrar e interactuar con una base de datos relacional. La mayoría de los RDBMS comerciales utilizan Structured Query Language (SQL) para acceder a la base de datos, aunque SQL fue inventado después del desarrollo inicial del modelo relacional y no es necesario para su uso.
RDBMS vs. DBMS
En general, las bases de datos almacenan conjuntos de datos que pueden consultarse para su uso en otras aplicaciones. Un sistema de gestión de bases de datos admite el desarrollo, la administración y el uso de plataformas de bases de datos.
Un RDBMS es un tipo de DBMS con una estructura de tabla basada en filas que conecta elementos de datos relacionados e incluye funciones que mantienen la seguridad, precisión, integridad y consistencia de los datos.
Funciones de los sistemas de gestión de bases de datos relacionales
Los elementos del sistema de gestión de bases de datos relacionales que abarcan la base de datos relacional básica son tan intrínsecos a las operaciones que es difícil disociarlos en la práctica.
Las funciones RDBMS más básicas están relacionadas con las operaciones de creación, lectura, actualización y eliminación, conocidas colectivamente como CRUD. Forman la base de un sistema bien organizado que promueve el tratamiento consistente de los datos.
El RDBMS generalmente proporciona diccionarios de datos y colecciones de metadatos útiles en el manejo de los datos. Estos admiten, mediante programación, estructuras de datos y relaciones bien definidas. La gestión del almacenamiento de datos es una capacidad común del RDBMS, y esto se ha definido mediante objetos de datos que van desde cadenas de objetos grandes binarios (blob) hasta procedimientos almacenados. Los objetos de datos como este amplían el alcance de las operaciones básicas de las bases de datos relacionales y se pueden manejarse de varias maneras en diferentes RDBMS.
El medio más común de acceso a datos para el RDBMS es a través de SQL. Sus principales componentes de lenguaje comprenden lenguaje de manipulación de datos (DML) y declaraciones de lenguaje de definición de datos (DDL). Hay extensiones disponibles para los esfuerzos de desarrollo que combinan el uso de SQL con lenguajes de programación comunes, como COBOL (Common Business-Oriented Language), Java y .NET.
Los RDBMS utilizan algoritmos complejos que admiten el acceso de múltiples usuarios concurrentes a la base de datos, mientras mantienen la integridad de los datos. La gestión de seguridad, que impone el acceso basado en políticas, es otro servicio de superposición que el RDBMS proporciona para la base de datos básica, ya que se utiliza en entornos empresariales.
Los RDBMS soportan el trabajo de los administradores de bases de datos (DBA) que deben administrar y monitorear la actividad de la base de datos. Las utilidades ayudan a automatizar la carga de datos y la copia de seguridad de la base de datos. Los RDBMS gestionan archivos de registro que rastrean el rendimiento del sistema en función de los parámetros operativos seleccionados. Esto permite medir el uso, la capacidad y el rendimiento de la base de datos, en particular el rendimiento de las consultas. Los RDBMS proporcionan interfaces gráficas que ayudan a los DBA a visualizar la actividad de la base de datos.
Aunque no se limita únicamente al RDBMS, el cumplimiento de ACID es un atributo de la tecnología relacional que ha demostrado ser importante en la informática empresarial. Representando la atomicidad, la consistencia, el aislamiento y la durabilidad, estas capacidades son particularmente adecuadas para RDBMS por su capacidad para manejar transacciones comerciales.
Los sistemas de gestión de bases de datos relacionales son fundamentales para las aplicaciones clave, como los libros de contabilidad, los sistemas de reservas de viajes y la venta minorista en línea. A medida que los RDBMS han madurado, han alcanzado niveles cada vez más altos de optimización de consultas y también se han convertido en partes clave de las aplicaciones de informes, análisis y almacenamiento de datos para empresas. Los RDBMS son intrínsecos a las operaciones de una variedad de aplicaciones empresariales y están en el centro de la mayoría de los sistemas de administración de datos maestros (MDM).
Historia de los productos RDBMS
Muchos sistemas de gestión de bases de datos relacionales surgieron a medida que se difundieron las noticias a principios de la década de 1970 del modelo de datos relacionales. Este y otros métodos relacionados fueron teorizados originalmente por el investigador de IBM E.F. Codd, quien propuso un esquema de base de datos, u organización lógica, que no estaba directamente asociada con la organización física, como era común en ese momento.
El trabajo de Codd se basó en un concepto de normalización de datos, lo que ahorró espacio de archivo en las unidades de disco de almacenamiento en un momento en que dicha maquinaria podría ser prohibitivamente costosa para las empresas.
Los sistemas de archivos y los sistemas de administración de bases de datos precedieron a lo que podría llamarse la era de RDBMS. Dichos sistemas se ejecutan principalmente en computadoras mainframe. Si bien los RDBMS también se ejecutaban en mainframes (el DB2 de IBM es un ejemplo destacado), gran parte de su ascendencia en la empresa se produjo en implementaciones de computadoras de rango medio UNIX. El RDBMS fue un elemento clave en la arquitectura distribuida de la computación cliente/servidor, que conectaba grupos de computadoras personales independientes a servidores de archivos y bases de datos.
Surgieron numerosos RDBMS junto con el uso de la computación cliente/servidor. Entre los competidores estaban Oracle, Ingres, Informix, Sybase, Unify, Progress y otros. Con el tiempo, tres RDBMS llegaron a dominar en implementaciones comerciales. Oracle, el DB2 de IBM y el SQL Server de Microsoft, que se basó en un diseño con licencia original de Sybase, fueron los favoritos a lo largo de la era informática cliente/servidor, a pesar de los repetidos desafíos de las tecnologías competidoras.
A medida que el siglo XX llegaba a su fin, las versiones de código abierto de RDBMS comenzaron a tener uso, particularmente en aplicaciones web. Dichos sistemas incluyen MySQL y PostgreSQL.
Eventualmente, a medida que la informática distribuida se apoderó más y la arquitectura de la nube se hizo más prominente, los RDBMS se encontraron con la competencia en forma de sistemas NoSQL. Tales sistemas a menudo se diseñaron especialmente para una distribución masiva y una alta escalabilidad en la nube, a veces renunciando a la coherencia completa de estilo SQL para la denominada coherencia eventual de los datos. Pero, incluso en los sistemas en la nube más diversos y complejos, la necesidad de garantizar la coherencia de los datos requiere que los RDBMS aparezcan de alguna forma. Además, las versiones de RDBMS se han reestructurado significativamente para la paralelización y replicación en la nube.