¿Qué es una base de datos?

Persona mirando visualizaciones de datos frente a una pantalla grande

Autores

Matthew Kosinski

Staff Editor

IBM Think

¿Qué es una base de datos? 

Una base de datos es un repositorio digital para almacenar, gestionar y proteger colecciones organizadas de datos. Los diferentes tipos de bases de datos almacenan datos de diferentes maneras.

Por ejemplo, las bases de datos relacionales lo almacenan en tablas definidas con filas y columnas, mientras que las bases de datos no relacionales pueden almacenarlo como una variedad de estructuras de datos, incluidos pares clave-valor o gráficos.

Las organizaciones utilizan estos diferentes tipos de bases de datos para gestionar diferentes tipos de datos. Las bases de datos relacionales sobresalen con datos estructurados, como registros financieros. Las bases de datos no relacionales son mejores para tipos de datos no estructurados, como archivos de texto, audio y video. Las bases de datos vectoriales almacenan datos como incrustaciones vectoriales, un formato utilizado por muchas aplicaciones de IA generativa.

Las compañías poseen grandes cantidades de datos, a menudo medidos en petabytes o cuatrillones de bits, sobre todo, desde las transacciones de los clientes y el inventario de productos hasta los procesos internos y la investigación patentada. Estos datos deben organizar en una arquitectura de datos coherente para que los usuarios y las aplicaciones puedan acceder a ellos cuando los necesiten.  

Las bases de datos son fundacionales para construir una arquitectura de datos de este tipo. Son más que un lugar para almacenar información. Más bien, permiten a las organizaciones gestionar los datos de forma centralizada, hacer cumplir las normas de integridad y seguridad de los datos y facilitar el acceso a los datos.

Con los sistemas de bases de datos adecuados, las organizaciones pueden utilizar conjuntos de datos de alta calidad para iniciativas empresariales clave, incluidos proyectos de business intelligence (BI), inteligencia artificial (IA) y machine learning (ML).

Lo que no es una base de datos

La gente suele usar el término “base de datos” de forma bastante vaga, lo que puede generar confusión sobre qué es una base de datos y qué no es. 

Una base de datos es un sistema para almacenar y gestionar datos, que abarca desde el hardware físico en el que se almacenan los datos hasta el software que organiza y controla el acceso a los datos. 

Las bases de datos sustentan gran parte de la infraestructura de TI moderna, incluidos sitios web, aplicaciones y plataformas como Amazon y Google. Estos servicios no son bases de datos en sí mismas, pero dependen de las bases de datos para gestionar la información, como los inventarios de productos o los resultados de las búsquedas.

También vale la pena señalar que Microsoft Excel no es una base de datos, sino una aplicación de hoja de cálculo. Una hoja de cálculo de Excel organiza los datos en filas y columnas de forma muy parecida a como lo hace una base de datos relacional, pero esa hoja de cálculo es un único archivo. Sin embargo, las bases de datos son sistemas sólidos y gestionados de forma centralizada que pueden almacenar muchos tipos diferentes de datos, en muchos formatos diferentes, al tiempo que admiten consultas más avanzadas.  

Tipos de bases de datos

Las organizaciones utilizan diferentes tipos de bases de datos para gestionar diferentes tipos de datos y admitir diferentes aplicaciones. Algunos de los tipos más comunes de plataformas de datos incluyen:

  • Bases de datos de navegación
  • Bases de datos relacionales
  • Bases de datos no relacionales o bases de datos NoSQL
  • Bases de datos orientadas a objetos
  • Bases de datos vectoriales
  • Bases de datos en la nube

Bases de datos de navegación

Las bases de datos de navegación almacenan datos en conjuntos de registros vinculados. Los usuarios deben navegar entre estos registros para llegar a los datos que desean, de ahí el nombre.

