¿Conoces el concepto de un par clave / valor? Suponiendo que esté familiarizado con Java o C #, esto está en el lenguaje como map / hash / datatable / KeyValuePair (el último es en el caso de C #)
La forma en que funciona se demuestra en este pequeño gráfico de muestra:
Color Red
Age 18
Size Large
Name Smith
Title The Brown Dog
Donde tenga una clave (izquierda) y un valor (derecha) ... observe que puede ser una cadena, int o similar. La mayoría de los objetos KVP le permiten almacenar cualquier objeto a la derecha, porque es solo un valor.
Dado que siempre tendrá una clave única para un objeto en particular que desea devolver, solo puede consultar la base de datos para esa clave única y obtener los resultados de cualquier nodo que tenga el objeto (es por eso que es bueno para sistemas distribuidos, ya que hay otras cosas involucradas como sondear los primeros n nodos para devolver un valor que coincida con otros nodos devuelve).
Ahora mi ejemplo anterior es muy simple, así que aquí hay una versión ligeramente mejor del KVP
user1923_color Red
user1923_age 18
user3371_color Blue
user4344_color Brackish
user1923_height 6' 0"
user3371_age 34
Como puede ver, la generación de claves simple es poner "usuario" el número único de usuario, un guión bajo y el objeto. Una vez más, esta es una variación simple, pero creo que comenzamos a entender que siempre que podamos definir la parte de la izquierda y tener un formato consistente, podemos extraer el valor.
Tenga en cuenta que no hay restricción en el valor de la clave (ok, puede haber algunas limitaciones, como solo texto) o en la propiedad del valor (puede haber una restricción de tamaño), pero hasta ahora no he tenido sistemas realmente complejos. Probemos y avancemos un poco más:
app_setting_width 450
user1923_color Red
user1923_age 18
user3371_color Blue
user4344_color Brackish
user1923_height 6' 0"
user3371_age 34
error_msg_457 There is no file %1 here
error_message_1 There is no user with %1 name
1923_name Jim
user1923_name Jim Smith
user1923_lname Smith
Application_Installed true
log_errors 1
install_path C:\Windows\System32\Restricted
ServerName localhost
test test
test1 test
test123 Brackish
devonly
wonderwoman
value key
Se entiende la idea ... todos estos se almacenarían en una "tabla" masiva en los nodos distribuidos (hay matemática detrás de todo) y simplemente le pediría al sistema distribuido el valor que necesita por nombre.
Por lo menos, esa es mi comprensión de cómo funciona todo. Puedo tener algunas cosas mal, pero eso es lo básico.
enlace obligatorio de wikipedia http://en.wikipedia.org/wiki/Associative_array