0% encontró este documento útil (0 votos)
101 vistas2 páginas

Qué Es SQL y NoSQL

SQL se refiere al modelo relacional de bases de datos que almacena datos en tablas relacionadas, mientras que NoSQL incluye una amplia gama de sistemas de gestión de bases de datos no relacionales que almacenan datos no estructurados de forma flexible. Las bases de datos SQL siguen un esquema rígido y garantizan propiedades ACID, mientras que las bases de datos NoSQL ofrecen mayor escalabilidad horizontal y consistencia eventual.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
101 vistas2 páginas

Qué Es SQL y NoSQL

SQL se refiere al modelo relacional de bases de datos que almacena datos en tablas relacionadas, mientras que NoSQL incluye una amplia gama de sistemas de gestión de bases de datos no relacionales que almacenan datos no estructurados de forma flexible. Las bases de datos SQL siguen un esquema rígido y garantizan propiedades ACID, mientras que las bases de datos NoSQL ofrecen mayor escalabilidad horizontal y consistencia eventual.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Qué es SQL y NoSQL

Empezaremos por definir brevemente estos dos conceptos:

En este caso, al utilizar las siglas SQL estamos haciendo referencia al modelo relacional, que se
trata de un paradigma en los modelos de bases de datos basado en las relaciones entre los
diferentes conjuntos de datos.

Algunos ejemplos de gestores de BDR: Oracle, PostgreSQL, MySQL, etc.

NoSQL, también conocido como Not Only SQL, consiste en una amplia gama de SGBD cuyas
principales características son el uso de un lenguaje alternativo al SQL y que guardan información
no estructurada. Es decir, no existen tablas ni columnas, como en el modelo relacional.

Algunos ejemplos de gestores de BD NoSQL: MongoDB, Cassandra, Redis, etc.

Principales características de SQL y NoSQL


Ahora que podemos distinguir entre los dos paradigmas, pasamos a ver las diferentes
características que las definen:

Base de datos relacional (SQL)

Modelo entidad-relación: éstas siguen el modelo relacional que consiste en el almacenamiento de


datos en entidades (tablas) formadas por filas y columnas que necesariamente se relacionan entre
ellas.

Flexibilidad en el esquema: a diferencia de los sistemas no relacionales, estos esquemas de datos


son muy poco flexibles.
Lenguaje: se caracterizan por utilizar el lenguaje SQL (que, debido a sus siglas en inglés, significa
Structured Query Language). Se trata del lenguaje más utilizado en los SGBD relacionales más
populares, desde su fecha de lanzamiento en 1986. Permiten el acceso a bases de datos y a
recuperar la información almacenada.

ACID: aplican y garantizan las siguientes propiedades conocidas como ACID,

Atomicity: Todo o nada. Si algo falla, toda la operación falla.

Consistency: Hace referencia a la integridad de la información. Garantiza que cualquier transacción


que se pueda realizar en la base de datos la lleve de un estado válido a otro también válido.
Isolation: Con esta propiedad el sistema consigue que las diferentes operaciones que puedan
concurrir sean visibles en el momento adecuado, asegurando que una operación no afecte a la
otra.

Durability: Mediante la persistencia se consigue que, tras la operación, los datos estén asegurados
aun cuando el sistema falle, garantizando así que la información se conserve.

Escalabilidad: En este caso, hablamos de una escalabilidad vertical. Se aumenta el hardware por
uno más potente (disco duro, procesador, etc.).

Base de datos no relacional (NoSQL)

Consistencia eventual: al contrario de lo que ocurre en las bases de datos relacionales, en NoSQL
no se implementa un mecanismo rígido de consistencia que garantiza la integridad de los datos,
sino que consta de un sistema de “consistencia eventual” en el que los cambios realizados se
propagan en un intervalo de tiempo no determinado (por lo que no todos los observadores ven la
actualización de datos inmediatamente).

Flexibilidad en el esquema: hablamos de esquemas de datos dinámicos, organizados en registros


(llamados documentos) que pueden almacenar sus atributos en diferentes formas dependiendo
de las necesidades que se dan en el momento.
Escalabilidad horizontal: se trata de la posibilidad de aumentar el rendimiento del sistema
implementando más nodos (servidores).

Estructura distribuida: existen dos modelos de distribución de datos, mediante los cuales se
distribuyen los datos entre los diferentes nodos que forman el sistema:

Sharding: los datos son distribuidos entre múltiples nodos o servidores, cada uno de los cuales
corresponde a la única fuente de un subconjunto de datos.

Réplica: en este tipo de distribución, los datos son copiados entre múltiples servidores, de modo
que la misma información puede encontrarse en diferentes lugares. Existe la réplica master-slave,
que consiste en la gestión de la copia por parte de un servidor (master) con el cual el resto se
sincroniza; y la peer-to-peer, en la que son todos los servidores que se coordinan para sincronizar
sus copias.

Y bien, con lo que hemos visto hasta ahora ya podemos diferenciar claramente entre estos dos
modelos de gestión de datos. En este post profundizaremos sobre cómo, cuándo y por qué utilizar
NoSQL teniendo en cuenta sus pros y contras. De esta manera podrás decidir, de forma eficiente,
qué paradigma se adecua más a tu proyecto.

En Suma Thinking Digital contamos con un equipo experto que ofrece desarrollos a medida para
atender a las necesidades de sus clientes y usuarios. ¿Necesitas asesoría profesional? Deja tu
comentario para conocer más sobre los requerimientos técnicos de tu proyecto.

También podría gustarte