Reflexión #7: Bases de datos NoSQL

En los últimos años hemos visto el surgimiento de un nuevo tipo de base de datos, como bases de datos NoSQL, que está desafiando el dominio de la base de datos relacionales. Base de datos relacionales han dominado la industria del software durante mucho tiempo se ha proporcionado mecanismos para almacenamiento de datos persistentes, simultáneamente control, transacciones sobre todo las interfaces estándar y mecanismos para integrar datos de aplicación, la presentación de informes. Sin embargo, hoy en día, con la aparición de grandes aplicaciones online, como Facebook, Twitter o LinkedIn, se plantea problemas de escalabilidad y rendimientos de las bases de datos relacionales con miles de usuarios concurrentes y con millones de consultas diarias, estas ventajas no existe para las bases de datos relacionales.

1015637-nosql-databases

NoSQL (Non-Relational) se entiende a menudo como “Not Only SQL”, es una forma de base de datos proporciona un mecanismo para almacenar y recuperar datos según otros modelos con bases de datos relacionales. NoSQL se evalúa que el enfoque con un diseño sencillo, fácilmente ampliable y fácil de controlar. Hay 5 tipos de bases de datos NoSQL, dependiendo de como almacenan la información: Key-Value, Basada en Documentos, Orientadas a Grafos, Orientadas a Columnas. En NoSQL no existe ACID (Atomicity, Consistency, Isolation, Durability) como en las bases de datos relacionales, pero existe algo llamado BASE (Basic Availability, Soft State, Eventual Consistency) que da características para el manejo de datos. Propiedades de almacenamiento simples, no vinculantes. por lo que el rendimiento de NoSQL es más rápido que RDBMS. NoSQL es especialmente útil cuando una empresa necesita acceder y analizar grandes cantidades de datos no estructurados o datos que se almacenan de forma remota en varios servidores virtuales en la nube.

Las ventajas más significativas de la arquitectura de datos NoSQL son:

  • Escalabilidad: Se pueden escalar con relativa facilidad ante demandas puntuales de sobre carga de datos.
  • Rendimiento: Para obtener un mejor rendimiento en el procesamiento de los datos sólo es necesario añadir más recursos en la plataforma hardware o priorizar cual son los servicios críticos en cada momento.
  • Estructura: Los desarrolladores de aplicaciones que trabajan con bases de datos relacionales muchas veces encuentran problemas con la cartografía de los datos y su impedancia. En las bases de datos NoSQL, esto no es generalmente un problema, ya que los datos no se almacenan en la misma manera.
  • Activación/Desactivación: Debido a la naturaleza distribuida de los datos, los modelos NoSQL responden muy bien ante la activación/desactivación de los servicios en base a las necesidades puntuales de demanda por parte de los usuarios o del mismo sistema.

SQL vs NoSQL:

sqlvsnosql

Referencias:

Ángel Leo-Revilla. “Ventajas de la arquitectura nosql” (2013).
Enlace: https://momentotic.com/2013/03/26/ventajas-de-la-arquitectura-nosql/

Antonio. “¿Qué es NoSQL?” (2011).
Enlace: http://codecriticon.com/que-es-nosql/

Wikipedia

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s