Los mapeadores relacionales de objetos se han creado para ayudar a las aplicaciones (que piensan en términos de objetos) a tratar los datos almacenados de una manera más amigable para las aplicaciones como cualquier otra clase/objeto.¿Hay ORM (OKM) para tiendas clave-valor?
Sin embargo, nunca he visto un OKM (Object-Key/Value-Mapper) para los sistemas de almacenamiento "Key/Value" de NoSQL. Lo cual parece extraño porque la necesidad debería ser mucho mayor, dado el hecho de que habrá más relaciones de valor que las de un objeto de fila de tabla de SQL único regular.
four requests:
user:id
user:id:name
user:id:email
user:id:created
vs one request:
user = [id => ..., name => ..., email => ...]
Además, usted debe hacer un seguimiento de "listas" (comentarios sobre este tema has_many) ya que no tiene has_many través de tablas o claves externas.
INSERT INTO user_groups (user_id, group_id) VALUES (23, 54)
vs
usergroups:user_id = {54,108,32,..}
groupsuser:group_id = {23,12,645,..}
y hay muchos más ejemplos de la lógica adicional que necesitaría una aplicación para replicar algunas de las características básicas que utilizan bases de datos relacionales normales. Todas estas razones hacen que la idea de un OKM suene como un zapato.
¿Hay alguno? ¿Hay alguna razón por la que no hay ninguna?
ORM por valor-clave? Um ... ¿qué haría exactamente? No es el problema más o menos la serialización/deserialización del "Valor" o documento. –
@qstarin Aún no estoy del todo seguro, aunque podría manejar las relaciones que su aplicación necesitaría rastrear (como las listas). Hay mucho más que debe manejar su aplicación cuando abandona el mundo de SQL. – Xeoncross