Las bases de datos son poderosas herramientas diseñadas para almacenar, organizar, recuperar y administrar grandes cantidades de información. En nuestros días, han cobrado mayor relevancia debido a la gran cantidad de datos que existen en todo el mundo interrelacionados a través de internet, lo que aumenta la necesidad de contar con bases de datos diseñadas para brindar apoyo en situaciones y eventos relevantes tanto para empresas como para personas, con el fin de brindar información útil y apoyar en la toma de decisiones corporativas.

Un ejemplo de esto, en el campo de la medicina, se aplica al apoyar a los médicos no solo a tener registros de pacientes y sus historiales, sino también a dar seguimiento incluso con otros hospitales, compartiendo en tiempo real información que podría salvar la vida de muchas personas con tratamientos eficaces compartidos. El acceso a este tipo de información será crucial para brindar soluciones rápidas y eficientes a diferentes problemáticas que enfrenten las empresas hoy en día.

Se debe considerar la organización de los diferentes elementos que conforman una base de datos con el fin de garantizar que la información sea almacenada de forma organizada y eficiente, así como permitir un acceso amigable; a este concepto se le conoce como arquitectura de base de datos. Dicha arquitectura se considera la columna vertebral de los datos almacenados para cualquier información, ya que se asemeja a los planos usados para construirla y permite cimentar la estructura correcta de la información con el fin de que sea fácil de almacenar, recuperar y administrar. En este tema, entenderás los conceptos básicos de las bases de datos y su arquitectura, así como los modelos que permiten la correcta aplicación de las mismas.

Explicación

¿Qué es una base de datos?

Una base de datos es una colección de archivos relacionados que gestionan la información y, a su vez, está integrada por un conjunto de campos, los cuales permiten llevar información de algún atributo de una entidad en el mundo real. Su objetivo principal consiste en almacenar y recuperar información como texto, imágenes, videos, etc., que sean de relevancia para una empresa, siendo el acceso eficiente la mayor diferenciación que se tendrá para poder atender las necesidades de los clientes de una compañía. Un ejemplo de una base de datos es la agenda de teléfonos, direcciones y nombres de personas que están listados en una agencia de autos, ya que consta de una serie de datos relacionados con un significado implícito.

Para la administración de las bases de datos, es común utilizar un Sistema de Gestión de Bases de Datos o DBMS (Database Management System , por sus siglas en inglés), un conjunto de programas encargados de gestionar la información de una base de datos. Permite hacer consultas, modificaciones, así como agregar campos y registros. Se puede considerar como el intermediario entre la base de datos y la información contenida en ella, lo que permite tener una gestión eficiente de dicha información con el fin de mantener su integridad. Adicionalmente, concentra la información y administra el acceso de los diferentes usuarios, controlando qué verán los diferentes perfiles que cuentan con acceso a ella.

Tipos de bases de datos

Oracle (2024) explica que existen muchos tipos de bases de datos y cada empresa escogerá el que mejor se adapte a sus necesidades de organización y uso. Algunos son:

  • Bases de datos orientadas a objetos. En este tipo de base de datos, la información se representa como objeto, tal como sucede en la programación orientada a objetos.
  • Bases de datos distribuidas. Se componen por dos o más archivos que se encuentran en lugares diferentes. Pueden almacenarse en varias computadoras y encontrarse en la misma ubicación o estar compartida en diferentes redes.
  • Almacenes de datos o data warehouse. Diseñados para realizar consultas y análisis rápidos.
  • Bases de datos orientadas a grafos. Almacenan datos relacionados con entidades y las relaciones entre entidades.
  • Bases de datos OLTP. Realizan un gran número de transacciones por parte de sus usuarios.

Marín (2024) comenta que, en la actualidad, los DBMS pueden ser clasificados, según la forma en que administran los datos, en:

  • Relacionales (SQL). Modelo basado en la creación de relaciones o vínculos entre datos por medio de la creación de tablas para las relaciones con sus propios tributos y registros. Actualmente, los principales gestores de esta categoría son:
    • MySQL
    • Oracle
    • SQLite
    • PostgreSQL
    • Microsoft SQL Server
    • MariaDB
  • No relacionales (NoSQL). Los sistemas gestores de bases de datos no relacionales se usan en ambientes distribuidos, siempre disponibles, operativos y que administran grandes volúmenes de datos. Como característica principal, no requieren estructuras de datos fijas como tablas. Ejemplos:
    • Azure CosmosDB
    • Apache CouchDB
    • Google BigTable
    • Amazon DynamoDB
    • MongoDB
    • Redis

Adicionalmente, el uso de la nube y la automatización impulsan cambios en los enfoques tecnológicos que llevan a la gestión de bases de datos a nuevos planteamientos. Algunas bases de datos más recientes son:

  • Bases de datos en la nube. Recopilación de datos estructurados y no estructurados almacenada en una plataforma de estructura en la nube; puede ser privada, pública o híbrida.
  • Bases de datos multimodelo. Combinan distintos modelos de bases de datos en un servidor integrado, lo que les permite integrar diferentes tipos de datos.
  • Bases de datos de documentos/JSON. Permiten almacenar grandes volúmenes de datos en formato JSON en lugar de filas y columnas, por lo que se especializa en la gestión de información de documentos.
  • Bases de datos de autogestión (bases de datos autónomas). Están basadas en la nube y utilizan el machine learning para automatizar el ajuste de la BD, la seguridad, las copias de seguridad, entre otros usualmente realizados por los administradores.

