Библиотека графических инструментов python с базой данных графов

Я хотел бы использовать некоторые функциональные возможности графического инструмента с данными в графической базе данных (скажем, neo4j, но любая графическая БД с поддержкой Blueprints была бы хороша, см. Проект Tinkerpop).

Я знаю (и немного баловался с) py2neo и хотел бы исследовать Bulbs как способ доступа к базе данных и проектировать как pyBlueprints.

Мой вопрос: как мне использовать функции графического инструмента для данных в базе данных графа (например, neo4j) без экспорта всего графа в graphML (или один из существующих форматов импорта графического инструмента) и т. Д.?

Я хотел бы, чтобы это было более динамичным, чем run query, find a subset of a graph, export, process with graph-tool, put data back into graph

Я знаю, что Blueprints предлагает "читателю / писателю GraphML", это решение?

1 ответ

Решение

Я думаю, что рабочий процесс, который вы представляете, вероятно, лучший и единственный, который вам доступен. Вы в терминах TinkerPop, я бы сказал, что рабочий процесс будет более конкретно:

  1. выполнить запрос - использовать консоль Gremlin
  2. найти подмножество графика. Запишите свой обход в консоли и выведите результаты в подграф. Используйте TinkerGraph в памяти для хранения этого подграфа - подробнее здесь.
  3. export - вызовите saveGraphML для вашего экземпляра подграфа
  4. обработать с помощью Graph-Tool - импортировать GraphML в Graph-Tool и делать то, что вам нужно сделать с ним
  5. вернуть данные в график - я не знаю, что такое Graph-Tool и его возможности, но консоль Gremlin позволяет вам работать с данными различными способами, что облегчает их перенос, - подробнее об этом здесь.
Другие вопросы по тегам