gpt4 book ai didi

database - 是否有用于键值存储的 ORM(OKM)?

转载 作者:太空狗 更新时间:2023-10-30 01:51:02 26 4
gpt4 key购买 nike

Object-Relational-Mappers 的创建是为了帮助应用程序(从对象的角度思考)以一种对应用程序更友好的方式处理存储的数据,就像其他所有类/对象一样。

但是,我从未见过用于 NoSQL“键/值”存储系统的 OKM(对象键/值映射器)。这看起来很奇怪,因为考虑到与常规的单个 SQL 表行对象相比,更多的值(value)关系必须硬编码到应用程序中这一事实,需求应该更大。

four requests:
user:id
user:id:name
user:id:email
user:id:created

vs one request:
user = [id => ..., name => ..., email => ...]

另外,您必须跟踪“列表”(发布 has_many 评论),因为您没有通过表或外键的 has_many。

INSERT INTO user_groups (user_id, group_id) VALUES (23, 54)

vs

usergroups:user_id = {54,108,32,..}
groupsuser:group_id = {23,12,645,..}

还有很多添加逻辑的示例,应用程序需要这些逻辑来复制普通关系数据库使用的一些基本功能。所有这些原因使 OKM 的想法听起来像是一个新的尝试。

有吗?有什么理由没有吗?

最佳答案

鲁比的 DataMapper项目是一个 ORM,并且很乐意通过使用适配器与键值存储对话。

RedisMongoDB有已经存在的适配器。 CouchDB 有一个适配器——它没有被维护,但在某一时刻它工作得很好。我认为还没有人对 Cassandra 做过任何事情,但没有理由不能完成。 Dubious framework适用于 Google App Engine 的数据映射器采用与数据映射器非常相似的方法来使数据存储对应用程序可用。

所以用键值存储做ORM是很有可能的。 ORM 确实需要避免 SQL 是其主要词汇表的假设。

关于database - 是否有用于键值存储的 ORM(OKM)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4099130/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com