2015-11-11 5 views
0

Не уверен, что это лучший форум, чтобы задать этот вопрос. Прошу извиниться, если это не так, и скажите мне, где я могу перенаправить этот вопрос, прежде чем проголосовать за меня.Neo4J - Строительный график

Я хотел бы знать, является ли мой подход к построению моего графика наиболее подходящим или нет, принимая во внимание тип запроса, который я ожидаю выполнить на нем.

Итак, я строил еженедельно график на Neo4J из твитов, взятых из Stream API, и для конкретного списка хэштегов. Список хэштегов растет каждую неделю.

Это исследовательский проект, так что я сделаю эту деятельность всего около двух месяцев.

я решил смоделировать мой график таким образом:

  • Nodes:

    • пользователя, излучаемого твит
    • пользователя упоминается в твиттере
    • оригинал пользователь в случае ретвитого
  • Ребра:

    • Процитировал
    • упоминается

Я хотел бы, чтобы извлечь подграф, то есть. все узлы и ребра, связанные с указанным тегом, из основного построенного графика.

Мой вопрос таким образом:

А. Что лучше добавить атрибут тега для всех пользователей и ребер?

или

B. Что лучше определить новый узел, для каждого тега, а затем создать ребра между тегами и пользователей? Своего рода отношения: - связан

Тогда, что бы рекомендуемый способ запроса графа дб ... Так exampple, если рекомендуются второй раствор Б., должен и может запрос выполняется в два этапа запроса: с

  • шаг 1: все узлы, которые имеет отношение связано с
  • step2: все узлы и ребра, связанные с узлами, извлеченных на первом этапе запроса.

ответ

1

Я думаю, что это имеет смысл иметь Tag узлов с отношением с Tweet к Tag узлов, которые используют твят: (Tweet)-[:TAGS]->(Hashtag)

Вы можете посмотреть на этом Twitter demo app, что вытягивает данные Twitter в Neo4j и имеет некоторые example queries вам может показаться интересным. Существует сообщение в блоге here, в котором обсуждается, как было построено это веб-приложение.

Вы также можете быть заинтересованы в Neo4j Slack group, в частности # справочном канале моделирования для обсуждения/проблем моделирования данных.

Смежные вопросы