Neo4J是否适合clojure?

时间:2011-04-15 18:38:39

标签: clojure neo4j

我发现关系数据库非常适合Clojure,因为set函数(project / join / union等)很好地映射到数据库模式,使得Clojure几乎非常适合与数据库一起使用。

我想知道Clojure如何适应像Neo4j这样的图形数据库呢?

2 个答案:

答案 0 :(得分:13)

Neo4J有clojure'ey绑定herehere以及here

你可以获得每个from clojars

的leiningen和maven配置

allegrograph是另一个广泛supported in clojure的类似图表数据存储。所以有一些证据表明答案可能是肯定的!

图形存储很好地将它们自然地借给不可变树,这可能比Clojure更适合于集合,但这都是相当主观的。我能给出的最客观的答案是指出图形存储/三重存储的现有用途。

答案 1 :(得分:8)

Mark Watson的书(免费pdf版:http://www.markwatson.com/opencontent/book_java.pdf)是他去年自行出版的一本鲜为人知的Clojure书,涵盖了一些有用的图形技术,主要是指纹图谱。

我自己对图形数据库库没有多少经验,但上面引用的书中提到neo4j经过优化可以遍历图形,而allegrograph则针对子图匹配进行了优化。因此,选择可能取决于您的具体应用。

如果你使用指控,那么如果你购买他的书的副本,那本书的作者会放弃他的包装上的AGPL许可用于生产用途,当然可以在许可的条件下自由使用https://github.com/mark-watson/java_practical_semantic_web

clojure-neo4j包装器库存在,但不清楚它是否会在上次提交日期https://github.com/JulianMorrison/neo4j-clojure时被代码腐烂或准备好使用。最近更新的fork,由mattrepl提供,但不久之前:https://github.com/mattrepl/clojure-neo4j.git