2012-04-20 6 views
6

Я совершенно новый для баз данных NOSQL (или любой базы данных), и мне нужно построить базу данных графа в Java. Я никогда раньше не использовал SpringSource. Будет ли использование Spring Data neo4j упростить процесс создания базы данных графа или это усложнит ситуацию? Должен ли я просто попытаться работать с neo4j напрямую? спасибо.В чем преимущества использования Spring Data neo4j только при непосредственном использовании neo4j?

ответ

5

Это зависит от вашего прецедента. SDN хорошо подходит, когда вы уже работаете в Spring Environment и имеете богатую модель домена, которую вы хотите отобразить на графике. SDN хорошо подходит во всех случаях, когда вы в основном работаете с результатами нескольких сотен или тысяч объектов POJO, которые должны взаимодействовать с существующими библиотеками, u-уровнями или другими частями приложения, которые имеют дело с POJO.

Если вы не работаете в среде Spring, это зависит от вас, это добавляет сложности в настройках и зависимостях. Существуют также другие решения, такие как jo4neo или Tinkerpop Frames, которые работают поверх Neo4j.

Это медленнее, чем родной API Neo4j из-за введенной косвенности.

Для обеспечения максимальной производительности вы всегда можете отказаться от API Neo4j.

В целом Core-API является самым быстрым, между ними стоит очень хорошая cypher-query language, что очень выразительно.

+0

Я еще не работаю в среде Spring, и я просто хочу функциональность neo4j, поэтому я попробую работать с языком Core-API или cypher-query. Большое спасибо! – user1056805

+0

Печально SDN добавляет много латентности. Cypher @Query, который занимает 4 мс на оболочке Cypher, принимает 1700 мс (включая итерацию по 150 возвращенным int) через Spring на той же машине. Таким образом, замедление от SDN возвращает мой запрос к тому же времени, когда он работал на моей РСУБД. :( –

+0

Зависит от режима отображения, можете ли вы поделиться своей настройкой и своими запросами, чтобы я мог посмотреть на нее? –

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

  • Нет связанных вопросов^_^