Semantic Web - Store app data directly in RDF or store in SQL and export/import later

iis, oracle, rdf, sql-server, windows

Solution

If you really want to stick with a relational database, which I don't recommend, you can use something like D2RQ or you can look for something that supports, say, R2RML. Or you could try SDB.

However, if you want to use semantic technologies, you are much better off using an actual RDF database. You'll get better performance and you'll have a better development experience. There are a lot of options out there, Mulgara, Jena, Sesame, Stardog, OWLIM, AllegroGraph, BigData, Virtuoso, and Oracle provides some RDF support if you have an Oracle license, but in my experience, it's not as performant as dedicated RDF databases.

A lot of the SemWeb toolchain is in Java, but since you mentioned IIS, perhaps you're in the MS world, in which case, dotNetRDF is a good option.

But in summary, use dedicated RDF/SemWeb tools if you're going to be using the technology. Don't try and shoehorn RDF into non-semantic stuff, and don't write your own. No need to re-invent the wheel, there's lots of good SemWeb software out there to get your project going.

Problem

I have a standard IIS web application which stores its data in a standard SQL Server or Oracle DB. I'm now interested in storing the data in RDF format, to go full Semantic Web. Is it recommended to store data directly in RDF format? CRUDQ operations will be done on the data. Performance wise is this a good move? If not (like I'm assuming), I guess I'd maintain standard SQL DBs and export/import data to/from RDF? How can I do this? Are there good converters out there?

Original source