¿Qué es una base de datos relacional?

Según Cortés (2023), es un tipo de base de datos que utiliza la lógica de predicados y la teoría de conjuntos para organizar, relacionar y manipular información. Desde este punto de vista, las relaciones se convierten en un tema fundamental para el manejo y la organización de los datos porque permiten la creación de conexiones lógicas entre las entidades y aseguran la consistencia y la integridad de la información almacenada. Su estructura básica se da a través de varios elementos clave que se consideran relevantes para la organización de la información de forma eficiente. Dichos elementos clave son los siguientes:

  • Tablas. Compuestas por filas y columnas; son muy similares a las hojas de cálculo.
  • Columnas. También conocidas como atributos o campos, representan una propiedad dentro de la tabla y se componen por un nombre, un tipo de dato y algunas otras propiedades.
  • Filas. Conocidas como registros o tuplas, representan una instancia de los datos en sí mismos. Se rigen por las columnas.

De acuerdo con Cortés (2023), las relaciones se pueden establecer a través de:

  • Claves primarias. Se consideran como un identificador único para cada fila en la tabla y tienen la característica de garantizar unicidad. Son un punto de referencia para acceder directamente al registro. Usualmente, existen una o más columnas designadas como claves primarias en las tablas de las bases de datos.
  • Claves foráneas. Son columnas que sirven para crear relación con otra tabla, es decir, se convierten en un enlace entre dos tablas, el cual permitirá referenciar y relacionar los datos. Apuntan directamente a la llave primaria de la otra tabla, por lo que deberán tener las mismas restricciones y tipo de dato.

Fases en la creación de bases de datos relacionales

Como se ha mencionado anteriormente, la finalidad de las bases de datos es contar con una organización eficiente de la información para que usuarios validados accedan a ella de manera específica. Por ello, es importante realizar un diseño eficiente de la estructura de la información dentro de dicho BD tomando en cuenta las fases recomendadas para la creación de bases de datos relacionales, las cuales se explican a continuación:

  • Diseño conceptual. En esta primera fase, se diseñan las entidades y las relaciones que se darán entre ellas. A través de rectángulos, se colocan las entidades con su nombre y sus atributos, remarcando el que se considere como principal, el cual identificará cada registro de forma única. Al final, se crean las relaciones que habrá entre las entidades. Es importante realizar esta fase lo más detallada posible para que las próximas sean más sencillas de plasmar.
  • Diseño lógico. Esta fase busca normalizar las tablas con el fin de evitar la duplicidad de información y también para ahorrar espacio de almacenamiento. La normalización es el proceso de la organización de una base de datos tomando en cuenta las tablas y las reglas usadas para relacionar dichas tablas. En este paso, conviene apoyarse de herramientas de modelado que ayudarán a ver más fácilmente las relaciones de las tablas, tales como Erwin, SQL DBM, ER / Studio, entre otras.
  • Diseño físico. Se revisan a conciencia los tipos de datos que se utilizarán y sus dominios (valores que se permitirán), así como los índices que se deben crear con el fin de realizar la optimización de las consultas. En esta fase, se escribe el código SQL para el diseño del motor de bases de datos seleccionado.

Diseño conceptual: MER (Modelo Entidad Relación)

Este modelo se basa en la modelación del mundo real en entidades (objetos con existencia física o conceptual) y sus relaciones. Su formato gráfico puede tener variantes. Existen herramientas que permiten el diseño conceptual de una base de datos. En MER, cada una de las entidades está representada por círculos y las relaciones entre ellas con líneas, también hay tipos de entidad que se representan con un rectángulo con su respectivo nombre.

Las flechas indican las relaciones y muestran la dirección del vínculo, por ejemplo, la relación entre un cliente y un producto determinado se plasma dibujando una flecha que va del primero al segundo. Asimismo, las relaciones presentan diferentes tipos de cardinalidad, determinando el número de veces que se pueden enlazar dos entidades. Las cardinalidades más comunes son 1:1 (por ejemplo, el dueño de una empresa), 1:N (por ejemplo, el vendedor de un local) y M:N (por ejemplo, los clientes de la empresa). MER puede aplicarse en el desarrollo de una base de datos de una empresa de venta de computadoras, la cual posee dos entidades principales: computadoras y clientes.

La entidad computadoras tendrá los siguientes atributos:

  • No. Serie: un número único que identifica a cada computadora.
  • Marca: el fabricante de la computadora.
  • Color: el color de la computadora.
  • Precio: el precio de la computadora.

