Графовая база данных для.NET
Я разрабатывал приложение, основанное на.NET/Mono Framework, которое должно интенсивно использовать кратчайший путь в теориях графа, и я хотел бы использовать нативное решение для обхода узлов графа вместо внедрение суррогатных решений, которые вряд ли можно было бы обслуживать и которые могли бы сильно повлиять на производительность.
Я нашел приложение, которое идеально подходит для моей области: neo4j.
К сожалению, это приложение написано исключительно на Java-коде и не переносимо на.NET из-за огромных различий между двумя архитектурами.
Кто-нибудь знает, есть ли там какой-нибудь порт neo4j или подобное решение для.NET?
16 ответов
Microsoft тоже работает над одним - Trinity
Изменить 1:
Я только недавно наткнулся на этот репозиторий. Я еще не посмотрел код и не использовал его, но у него есть.NET-интерфейсы для:
- BluePrints
- Rexster
- трубы
Эти утилиты могут использоваться для подключения к нескольким базам данных Graph, включая neo4j и OrientDB. Для получения дополнительной информации также посмотрите на TinkerPop.
Я удивлен, что никто не упомянул Fallen-8, который похож на Neo4J для платформы.NET (также с открытым исходным кодом).
BrightstarDB от Codeplex. BrightstarDB - это быстрая, встраиваемая и масштабируемая база данных NoSQL с открытым исходным кодом для платформы.NET с генерацией модели данных с первым кодом.
С тех пор, как Neo4j начал получать поддержку REST, ситуация немного изменилась, теперь в разработке находятся два разных клиента.Net REST:
Я удивлен, что никто не упомянул QuickGraph, очень зрелую и функциональную библиотеку графов для NET. Он имеет несколько графовых представлений и множество алгоритмов.
База данных высокопроизводительных графов DEX имеет выделенный.Net API, поэтому может быть полезно интегрировать ее с вашей архитектурой. Вы можете скачать это здесь
Теперь вы можете бесплатно загрузить и протестировать базу данных 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
Rgds
На данный момент доступны только привязки для Clojure, JRuby, Jython и Python. Однако, вероятно, лучшим вариантом на данный момент будет REST API JRuby для Neo4j, http://github.com/andreasronge/neo4j/tree/2840b4c3d58e0250fdc31b63b11ac941ea944ba6/test/rest.
Это довольно старый вопрос, но, как я наткнулся на него, я думаю, что другие тоже.
Есть клиент для.Net и Neo4j http://hg.readify.net/neo4jclient/wiki/Home
и API для Cypher http://mtranter.com/2013/09/21/cypher-net-a-neo4j-cypher-api/
Нашел эту ссылку в списке рассылки Neo4j этим утром (кажется, я не могу найти ее снова):
http://www.thewebsemantic.com/2010/06/03/neo4j-on-net-3-5/
По сути, это позволяет вам компилировать Java в.net, а затем вы можете просто ссылаться на только что созданную сборку.
Еще не пробовал, но скоро планирую.
Пожалуйста, посмотрите на новую версию.NET DEX на www.sparsity-technologies.com .
Они назвали его CloudGraph, и он будет запущен на http://www.cloudgraph.com/.
Neo4Net также находится в стадии разработки: http://neo4net.codeplex.com/
Ребята из http://www.webling.com/ также работают над собственной графической базой данных.NET для поддержки своих веб-приложений. Я не думаю, что он выпущен публично, но похоже, что он набрал обороты.