Una base de datos es un almacén que nos permite guardar grandes cantidades de información de forma organizada para que luego podamos encontrar y utilizar fácilmente.
Por lo general, es almacén de información que contienen datos relativos a diversas temáticas, categorizados de distintas maneras, pero que comparten entre sí algún tipo de vínculo o relación que busca ordenarlos y clasificarlos en conjunto.
En este sentido, una biblioteca puede considerarse una base de datos compuesta en su mayoría por documentos y textos impresos en papel e indexados para su consulta; o un armario, con la ropa colocada en baldas, percheros y cajones. La mayoría de las bases de datos, y a las que nos vamos a referir aquí, son las que están en formato digital, que ofrecen un amplio rango de soluciones al problema del almacenamiento de datos.
Existen programas denominados sistemas gestores de bases de datos, abreviado SGBD (del inglés Database Management System o DBMS), que permiten almacenar y posteriormente acceder a los datos de forma rápida y estructurada. Las propiedades de estos DBMS, así como su utilización y administración, son diversas. Vamos a comentar la tipología según su modelo de administración de datos y su uso:
Bases de datos relacionales
Este es el modelo utilizado en la actualidad para representar problemas reales y administrar datos dinámicamente. Su idea fundamental es el uso de «relaciones». Sus componentes principales son tablas (algo así como una tabla de Excel), que están compuesta por registros (las filas de una tabla), y campos (las columnas de una tabla). Las tablas se relacionan a través de los campos comunes en cada tabla (clientes, productos, etc.)
La información puede ser recuperada mediante «consultas» que ofrecen una amplia flexibilidad y poder para administrar la información.
El lenguaje más habitual para construir las consultas a bases de datos relacionales es SQL, Structured Query Language o Lenguaje Estructurado de Consultas, un estándar implementado por los principales motores o sistemas de gestión de bases de datos relacionales.
Durante su diseño, una base de datos relacional pasa por un proceso al que se le conoce como normalización de una base de datos, que asegura la coherencia entre los datos (ej.: que no tengamos un cliente en una factura que no esté en la tabla de clientes).
Bases de datos multidimensionales
Son bases de datos ideadas para desarrollar aplicaciones muy concretas, el análisis de datos organizados a través de dimensiones, mediante Cubos OLAP (on line analytical processing). Básicamente no se diferencian demasiado de las bases de datos relacionales (una tabla en una base de datos relacional podría serlo también en una base de datos multidimensional); la diferencia está más bien a nivel conceptual. En las bases de datos multidimensionales los campos o atributos de una tabla pueden ser de dos tipos: o bien representan dimensiones de la tabla, o bien representan métricas que se desean consultar.
Están muy indicadas en las áreas de Business Intelligence y para la elaboración de cuadros de mando.
Bases de datos documentales
Permiten la indexación a texto completo y, en líneas generales, realizar búsquedas más potentes. Sirven para almacenar grandes volúmenes de información de antecedentes históricos.
Bases de datos jerárquicas
En este modelo, los datos se organizan en forma de árbol invertido, donde un nodo padre de información puede tener varios hijos. El nodo que no tiene padres es llamado raíz, y a los nodos que no tienen hijos se los conoce como hojas.
Las bases de datos jerárquicas son especialmente útiles en el caso de aplicaciones que manejan un gran volumen de información y datos muy compartidos permitiendo crear estructuras estables y de gran rendimiento.
Una de las principales limitaciones de este modelo es su incapacidad de representar eficientemente la redundancia de datos.
Bases de datos deductivas
Un sistema de base de datos deductiva, es un sistema de base de datos con la diferencia de que permite hacer deducciones a través de inferencias. Se basa principalmente en reglas y hechos que son almacenados en la base de datos. Las bases de datos deductivas son también llamadas bases de datos lógicas, a raíz de que se basan en lógica matemática. Este tipo de base de datos surge debido a las limitaciones de la Base de Datos Relacional de responder a consultas recursivas y de deducir relaciones indirectas de los datos almacenados en la base de datos.
Bases de datos orientadas a objetos
Las bases de datos orientadas a objetos se crearon para tratar de satisfacer las necesidades de estas nuevas aplicaciones. La orientación a objetos ofrece flexibilidad para manejar algunos de estos requisitos y no está limitada por los tipos de datos y los lenguajes de consulta de los sistemas de bases de datos tradicionales. Una característica clave de las bases de datos orientadas a objetos es la potencia que proporcionan al diseñador al permitirle especificar tanto la estructura de objetos complejos, como las operaciones que se pueden aplicar sobre dichos objetos.
En bases de datos orientadas a objetos, los usuarios pueden definir operaciones sobre los datos como parte de la definición de la base de datos. Una operación (llamada función) se especifica en dos partes. La interfaz (o signatura) de una operación incluye el nombre de la operación y los tipos de datos de sus argumentos (o parámetros). La implementación (o método) de la operación se especifica separadamente y puede modificarse sin afectar la interfaz. Los programas de aplicación de los usuarios pueden operar sobre los datos invocando a dichas operaciones a través de sus nombres y argumentos, sea cual sea la forma en la que se han implementado. Esto podría denominarse independencia entre programas y operaciones.