Ir al contenido principal

SQL y noSQL

Nombre
Características
Capacidad
SQL
Oracle
·         Modelo relacional: los usuarios visualizan los datos en tablas con el formato filas/columnas
·         Lenguaje de diseño de bases de datos muy completo (PL/SQL): permite implementar diseños "activos", que se pueden adaptar a las necesidades cambiantes de negocio.

Si
MySQL
·         MySQL basa su funcionamiento en un modelo cliente y servidor. 
·         SQL es un lenguaje generalizado dentro de la industria. Al ser un estándar MySQL ofrece plena compatibilidad por lo que si has trabajado en otro motor de bases de datos no tendrás problemas en migrar a MySQL.
·         MySQL posee la característica de no procesar las tablas directamente sino que a través de procedimientos almacenados es posible incrementar la eficacia de nuestra implementación.
·         Llegan a soportar una base de datos de 10, 20 o más GB.
·         Multiplataforma.
MacOS X w/ HFS+

2TB
Si
PostgreSQL
·         Soporta distintos tipos de datos: además del soporte para los tipos base, también soporta datos de tipo fecha, monetarios, elementos gráficos, datos sobre redes (MAC, IP ...), cadenas de bits, etc. También permite la creación de tipos propios.
·         Incluye herencia entre tablas, por lo que a este gestor de bases de datos se le incluye entre los gestores objeto-relacionales.
·         Copias de seguridad en caliente (Online/hot backups)
·         Multiplataforma.
Maximum Database Size               

Unlimited

Maximum Table Size     
32 TB
Si
Mongo DB
·         Da respuesta a la necesidad de almacenamiento de todo tipo de datos: estructurados, semi estructurados y no estructurados
·         Escalabilidad: desde un servidor aislado a arquitecturas distribuidas de grandes clusters (Permite particionar, de manera transparente para el usuario, nuestra base de datos en tantas como shards tengamos. Esto aumenta el rendimiento del procesado de los datos al ser cada una de ellas más pequeña que la original)
·         Es capaz de actualizarse sin dejar de dar servicio
·         Ha sido diseñada para que sea rápida, flexible, escalable, para reducir al mínimo las labores de administración, para que a los programadores les resulte fácil de aprender y dotada de potentes herramientas de análisis de datos

No
Cassandra
·         Descentralizado: Los datos se distribuyen a través del clúster (por lo que cada nodo contiene datos diferentes).
·         Soporta replicación y replicación de múltiples data center: Las estrategias de replicación son configurables. La arquitectura distribuida de Cassandra está diseñado para desplegarse sobre múltiples data center, tener redundancia y recuperarse ante desastres.
·         Escalabilidad: El rendimiento de leer y escribir aumenta linealmente a medida que se añaden nuevos nodos.
·         Tolerancia a fallos: Los datos se replican automáticamente a múltiples nodos para recuperarse frente a fallos.
·         Consistencia: Se ofrece la elección del nivel de consistencia para las lecturas y escrituras.

No
Redis
  • Increíblemente rápido. Los datos se encuentran en la memoria principal. Como se elimina el acceso a esos discos, se evitan retrasos: se accede y se opera mucho más rápido.
  • Estructuras de datos en memoria. Podemos guardar claves de diferentes tipos de datos y disponemos de un tamaño máximo de 512MB para una cadena, ya sea texto o datos binarios. Es decir, podemos almacenar en la memoria prácticamente cualquier tipo de dato.
  • Replicación y persistencia. Acepta la replicación asíncrona que hace que pueda copiar datos en multitud de servidores esclavos. Con esto se mejoran las lecturas y la recuperación cuando falla el servidor principal.
  • Compatibilidad con casi cualquier lenguaje. Los que quieran desarrollar en Redis, pueden hacerlo con multitud de lenguajes de programación, como por ejemplo Java, Python, PHP, C, C++, C#, JavaScript, Node.js, Ruby, R, Go y muchos más.

Todos los datos de Redis residen en la memoria, a diferencia de las bases de datos que almacenan datos en discos o SSD. Como no hay ninguna necesidad de obtener acceso al disco, los almacenes de datos en memoria, como Redis, evitan los retrasos y pueden obtener acceso a los datos en cuestión de milisegundos.
No




Comentarios