Я закончил создание моей базы данных Mongo. Он сделан на двух сборниках:Преобразование MongoDB с двумя коллекциями в графике neo4j
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 (Например, запрос: «Найти palmarès всех команд, тренированных Carlo Ancelotti, в mongo требует два запроса, вместо этого в neo4j достаточно следовать отношениям).
Я нашел this guide на форуме, который использует Gremlin преобразовать коллекцию Монго документов в Neo4j графа автоматически.
проблема заключается в том, что руководство говорит о только одной коллекции.
Итак, можно генерировать автоматически диаграмму neo4j, начиная с моей базы данных mongo (с двумя коллекциями), или мне нужно создать график «вручную»?
Хорошо, спасибо за ваш ответ. Я думал, что Гремлин создает график из mongo -.- Итак, если я создаю график, используя neo4j v2.2.2 или используя Gremlin, каковы различия? – DistribuzioneGaussiana
Ну, я думаю, вы понимаете на этом этапе, что в любом случае вам придется написать код для построения своего графика независимо от того, какой инструмент вы используете для этого. Я не знаю никаких специальных инструментов для Neo4j, которые упрощают чтение данных из mongodb. Так что в значительной степени вам придется писать код java против API-интерфейса neo4j или, возможно, массировать ваши данные mongo во что-то, что может импортировать cypher (т. Е. Csv). С помощью gremlin вы делаете то же самое (например, пишите программу), но из сообщения в блоге я надеюсь, что вы можете увидеть интуитивно понятный шаблон разработки. –
Вы правы. Хорошо, я постараюсь использовать Гремлина. У меня была проблема, и я открыл новую тему. Вы можете взглянуть? Благодарю. – DistribuzioneGaussiana