所以,想象一下这种情况,当我们有这样的数据时:一部分最好存储在 RDBMS 中,另一部分存储在某些 NoSQL 中(Mongo,f.e.)。使用2个独立的数据库是否正确?或者我应该找到一种数据结构的折衷方案以仅使用一种?
我想,当我们使用 2 DB 时,我们需要更多的资源(并且需要更多的容错能力),但我们可以拥有更好的结构。还是我的思维方式完全错误?没听说过这种做法,所以想请教更有经验的人。
顺便说一句,抱歉,如果我的英语不好。
最佳答案
在同一应用程序中针对不同类型的数据和目的使用不同的数据库管理系统绝对是合法的。正如您提到的,它确实需要一些成本,但如果 yield 大于成本,我就会选择它。
一个并不罕见的用例是使用 RDBMS 作为持久数据存储并添加 Lucene 作为全文搜索引擎。因此,您可以使用 RDBMS 进行酸合规操作,以强制执行约束。
接下来你可以使用lucene搜索一些单词,获取相应的标识符,然后向rdbms询问属于该标识符的更多信息。
如果您检查“更奇特”的 NoSQL 数据库(图形数据库、基于列的数据库),您可能会发现更多这样的用例,其中 2 个 dbms 非常适合相互补充。
关于mysql - 使用2个不同的数据库好吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38637385/