CENTRO BACHILLERATO TECNOLÓGICO AGROPECUARIO No.
197
“NO SQL“
Nombre: Rebeca Barreras Gastelum.
Grupo: 4 A TP.
Maestro: Roberto Armando Martinez Aja.
Materia: Administra una base de datos en un sistema de información.
Providencia, Sonora a 16 de Junio 2025
¿Qué es la base de datos NoSQL?
Se refiere a las bases de datos no relacionales que almacenan datos en un
formato no tabular, en lugar de hacerlo en tablas relacionales basadas en
reglas, como lo hacen las bases de datos relacionales. Las bases de datos
NoSQL usan un modelo de esquema flexible que admite una amplia variedad
de datos no estructurados, como documentos, pares clave-valor, columnas
amplias y gráficos. Están diseñadas para modelos de datos específicos y
almacenan los datos en esquemas flexibles que se escalan con facilidad para
aplicaciones modernas. Muchas cargas de trabajo de bases de datos pueden
beneficiarse de la rentabilidad y el rendimiento de las bases de datos NoSQL.
Si bien NoSQL aún puede almacenar datos que se encuentran dentro de los
sistemas de gestión de bases de datos relacionales, solo que los almacena de
manera diferente. La decisión de utilizar una base de datos relacional frente a
una base de datos no relacional es en gran medida contextual y varía según el
caso de uso.
NoSQL también es un tipo de base de datos distribuida, lo que significa que la
información se copia y almacena en varios servidores, que pueden ser remotos
o locales. Esto garantiza la disponibilidad y confiabilidad de los datos. Si
algunos datos se desconectan, el resto de la base de datos puede continuar
funcionando.
Las bases de datos NoSQL generalmente ofrecen esquemas flexibles que
permiten un desarrollo más rápido. El modelo de datos flexible hace que las
bases de datos NoSQL sean ideales para datos semiestructurados y no
estructurados. Generalmente están diseñadas para escalar horizontalmente
usando clústeres distribuidos de hardware, en lugar de escalar añadiendo
servidores caros y sólidos. Y algunos proveedores de la nube manejan estas
operaciones en segundo plano, como un servicio completamente administrado.
Además las bases de datos NoSQL están optimizadas para modelos de datos
y patrones de acceso específicos. Esto permite un mayor rendimiento que si
intentara lograr una funcionalidad similar con bases de datos relacionales.
Funcionamiento
Las bases de datos NoSQL utilizan una variedad de modelos de datos para
acceder y administrar datos. Estos tipos de bases de datos están optimizados
específicamente para aplicaciones que requieren modelos de datos flexibles,
grandes volúmenes de datos y baja latencia, lo que se logra mediante la
flexibilización de algunas de las restricciones de coherencia de datos en bases
de datos relacionales. Existen diferencias en la implementación según el
modelo de datos. Sin embargo, muchas bases de datos NoSQL utilizan
Javascript Object Notation (JSON).
Entre los tipos más populares de patrones de acceso a bases de datos, se
encuentran los siguientes:
● Almacenes clave-valor: agrupan los datos asociados en tablas
independientes en las que los registros se identifican mediante claves
únicas para facilitar su recuperación. Tienen la estructura justa para
reflejar el valor de las bases de datos relacionales al tiempo que añaden
las ventajas de rendimiento y accesibilidad de una estructura de acceso
a datos NoSQL. Los datos clave-valor se almacenan fácilmente en una
caché donde los datos a los que se accede con frecuencia se mantienen
en memoria para lecturas rápidas. Las escrituras, actualizaciones y
nuevas solicitudes de lectura se dirigen mediante programación al
almacenamiento persistente. Los almacenes de clave-valor priorizan las
velocidades de acceso atómico por encima de la coherencia, el
aislamiento y la durabilidad.
● Bases de datos documentales almacenan principalmente información
en forma de documentos lógicos, incluidos los documentos JSON. Por
ejemplo, estos sistemas también pueden almacenar documentos XML u
objetos binarios. Debido a la naturaleza flexible del formato y al grado de
control que proporciona a los desarrolladores, las bases de datos de
documentos son las preferidas a la hora de crear aplicaciones basadas
en datos.
● Bases de datos de columnas y columnas anchas almacenar datos
por columnas en lugar de filas que optimiza el rendimiento de las
consultas para cargas de trabajo analíticas y procesamiento de datos a
gran escala. Al igual que los almacenes clave-valor, las bases de datos
de columnas anchas tienen cierta estructura NoSQL básica, al tiempo
que conservan la flexibilidad, el manejo de datos y las capacidades de
agregación.
IDE
Un entorno de desarrollo integrado (IDE) es un sistema de software para el
diseño de aplicaciones que combina herramientas del desarrollador comunes
en una sola interfaz gráfica de usuario (GUI). Aplicación que proporciona a los
programadores un conjunto completo de herramientas necesarias para
desarrollar software. Estas herramientas suelen incluir un editor de código, un
depurador, un compilador o intérprete, y a veces un simulador o emulador. La
principal ventaja de un IDE es que reúne todas estas funciones en una única
interfaz, facilitando el flujo de trabajo del desarrollador. Es crucial para mejorar
la productividad y eficiencia de las funciones del programador. Al centralizar
todas las herramientas necesarias en una sola aplicación, se reduce el tiempo
y el esfuerzo que implica alternar entre diferentes programas para codificar,
compilar y depurar.
Además, los IDE suelen incluir características que ayudan a minimizar errores
comunes, como la autocompletación de código, resaltado de sintaxis y
herramientas de refactorización, lo que permite a los programadores centrarse
más en la lógica de su código que en los detalles del lenguaje.
Generalmente, un IDE cuenta con las siguientes características:
● Editor de código fuente: editor de texto que ayuda a escribir el código de
software con funciones como el resaltado de la sintaxis con indicaciones
visuales, el relleno automático específico para el lenguaje y la comprobación
de errores a medida que se escribe el código.
● Automatización de las compilaciones locales: herramientas que
automatizan las tareas sencillas y repetitivas como parte de la creación de
una compilación local del software para que use el desarrollador, como la
compilación del código fuente de la computadora en código binario, el
empaquetado de ese código y la ejecución de pruebas automatizadas.
● Depurador: programa que sirve para probar otros programas y mostrar la
ubicación de un error en el código original de forma gráfica.
5 ejemplos de Base de datos NoSQL
Apache Cassandra
Se trata de una base de datos creada por Apache del tipo clave–valor. Dispone
de un lenguaje propio para realizar consultas CQL (Cassandra Query
Language). Cassandra es una aplicación Java por lo que puede correr en
cualquier plataforma que cuente con la JVM.
Redis
Se trata de una base de datos creada por Salvatore Sanfilippo y Pieter
Noordhuis y está apoyada por VMWare. Se trata de una base de datos del tipo
clave–valor. Se puede imaginar como un array gigante en memoria para
almacenar datos, datos que pueden ser cadenas, hashes, conjuntos de datos o
listas. Tiene la ventaja de que sus operaciones son atómicas y persistentes.
Por ponerle una pega, Redis no permite realizar consultas, sólo se puede
insertar y obtener datos, además de las operaciones comunes sobre conjuntos
(diferencia, unión e inserción). Creado en ANSI C, por lo tanto es compatible y
funciona sin problemas en sistemas Unix, Linux y sus derivados, Solaris, OS/X
sin embargo no existe soporte oficial para plataformas Windows.
MongoDB
Se trata de una base de datos creada por 10gen del tipo orientada a
documentos, de esquema libre, es decir, que cada entrada puede tener un
esquema de datos diferente que nada tenga que ver con el resto de registros
almacenados. Es bastante rápido a la hora de ejecutar sus operaciones ya que
está escrito en lenguaje C++. Para el almacenamiento de la información, utiliza
un sistema propio de documento conocido con el nombre BSON, que es una
evolución del conocido JSON pero con la peculiaridad de que puede almacenar
datos binarios. En poco tiempo, MongoDB se ha convertido en una de las
bases de datos NoSQL favoritas por los desarrolladores.
CouchDB
Se trata de un sistema creado por Apache y escrito en lenguaje Erlang que
funciona en la mayoría de sistemas POSIX, incluyendo GNU/LINUX y OSX,
pero no así en sistemas Windows. Como características más importantes cabe
destacar el uso de Restfull HTTP API como interfaz y JavaScript como principal
lenguaje de interacción. Para el almacenamiento de los datos se utilizan
archivos JSON. Permite la creación de vistas, que son el mecanismo que
permite la combinación de documentos para retornar valores de varios
documentos, es decir, CouchDB permite la realización de las operaciones JOIN
típicas de SQL.
Neo4j
La base de datos Neo4j es desarrollada en software libre es del tipo orientada
a grafos, construida con lenguaje Java. Esta base de datos tiene un
funcionamiento transaccional que almacena en estructura de grafos. Su
primera versión fue lanzada en 2010. Esta BBDD con diferentes tipos de
[Link] características principales que ofrece Neo4J a sus desarrolladores
es un alto desempeño, si las consultas empiezan a crecer de forma
exponencial el rendimiento de esta BBDD no disminuye. Es Ágil, flexible y
altamente escalable.
Referencias Bibliográficas
[Link]
[Link]
[Link]
[Link]
[Link]
[Link]
ve/