• LOGIN
  • No hay productos en el carrito.

Las claves de NoSQL

Entender la importancia de las tecnologías NoSQL en la actualidad para el desarrollo de nuevos productos escalables.

 

En los últimos años, el concepto de NoSQL ha sido discutido cada día en más organizaciones dispuestas a adoptar sus tecnologías, creyendo que sólo con eso está la clave para mitigar sus problemas de volumen de datos y velocidad de procesamiento, sin adoptar un marco de trabajo que permita a la organización mantener los datos con un cierto nivel de integridad a pesar de la variedad de datos (no relacionados entre sí) pero que son fundamentales tanto para la operación como el análisis del negocio, obviamente dependiendo de la finalidad con la que se implementan los sistemas de datos.

 

De lo anterior, debemos mencionar que en nuestra experiencia durante estos años, hemos visto que algunas organizaciones recién entrando al mundo NoSQL (MongoDB, CosmosDB, etc.) y Big Data (Hadoop, Spark) tienen como objetivo migrar todas sus plataformas al mundo “no relacional”, un gran error si consideramos algunos negocios donde la integridad de los datos es clave de la operación (por ejemplo un banco) o la importancia de mantener una relación fuerte entre las entidades de un modelo de datos prima por sobre otros factores.

 

Por ello, debemos entender que las tecnologías NoSQL están pensadas en un inicio para estar en sistemas distribuidos, lo que implica que siempre tendremos un “tradeoff” entre la consistencia de los datos, la disponibilidad de éstos y la tolerancia a fallos de los servidor (Teorema CAP), es decir, uno de los tres conceptos anteriores no podremos cumplirlos en un 100%. Y su capacidad de adaptarse debe ser abordada con precaución, ya que independiente de ser relacional o no relacional, un modelo de datos debe ser coherente con lo que necesita el negocio,  o sino añadiremos un nivel de complejidad importante que no fue considerado.

 

Con todo lo mencionado anteriormente, las claves del NoSQL al momento de abordarlos en un proyecto son:
  • 1. Debemos siempre diseñar un modelo de datos (sea cual sea el tipo de motor NoSQL que utilicemos)
  • 2. Si la integridad es primordial, una tecnología NoSQL podría no ser lo adecuado si no controlamos bien en los sistemas de software el ingreso de los datos
  • 3. La adaptación a los cambios que permiten estas tecnologías deben ir acompañadas de un modelo de trabajo que valide que los cambios sean consistentes con el negocio y la historia ya almacenada en la base de datos.
© 2018 Metric Learning Todos los derechos reservados.