2017-02-21 29 views
1

Допустим, у меня есть два типа узлов (: Город). Каков лучший подход к хранению отношений, когда какой-то пользователь ходит из одного города в другой ?. Обратите внимание, что для этого случая мы хотим сохранить значение дня (NOT daytime) и имя пользователя.Свойство отношения Neo4j - массив значений против дублирования отношений

Позволяет сказать, что тот же пользователь ходит между теми же двумя городами на 5 другой день

То, что я думал о том:

1) будет новый relationahip каждый раз, когда пользователь ходит из города (a) в Город (b). Тем не менее, это создало бы 5 разных отношений с почти одним и тем же контентом (в этом случае такое же имя пользователя), только значение day будет отличаться.

2) будет одно отношение для каждого user, а один тип данных (длинный) для свойства day будет заменен массивом длинных значений.

Как вы думаете, лучший подход? Либо создавайте множественные отношения, даже если они разделяют большинство своих свойств, либо создают одну связь с этими общими свойствами и помещают переменные в массив. Если у вас есть другие идеи или предложения, напишите их :)

Thanks c.

+0

Какие запросы вы планируете делать по этим данным? Например, вам нужно будет посмотреть, по каким городам люди шли в определенные дни? В каких городах человек проходил через какое-то время? Какие люди шли между двумя городами и в какие дни? Сколько людей ходило между несколькими городами в пределах определенного промежутка? – InverseFalcon

+0

@InverseFalcon Спасибо за ответ! Основной запрос будет: какие люди шли между одними и теми же двумя городами для определенного диапазона дней. Так, например, у меня есть City (a) City (b), и я хочу знать, кто ходил между этими двумя городами в день (1 - 3) – jpact

ответ

2

В духе графиков, вы можете:

  • есть узел города
  • есть узел для пользователя
  • есть узел для факта ходьбы

enter image description here

+0

Привет @ stdob-- , но что, если 'Христиан' ходил между Париж и Берген 5 раз? Если граф имеет 5 разных узлов, или узел с номером '3' будет содержать массив значений, когда (в какие дни) Кристиан ходил между этими двумя городами? – jpact

+0

@creck Да, пять разных узлов для каждого факта ходьбы. –

+0

Спасибо, вот что я хотел знать :) – jpact