gpt4 book ai didi

database-design - NoSQL 或关系型或两者兼而有之

转载 作者:行者123 更新时间:2023-12-05 01:35:52 25 4
gpt4 key购买 nike

我正在做一个项目,我必须保存 friend 列表。经过深思熟虑并在网上搜索最佳方法后,似乎将用户 ID 和 friend ID 保存在表中。
但可以肯定的是,如果项目希望达到大规模,这种方法似乎不太好。
大多数大型公司,如 Google、Facebook、Twitter 也将其功能转移到 nosql 数据库上。
那么看起来我们是不是应该从这些 NoSQL 数据库开始我们的项目?

但同时我读到 NoSQL 中有很多编码工作,因为这里没有提供关系数据库中的许多默认服务(如果我错了,请纠正我)

也许一种方法可以从关系开始,因为它在小规模上具有非常好的功能,然后转向 NoSQL,但是为此,您必须编写非常好的可移植代码,ORM 是否可以发挥良好的作用?

想知道其他人对什么是正确的方法可以做到这一点的意见?

最佳答案

远离 ORM,尤其是 ActiveRecord。
他们通常会产生“发展债务”,这意味着它使项目的开始看起来很容易。当您投资与 ORM 的完全集成并完成 80% 的项目时,您开始看到 ORM 失败的所有边界情况。

除此之外,大多数 ORM 进行次优查询并且从不利用特定于引擎的功能。

至于 SQL 与 noSQL:我建议从 SQL 数据库开始,然后当应用程序增长时,开始使用一些缓存策略(memcached,或者 redis)。并且仅当该解决方案用尽时 - 开始寻找不需要关系的数据库逻辑部分。

noSQL 数据库提供非常具体的用例列表,并不适合您的普通应用程序。

关于database-design - NoSQL 或关系型或两者兼而有之,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5843492/

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