lunes, 31 de mayo de 2010

Key-value data stores

Estuve leyendo un poco sobre Redis, que es un "key-value store", o traducido al español, una base de datos no relacional que almacena pares de {clave, valor} de forma persistente.

Parece muy interesante, seguramente sea una muy buena alternativa a bases de datos relacionales para algunas aplicaciones particulares, una herramienta más a tener en cuenta al momento de diseñar una aplicación.

En la documentación definen lo que es un "key-value store" como
The essence of a key-value store is the ability to store some data, called value, inside a key. This data can later be retrieved only if we know the exact key used to store it. There is no way to search something by value.
Tienen un ejemplo, donde construyen un clon de Twitter usando solo Redis como base de datos y PHP como lenguaje. Está interesante, sobre todo para ver algunas cosas que cambian con respecto al diseño con bases de datos relacionales. Por ejemplo, cuando hay un nuevo "follower", guarda la relacioón "followed <-> follower" de forma redundante, para poder llegar por cualquiera de los dos lados, ya que no se puede buscar por valor.

Actualización, 11:20am: Me acabo de dar cuenta que este es el post número 200!

No hay comentarios.:

Publicar un comentario