Sistemas de almacenamiento y gestión de la información: SQL vs NoSQL
Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones
Escrito el en español con un tamaño de 3 KB
Los diferentes sistemas de almacenamiento y gestión de la información
Los diferentes sistemas de almacenamiento y gestión de la información pueden estar basados en estructuras relacionales y no relacionales; siendo las primeras (SQL como MySQL) y las segundas (NoSQL como Mongo).
La diferencia entre estas se encuentra en que las primeras parten de datos estructurados (tablas, claves y condiciones - los datos están estructurados en columnas definidas: almacenamiento corresponde a fila o tupla) mientras que las segundas tienen datos no estructurados (documentos, grafos, columnar: almacenamiento corresponde a un documento).
Las bases de datos relacionales (SQL) debemos usarlo:
- Para cumplir con las propiedades ACID: Atomicity, Consistency, Isolation, Durability
- Reduce anomalías
- Evita redundancias
- Mantiene la integridad de los datos
- Los datos son estructurados y poco variables
- Tienen poca escalabilidad
- Cuando son datos predecibles y estructurados
- Volumen controlado de usuarios y datos
- Necesidad de integridad de la información
- Sistemas Transaccionales
Las bases de datos no relacionales (NoSQL) debemos usarlas:
- Cuando tenemos grandes volúmenes de datos no estructurados
- Alta flexibilidad en cambios de estructuras de almacenamiento
- Rápido crecimiento de volumen de datos y escalabilidad
- Alta concurrencia de usuarios
- Almacenamiento distribuido
- Necesidades más dinámicas
- Volúmenes incontrolados de usuarios y datos
- Nuevas tecnologías (web, apps, GPS, loT)
Diferencias de almacenamiento:
SQL:
- Una ocurrencia o entidad de almacenamiento corresponde a una fila o tupla de una tabla
- Cada tabla definida por columnas que representan las propiedades de cada fila o ocurrencia
- La tabla tiene una estructura o esquema que define las columnas y tipos de datos de cada tupla en la tabla. Estos son fijos y estables
- Este modelo de datos se fundamenta en una consistencia fuerte. Donde los datos están normalizados todo lo posible, evitando redundancia de datos y manteniendo estos en tablas separadas y relacionadas mediante claves principales y extranjeras
NoSQL:
- Una ocurrencia o entidad de almacenamiento corresponde a un Documento
- Cada documento almacena las propiedades de una ocurrencia o entidad mediante pares (clave:valor)
- Cada documento no tiene una estructura o esquema fijo. Por tanto, los documentos pueden tener estructuras diferentes
- Este modelo no preserva las características de un modelo de datos normalizado. Puede existir información redundante y prescinde de esquemas o relaciones entre documentos