Здесь наиболее важным фактором является простота установки / использования, а не производительность.
Маленькие - это нормально, поскольку больших наборов данных не ожидается.
Здесь наиболее важным фактором является простота установки / использования, а не производительность.
Маленькие - это нормально, поскольку больших наборов данных не ожидается.
Я также порекомендовал бы sesame, его легкий, довольно простой в установке и обеспечивающий хорошую производительность для небольших наборов данных. Производительность запросов в Sesame 1.2.x намного выше, чем в Sesame 2.x из-за добавления контекстной поддержки в серию 2.x.
Я тестировал установку / развертывание кунжута с tomcat, смолой и причалом, и он легко работал со всеми из них. Я не рекомендую привязки к компонентам СУБД, таким как Postgres или MySQL, по крайней мере, в серии 1.x производительность была неприемлемой даже для приложений-прототипов. Реализации в памяти и собственные реализации обеспечивают хорошую производительность запросов и предлагают простую персистентность, хотя в них отсутствуют настоящие транзакции.
Jena имеет приличный API и гораздо больше поддержки для баз данных, средств рассуждений и т. д., но занимает больше места , и в целом он немного более громоздок.
Я был впечатлен ARC2 как предложением PHP / MySQL. На веб-сайте проекта есть полезный раздел «Приступая к работе», который поможет вам быстро приступить к работе, а вопросы / проблемы быстро решаются в списке рассылки. В зависимости от того, что вы пытаетесь сделать, SPARQLscript, надстройка на мини-языке к ARC2 для обработки результатов запросов, может быть очень полезной.
Старый вопрос, но как обновление:
Я пробовал Virtuoso, OpenRDF Sesame и 4store (все в их версиях от июня 2012 года) и обнаружил, что с 4store лучше всего работать, так как загрузка данных, запуск и остановка сервера и т. Д. Довольно просты.
Ознакомьтесь с библиотекой семантической сети SWI-Prolog. Должен быть очень простым в использовании, даже с небольшим знанием Пролога.
Если вы знакомы с Ruby, можно очень быстро начать работу с библиотекой RDF.rb; установка через RubyGems очень проста:
$ sudo gem install rdf
Помимо работы с данными RDF в памяти, доступные в настоящее время адаптеры хранилища RDF.rb включают SQLite, PostgreSQL, MongoDB, Cassandra, RedStore и Sesame.
Загрузка и анализ данных RDF из Интернета также не может быть проще:
graph = RDF::Graph.load("http://datagraph.org/jhacker/foaf.rdf")
См. Страницу проекта RDF.rb для ознакомления с руководствами, примерами кода и документацией по API.
Я пробовал Virtuoso Open Source, Jena и Sesame .... и последнее, также благодаря this ... установить намного проще.
Если вы разработчик .NET, вас может заинтересовать Intellidimensions Semantic SDK. Если вы хотите загрузить граф в память, а затем выполнить запросы SPARQL к этому графу, код будет таким же простым, как:
var gds = new GraphDataSource();
gds.Read<RdfXmlReader>(File.ReadAllText(@"C:\graph.owl"));
Table results = gds.Query("select ?s ?p ?o where {?s ?p ?o} limit 10");
Если вы студент или исследователь, они обычно предоставляют бесплатную лицензию, если вы свяжетесь с ними.
4store - самый простой и быстрый тройной магазин, с которым я работал