有人能指点我在谱系学上如何使用图表数据库吗?我想学习neo4j,我使用python,所以我想为自己制作一个系谱图db来学习图形db。我搜索了一些例子来模仿和学习(任何图db,任何语言),但是我发现的却是如此之少。
注意,我指的是图db,它的结构与关系数据库不同。见数据库。
我正在寻找一个家谱的示例模式。
发布于 2014-03-23 15:24:29
如果你想学习做图数据库,你不需要使用任何软件。铅笔,纸和大脑就行了。要想想出一个设计方案,你需要记住以下几点:
在下面的图表中,您将看到一个可以作为设计基础的图表。

你必须想象每个节点都有一个名字,出生日期等等.和唯一的标识符。
它代表两个互不相连的家庭,左边一个有两个孩子,右边一个有三个孩子。
使用上面的图表,您可以计算:
还有一些,因为只有两个只有父母和孩子的家庭,没有祖父母或大孩子的代表,你可能无法理解实际上你也可以计算以下查询:
现在,如果您想使用Python进行实验,那么您可以选择几个选项,首先是更简单的设置:
纯蟒蛇:
它们是其他解决方案,但如果没有更多关于目标应用程序(例如web或桌面)的上下文,我无法将它们全部列出。它们是关于neo4j网站的一些信息,可能会有所帮助。
尽管如此,最好的解决方案可能涉及neo4j,但如果您想在多个数据库之间轻松切换以找到性能最佳的数据库,则需要网络应用程序的雷斯特或其他应用程序的蓝图。直接使用neo4j服务器的唯一原因是能够使用赛弗查询语言。
如果我必须创建一个系谱‘ve应用程序并利用它创建一个企业,我将使用我已经构建的软件,即:
那些还没有准备好按原样生产。但那就是我会做的。
发布于 2014-03-23 15:39:44
如果您想使用快速数据库,没有服务器(也没有JVM)。我建议您尝试全新的斯巴凯 (正式Dex) python绑定。然而,原始API是不可移植的。然而,性能是数量级的更快。
第二个选择是使用鳞茎,它通过REST运行在Neo4j之上,它还支持任何Rexster服务器。查询语言是Gremlin (Cypher也能工作)。好的一点是,如果它更适合您的需要,您可以切换到不同的后端。
关于您的DB方案,您至少有一个节点和一个边缘:
1节点: PERSON (姓名、出生、死亡)是索引字段。
1从人到人的定向限制边缘: CHILD_OF或PARENT_OF。
您可以在节点之间添加更多的边缘,例如:兄弟姐妹、MARRIED_TO等。
https://stackoverflow.com/questions/12639342
复制相似问题