Skip to content

Instantly share code, notes, and snippets.

@Kreator-97
Created May 8, 2025 21:09
Show Gist options
  • Save Kreator-97/5ceccd6693544090a9d72b15e9b3f4e7 to your computer and use it in GitHub Desktop.
Save Kreator-97/5ceccd6693544090a9d72b15e9b3f4e7 to your computer and use it in GitHub Desktop.

Diseño de bases de datos

El diseño de bases de datos consiste en comenzar a planificar como van a estar distribuidas las entidades que van a conformar un sistema de base de datos. Esta planificación debe de considerar las responsabilidades y alcances que va a tener cada entidad así también como sus relaciones con otras entidades.

Para comenzar a diseñar un sistema de base de datos debemos de conocer algunos conceptos fundamentales que nos van a ayudar a este propósito.

Conceptos fundamentales

Datos

Un dato es una representación simbolica, numerica o abstracta, o un atributo o característica sobre alguna entidad. Los datos describen hechos empíricos, sucesos y entidades reales. Un dato puede ser un simple carácter, tal como 'a', un número, o un dibujo, etc.

Un dato es la minima cantidad de información.

Información

La información es un conjunto de datos que está relacionados en base a algo en particular. Cuando tenemos un conjunto de datos podemos afirmar que tenemos información acerca de algo que es utilizado para reducir o incrementar el conocimiento o la incertidumbre sobre algun hecho o fenomeno.

Base de datos

Una base de datos es una colección de información que está organizada dentro de que está organizada dentro de un sistema. A estos sistemas también se les conoce por las siglas de SGBS ( sistema gestor de bases de datos ). Sus siglas en ingles son DMBS (Data Base management System ).

Este es un software que nos va a permitir encapsular datos y nos va a ayudar en su manteniemiento y gestión. Estos gestores está optimizados para almacenar grandes cantidades de información.

Estos sistemas también permiten que varios usuarios pueden manipular los datos de forma concurrente. También se van a garantizar la integridad de los datos.

Tipos de bases de datos

Los sistemas gestores de bases de datos se van a encontrar clasificados en dos grandes grupos.

  • Bases de datos relacionales (SQL)
  • Bases de datos no relacioneles (NoSQL)

Bases de datos relacionales

Las bases de datos relacionales son tipos de bases de datos donde van a existir relaciones entre diferentes entidades. Estas bases de datos normalmente utilizan el lenguaje informactico SQL para realizar las operaciones dentro del sistema.

Este tipo de bases de datos tienen las siguientes ventajas.

Estas también se caracterízan por que la información se almacenan en conjuntos ordenados que podemos denominar como tablas.

Una tabla es el elemento principal en una base de datos relacional. Estas tablas tiene una responsabilidad definida y pueden tener campos relacionados con otras tablas.

Estas tablas dentro de la información que almacena va a eligir a un campo como identificador único, que va ser utilizado para realizar las relaciones con otras tablas.

Bases de datos no relacionales

Estos tipos de bases de datos están diseñados para modelar datos dentro de una estructura mucho más específica y que no necesiten ser relacionados unos datos con otros. Cada unidad va a ser independiente de otras y son muchos más sencillas que otras.

El enfoque de las bases de datos no relacionales se base en tener de forma rápida y simple la mayor cantidad de información por lo que poseen buen rendimiento y son la opción ideal para aplicaciones de tiempo real que necesitan acceso rápido a los datos.

Estas comunmente almacenan los datos en estructuras denominadas documentos que son parecidos a objetos de clave y valor en forma similar al formato JSON, pero no que necesariamente todas las bases de datos de este tipo comparten el mismo modo de almacenar los datos.

Ejemplos de estos sistemas son

  • Bases de datos documentales
  • Llave y valor
  • Grafos

Y algunos nombres son:

  • MongoDB
  • Redis
  • Firebase
  • Firestore

Entidades y atributos

Una entidad va a ser un objeto del mundo real que pretendemos controlar dentro del sistema de información. Por ejemplo una persona, un producto, una cuenta, un servicio, una empresa o una factura.

Las entidades al ser objeto van a tener características que lo que los definen. A estas características las podemos conocer con el nombre de atributos.

Lo primero que debemos a hacer al momento de crear una base de datos es crear un listado de entidades que están involucradas en el sistema y sus atributos.

Tipos de entidades

Existen diferentes tipos de entidades las cuales son las siguientes:

  • De datos
  • Catálogos
  • Pivotes

De datos

Son aquellas entidaes que van a almacenar la información en el sistema. En ellas vamos a almacenar, capturar e interactuar con los datos.

Catálogos

Las entidades de tipo catálogos funcionan para tener datos precargados y que sean utilizados en las entidades de datos. Estás entidades son utiles para tener la información relevante guardada y que normalmente no va a cambiar.

Por ejemplo en un formulario podemos tener el campo de pais. Dicha información del campo puede venir de una entidad de tipo catalogo donde están almacenados la información sobre los paises disponibles para ese formulario. Esto significa que las entidades de tipo catálogos son usadas por las entidades de datos y que la información de las primeras debe de ser previamente definida y no puede tener muchos cambios brusca en su estructura.

Pivotes

Estas entidades nos van a permitir hacer una relación entre 2 o más entidades. Nos van ayudar a mantener la consistencia y la integridad en el sistema y evitar la duplicidad de datos. También pueden llamarse entidades de enlace o de asociación.

Atributos

Son las características y propiedades que pueden tener las entidades en una base de datos.

Cada uno de los atributos pueden almacenar datos relacionados a una entidad en específica y dichos datos pueden ser de un tipo de dato en concreto.

Los tipos de datos son un tema común en los lenguajes de programación y también son usados en los gestores de bases de datos para saber que es lo que se está almacenando y que dicho proceso sea más eficiente.

Tipos de datos

Acontinuación veremos algunos de los tipos de datos que podemos ver dentro de un motor de bases de datos.

  • Números enteros y flotantes
  • Cadenas y caracteres de texto
  • Fechas y horas
  • Booleans
  • Blobs y archivos
  • Datos geográficos

Cada tipo de sistema de base de datos puede tener diferentes tipos de datos y diferentes implementaciones. En general todos los motores de bases de datos dan soporte a los tipos de datos vistos anteriormente.

CRUD

Este es un acrónimo en el cual tenemos las 4 operaciones más importantes que podemos realizar en un sistema gestor de bases de datos.

Dichas operaciones son las siguientes:

  • CREATE
  • READ
  • UPDATE
  • DELETE
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment