Un sistema de gestión de base de datos (DBMS) es el software que permite a un ordenador almacenar, recuperar, añadir, borrar y modificar datos. Un DBMS administra todos los aspectos primarios de una base de datos, incluyendo la manipulación de datos, como la autenticación de usuarios, así como la inserción o extracción de datos. Un DBMS define lo que se llama el esquema de datos , o la estructura en la que se almacenan los datos.
Las herramientas que usamos todos los días requieren DBMSs entre bastidores. Esto incluye, por ejemplo, cajeros automáticos, sistemas de reserva de vuelos, sistemas de inventario al por menor y catálogos de bibliotecas.
Los sistemas de gestión de bases de datos relacionales (RDBMS) implementan el modelo relacional de tablas y relaciones.
Sistemas de gestión de bases de datos: Antecedentes
El término DBMS existe desde los años 60, cuando IBM desarrolló el primer modelo de DBMS llamado Sistema de Gestión de Información (IMS), en el que los datos se almacenaban en un ordenador en una estructura jerárquica de árbol. Los datos individuales se conectaron sólo entre los registros de padres e hijos.
La siguiente generación de bases de datos fueron los sistemas networkDBMS, que intentaron resolver algunas de las limitaciones del diseño jerárquico incorporando una relación uno a muchos entre los datos. Esto nos llevó a la década de 1970, cuando Edgar F. Codd de IBM estableció el modelo de base de datos relacional, el precursor de lo que conocemos hoy en día.
Características de la moderna DBMS relacional
Los sistemas de gestión de bases de datos relacionales (RDBMS) implementan el modelo relacional de tablas y relaciones. El principal desafío de diseño de los DBMS relacionales actuales es mantener la integridad de los datos, lo que protege la precisión y consistencia de los datos. Esto se garantiza mediante una serie de restricciones y reglas sobre los datos para evitar la duplicación o la pérdida de datos.
Los DBMS también controlan el acceso a la base de datos a través de la autorización, que puede ser implementada en varios niveles. Por ejemplo, los gerentes o administradores pueden tener acceso a datos que no son visibles para otros empleados, o pueden tener la autorización para editar los datos mientras que algunos usuarios sólo pueden visualizarlos.
La mayoría de los DBMSs utilizan el lenguaje de consulta estructurada SQL, que proporciona una forma de interactuar con la base de datos. De hecho, incluso si la base de datos proporciona una interfaz gráfica que permite a los usuarios ver, seleccionar, editar o manipular los datos fácilmente, SQL realiza estas tareas en segundo plano.
Ejemplos de DBMSs
Hoy en día, muchos DBMS comerciales y de código abierto están disponibles. De hecho, elegir la base de datos que necesita es una tarea compleja. Oracle, Microsoft SQL Server e IBM DB2 dominan el mercado de DBMS relacional de gama alta y son todas opciones razonables para sistemas de datos complejos y grandes. Para organizaciones pequeñas o uso doméstico, los DBMS más populares son Microsoft Access y FileMaker Pro.
Más recientemente, otros DBMS no relacionales han crecido en popularidad. Estos son el sabor de NoSQL, en el que una estructura más flexible reemplaza el esquema rígidamente definido de los RDBMs. Son útiles para almacenar y trabajar con conjuntos de datos muy grandes que comprenden una amplia gama de tipos de datos. Los principales actores en este espacio son MongoDB, Cassandra, HBase, Redis y CouchDB.