Я ищу универсальное решение для графической базы данных с существующей .NET-совместимой инфраструктурой и проверенной репутацией.
Я нашел ссылки на несколько вариантов в Google и SO, но не так много информации о существующих реализациях и использовании в реальных приложениях.
Я также рассматривал возможность использования гибридной базы данных документов (например, RavenDB или MongoDB) и выделенное Triple Store или RDBMS (например, SQL), а также расширение хранилища данных для поддержки нужной мне функциональности. Однако это, вероятно, довольно большая работа, и я надеюсь, что кто-то другой уже сделал это.
Что я посмотрел:
Trinity - это сделано Microsoft, и в литературе это звучит великолепно, но я не удалось найти ссылку для загрузки, а на странице выпуска указано: «Пакет Trinity в настоящее время предназначен только для доступа в интрасеть».
db4o - это объектно-ориентированная БД с встроенной поддержкой как .NET, так и Java. Кажется, что он продается как графическая БД, но я не уверен, являются ли структура / операции «граф» неявными или явными (или если она предлагает больше, чем любой другой документ db).
TinkerPop - этот проект выглядит именно так, как я ищу, но исходники github, похоже, только на Java. Этот общий доступ к слайдам с сайта graph-database.org обсуждает версии .NET, но мне не удалось их найти.
CloudGraph - звучит здорово, но, похоже, не существует.
GiraffeDB - «GiraffeDB - мощная система графовых баз данных для .NET framework 4.0, способная эффективно и доступно представлять сложную семантику» - это «в настоящее время на стадии планирования».
AllegroGraph 4.7 - это кажется довольно зрелым (поддержка SPARQL и Prolog с рядом клиентских интерфейсов), но закрыто источник. Я, очевидно, буду скептически относиться к проекту с закрытым исходным кодом, о котором я ничего не слышал.
Есть также несколько проектов Java, которые выглядят довольно многообещающими (HyperGraphDB и Neo4j, но я не встречал какой-либо существующей интеграции с .NET. Я не совсем против использования решения Java и выполнения этой беготни самостоятельно, но, опять же, я бы предпочел проверенное решение, которое экономит мне больше всего времени.