Графовая база данных для .NET [закрыто]
Проблема с использованием Neo4j на .NET
Я разрабатываю приложение на базе .NET/Mono, которое должно активно использовать теории о кратчайших путях в графе. Мне хотелось бы использовать нативное решение для обхода узлов графа, а не реализовывать заменители, которые будут трудно поддерживать и существенно повлияют на производительность.
Я нашел приложение, которое идеально подходит под мои требования: neo4j.
К сожалению, данное приложение написано исключительно на Java и не переносимо на .NET из-за значительных различий между двумя архитектурами.
Кто-нибудь знает, существует ли порт Neo4j или аналогичное решение для .NET?
Заранее спасибо за помощь!
5 ответ(ов)
Чтобы перевести данный текст на русский в стиле ответа на StackOverflow, можно сделать так:
Нашел эту ссылку на рассылке Neo4j сегодня утром (кажется, не могу её снова найти):
http://www.thewebsemantic.com/2010/06/03/neo4j-on-net-3-5/
По сути, она позволяет компилировать Java в .NET, а затем вы можете просто ссылаться на вновь созданную сборку.
Пока не пробовал, но планирую сделать это в ближайшее время.
Это довольно старый вопрос, но, так как я на него наткнулся, предполагаю, что и другие могут его встретить.
Существует клиент для .NET и Neo4j:
Neo4jClient на Readify
Также доступен API для Cypher:
Cypher.NET - API для Neo4j Cypher
Вы можете бесплатно скачать и протестировать графовую базу данных DEX с .NET API, выпущенную компанией Sparsity Technologies в июле 2011 года, по следующей ссылке:
http://www.sparsity-technologies.com/dex_downloads
Кроме того, инструкция о том, как создать свою первую графовую базу данных с использованием .NET, доступна на Dzone:
http://architects.dzone.com/articles/how-build-your-first-net-graph
С уважением!
Я удивлён, что никто не упомянул QuickGraph — это очень зрелая и богатая функционалом библиотека для работы с графами в .NET. Она предлагает несколько представлений графов и множество алгоритмов.
Вот ссылка на проект: http://quickgraph.codeplex.com/
В настоящее время доступны только связывающие библиотеки для Clojure, JRuby, Jython и Python. Однако, вероятно, наилучшим вариантом будет REST API для Neo4j на JRuby, который вы можете найти по следующей ссылке: http://github.com/andreasronge/neo4j/tree/2840b4c3d58e0250fdc31b63b11ac941ea944ba6/test/rest.
Как получить согласованное побайтовое представление строк в C# без ручного задания кодировки?
Как устранить предупреждение "Точек останова не удастся достичь. Символы не были загружены для этого документа"?
В C# в чем разница между public, private, protected и отсутствием модификатора доступа?
Как сопоставить любой символ на нескольких строках в регулярном выражении?
Не удается обновить EntitySet: определен DefiningQuery, но отсутствует элемент <UpdateFunction>