Los dos tipos más comunes de bases de datos de navegación son las bases de datos jerárquicas y las bases de datos de red.

  • Las bases de datos jerárquicas organizan los datos en una estructura tipo árbol de registros principales y secundarios. Cada registro secundario puede tener solo un padre, pero los registros principales pueden tener varios secundarios. Para alcanzar el registro deseado, los usuarios deben comenzar en la parte superior del árbol y avanzar hacia abajo. 

  • Las bases de datos de red se comportan de manera muy similar a las bases de datos jerárquicas, excepto que permiten que cada registro secundario se vincule a múltiples registros principales. Los usuarios aún deben navegar a través de registros vinculados, generalmente utilizando punteros para llegar a los datos que desean.

Las bases de datos de navegación alguna vez fueron comunes, pero los avances en la tecnología de bases de datos, particularmente el desarrollo del modelo de datos relacional, las han hecho mucho menos populares.

Bases de datos relacionales

Las bases de datos relacionales almacenan datos en tablas formateadas de filas y columnas. A veces se denominan "SQL databases" porque muchas bases de datos relacionales admiten el uso de lenguaje de consulta estructurado (SQL) para consultar y manipular datos. (Para obtener más información, consulte “Lenguajes de bases de datos”).

Cada tabla de una base de datos relacional contiene información sobre un tipo de entidad. Por ejemplo, una organización puede tener una tabla que contenga información sobre todos sus clientes, además de tablas separadas que detallen el historial de compras de cada cliente individual. 

El científico de IBM Edgar F. Codd desarrolló el modelo relacional en la década de 1970. El modelo superó rápidamente la popularidad del modelo de navegación porque simplifica enormemente el acto de recuperar datos. En lugar de especificar rutas entre registros, los usuarios pueden usar sentencias SQL para nombrar los datos que desean. La base de datos descubre cómo recuperar los registros relevantes, a menudo mediante el uso de índices en lugar de escaneos de tablas completas para acelerar el proceso.

Las bases de datos relacionales también reducen la redundancia, ya que cada punto de datos debe almacenar solo una vez. Los datos de diferentes tablas se pueden combinar en vista única sin necesidad de duplicar los datos. 

Las bases de datos relacionales son algunas de las bases de datos más comunes en la actualidad. Son muy adecuadas para gestionar conjuntos de datos estructurados con un formato estándar, como transacciones financieras o información de contacto de los usuarios.

Una clase más reciente de bases de datos relacionales, denominadas "bases de datos NewSQL", tiene como objetivo hacer que el modelo relacional sea más escalable adoptando una arquitectura de base de datos distribuida, es decir, distribuyendo datos entre múltiples servidores de bases de datos. 

Bases de datos no relacionales o bases de datos NoSQL

"Base de datos no relacional" es un término genérico para cualquier base de datos que no almacene datos en un formato rígido, como una tabla. A veces se denominan "bases de datos NoSQL" porque generalmente no requieren SQL para navegar.

Las bases de datos no relacionales surgieron para admitir tipos de datos no estructurados y semiestructurados, como texto de forma libre e imágenes, que no encajan perfectamente en las tablas relacionales.

Los tipos comunes de bases de datos no relacionales incluyen:

  • Bases de datos gráficas que almacenan datos como “nodos” (que representan entidades) y “bordes” (que representan relaciones entre ellos). Las bases de datos gráficas se usan a menudo para rastrear relaciones, como las conexiones entre usuarios de un sitio de redes sociales. 

  • Las bases de datos de documentos almacenan datos como documentos, incluidos formatos como JSON, XML y BSON. Las bases de datos de documentos son comunes en los sistemas de administración de contenido. 

  • Las bases de datos clave-valor almacenan información como pares clave-valor, donde las claves son identificadores únicos (como un ID de carrito de compras digital) y los valores son matrices de datos (como los artículos en el carrito). 

  • Las bases de datos de columna ancha usan filas y columnas de forma muy parecida a las bases de datos relacionales. La diferencia es que cada fila puede tener su propio conjunto distinto de columnas que almacenan información diferente a las otras filas. Las bases de datos de columna ancha se usan a menudo para admitir almacenes de datos, donde los datos deben extraer de múltiples fuentes y centralizar.

Bases de datos orientadas a objetos