La entidad clientes tendrá los siguientes atributos:

  • ID: un número único que identifica a cada cliente.
  • Nombre: el nombre del cliente.
  • Dirección: la dirección del cliente.
  • Teléfono: el número telefónico del cliente.

La relación entre ambas consiste en el proceso de compra que indica que un cliente puede comprar muchas computadoras y un equipo de cómputo puede ser adquirido por varios clientes, por lo que la relación posee los siguientes atributos:

  • Número de compra: un número único identificador de la compra.
  • Fecha de compra: la fecha en que se realizó la compra.
  • Cantidad: la cantidad de computadoras compradas.

De esta manera, se cuenta con una base de datos que permitirá almacenar la información de todas las entidades antes mencionadas.

Diseño lógico: MR (Modelo Relacional)

De acuerdo con Araneda (2022), este es un modelo de datos basado en la lógica de predicados y en la teoría de conjuntos, fundamentado en las relaciones que pueden considerarse como un conjunto de datos llamados tuplas o registros. Creada en 1970 por Edgar Frank Codd en los laboratorios de IBM en California, se conceptualiza tomando en consideración que cada relación es una tabla compuesta por registros y columnas.

El modelo relacional se encarga de:

  • La estructura de datos.
  • La manipulación de datos.
  • La integridad de los datos.

Existen dos formas para construir modelos relacionales: a través de la creación de un conjunto de tablas iniciales a las que se aplican operaciones de normalización para conseguir el esquema más optimo o, por otro lado, convirtiendo el modelo Entidad Relación (ER) en tablas con una depuración lógica y la aplicación de restricciones de integridad (Araneda, 2022).

Por ejemplo, imagina que tienes una base de datos que almacena información sobre los estudiantes y las clases que toman. Los datos pueden reunirse en dos tablas, una para cada componente. La primera tendría una fila por alumno y columnas para nombre, edad, curso actual y año de ingreso; la segunda tabla contaría con una fila para cada clase y columnas para el nombre de la asignatura, profesor, aula y horario. Ambas tablas estarían relacionadas entre sí porque cada alumno toma varias clases; esto significa que cada fila de la tabla de estudiantes tendría una columna para almacenar una lista de las materias a las que asisten. A esto, se le llama clave externa, como se muestra en la figura 1.1.

Figura 1.1. Ejemplo de una base de datos que almacena información sobre estudiantes y sus clases.

Esto permite almacenar toda la información correspondiente a los estudiantes y sus respectivas clases en dos tablas y relacionarlas a través del uso de una clave externa, lo que permitirá obtener la información específica sobre cuáles estudiantes toman determinados cursos.

Cierre

La comprensión de conceptos como bases de datos, modelo entidad-relación y modelo relacional resulta indispensable, ya que permite establecer las bases para un diseño eficiente para la organización de los datos de una empresa y la forma en cómo estos se especificarán y accederán a ellos. Así, podrás identificar de manera más clara las características necesarias a través de la abstracción del mundo real y lograrás plasmarlos de forma eficiente y lógica en la base de datos.

¿Cómo podrías aplicar estos modelos para realizar las primeras bases de datos que ayuden a optimizar procesos en una empresa? Reflexiona sobre un proyecto específico en el que estés involucrado actualmente o que planees iniciar y considera la elaboración de estos modelos para implementar una solución de base de datos enfocada en optimizar los resultados y superar los desafíos.

Checkpoint

Asegúrate de:

  • Comprender el concepto de base de datos.
  • Crear un modelo entidad-relación para generar representaciones gráficas de un DBMS.
  • Aprender el modelo relacional para la implementación de vínculos y conexiones entre las bases de datos.

Referencias bibliográficas

  •  Araneda, P. (2022). BASE DE DATOS. El camino de los datos a la información. Recuperado de https://bookdown.org/paranedagarcia/database/
  • Cortés, D. (2023). Introducción a las bases de datos relacionales. Recuperado de https://medium.com/@diego.coder/introducci%C3%B3n-a-las-bases-de-datos-relacionales-272bcdf93da5
  • Marín, R. (2024). Los gestores de bases de datos más usados en la actualidad. Recuperado de https://www.inesem.es/revistadigital/informatica-y-tics/los-gestores-de-bases-de-datos-mas-usados/
  • Oracle. (2024). ¿Qué es una base de datos? Recuperado de https://www.oracle.com/mx/database/what-is-database/

Tecmilenio no guarda relación alguna con las marcas mencionadas como ejemplo. Las marcas son propiedad de sus titulares conforme a la legislación aplicable, estas se utilizan con fines académicos y didácticos, por lo que no existen fines de lucro, relación publicitaria o de patrocinio.

Los siguientes enlaces son externos a la Universidad Tecmilenio, al acceder a ellos considera que debes apegarte a sus términos y condiciones.

Lecturas

Videos

Tecmilenio no guarda relación alguna con las marcas mencionadas como ejemplo. Las marcas son propiedad de sus titulares conforme a la legislación aplicable, estas se utilizan con fines académicos y didácticos, por lo que no existen fines de lucro, relación publicitaria o de patrocinio.