我们正在考虑在 Java 服务器端应用程序中使用 MongoDB 作为我们的数据库。在我早期的项目中,我们使用 Hibernate 来抽象底层 SQL 数据库,以便我们可以从 MySQL 切换到 Postgres(例如),而无需更改应用程序代码。(除了通常的 ORM 功能之外,这是 Hibernate 给我们的一个 +)。
我为面向文档的 NoSQL 数据库搜索了类似的抽象层,但最终没有结果!
尽管 MongoDB 满足了我们今天的需求,但如果在 3 年后出现更好的面向文档的 NoSQL DB,我们不想更改我们的应用程序代码以迁移到新的 DB。
一种解决方案是我们自己编写抽象层(如果没有其他选择,我们会这样做)。
但是,如果来自 ORM 世界的人们直接编码到 NoSQL DB 接口上,我会感到惊讶?!数据库独立性在 NoSQL 世界中不是一个问题吗?还是通过其他方式实现的?