Las bases de datos orientadas a objetos, también llamadas bases de datos de objetos, almacenan datos como objetos en el sentido de programación orientada a objetos. 

Los objetos son básicamente paquetes de información y código asociado. Cada objeto representa una entidad. Los objetos se agrupan en clases y tienen atributos que describen sus características y métodos que definen su comportamiento. 

Por ejemplo, un objeto de la clase “gato” podría tener los atributos “color” y “peso”, y los métodos “ronronear” y “cazar”.

Las bases de datos orientadas a objetos obtuvieron popularidad en la década de 1990 junto con la programación orientada a objetos.

Las bases de datos relacionales pueden generar problemas para algunas aplicaciones creadas con lenguajes orientados a objetos, ya que los objetos de datos deben convertirse en tablas para almacenar en estas bases de datos. Las bases de datos orientadas a objetos permiten a los desarrolladores evitar ese problema. 

Bases de datos vectoriales

Las bases de datos vectoriales almacenan información como matrices de números llamados "vectores", que se agrupan en función de la similitud. Por ejemplo, un modelo meteorológico podría almacenar las temperaturas bajas, medias y altas de un solo día en forma vectorial: [62, 77, 85].

Los vectores también pueden representar objetos complejos, como palabras, imágenes, videos y audio. Estos datos vectoriales de alta dimensión son esenciales para el machine learning, el procesamiento de lenguaje natural (NLP) y otras tareas de IA.    

Las bases de datos vectoriales son comunes en los casos de uso de IA y machine learning (ML). Por ejemplo, muchas implementaciones de infraestructura de generación aumentada de recuperación (RAG) que permiten que los modelos de lenguaje de gran tamaño (LLMs) recuperen datos de una base de conocimientos externa utilizan bases de datos vectoriales. 

Bases de datos en la nube

Las cloud databases son bases de datos alojadas en la nube. Cualquier tipo de base de datos (relacional, no relacional o de otro tipo) puede ser una cloud database.

Hay 2 tipos principales de cloud databases. El primero, y el más básico, es un sistema de base de datos autogestionado que se ejecuta en la nube. El segundo se llama base de datos como servicio (DBaaS).

DBaaS es un servicio de computación en la nube que permite a los usuarios acceder y usar el software de base de datos sin tener que gestionar el sistema ellos mismos. Como su nombre lo indica, los proveedores de DBaaS ofrecen una suite de servicios de bases de datos, que incluyen actualizaciones, copias de seguridad, seguridad de bases de datos y más.

Las cloud databases son más escalables que las bases de datos on-premises. Si una organización necesita más espacio de almacenamiento o el rendimiento comienza a disminuir, puede poner en marcha más recursos según sea necesario.  

Otros tipos de bases de datos

Bases de datos multimodelo

 

Las bases de datos multimodelo pueden almacenar más de un tipo de datos. Por ejemplo, IBM Db2 cloud database puede admitir datos XML, JSON, de texto y espaciales en una única instancia de base de datos. 

Bases de datos en memoria

 

Las bases de datos en memoria almacenan información en la memoria principal o RAM de un dispositivo. Por lo general, las aplicaciones pueden recuperar datos de la RAM más rápido que de una base de datos tradicional, por lo que las bases de datos en memoria a menudo se utilizan para almacenar datos en caché y admitir el procesamiento de datos en tiempo real. Sin embargo, la capacidad de almacenamiento es mucho más limitada y los datos pueden perderse fácilmente porque la RAM es más volátil que una base de datos estándar.

Mujer de color trabajando en una computadora portátil

Manténgase al día con las últimas noticias tecnológicas

Insights semanales, investigaciones y opiniones de expertos sobre IA, seguridad, nube y mucho más en el boletín Think.

Diferencias entre bases de datos, data lakes, almacenes de datos y lakehouses de datos

Las bases de datos no son la única forma de organizar los datos, y las organizaciones suelen utilizar diferentes almacenes de datos para respaldar diferentes iniciativas.

Bases de datos

 

Las bases de datos  se crean principalmente para la captura automatizada de datos, consultas rápidas y procesamiento de transacciones.  

