使用图形数据库(如Python中的Neo4j)的ORM
我想知道是否有一个解决方案或需要一个带有图形数据库f.e.Neo4j的ORM。我正在跟踪关系A与B之间的关系,B通过C等与A相关,从而构建一个大型实体图,包括这些实体的附加属性,并需要将它们存储在数据库中,我认为图形数据库将非常适合此任务 现在,对于类似sql的DBs,我使用sqlalchemyśORM来存储我的对象,特别是因为我可以从db中检索对象,并以pythonic的方式使用它们的方法等等 是否有针对Neo4j或其他Graph DB的对象映射解决方案,以便我可以在Graph DB中存储和检索python对象,并轻松使用它们使用图形数据库(如Python中的Neo4j)的ORM,python,orm,neo4j,graph-databases,bulbs,Python,Orm,Neo4j,Graph Databases,Bulbs,我想知道是否有一个解决方案或需要一个带有图形数据库f.e.Neo4j的ORM。我正在跟踪关系A与B之间的关系,B通过C等与A相关,从而构建一个大型实体图,包括这些实体的附加属性,并需要将它们存储在数据库中,我认为图形数据库将非常适合此任务 现在,对于类似sql的DBs,我使用sqlalchemyśORM来存储我的对象,特别是因为我可以从db中检索对象,并以pythonic的方式使用它们的方法等等 是否有针对Neo4j或其他Graph DB的对象映射解决方案,以便我可以在Graph DB中存储和检
或者您会像python sqlite文档中那样编写一些函数或适配器吗http://docs.python.org/library/sqlite3.htmlletting-your-object-adapt-itself 检索和存储对象 基于数据库的REST接口,Python现在有两种选择 正如我在@Peter提供的链接中提到的,我们正在开发neo4django,它更新了旧的Neo4j/Django集成。如果您需要复杂的查询,并且想要一个能够管理节点索引的ORM,或者您已经在使用Django,那么这是一个不错的选择。它的工作原理与本地Django ORM非常相似。在或上找到它
还有一个更通用的解决方案,称为,该解决方案应该适用于蓝图支持的任何图形数据库。我没有使用它,但从我所看到的来看,它主要关注领域建模——例如,Bulbflow已经有了工作关系模型,我们仍在研究它——但不像Django querysets+索引使用那样支持复杂的查询。它还可以让您更接近图形。也许您可以看看,它允许在Django、Flask或Pyramid中创建模型。但是,它是通过一个而不是Neo4j提供的来工作的,所以它可能没有原生绑定那么快。无耻的插件。。。还有我自己的ORM,您可能也想签出:
它构建在py2neo之上,在引擎盖下使用cypher和rest API调用,即不依赖于gremlin。我认为这里可能有有趣的地方?Bulbflow看起来很不错,我会看看它。它是绑定到烧瓶等,还是可以单独使用?我想是的。Neo4jDjango看起来也不错,但我希望有一个平台/框架独立或独立的解决方案,以后可以绑定到框架。据我所知,Bulbflow可以独立使用@范思哲的答案似乎是一致的。而且因为我一直在销售——不管名称如何,neo4django也可以——它对Django有一些代码依赖,但不要求您使用实际的框架:答案不再相关:neo4django和bulbflow都被放弃了。最近的OGM对象图映射器是neomodel,如果使用django,则使用django neomodel。注意:neomodel不再构建在py2neo之上,而是构建在官方的neo4j驱动程序上。