Which Triplestore for rapid semantic web developme

2020-05-16 05:46发布

问题:

Ease of installation/use is the most important factor here - not performance.

Small is OK as large datasets are not expected.

回答1:

I'd also recommend sesame, its lightweight, pretty easy to install, and provides good performance for small datasets. Query performance is far better with Sesame 1.2.x than Sesame 2.x because of the addition of context support to the 2.x series.

I've tested sesame installation/deployment with tomcat, resin, and jetty, and it worked easily with all of them. I don't recommend the bindings to RDBMS components such as Postgres or MySQL, at least in the 1.x series, performance was not acceptable, even for prototype applications. The in-memory and native implementations provide good query performance and offer simple persistence, though they lack true transactions.

Jena has a decent API, and a lot more support for databases, reasoners, etc, but has a larger footprint, and is a little more cumbersome to use on the whole.



回答2:

I've been impressed with ARC2 as a PHP/MySQL offering. The project website has a helpful "Getting Started" to get you up and running quickly and questions/problems are addressed quickly on the mailing list. Depending on what you are trying to do, SPARQLscript, a mini-language add-on to ARC2 for processing query results may be very useful.



回答3:

Old question, but just as an update:

I have tried Virtuoso, OpenRDF Sesame, and 4store (all in their June 2012 versions) and found 4store the nicest to work with, as loading data, starting and stopping the server, etc., is quite simple.



回答4:

Check out the SWI-Prolog Semantic Web Library. Should be very easy to use, even with little knowledge of Prolog.



回答5:

We use sesame. It is implemented in Java therefore you will have cross-platform support. If you are comfortable working with Tomcat, it should be pretty easy to install.



回答6:

If you are familiar with Ruby, the RDF.rb library is very quick to get started with; installation via RubyGems is as simple as:

$ sudo gem install rdf

In addition to working with in-memory RDF data, currently available RDF.rb storage adapters include SQLite, PostgreSQL, MongoDB, Cassandra, RedStore and Sesame.

Loading and parsing RDF data from the web also could not be any easier:

graph = RDF::Graph.load("http://datagraph.org/jhacker/foaf.rdf")

See the RDF.rb project page for tutorials, code examples and API documentation.



回答7:

I tried Virtuoso Open Source, Jena and Sesame....and the latter, also thanks to this...is much more easy to install.



回答8:

If you are a .NET developer you may be interested in Intellidimensions Semantic SDK. If you want to load a graph in memory and then execute SPARQL queries against that graph the code is as simple as:

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");

If you are a student or researcher they will usually provide a free license if you contact them.



回答9:

4store is the easiest and fastest triple store I have worked with