Data lakes

 

Son entornos de almacenamiento de bajo costo diseñados para manejar cantidades masivas de datos estructurados y no estructurados sin procesar.

A diferencia de las bases de datos, los data lakes generalmente no limpian, validan ni normalizan los datos. Por lo general, albergan grandes cantidades de datos para respaldar actividades como el entrenamiento de IA y el analytics de big data, donde el rendimiento en tiempo real es menos importante.

Los data warehouses

 

Data warehouses están diseñados para apoyar los esfuerzos de data analytics, business intelligence y ciencia de datos. Agregan datos de varias bases de datos, los limpian y los preparan para que estén listos para su uso. 

Los lakehouses de datos

 

Lakehouses de datos fusionan las capacidades de los almacenes y lakes en una única solución de gestión de datos. Un lakehouse combina almacenamiento de bajo costo con un motor de consulta de alto rendimiento y gobernanza inteligente de metadatos.

Esto permite a las organizaciones almacenar grandes cantidades de datos, tanto estructurados como no estructurados, y utilizarlos fácilmente para esfuerzos de IA, machine learning (ML) y analytics.

Cómo funciona una base de datos

En un nivel alto, un sistema de base de datos tiene 2 componentes clave:

  1. El sistema de almacenamiento de datos, que aloja física o lógicamente los datos
  2. El sistema de gestión de bases de datos (DMBS), que permite a los usuarios interactuar con los conjuntos de datos almacenados.

También se puede echar un vistazo más detallado a los componentes de un sistema de base de datos para obtener una mejor comprensión de lo que hace que funcione una base de datos.

Hardware de la base de datos

Las bases de datos deben almacenar sus datos en algún lugar, en algún tipo de hardware. Dicho esto, las bases de datos no requieren máquinas especializadas.

En cambio, la mayoría de los sistemas de bases de datos se componen de software de base de datos que se ejecuta en una computadora, servidor u otro dispositivo. La máquina ofrece el hardware físico en el que se ejecuta la base de datos. El software maneja la disposición lógica de los datos. Por ejemplo, establecer el formato de los datos como tablas en una base de datos relacional o gráficos en una base de datos de gráficos. 

Una base de datos y las aplicaciones que la utilizan pueden ejecutarse en la misma pieza de hardware, pero hoy en día, la mayoría de los sistemas de bases de datos utilizan una arquitectura multinivel que separa los servidores de aplicaciones y los servidores de bases de datos. Esta disposición ofrece más escalabilidad y fiabilidad. Los servidores de aplicaciones y bases de datos pueden escalar independientemente entre sí, y las interrupciones en un nivel no tienen por qué afectar a los demás. 

Modelos de datos y modelos de bases de datos

Un modelo de datos es una representación visual de un sistema de información. Los modelos son herramientas conceptuales que utilizan los administradores y diseñadores de bases de datos para determinar los tipos de datos que deben rastrear, las relaciones entre los puntos de datos y cómo organizar mejor los datos.

El modelo de datos ayuda a identificar el modelo de base de datos adecuado, es decir, la implementación práctica del sistema de base de datos, incluidos los requisitos técnicos y los formatos de almacenamiento. Por ejemplo, el modelo de datos lógico anterior podría generar una base de datos relacional que tenga este aspecto: 

Esquemas de base de datos

Un esquema de base de datos define técnica y lógicamente cómo se organizan los datos dentro de una base de datos. Dicho de otra manera, traduce el modelo de datos en un conjunto de reglas que debe seguir la base de datos. 

Por ejemplo, un esquema de base de datos relacional definiría elementos como nombres de tablas, campos, tipos de datos y relaciones entre estos elementos.

Los esquemas pueden representarse mediante gráficos visuales, escribirse con sentencias SQL u otros lenguajes de programación o definir de alguna otra forma. Depende del tipo de esquema y del sistema de base de datos de que se trate.

Todos los sistemas de bases de datos relacionales tienen esquemas. Algunas bases de datos no relacionales tienen esquemas, otras no y otras los permiten pero no los requieren. 

