Neo4j пространственный рубиновый

Недавно я начал экспериментировать с графовой базой данных neo4j в приложении Rails, и мне понравилось, насколько богатым является neo4j. Хотя я видел пространственную поддержку neo4j через neo4j-spatial, я не видел примера в ruby, чтобы начать работу (используя ruby-порт neo4j-spatial).

Сначала я хочу получить модель User и модель Poi с атрибутами lat, lng и сделать запрос: Покажите мне пои, которые находятся не более чем в 10 км от меня, но я понятия не имею как я должен использовать рубиновый драгоценный камень. Все, что я нашел по этому вопросу, это это место в блоге.

Кто-нибудь знает, как я должен сделать это в рубине? Спасибо!


person Gerry    schedule 28.11.2011    source источник


Ответы (2)


Я думаю, что рубиновый драгоценный камень немного устарел. Я предлагаю либо разветвить и обновить его, либо использовать для этого прямые API Java, см. оригинальные методы Java, которые просто обертывает Spatial ruby.

Позвольте мне знать, если вы хотите внести свой вклад и обновить, было бы здорово!

person Peter Neubauer    schedule 28.11.2011
comment
Что ж, я готов разветвить и обновить драгоценный камень, но для этого мне нужны некоторые ресурсы, например, документация по пространству neo4j. Есть ли какая-либо документация по java API? - person Gerry; 29.11.2011
comment
Хорошо, прямо сейчас большинство, если это находится в тестах, см. github.com/neo4j/spatial/tree/master/src/test/java/org/neo4j/ для примеров. Мы пытаемся привести документацию в соответствие с обычной документацией Neo4j, но она все еще немного скудна. Я мог бы отправить вам текущее состояние, хотя? Почта? - person Peter Neubauer; 05.12.2011
comment
Спасибо Питер! Вы можете отправить мне электронное письмо с текущим состоянием документации на ath.ger по адресу gmail! Большое спасибо, и я был бы рад внести свой вклад! - person Gerry; 05.12.2011
comment
@ Джерри, ты создал обновление драгоценного камня neo4j-spatial.rb? Или каким-то образом включили эту функциональность, используя Java API напрямую? - person pixeltom; 31.05.2013

Я написал драгоценный камень как простую обертку. Это зависит от neo4j.rb, поэтому вы получаете все необходимые возможности ruby ​​on rails. Затем он также включает пространственные зависимости. Кроме того, он предоставляет утилиты для импорта и экспорта OSM и поддержки динамических слоев. Он не предоставляет утилит для переноса простого точечного слоя, который вам, кажется, нужен. Однако вы в любом случае получаете это бесплатно, поскольку jruby напрямую обертывает для вас все java API.

Я бы рекомендовал использовать neo4j-spatial.rb, а затем использовать возможности neo4j.rb для построения вашей модели. Получите доступ к слою простых точек непосредственно из jruby и просто добавьте к нему новые узлы. Затем вы можете вызвать функцию поиска расстояния, также из jruby.

person Craig Taverner    schedule 06.12.2011