2009-05-03 2 views
53

Я разрабатываю приложение на основе платформы .NET/Mono, которое должно сильно использовать кратчайший путь в графике, и я хотел бы использовать собственное решение чтобы пересечь узлы графа, вместо того, чтобы реализовывать суррогатные решения, которые вряд ли были бы подтянуты и могли бы существенно повлиять на характеристики.Графическая база данных для .NET.

Я нашел приложение, которое идеально подходит для моего объема: neo4j.

К сожалению, это приложение написано в Java-коде, и оно не переносится на .NET из-за огромных различий между этими двумя архитектурами.

Кто-нибудь знает, есть ли там порт neo4j или аналогичное решение для .NET?

+0

Что вы в конечном итоге используя для этого, и как же это получается? – smartcaveman

+0

Какое «огромное различие» остановило вас? Я портировал множество алгоритмов с Java на C#. Имеются бесплатные инструменты, которые делают большую часть механической работы для этой задачи. – BartoszKP

+0

Вы можете легко разместить базу данных neo4j и получить к ней доступ, используя синтаксис Cypher в вашем коде для запроса базы данных. Также есть хорошая реализация для .NET, которая, возможно, не была доступна в '09: http://www.neo4j.org/develop/dotnet. Также по сравнению с версией JAVA запросы.NET просто красивы <3 – Highmastdon

ответ

7

Microsoft также работает над одним - Trinity

Edit 1:
Я только недавно наткнулся на этот repository. Я еще не смотрел код или не использовал его, но он есть.NET интерфейсы:

  1. BluePrints
  2. Rexster
  3. Трубы

Эти утилиты можно использовать для соединения с несколькими базами Graph включая Neo4j и OrientDB. Для получения дополнительной информации см. Также TinkerPop.

+12

Все упомянутые проекты не разработаны для .NET и даже удалены из github. Trinity также является внутренним проектом Microsoft. –

+0

downvoting из-за комментария Джеффа, если вы читаете это, сделайте это также, так как это не полезный ответ. – knocte

+1

Прошу прощения, код в github больше не существует. Это произошло, когда я изначально выложил в 2011 году. В то же время посмотрите на [Sparksee] (http://www.sparsity-technologies.com/). –

6
+0

К сожалению, размер неизвестен, так как это не конечная группа, но его нужно постоянно увеличивать: возможно, количество узлов может плавать до нескольких миллионов, а такая структура в памяти будет иметь доступ к TB RAM, чего у нас нет. – Antonello

+0

как насчет db4o? он также имеет все свойства базы данных графа. –

+0

Меня будет интересовать решение, но я не нашел ссылки на эту функциональность db4o: можете ли вы указать мне? – Antonello

2

Единственное, что доступно сейчас, это привязки для Clojure, JRuby, Jython и Python. Однако, вероятно, лучший вариант для JRuby REST API для Neo4j, http://github.com/andreasronge/neo4j/tree/2840b4c3d58e0250fdc31b63b11ac941ea944ba6/test/rest.

+1

В настоящее время существует два разных клиента .Net REST [http://wiki.neo4j.org/content/Main_Page#Language_and_framework_bindings] для сервера [Neo4j REST] (http://wiki.neo4j.org/content/ Getting_Started_REST). – nawroth

1

Найдено ссылку на список рассылки Neo4j сегодня утром (я думаю, я не могу найти его снова):

http://www.thewebsemantic.com/2010/06/03/neo4j-on-net-3-5/

По сути давайте компиляции Java в .net и затем вам может просто ссылаться на вновь созданную сборку.

Не пробовал, но я планирую его скоро.

+1

В качестве альтернативы вы можете использовать IKVM.NET для перевода Java-Bytecode на .NET. – Gamlor

0

Ребята в http://www.webling.com также работают над собственной базой данных .NET для управления их веб-приложениями. Я не думаю, что он выпущен публично, но похоже, что у него есть импульс.

0

Они назвали его CloudGraph, и он будет запущен по адресу http://www.cloudgraph.com.

+3

выглядит так, как будто этого не сделали (пока). Бета-релиз в настоящее время запланирован на 1 квартал 2012 года, поэтому в настоящее время он составляет полтора года. – BozoJoe

3

Neo4Net10 on binpress может помочь.

это не то же самое, как Neo4Net на CodePlex предложил здесь тестером

+0

The binpress Neo4Net - это обертка для dotnet вокруг Neo4j – Chriseyre2000

0

Пожалуйста, обратите внимание на новый .net версии DEX в www.sparsity-technologies.com.

4

Теперь вы можете скачать и протестировать бесплатно в базе данных DEX графа с .NET API, опубликованной в июле 2011 годом разреженность Technologies, по адресу:

http://www.sparsity-technologies.com/dex_downloads

и Как построить свой 1-й базу данных графа с .NET ? Разъяснения в DZone:

http://architects.dzone.com/articles/how-build-your-first-net-graph

Rgds

4

DEX высокой производительности базы данных граф имеет специальный .Net API, так что может оказаться полезным для интеграции с вашей архитектуры. Вы можете downlad его here

5

BrightstarDB от Codeplex. BrightstarDB - это открытая, быстрая, встраиваемая и масштабируемая база данных NoSQL для платформы .NET с генерацией модели данных с кодовым именем.

7

Я удивлен, что никто не упомянул Fallen-8, который похож на «Neo4J» для платформы .NET (с открытым исходным кодом тоже).

+0

По состоянию на декабрь 2016 года последняя фиксация проекта выполняется 1 июня 2015 года, поэтому мы можем сказать, что она пока не поддерживается. –

2

Я удивлен, что никто не упомянул QuickGraph, очень зрелый и запакованный график библиотеки для NET , Он имеет множество графических представлений и множество алгоритмов.

http://quickgraph.codeplex.com/

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