Sistemas gestores de bases de datos (SGBD)

Un sistema gestor de bases de datos (SGBD) es un software que permite a los administradores de bases de datos, usuarios y aplicaciones interactuar fácilmente con los datos de una base de datos.  

Los sistemas SGBD permiten a los usuarios realizar tareas clave de administración de datos, como dar formato a bases de datos, administrar metadatos, consultar conjuntos de datos y agregar, actualizar o eliminar datos.

Algunos SGBD ayudan a implementar medidas de seguridad de datos, como la aplicación de controles de acceso a la base de datos y el registro de la actividad del usuario. También pueden realizar un seguimiento del rendimiento de la base de datos.

Al igual que las propias bases de datos, los SGBD pueden variar según el modelo. Por ejemplo, los sistemas de gestión de bases de datos relacionales (SGBDR) se crean para bases de datos relacionales, mientras que los sistemas de gestión de bases de datos orientadas a objetos (OODBMS) gestionan bases de datos orientadas a objetos.  

Algunos sistemas comunes de gestión de bases de datos incluyen:

  • MySQL es un SGBDR de código abierto que se utiliza a menudo para sitios de comercio electrónico y otras aplicaciones web.

  • PostgreSQL es conocido por su énfasis en la extensibilidad y la confiabilidad de las transacciones.

  • Microsoft SQL Server es ampliamente utilizado por organizaciones con redes Microsoft. 

  • Oracle Database es un SGBD multimodelo que puede gestionar tanto datos estructurados como no estructurados. 

  • IBM Db2 es un sistema de base de datos nativo de la nube que incluye gestión de bases de datos, almacenamiento y otras características para admitir análisis en tiempo real y aplicaciones de IA.  

Lenguajes de bases de datos

Los lenguajes de bases de datos son lenguajes de programación especializados que las personas utilizan para interactuar con bases de datos. Brindan a los usuarios una sintaxis para escribir consultas para obtener, combinar, actualizar o usar datos. 

El lenguaje de base de datos más común es el lenguaje de consulta estructurado (SQL), que utilizan la mayoría de las bases de datos relacionales. Desarrollado por científicos de IBM en la década de 1970, SQL ayuda a los administradores de bases de datos, desarrolladores y analistas de datos a realizar tareas como definición de datos, control de acceso, intercambio de datos, integración de datos y consultas analíticas.

Otros lenguajes de bases de datos incluyen el lenguaje de consulta de objetos (OQL), que funciona con bases de datos orientadas a objetos y XQuery, que funciona con bases de datos de documentos XML. 

También hay lenguajes específicos de bases de datos, como MongoDB query language (MQL) para MongoDB y Cassandra query language (CQL) para Apache Cassandra. 

Por qué son importantes las bases de datos

Las bases de datos son cruciales para muchas tecnologías de las que las personas dependen hoy en día, desde aplicaciones bancarias que rastrean transacciones financieras en bases de datos relacionales hasta asistentes de IA que utilizan bases de datos vectoriales para mejorar la precisión.

Las bases de datos son tan comunes precisamente porque son clave para respaldar:

  •  La usabilidad de los datos
  •  La integridad de los datos
  •  La seguridad de datos y cumplimiento normativo

La usabilidad de los datos

Hoy en día las organizaciones poseen enormes cantidades de datos, pero eso no significa mucho si la gente no puede utilizarlos. De hecho, IBM Data Differentiator informa que hasta el 68 % de los datos empresariales nunca se analizan. A menudo, eso se debe a que las personas no saben que existen o los silos les impiden acceder a estos.

Las bases de datos ofrecen a las organizaciones una forma de curar, almacenar y gestionar de forma centralizada una colección de datos. También pueden ayudar a automatizar gran parte del proceso de recopilación de datos, incluida la captura de eventos y transacciones en tiempo real.

La forma en que una organización selecciona, diseña e implementa sus aplicaciones de bases de datos puede hacer o deshacer iniciativas empresariales clave. Cuando los datos están organizados y son fácilmente accesibles, pueden impulsar la toma de decisiones, impulsar la business intelligence y potenciar los proyectos de AI y machine learning (ML).

