2014-10-12 4 views
0

Я строю систему, которая позволяет пользователю называть N количество разных графиков через API. В настоящее время у меня есть рабочий прототип, который вытягивает графики из CouchDB. Однако по очевидным причинам я хотел бы перейти к графическому DB. Я понимаю, что Neo4J может обрабатывать только один график за раз или требует такой системы тегов, чтобы не смешивать графики. Ни один из этих подходов не кажется оптимальным. Каков наилучший подход для этого?Правильный способ хранения графиков с помощью Neo4J

Еще несколько вещей, которые следует обратить внимание: я буду называть эти графики и манипулировать ими чем-то вроде networkx, и я рассмотрел возможность хранения графиков в «обычной» базе данных, а затем переместил их в Neo4J по мере поступления запросов, который кажется довольно интенсивным.

+0

Если ваши графики отключены, вы не будете трогать других через обход. –

+0

Итак, я мог хранить десятки графиков в одном экземпляре, не мешая производительности? – marc

ответ

1

Neo4j не имеет концепции множественных баз данных, подобных большинству реляционных баз данных, используя CREATE DATABASE. В Neo4j есть одно поле графика, которое вы можете использовать.

Так у вас есть 2 варианта:

  1. использование экземпляров индивидуальный Neo4j (одинарные или кластерные) для каждого графика, возможно, используя Neo4j в интегрированном режиме полезно здесь
  2. использовать один экземпляр Neo4j (один или кластер) и хранить ваши данные в отдельных подграфах. Если подграфам нужны некоторые взаимосвязи, вы можете использовать метки для определения того, к какому подграфу принадлежит определенный узел.