NoSQL数据库的JPA规范

NoSQL数据库的JPA规范,jpa,nosql,Jpa,Nosql,我刚刚听说JPA规范现在可用于nosql数据库。我这里的问题是,它与我们用于关系数据库的相同吗?因为关系数据库和nosql数据库之间有很多不同之处,特别是当我们谈论事务时,这两种数据库是完全不同的。oracle是否发布了包含nosql数据库新更改的新规范 JPA是完全为RDBMS数据存储定义的。请参阅Oracles规范 有一些著名的JPA实现扩展了对JPA的支持,也允许一些非RDBMS数据存储与相同的API一起使用(最初使用的是,但后来和eclipseelink复制了这个)。虽然您可以使用相同的

我刚刚听说JPA规范现在可用于nosql数据库。我这里的问题是,它与我们用于关系数据库的相同吗?因为关系数据库和nosql数据库之间有很多不同之处,特别是当我们谈论事务时,这两种数据库是完全不同的。oracle是否发布了包含nosql数据库新更改的新规范


JPA是完全为RDBMS数据存储定义的。请参阅Oracles规范

有一些著名的
JPA
实现扩展了对JPA的支持,也允许一些非RDBMS数据存储与相同的API一起使用(最初使用的是,但后来和eclipseelink复制了这个)。虽然您可以使用相同的API进行持久化,但您必须意识到您做出了一些妥协,因为查询语言并不总是适合非RDBMS数据存储。据我所知,没有计划为非RDBMS制定
JPA
规范


有一个
JDO
Java数据对象
)持久性规范,适用于RDBMS和非RDBMS,并且JDO API更适合于许多不同类型的数据存储。

JPA是关于对象关系映射的,所以它不能没有SQL数据库。您必须找到另一个规范。有Hibernate OGM,它是nosql数据库的JPA实现之一;我猜这一个天生就没有规范。我两个都不用;我认为两者都是浪费时间,只会增加不必要的依赖性和复杂性。他们是为不懂SQL的人准备的。你的意思是JPA只用于RDBMS数据存储,但是有很多关于JPA用于nosql db的讨论和讨论,nosql db有一个Hibernate版本叫做Hobernate Object/Grid Mapper,你怎么看?至于JPA规范,nosql db有新版本吗?我已经说过JPA只针对RDBMS,所以这句话告诉您,对于非RDBMS没有新版本。更新的答案提到了JDOAPI。这个网站不是为“what do you think”类型的问题而设的。那么他们为什么用它来处理nosql数据库呢?正如您所说的,这是针对RDBMS db的,而nosql db没有新版本?为什么?它们允许用户选择将其用于非RDBMS。鉴于RDBMS和nosql DBMS之间存在许多差异,供应商允许超出规范的额外选项以及如何将JPA(用于RDBMS)用于nosql db并不违法。这是怎么回事?