Integridad de los datos

Las bases de datos pueden ofrecer ventajas significativas sobre las hojas de cálculo y otros procesos manuales de mantenimiento de registros, que son propensos a errores, redundancia e imprecisión.

Debido a que las bases de datos se pueden administrar centralmente, pueden facilitar la aplicación de reglas de limpieza y formato, monitorear el uso y rastrear el linaje de datos. Las bases de datos también eliminan la necesidad de hacer circular múltiples copias de conjuntos de datos, que pueden dejar de sincronizarse con el tiempo. En vez de eso, todas las aplicaciones y usuarios pueden trabajar en el mismo repositorio compartido. 

En última instancia, las bases de datos pueden ayudar a conectar a usuarios de todo tipo (personas, aplicaciones, API) con datos limpios y confiables. 

Seguridad de datos y cumplimiento

Dependiendo de la ubicación y la industria, las organizaciones deben cumplir con las regulaciones de protección y privacidad de datos, como la Ley de Portabilidad y Responsabilidad del Seguro Médico (HIPAA) de EE. UU. y el Reglamento General de Protección de Datos (RGPD) de la UE.

Más allá de los requisitos legales, las organizaciones tienen un interés comercial en evitar el acceso no autorizado a los datos. Según el Informe del costo de una filtración de datos de IBM, la filtración promedio asciende a 4.88 millones USD entre pérdida de negocios, tiempo de inactividad del sistema, esfuerzos de corrección y otros costos.

Las bases de datos pueden ayudar a proteger los datos y mantener el cumplimiento normativo mediante la aplicación de medidas de seguridad de datos, como los controles de acceso basados en roles (RBAC) para ayudar a garantizar que solo los usuarios adecuados puedan acceder a los datos correctos. 

El papel de las bases de datos en las iniciativas de IA

El 75 % de los directores ejecutivos cree que contar con la IA generativa más avanzada será un factor decisivo para que la ventaja competitiva de la organización avance. Para soportar tales AI avanzadas, las organizaciones necesitan la capacidad de almacenar, administrar y gobernar cantidades masivas de datos estructurados y no estructurados. Solo pueden hacerlo con los sistemas de bases de datos adecuados.

Diferentes tipos de bases de datos pueden respaldar los esfuerzos de AI y machine learning (ML) de diferentes maneras. Por ejemplo, las bases de datos vectoriales se emplean comúnmente para implementar marcos RAG que pueden ayudar a reducir las alucinaciones. Las bases de datos clave-valor pueden acelerar la recuperación y el procesamiento de datos. Las bases de datos "in-memory" pueden admitir almacenamiento en caché y streaming analytics.

Consideraciones al elegir la base de datos

Varios factores pueden influir en los tipos de bases de datos que una organización elige para una iniciativa específica. Algunos de los más destacados incluyen:

  • Tipo de datos: cada tipo de base de datos maneja algunos tipos de datos mejor que otros. Por ejemplo, una base de datos de gráficos suele ser una mejor opción para asignar relaciones que una base de datos SQL.

  • Propósito: diferentes tipos de bases de datos también son más adecuados para diferentes aplicaciones. Por ejemplo, una base de datos vectorial suele ser la mejor opción para un marco RAG.  

  • Requisitos de rendimiento: si una aplicación extrae datos continuamente en tiempo real, la organización necesita una base de datos que optimice la velocidad de consulta. Sin embargo, si la organización necesita un lugar para almacenar los datos antes de enviarlos a un almacén, el rendimiento podría ser menos importante.

  • El precio: la cantidad de datos que una organización necesita almacenar, el formato de esos datos y los requisitos de rendimiento pueden tener un impacto en el costo de la base de datos.

  • Escalabilidad: algunas bases de datos solo pueden escalar verticalmente, lo que significa que se deben agregar más recursos a un servidor o máquina ya existente. Otras pueden escalar horizontalmente, lo que significa que pueden agregarse más servidores para admitir la base de datos de forma distribuida.