Я просто попадаю в базы данных графов, и у меня, похоже, возникает проблема с выбором "index node" или "индексированного свойства" для отслеживания таких вещей, как "node type". Поскольку у меня нет реального опыта до сих пор, у меня нет никакой информации для принятия решения, и оба подхода кажутся одинаково действительными.
Итак, вопрос: Каковы компромиссы между двумя подходами и как влияет на масштаб (например, количество узлов)?
Для примера сценария предположим, что существуют два типа "вещей": User
и Product
, а ребра между узлами пользователя и узлами Product не имеют большого значения, но то, что нас беспокоит если нам нужны свойства type: User
и type: Product
для каждого node, или если мы хотим, чтобы каждый node имел ребро, указывающее назад на User
node и a Product
node, соответственно.
Какой подход лучше при каких обстоятельствах?
Примечание. Я смотрю на Neo4j и Titan в частности, но я думаю, что это будет иметь тенденцию применяться и в более общем плане.