MapDB 与常规数据库
Posted
技术标签:
【中文标题】MapDB 与常规数据库【英文标题】:MapDB vs regular database 【发布时间】:2014-09-02 11:39:13 【问题描述】:何时应该通过 ORM 使用 MapDb 与常规数据库?除了直接映射到 Java.util.Map 之外,也可以使用 ORM 来实现。
【问题讨论】:
【参考方案1】:Jan 的回答非常有偏见,因为他是 MapDb 的作者。
MapDb 非常适合“内部存储”以及当有一个实体与“值”相关联时。它的界面非常简单,您可以使用自己的格式进行序列化(推荐),也可以依赖 MapDb 中高度紧凑的内部序列化格式。
当存储的数据处于某种类型的“外部控制”之下时,ORM 最有价值。这可能是公司中存在存储策略、预定义的 RDBMS 架构,或者数据必须可由某些为 SQL 制作的报告引擎查询。
在许多情况下,意见和个人偏好会产生重大影响。就我个人而言,我站在 Jan 的立场上,认为 ORM 很快就会变得非常难以处理,如果考虑到“数据迁移”,我认为 MapDb(以及许多其他 NoSQL 替代方案)胜出的次数更多。对于外部查询引擎,我会将数据修改事件从主应用程序发送到辅助系统,辅助系统解释这些事件并更新此类纯 SQL 系统所需的“视图”。
【讨论】:
【参考方案2】:如果您需要额外的性能和灵活性,我会使用 MapDB。否则,将常规 ORM 与 DB 一起使用。
【讨论】:
以上是关于MapDB 与常规数据库的主要内容,如果未能解决你的问题,请参考以下文章