Python的NoSQL数据库独立ORM/ODM

3

我正在研究使用NoSQL数据库(MongoDB)的软件架构。理想情况下,我希望使用一个独立于数据库的ORM / ODM,但我找不到类似于SQLAlchemy的NoSQL库。你知道有吗?

我发现很多包装器,但没有看到任何独立于数据库的东西。如果没有,是因为所有的NoSQL数据库都有不同的用例,一个通用的ORM / ODM就没有像在SQL的情况下一样有意义吗?


1
也许它还不存在,因为人们不太可能交换他们的NoSQL数据库? - Simeon Visser
4
每个基于关系的数据库都支持一些方言化的SQL,这些方言有更多或更少的标准化。 NoSQL数据库年轻,而且大部分动态地改变它们的QL语法。这是开发人员不愿意使用通用ORM的主要原因(以我所知道的)。 - selfnamed
@selfnamed 看起来很合理!回答一下,我会给你信用。 - Niklas9
你可以参考 PyMODM 用于 MongoDB。 - Karthic Raghupathi
2个回答

0

不确定Python是否支持,但在Java中,您可以使用像PlayORM这样的框架来实现此目的,它支持Csasandra、HBase和MongoDb。


0

有许多好的选择可以用于 ODM

  • dataclasses 自 Python 3.7 起,3.10 版本更加稳定
  • msgspec 第三方库,专注于速度和验证
  • pandas 处理数千万个同类记录
  • pydantic 稳定可靠,虽然现在有点老派

一个成功的 ORM 应该是针对项目特定的,而不是 nosql 存储,因为它需要知道如何表达文档之间的关系以及键前缀。我只是手动完成了这项工作,但我想可能存在一个框架。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接