所以,想象一下这种情况,当我们有这样的数据时:它的一部分最好存储在RDBMS中,另一部分存在于NoSQL中(Mongo,f.e。)。使用2个独立的数据库是否正确?或者我应该为数据结构找到一些妥协,只使用一个?
我想,当我们使用2个数据库时,我们需要更多的资源(并且更多地了解容错性),但我们可以有更好的结构。或者我的思维方式完全错了?从来没有听说过这种做法,所以想要问更有经验的人。
是的,对不起,如果我的英语不好。答案 0 :(得分:1)
在同一个应用程序中为不同类型的数据和目的使用不同的dbms绝对是合法的。正如你所提到的那样,它确实需要付出一些代价,但如果收益超过我想要的成本。
一个不太常见的用例是将rdbms作为持久数据存储并将Lucene添加为全文搜索引擎。因此,您可以将rdbms用于符合酸的操作,以强制执行约束。
在下一刻,您可以使用lucene搜索某些单词,获取相应的标识符,然后向rdbms询问有关该标识符的更多信息。
如果你检查'更具异国情调的'NoSQL数据库(图形数据库,基于列的数据库),你可以找到更多这样的用例,其中2个dbms非常适合相互补充。