【发布时间】:2015-06-04 17:47:29
【问题描述】:
我完成了我的 Mongo 数据库的创建。它是在两个集合上制作的:
1. team
2. coach
我给你一个这些集合中包含的文档的例子:
这是一份团队文件:
{
"_id" : "Mil.74",
"official_name" : "Associazione Calcio Milan S.p.A",
"common_name" : "Milan",
"country" : "Italy",
"started_by" : {
"day" : 16,
"month" : 12,
"year" : 1899
},
"stadium" : {
"name" : "Giuseppe Meazza",
"capacity" : 81277
},
"palmarès" : {
"Serie A" : 18,
"Serie B" : 2,
"Coppa Italia" : 5,
"Supercoppa Italiana" : 6,
"UEFA Champions League" : 7,
"UEFA Super Cup" : 5,
"Cup Winners cup" : 2,
"UEFA Intercontinental cup" : 4
},
"uniform" : "black and red"
}
这是一份教练文件:
{
"_id" : ObjectId("556cec3b9262ab4f14165fcd"),
"name" : "Carlo",
"surname" : "Ancelotti",
"age" : 55,
"date_Of_birth" : {
"day" : 10,
"month" : 6,
"year" : 1959
},
"place_Of_birth" : "Reggiolo",
"nationality" : "Italian",
"preferred_formation" : "4-2-3-1",
"coached_Team" : [
{
"team_id" : "RMa.103",
"in_charge" : {
"from" : "26/june/2013",
"to" : "25/may/2015"
},
"matches" : 119
},
{
"team_id" : "PSG.00",
"in_charge" : {
"from" : "30/dec/2011",
"to" : "24/june/2013"
},
"matches" : 77
},
{
"team_id" : "Che.11",
"in_charge" : {
"from" : "01/july/2009",
"to" : "22/may/2011"
},
"matches" : 109
},
{
"team_id" : "Mil.74",
"in_charge" : {
"from" : "07/nov/2001",
"to" : "31/may/2009"
},
"matches" : 420
}
]
如您所见,我使用了标准化模型:每个教练都有一系列受过教练的团队。
我想把这个Mongo数据库转换成图形数据库,特别是Neo4j;我的目标是表明在这个高度连接的领域中,neo4j 比 Mongo 有更好的性能(例如查询:“找到 Carlo Ancelotti 执教的所有球队的成绩单,在 mongo 中需要两个查询,而在 neo4j 中就足够了关注关系)。
我在论坛上找到了this guide,它使用 Gremlin 将 mongo 文档集合自动转换为 neo4j 图。
问题是该指南只讨论了一个集合。
那么,是否可以从我的 mongo 数据库(有两个集合)开始自动生成 neo4j 图,还是必须“手动”创建图?
【问题讨论】: