Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1...

34
RDF Storage / RDF Database: Sesame 1 Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame Persistente Speicherung von RDF-Daten in einer relationalen Datenbank Ruslan Hrushchak, Pavel Selesnjov

Transcript of Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1...

Page 1: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 1

Institut für InformatikBetriebliche Informationssysteme

RDF Storage / RDF Database: Sesame

Persistente Speicherung von RDF-Daten in einer relationalen Datenbank

Ruslan Hrushchak, Pavel Selesnjov

Page 2: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 2

Institut für InformatikBetriebliche InformationssystemeRDF Storage

• Outline

Problematik bei der persistenten Speicherung von RDF-Daten

RDF und das relationale Datenmodell

Datenbank-Schemata zum Speichern von RDF-Daten

Technologien zum persistenten Speichern von RDF-Daten

__________________________________________________

Installation Architektur API Backends Webinterface

Page 3: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 3

Institut für InformatikBetriebliche Informationssysteme

• Problemstellung

Das Anfragen und persistente Speichern von RDF-Daten, die in einer Serialisierung (Beispielweise RDF/XML) vorliegen, ist nur für kleinere Datenmenge ausreichend.

Größere Datenbestände im RDF-Format verlangen nach effizienten Methoden zur ihrer dauerhaften Speicherung.

Datenbanken bedeuten mögliche Lösung des Problems.

Problematik

Page 4: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 4

Institut für InformatikBetriebliche InformationssystemeRDF und das relationale Datenmodell

• RDF- Datenmodell

• Ein Statement beschreibt eine Ressource besteht aus der Ressource, einer Property und einem Property-Wert

• Ein RDF-Graph baut sich aus einem oder mehreren dieser Statements auf.

<rdf:Description rdf:about="http://www.recshop.fake/cd/Empire Burlesque"> <cd:artist>Bob Dylan

</cd:artist> <cd:country>USA

</cd:country> <cd:company>Columbia

</cd:company> <cd:price>10.90

</cd:price> <cd:year>1985

</cd:year></rdf:Description></rdf:RDF>

Page 5: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 5

Institut für InformatikBetriebliche InformationssystemeRDF und das relationale Datenmodell

• RDB- Datenmodell

• Eine relationale Datenbank besteht aus Tabellen, welche wiederum aus Spalten und Zeilen bestehen.

• Die Zeilen repräsentieren die einzelnen Datensätze (eng: records).

• Jeder Datensatz verfügt über eine Anzahl von Feldern (Spalten), die über Werte verfügen können. Die Information, die ein Datensatz enthält, wird nur von den Inhalten seiner Felder definiert.

id artist country company price year

http://www....

Bob Dylan USA Columbia 10.90 1985

Page 6: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 6

Institut für InformatikBetriebliche InformationssystemeRDF und das relationale Datenmodell

• RDF – RDB – Abbildung

• Das RDF-Datenmodell ist eng mit dem Modell der rationalen Datenbanken verbunden.

• Die Abbildung RDF-Datenmodell auf RDB-Modell ist realisierbar.• Sie kann folgendermaßen durchgeführt werden:

Ein Datensatz in der relationalen Datenbank entspricht einem Knoten in RDF-Graphen

Die Spalten (Felder) des Datensatzes entsprechen den Properties (Prädikaten) des Knoten in RDF-Graphen

Die Werte in den einzelnen Feldern des Datensatzes können auf die Werte der einzelnen Prädikate abgebildet werden

• Prinzipiell ist es möglich, die Modelle aufeinander abzubilden. Sollen jetzt aber komplexe RDF-Modelle mit all ihren strukturellen Möglichkeiten in einer relationalen Datenbank abgespeichert werden, tauchen „Probleme“ auf.

Page 7: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 7

Institut für InformatikBetriebliche InformationssystemeRDF und das relationale Datenmodell

• RDB – RDF – Abbildung (Probleme)

• Literale in RDF müssen keinen Typ besitzen.• Die Länge von Literalen und URIs in RDFist sind nicht

beschränkt.

• Relationale Datenbanken sind stark typisiert.

• Die Speicherung einer sehr langen Zeichenkette erfordert die Verwendung eines BLOBs (binary large objects) in der Datenbank.

• Folge: Einbußen in der Performance des

Datenbankmanagementsystems Größerer Platzbedarf aufgrund zusätzlicher explizit zu

pflegenden Informationen zum RDF-Datentyp.

Page 8: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 8

Institut für InformatikBetriebliche InformationssystemeDatenbank-Schemata zum Speichern von RDF-Daten

• Datenbank-Schemata zum Speichern von RDF-Daten

• Ähnlichkeiten:Die RDF-Graphen werden in Form von „Subjekt Prädikat Objekt“-Tripeln abgespeichert.

• Differenzen:Speicherung von mehreren Modellen (bzw. eines einzelnen Modells) innerhalb einer Tabelle.

• Schemata können anwendungsunterschiedlich bzw. domänenunterschiedlich gestaltet sein.

Page 9: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 9

Institut für InformatikBetriebliche InformationssystemeDatenbank-Schemata zum Speichern von RDF-Daten

• 1. Tripel in einer einzigen Tabelle

• Die erste und einfachste Möglichkeit zur Speicherung eines RDF-Graphen in einer relationalen Datenbank [Melnik]

• Pro RDF-Graph wird dafür eine Tabelle mit der folgenden Struktur angelegt:

Spaltenname Spaltentyp

Resource (Subjekt) Varchar

Property (Prädikat) Varchar

Value (Objekt) Blob

Hint Char

Resource und property speichern die jeweiligen URI-Referenzen für die Ressource bzw. die Property.Value enthält den Wert des Objektes in dem Statement. Dabei kann es sich entweder um ein Literal oder eine Ressource handeln. Worum es sich handelt, wird durch das Flag hint angegeben.

Page 10: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 10

Institut für InformatikBetriebliche InformationssystemeDatenbank-Schemata zum Speichern von RDF-Daten

• 2. Tripel-Schema über mehrere Tabellen

• Speicherung von mehreren RDF-Graphen unter Verwendung einiger weniger Tabellen

• Die einzelnen Modelle werden durch Statements in der normalen „Subjekt Prädikat Objekt“- Form gespeichert

• A. Tabelle für Statements

Spaltenname Spaltentyp

Subject Integer-Referenz

Predicate Integer-Referenz

Object Integer-Referenz

objectIsLiteral Small-Integer

model Integer-Referenz

Der Integer-Wert bei Subject und Predicate gibt eine Ressourcen-ID an, das heißt er referenziert einen Eintrag in der Ressourcen-Tabelle.

Bei einem Objekt steht der Integer-Wert entweder für eine Ressource oder ein Literal. Worum es sich handelt, wird in dem Feld objectIsLiteral angegeben.

Das Feld model ordnet das Statement einem Modell zu, in dem es die ID eines RDF-Modells aus der Modell-Tabelle enthält.

Page 11: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 11

Institut für InformatikBetriebliche InformationssystemeDatenbank-Schemata zum Speichern von RDF-Daten

• B. Tabelle für Literale

• Id: identifiziert das Literal eindeutig, damit es später in ein Statement als Referenz eingefügt werden kann

• Language: gibt die Sprache an, in welcher der String in dem Literal-Objekt geschrieben wurde.

• Literal: das eigentliche Literal als Binary Large Object (BLOB)

Spaltenname Spaltentyp

Id Integer

Language Varchar

literal Blob

Page 12: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 12

Institut für InformatikBetriebliche InformationssystemeDatenbank-Schemata zum Speichern von RDF-Daten

• C. Tabelle für Ressourcen • enthält normale Ressourcen sowie auch die Teilmenge der Ressourcen – die

Properties

• Id: identifiziert die Ressource zur späteren Einbindung in ein Statement

• Namespace-Feld: referenziert mit der Integer-Referenz auf einen in der Namespace-Tabelle gespeicherten Namensraum Beispiel: http://purl.org/dc/elements/1.1/

• Localname-Feld: gibt den lokalen Namen der Ressource anBeispiel: title

Spaltenname Spaltentyp

id Integer

namespace Integer-Referenz

localname Varchar

Page 13: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 13

Institut für InformatikBetriebliche InformationssystemeDatenbank-Schemata zum Speichern von RDF-Daten

• D. Tabelle für Namenräume• speichert die in der Ressourcentabelle verwendeten Namensräume anhand

ihrer URI ab und identifiziert sie durch die id

Spaltenname Spaltentyp

id Integer

Uri Varchar

• E. Tabelle für Modelle• Die id identifiziert das Modell, damit später die einzelnen Statements eindeutig einem Modell zugeordnet werden können. • Name enthält den Namen des Modells und kann später beispielsweise genutzt werden, um das Modell in das Verwaltungssystem zu laden.

Spaltenname Spaltentyp

id Integer

name Varchar

Page 14: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 14

Institut für InformatikBetriebliche InformationssystemeDatenbank-Schemata zum Speichern von RDF-Daten

• Tripel-Schema über mehrere Tabellen

• Vorteile: Das Schema ist vollständig normalisiert.

Gewährleistung, dass die gesuchte Informationen auch gefunden werden.

Trennung von Statements und Ressourcen bzw. Literale. Effektivere Speicherung von Daten. (Jedes Literal und jede URI werden nur einmal abgespeichert, unabhängig von der Anzahl der Aussagen, in denen sie enthalten sind.)

• Nachteile: Der Suchaufwand ist immer noch zu hoch.

(Für die Materialisierung eines einzelnen Statements wird ein Drei-Wege-Join benötigt.)

° Mögliche Aushilfe: Literale und Ressourcen einer Aussage bis zu einer bestimmten Länge direkt in Statementstabelle speichern. (Für kleinere Aussagen funktioniert die Abfrage dann ohne Join.)

Page 15: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 15

Institut für InformatikBetriebliche InformationssystemeDatenbank-Schemata zum Speichern von RDF-Daten

• 3. Modelle in separaten Tabellen

• Die Statements der Modelle werden nicht alle in einer einzigen Tabelle gespeichert, sondern für jedes Modell wird eine eigene Tabelle erzeugt, in der die Statements angelegt werden.

• Jedes Modell bekommt eine eigene Tabelle, die als Name einen vom System erzeugten eindeutigen Identifikator erhält.

• Die URI-Referenz des Subjekts und des Prädikates werden im Tripel-Format gespeichert.

• Das Objekt wird als URI-Referenz gespeichert – falls es sich um eine Ressource handelt – oder als ein Literal.

• Literale, die eine bestimmte Größe (z.B. 256 Bytes) überschreiten, werden nicht direkt in der Modell-Tabelle gespeichert, sondern werden in einer zusätzlichen Literal-Tabelle abgelegt und von der Modell-Tabelle aus referenziert. Alle anderen Literale werden in der Modell-Tabelle direkt gespeichert.

Page 16: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 16

Institut für InformatikBetriebliche InformationssystemeDatenbank-Schemata zum Speichern von RDF-Daten

• 3. Modelle in separaten Tabellen

• Die ersten drei Felder speichern die URI-Referenzen des Tripels ab.

• ObjStr speichert ein Literal, falls es sich bei dem Objekt um keine Ressource – handelt.

• ObjLiteral beinhaltet die Referenz auf die Literal-Tabelle, falls das Literal zu groß ist und in der Literal-Tabelle gespeichert wird.

Spaltenname Spaltentyp

SubjectRes Varchar

PropRes Varchar

ObjRes Varchar

ObjStr TinyBlob

ObjLitera Integer-Referenz

Informationen über alle vorhanden RDF-Modelle sind in der zusätzlicher Metadaten-Tabelle anwesend.

Sie enthalten beispielsweise die Informationen darüber, wie der Identifikator einer Modell-Tabelle lautet und unter welchem Namen das Modell geladen werden kann.

Page 17: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 17

Institut für InformatikBetriebliche InformationssystemeDatenbank-Schemata zum Speichern von RDF-Daten

• Zusammenfassung

• Die Speicherung von RDF in relationalen Datenbanken ist ohne Verluste möglich.

• Die Suche nach vorgegebenen Attributen ist sehr zeitaufwendig.

• Weitere Strategien beim Design der Datenbankschema: für häufig genutzte Attribute spezielle Tabellen anzulegen die RDF Daten im Filesystem zu speichern und nur für ausgewählte

Attribute Tabellen in einem Datenbankschema anzulegen Das Schema an die konkreten Anwendungen bzw. Domänen

anzupassen.

Page 18: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 18

Institut für InformatikBetriebliche InformationssystemeTechnologien zum persistenten Speichern von RDF-Daten

• Technologien zum persistenten Speichern von RDF-Daten

• Benötigt wird eine Schnittstelle, die es einem ermöglicht, RDF Daten zu erstellen, zu verarbeiten und persistent abspeichern zu können.

• Es befinden sich einige Technologien auf dem Markt, die diese Funktionen für den Umgang mit RDF-Modellen anbieten. Sie unterscheiden sich unter anderem in der Art und Weise der internen

Speicherung der Daten und der unterstützten Anfragesprache.

System DB-Datenmodell Anfragesprache

Jena2 Triplets RDQL

RDFStore Triplets RDQL

Sesame Graph RDQL

ICS-RDF Suite Graph RQL

KAON Graph RQL

TRIPLE Triplets ähnlich F-Logic

Page 19: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 19

Institut für InformatikBetriebliche Informationssysteme

RDF Database: Sesame

Page 20: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 20

Institut für InformatikBetriebliche InformationssystemeÜbersicht

Gliederung:

1. Installation2. Architektur3. API4. Backends5. Webinterface

Page 21: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 21

Institut für InformatikBetriebliche Informationssysteme1. Installation

• Entwicklung von holländischen Firma Aduna

• Sesame ist ein System (Open Source RDF Datenbank), welches das persistente Speichern, die Archivierung und Abfrage von RDF und RDFS-Daten ermöglicht

• Das Zentralkonzept des Systems ist Repository

Page 22: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 22

Institut für InformatikBetriebliche Informationssysteme1. Installation

Zwei häufigste Benutzungsmöglichkeiten von Sesame:

als Java Bibliothek als Server, dabei können Clients über das Web mit dem Server

kommunizieren.

Page 23: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 23

Institut für InformatikBetriebliche Informationssysteme1. Installation von Sesame unter Tomcat

Notwendigkeit von Java-Servlet-Container für die Installation

1. Erstellung vom Verzeichnis sesame im Verzeichnis [TOMCAT_DIR]/webapps/

2. Entpackung von sesame.war (vorhanden in [Sesame-dir]/lib)in neuem Verzeichnis sesame

3. Einfügung vom JDBC-Treiber ins Verzeichnis [TOMCAT_DIR]/webapps/sesame/WEB-INF/lib/

4. Umbenennung von der Config-Datei system.conf.example (im Verzeichnis [TOMCAT_DIR]/webapps/sesame/WEB-INF) auf system.conf

5. Letzter Schritt - Starten von Sesame unterhttp://hostname/SESAME_DIR

Page 24: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 24

Institut für InformatikBetriebliche Informationssysteme1. Installation: MySQL Konfiguration

• Sesame ist unabhängig von dem benutzten System und kann neben unterschiedlichsten relationalen Datenbanken auch beispielsweise objektorientierte DMBS (Datenbank Management Systeme) für seine Zwecke nutzen

• Es werden momentan PostgreSQL, MySQL, MS SQL Server und Oracle 9i unterstützt

• Erstellung von neuem Benutzerkonto am MySQL Server.mysql -u root -p <database>create database <database>; odermysqladmin -u root -p create <database>grant all on <database>.* to root@hostname identified by 'password';

Page 25: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 25

Institut für InformatikBetriebliche Informationssysteme2. Architektur

• Storage And Inference Layer (SAIL): grundlegende Methoden zum Zugriff auf die RDF-Daten

• Auf dem SAIL bauen drei Module auf, mit folgenden Aufgabenbereiche

1. Das Admin-Modul ist für das Einfügen neuer RDF-Daten und für das Löschen des Datenbestandes (Repositories) zuständig

2. Das Query-Modul ist für das Ausführen von Abfragen auf den Repository-Datenbestand verantwortlich

3. Das Export-Modul bietet die Möglichkeit, RDF-Daten in vier RDF-Serialisierung (N-Triples, Turtle, Notation 3, RDF/XML) zu exportieren.

Page 26: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 26

Institut für InformatikBetriebliche Informationssysteme2. Architektur

Zugriff auf diese drei Module ist durch Sesame's Access APIs erreichbar Repository API

„high-level“ Zugriff auf Sesame Repository, solche wie Abfragen, Einfügen von RDF- Dateien

Graph APIGraph API bietet die feine Unterstützung der Behandlung von RDF-Dateien, solche wie Hinzufügen und Entfernen einzelnen Statements

Kommunikationsarten HTTP (für Zugriffe über das Web) RMI (Remote Method Invocation) SOAP (Simple Object Access Protocol)

Page 27: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 27

Institut für InformatikBetriebliche Informationssysteme3. API

Benutzung von Sesame API: Sesamekommunikation mit anderen Programmen (entweder

remote oder local) als Bibliothek

Repository API:ein Zentralpunkt für Sesame RepositoriesBenutzung als Verbindung zum Sesame ServerAusführen von Anfragenupload von RDF-Daten u.s.w.

Beispiel:Kommunikation mit dem Server über HTTPjava.net.URL sesameServerURL = new java.net.URL("http://HOSTNAME/SESAME_DIR/");

HTTPService service = Sesame.getService(sesameServerURL);

service.login("foo", "bar");

SesameRepository myRepository = service.getRepository("foobar-rep");

Page 28: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 28

Institut für InformatikBetriebliche Informationssysteme3. API

Graph API stellt ein RDF-Graph in der Form von Java-Objekt ,erlaubt die Manipulation von RDF-Graph, wie Hinzufügen, Entfernen von Statements.

Beispiel:

Erstellung von einem leeren Graph

Graph myGraph = new GraphImpl();

ValueFactory myFactory = myGraph.getValueFactory();

String namespace = "http://www.foo.com/bar#";

URI mySubject = myFactory.createURI(namespace, "actor1");

URI myPredicate = myFactory.createURI(namespace, "hasName");

Literal myObject = myFactory.createLiteral("Tom Hanks");

Hinzufügung einzelnen Statements myGraph.add(mySubject, myPredicate, myObject);

Page 29: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 29

Institut für InformatikBetriebliche Informationssysteme3. API

RIO -RDF I/O[Sesam]

Ist ein Teil von Sesame Ist aber separat erhältlich Unterstützt lesen und schreiben von RDF

Sesame kann auch als plug-in in einen ontology editor (Protégé, OntoEdit, OILEd oder IsaViz) eingesetzt werden

Page 30: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 30

Institut für InformatikBetriebliche Informationssysteme4. Backends

Sesame SAIL verwendet die dynamische Datenbankschema, in welcher die Tabellen für jede neue Class und die Beziehungen zwischen Subclass hingefügt sind.Ähnlich geht es mit properties.

Page 31: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 31

Institut für InformatikBetriebliche Informationssysteme5. Webinterface

Leseaktionen (Export, Abfrage) Schreibaktionen (Hinzufügen, Entfernen)

Page 32: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 32

Institut für InformatikBetriebliche Informationssysteme5. Webinterface

Die Konfiguration von Sesame

Page 33: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 33

Institut für InformatikBetriebliche InformationssystemeReferenzen

• Referenzen

• Brickley, Miller: RDF, SQL and the Semantic Web - a case study, http://ilrt.org/discovery/2000/10/swsql/

• S. Melnik: Storing RDF in a relational database, http://www-db.stanford.edu/%7Emelnik/rdf/db.html

• Mapping von RDF->DB, http://www.w3.org/2002/05/24-RDF-SQL/• HP Research, "Jena 2 - A Semantic Web Framework", http://

www.hpl.hp.com/semweb/jena.htm• RDFStore, Perl API for RDF Storage, http://rdfstore.sourceforge.net/• Sesame, http://www.openrdf.org/• ICS-RDF Suite: "High-level Scalable Tools for the Semantic Web",

http://139.91.183.30:9090/RDF/• KAON, "Open-Source Ontology Management Infrastructure", http://

kaon.semanticweb.org/• D. Brügge: Konzeption und Implementierung eines verteilten

Agentensystems zur persistenten Speicherung und zum Austausch von RDF-Daten. Technische Universität München

• A. Haupt: Persistentes Speichern von RDF-Daten

Page 34: Institut für Informatik Betriebliche Informationssysteme RDF Storage / RDF Database: Sesame1 Persistente Speicherung von RDF-Daten in einer relationalen.

RDF Storage / RDF Database: Sesame 34

Institut für InformatikBetriebliche InformationssystemeReferenzen

• Referenzen

• Sesame RDF database,http://www.openrdf.org/doc/users/

• Comparing Formats, http://www.bitloeffel.de/DOC/2003/Formats-20030416-de.html

• IsaViz: A Visual Authoring Tool for RDF,http://www.w3.org/2001/11/IsaViz/

• Mapping Semantic Web Data with RDBMSes,http://www.w3.org/2001/sw/Europe/reports/scalable_rdbms_mapping_report/