Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

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

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?

like image 696
John Assymptoth Avatar asked Feb 19 '23 14:02

John Assymptoth


2 Answers

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.

like image 82
Michael Avatar answered Apr 29 '23 17:04

Michael


I think the point is what interface you will use/implement on your (?) data.

There are several way to go, my own would use SWI-Prolog to model the RDF storage, possibly with SPARQL, while accessing raw data via ODBC.

Then i have a chance to avoid static mapping (converting can be a risk, i think) at least until some 'stable' semantic emerges from data.

SWI-Prolog has also some point as reporting tool, and generative Web presentation.

Writing in Prolog the W3C rules to map 'automatically' relations to triples seems an interesting task, I'll try it...

like image 44
CapelliC Avatar answered Apr 29 '23 17:04

CapelliC