RDF in P2P-Netzen Ting Li 09.02.2004
Gliederung 1. Einleitung 2. RDF/RDF Schema 3. Edutella/RDF-basierte P2P-Netze 4. Implementierung 5. OAI-P2P 6. Zusammenfassung 7. Wichtige Ressourcen 09.02.2004 RDF in P2P-Netzen
Gliederung 1. Einleitung 2. RDF/RDF Schema OAI OAI-PMH Cyclades Projekt Kepler Projekt 2. RDF/RDF Schema 3. Edutella/RDF-basierte P2P-Netze 4. Implementierung 5. OAI-P2P 6. Zusammenfassung 7. Wichtige Ressourcen 09.02.2004 RDF in P2P-Netzen
OAI: Open Archive Initiative Ziel: weltweiter Austausch von elektronischen E-Prints. Metadaten: Beschreibungen des elektronischen Dokuments durch entsprechende Schemata definiert. Mindestanforderung: Dublin Core enthält 15 Elemente Alle Elemente sind sowohl optional als auch wiederholbar. Andere Metadatenformate: OLAC (Open Language Archive Community) MARC21 RFC1870 ... Merke: lediglich die Beschreibungen ausgetauscht. 09.02.2004 RDF in P2P-Netzen
OAI-PMH Austauschprotokoll für Metadaten. basiert auf HTTP (Anfrage) und XML (Antwort). Zwei Arten von Teilnehmern: Data-Provider: stelle eine Schnittstelle zu den lokalen digitalen Ressourcen her. Service-Provider: Harvesting von Metadaten und bietet Mehrwertdienst, z.B: Ranking... Nachteile: low-barrier: einfach wie möglich für Data-Provider aufgebaut. Aber: Für Erstellen und Behalten von Service-Provider werden mehrere Ressourcen gebraucht. Kein „front-end“ Service 09.02.2004 RDF in P2P-Netzen
Cyclades Projekt Aufbauend auf dem OAI-Standard Entwicklung weiterer Dienste Insbesondere: Information Retrieval in verteilten OAi-kompatiblen Archiven Suchen und Browsen in Multilevel-Hypertext die Erfassung von Relevanz- Feedback Die Erfassung von Kommentaren zu einzelnen Dokumenten die Personalisierung von benutzerspezifischen Agenten Architektur 09.02.2004 RDF in P2P-Netzen
Kepler Projekt verbesserte Lösung Idee: Ein OAI Data/Service Provider für Einzelpersonen. Eigenschaften: ein JAVA-‘archivlet‘ eine LDAP-basierte Netzwerkumgebung ein query/discovery Service Vorteil: technische Einfachheit und Verwendbarkeit Probleme: noch vom zentralen Service-Provider abhängig unterstützt „community building“ nicht 09.02.2004 RDF in P2P-Netzen
Gliederung 1. Einleitung 2. RDF/RDF Schema 3. Edutella/RDF-basierte P2P-Netze 4. Implementierung 5. OAI-P2P 6. Zusammenfassung 7. Wichtige Ressourcen 09.02.2004 RDF in P2P-Netzen
RDF (Resource Description Framework) vom W3C im Rahmen der ‘Semantic Web’-Initiative geförderte Beschreibungssprache Idee: aussagekräftige Beschreibungen von Ressourcen. Drei Typen von Objekt: Resources: alle Objekte bei WWW, die durch einen URI identifiziert werden. z.B: Webseite... spezieller Typ von Ressourcen (literal) möglich Properties: spezielle Aspekte / Charakteristik / Attribute / Beziehungen Statements: Ressourcen + definierte Eigenschaften + Werte der Eigenschaften Triple: <Subjekt, Prädikat, Objekt> 09.02.2004 RDF in P2P-Netzen
RDF (Resource Description Framework) Beispiel: RDF-Syntax: in XML-Format <rdf: RDF> <rdf: Description about = "http://www.w3.org/Home/Lassila"> <s: Creator rdf: resource = "http://www.w3.org/staffId/85740" v: Name = "Ora Lassila" v: Email = "lassila@w3.org" /> </rdf: Description> </rdf: RDF> http://www.w3.org/staffId/85740 creator http://www.w3c.org/Home/Lassila Name Email Ora Lassila lassila@w3.org 09.02.2004 RDF in P2P-Netzen
RDF Schema Vocabulary Description Language Beschreibungen der Beziehungen zw. verschiedenen Arten von Ressourcen und Eigenschaften. Kern Klassen: rdfs: Resource rdfs: Class rdf: Property Kern Eigenschaften: rdf: type rdfs: subClassOf rdfs: PropertyOf rdfs: subPropertyOf rdfs: seeAlso rdfs: isDefinedBy 09.02.2004 RDF in P2P-Netzen
RDF Schemas Beispiel: Resource Hierarchy rdfs: subClassOf rdf: type rdfs:Resource rdfs:Class xyz:MotorVehicle xyz:Van xyz:Truck xyz:PassengerVehicle xyz:MiniVan 09.02.2004 RDF in P2P-Netzen
Gliederung 2. RDF 3. Edutella/RDF-basierte P2P-Netze 1. Einleitung 2. RDF 3. Edutella/RDF-basierte P2P-Netze Architektur Dienstleistungen Super-Peer/HyperCup Topologie Zwei Arten von Routing Indizes Dynamische Routing Indizes Mediation zwischen verschiedenen Schemata 4. Implementierung 5. OAI-P2P 6. Zusammenfassung 7. Wichtige Ressourcen 09.02.2004 RDF in P2P-Netzen
Architektur Eine P2P Infrastruktur, um die Daten zu speichern, abzufragen und auszutauschen. Zwei Kern-Komponente: Sun JXTA; W3C RDF JXTA: Open Source Framework für die Entwicklung von P2P Services und Anwendungen Interoperable und plattformunabhängig 3-Schichtenmodell JXTA Applications JXTA Shell: Interaktiver Zugriff auf JXTA Plattform JXTA Services Discovery, Routing, Indexing, ,Searching, File Sharing... JXTA Core Gruppierung, Pipes... 09.02.2004 RDF in P2P-Netzen
Architektur RDF/RDF Schema in Edutella: Beschreibungen der verteilten Ressourcen. Alle Ressourcen sind durch eindeutigen URI gekennzeichnet. Die Beschreibungen von Ressourcen mit verschiedenen Schemata sind möglich. Speicherung der Beschreibungen in RDF-Repositores. Jeder Peer stellt seine Metainformationen als Set der RDF-Aussagen zur Verfügung. Charakteristik von RDF-Schema: verteilte Darstellungen für eine oder selbe Ressource => einfach zur Konstruktion der verteilten Repositores flexibel und erweiterbar => Schema-basierter P2P-Netzwerk 09.02.2004 RDF in P2P-Netzen
Dienstleistungen Query Service (Basic Service): Fragen werden durch das Netz zur Teilmenge des Peers geschickt, die die Frage beantworten könnten. Zurücksenden der resultierenden RDF-Aussagen zu dem erbittenen Peer. Anfragesprache ist frei auswählbar. RDF-QEL (RDF based-Query Exchange Language): eine standardisierte Sprache basiert auf Datalog beginnend mit einfachen konjunktiven Anfragen Jede QEL-Anfrage basiert auf explizite bezogenen Metadaten-Schemata (z.B: DC, LOM), nicht von einem spezifischen Schema unabhängig. ein graphischer Query-Editor: Conzilla 09.02.2004 RDF in P2P-Netzen
Dienstleistungen RDF-QEL: Aufteilung in 5 Sprachlevel, die in der Ausdrucksfähigkeit aufeinander aufbauen: RDF-QEL-1: Konjunktive Queries RDF-QEL-2: RDF-QEL-1 + Disjunktion RDF-QEL-3: RDF-QEL-2 + Negation + nicht rekursive Regeln (SQL92-Umfang, Datalog-Ansatz) RDF-QEL-4: RDF-QEL-3 + lineare Rekursion (SQL3-Umfang) RDF-QEL-5: RDF-QEL-4 + allgemeine Rekursion 09.02.2004 RDF in P2P-Netzen
Dienstleistungen Conzilla as query editor 09.02.2004 RDF in P2P-Netzen
Dienstleistungen Replication Service (Basic Service): Mapping Service: Ergänzung der lokalen Ablage Datenintegrität-und Konsistenz Zuverlässigkeit und ausgleichende Arbeitsbelastung Mapping Service: Übersetzung zwischen unterschiedlichen Schemata z.B: MARC DC 09.02.2004 RDF in P2P-Netzen
Super-Peer/HyperCup Topologie Super-Peer: prinzipieller Knoten mit einer sehr guten und stabilen Netzanbindung größerer Rechenleistung als normale Peers. Funktionalität der Super-Peers: Verwaltung von Routing-Indizes Bestimmung der weiteren Wegwahl der Anfragen d.h: Der Super-Peer entscheidet sich, welche Anfrage vorwärts zu welchem Peer oder Super-Peer gesendet werden sollte. … P SP SP P SP P SP P P P P P P 09.02.2004 RDF in P2P-Netzen
Super-Peer/HyperCup Topologie Super-Peers sind in HyperCup Topologie organisiert. HyperCuP Protokolls: Hinzufügen eines neuen Super-Peer: Peer-Integration-Protocol Aufwand: O(log(N)) Verlassen eines Super-Peers: Anderer Super-Peer nimmt zusätzlich seine Position ein. HyperCup Topologie + Routing Indizes: ermögliche effiziente und garantiere nicht-redundante Broadcasting. Beim Broadcasting: Jeder Peer wird als die Wurzel eines aufspannenden Baums betrachtet. Pfadlänge: log2N; Anzahl der Nachbarn: log2N. H G 1 1 E F 2 2 2 2 D C 1 1 A B 09.02.2004 RDF in P2P-Netzen
zwei Arten von Routing Indizes Super-Peer/Peer Routing Indices(SP/P-RIs): Idee: Speicherung der Metainformation über die an ihm angeschlossenen Peers. z.B: Schema, Schemawert... Registrierung eines Peers: bietet seine Metainformationen zum Super-Peer durch eine veröffentliche Nachricht Matching Algorithmus: um festzustellen, welcher Peer die Anfrage verstehen und beantworten kann. garantiert nicht einem nicht leeren Antwortsatz. Indexeinträge mit verschiedenen Granularität 09.02.2004 RDF in P2P-Netzen
zwei Arten von Routing Indizes Super-Peer/Peer Routing Indices(SP/P-RIs): Schema Index: eindeutiger Identifier des Schema Der Peer oder Super-Peer, die dieses Schema benutzen. Schema Property: Schema Index + Eigenschaft Menge von Eigenschaften Property Value Range Index: Klassifiziere die Eigenschaft mit Hilfe von vordefinierten hierarchischen Vokabularen. Property Values Index: vorteilhaft für einige Eigenschaften, die häufig verwendet werden. Verringerung des Netzverkehrs 09.02.2004 RDF in P2P-Netzen
zwei Arten von Routing Indizes Super-Peer/Peer Routing Indices(SP/P-RIs): Bsp: Find any resource where the property dc:subject is equal to ccs:softwareengineering, dc:language is equal to “de” and lom:context is equal to “undergrad”. contents of the sample query at different granularities Granularity Query Schema dc, lom Property dc: subject, dc: language, lom: context Property Value Range dc: subject css: sw’engineering Property Value lom: context “undergrad” dc: language “de” 09.02.2004 RDF in P2P-Netzen
zwei Arten von Routing Indizes Super-Peer/Peer Routing Indices(SP/P-RIs): routing example network SP4 Sample Query P0 SP1 SP2 P4 P1 (s, dc: language,“de“) (s, lom: context,“undergrad“) (s,dc: subject, ccs: softwareengineering) (r, dc: language, “de“) (r, lom: context, “undergrad“) (r, dc: subject, ccs: software- engineering) SP3 P2 P3 (p, dc: subject, ccs: ethernet) (q, dc: subject, ccs: clientserver) 09.02.2004 RDF in P2P-Netzen
zwei Arten von Routing Indizes Super-Peer/Peer Routing Indices(SP/P-RIs): Update der SP/P Indizes: Garantiere des aktuellen Zustands der Indizes Hinzufügen eines Peers: Sendung seiner Metainformationen an den Super-Peer durch Broadcasting. Veränderung der Inhalte eines Peers: z.B: Veränderung des Schemas: DCLOM Verlassen eines Peers: Lösen der zugehörigen Referenz von den Indizes 09.02.2004 RDF in P2P-Netzen
zwei Arten von Routing Indizes Super-Peer/Super-Peer Routing Indices(SP/SP-RIs): Idee: Routing zwischen Super-Peers. SP/SP Indizes: Extrakte und Zusammenfassungen von allen lokalen SP/P Indizes. enthalten die selben Arten der Informationen wie SP/P Indizes. referenziert nur die benachbarten Super-Peers. Zwei Schritte bei der Bearbeitung einer Anfrage: Anfrage wird nur an entsprechende Peers weitergeleitet (mit Hilfe von SP/P Indizes). Weitersendung der Anfrage an referenzierte, benachbarte Super-Peers (mit Hilfe von SP/SP Indizes). 09.02.2004 RDF in P2P-Netzen
zwei Arten von Routing Indizes Super-Peer/Super-Peer Routing Indices(SP/SP-RIs): SP/SP index of SP2 at different granularities Granularity Index of SP2 Schema dc SP1, SP3, SP4 lom SP1, SP4 Property dc: subject SP1, SP3, SP4 dc: language SP1, SP4 lom: context SP1, SP4 Property Value Range dc: subject ccs: networks SP3 dc: subject css: sw’engineering SP1, SP4 Value lom: context “undergrad” SP1, SP4 dc: language “de” SP1, SP4 09.02.2004 RDF in P2P-Netzen
zwei Arten von Routing Indizes Super-Peer/Super-Peer Routing Indices(SP/SP-RIs): 09.02.2004 RDF in P2P-Netzen
zwei Arten von Routing Indizes Super-Peer/Super-Peer Routing Indices(SP/SP-RIs): Update der SP/SP Indizes: Hinzufügen eines neuen Peers: Peer sendet seine Metainformationen zum Super-Peer. Super-Peer passt sich die SP/P indizes an. Super-Peer sendet die Nachricht zur allen Peers. Andere Super-Peers aktualisieren ihre SP/SP Indizes entsprechend. => aufwendig Verlassen eines Peers: ähnlich wie beim Hinzufügen eines neuen Peers. Hinzufügen neues Super-Peers: Ähnliche Konstruktion wie bei SP/P Indizes Ausfall eines Super-Peers: Die mit diesem Super-Peer verbundenen Peers können bei anderem Super-Peer beliebigen registrieren. 09.02.2004 RDF in P2P-Netzen
Dynamische Routing Indizes Problem: Broadcasting der Anfrage, weil die Peers beliebig verteilt sind. => Wie macht man die Routing Indizes effizient? Lösung: Hinzufügen der Frequenzinformationen über Anfragen Gedanken über „Similarity-Based Clustering Of Peers” Similarity-Based Clustering Of Peers: Idee: Das Clustering basiert auf der Integration der Peers nach der Ähnlichkeitsmaß. Vorteil: Reduzierung der Menge der Nachrichten. HyperCup Struktur macht die Partition (Subpartition) möglich. Verbindung eines Super-Peer mit anderen Nachbarn als Verbindung zur anderen Partitionen oder Subpartitionen betrachtet. 09.02.2004 RDF in P2P-Netzen
Dynamische Routing Indizes HyperCuP-Partitionen sind überflüssig angeschlossen. Broadcasting einer Nachricht ist nur nach der „i>k“ Regel. Andere dynamische Weise: „frequency counting algorithms on streams”: Jede Peer, Super-Peer und Anfragen werden durch eine Menge von Items charakterisiert. Ähnlichkeitsberechnung => Hinzufügen der Frequenz in den SP/SP Indizes ist nötig. 09.02.2004 RDF in P2P-Netzen
Mediation zw. verschiedenen Schemata Basis Idee: “Mediator-based Information Systems (MBIS)” „Korrespondenz“: Transformationsregel zw.Schemata. MBIS-basierte Korrespondenz: Transformationsregel zw. den unterschiedlichen lokalen Schemata. Ein Super-Peer speichert die Relationen zwischen den Korrespondenz und Peers in seiner Indizes. Mechanismen: Query Correspondence Assertions (QCA) Model Correspondence Assertions (MOCA) 09.02.2004 RDF in P2P-Netzen
Mediation zw. verschiedenen Schemata Beispiel: Query Correspondence Assertions (QCA) Ein definierte Anfrage-Schema: lectures (lecture: identifier, lecture: language, lecture: subject, lecture: educationalcontext) Beispiele für Korrespondenzen zwischen RDF-Schemata: 1. lectures: identifier = dc: title lectures: language = dc: lang lectures: subject = dc: subject 2. lectures: identifier = lom: general.identifier lectures: language = lom: general.language lectures: context = lom: educational.context Beispiele für View zwischen RDF-Schemata: 1. lecturesViewDC (lectures: identifier, lecture: language, lecture: subject) ← DC (dc: title, dc: lang, dc: subject) 2. lecturesViewLOM (lecture: identifier, lecture: language, lecture: context) ← LOM (lom: general.identifier, lom: general.language, lom:educational.context) 09.02.2004 RDF in P2P-Netzen
Mediation zw. verschiedenen Schemata Beispiel: Query Correspondence Assertions (QCA) Abbildung der Attribute aus dem lecture-Schema auf die RDF-Schemata DC und LOM. 1. lectures (lectures: identifier, lectures: language, lectures: subject, -) ← lecturesViewDC (lectures: identifier, lectures: language, lectures: subject) 2. lectures (lectures: identifier, lectures: language, -, lectures: context) ← lecturesViewLOM (lectures: identifier, lectures: language, lectures: context) Resultierende Korrespondenzen für die Umsetzung auf RDF-Schemata in P1 und P2. Peer1: Correspondence1 lectures (lectures: identifier, lectures: language, lectures: subject, -,) ← lecturesViewDC (lectures: identifier, lectures: language, lecture: subject) ← DC (dc: title, dc: subject, dc: lang) Peer2: Correspondence2 lectures (lectures: identifier, lectures: language, -, lecture:educationalcontext) ← lecturesviewLOM (lectures: identifier, lectures: language, lecture: educationalcontext) ← LOM (lom: general.identifier, lom: general.language, lom:educational.context) 09.02.2004 RDF in P2P-Netzen
Gliederung 1. Kurze Einführung von OAI 2. Edutella 3. RDF-basiertes Peer To Peer-Netzwerk 4. Implementierung Edutella Framework Dienstleistungen 5. OAI-P2P 6. Zusammenfassung 7. Wichtige Ressourcen 09.02.2004 RDF in P2P-Netzen
Edutella Framework Erweiterung von JXTA. Edutella Framework wird in zwei Bereichen erweitert: Erster Teil: Unterstützung des Aufbau des Super-Peer-Netzwerks Der Super-Peer basiert auf solchen Topologien wie z.B: HyperCuP. Zweiter Teil: zusätzliche Komponenten für Konstruktion des Super-Peers. Peer Registrierung Verwalte Routing-Tabelle ... Dienstleistungen: Standard-Modulen spezifische Service-Modulen 09.02.2004 RDF in P2P-Netzen
Dienstleistungen Der Super-Peer stellt vier Dienstleistungen zur Verfügung: Bind Service: Behandlung der Registrierung des Peers. kümmert sich um dem „hand-shaking“ Prozeß. Aktualisierung der SP/P Indizes. Routing Service: Routing der Anfragen. Empfang der Resultate von passenden Peers und Super-Peers. Topology Service: Beibehalten der Netz-Topologie des Super-Peers Aktualisierung der SP/SP Indizes Query Service: stellt eine definierte Schnittstelle zu den neuen Anfragen zur Verfügung. Diese Anträge werden durch den Routing Service verteilt. 09.02.2004 RDF in P2P-Netzen
Gliederung 1. Einleitung 2. RDF 3. Edutella/RDF-basierte P2P-Netze 4. Implementation 5. OAI-P2P Motivation System Architektur 6. Zusammenfassung 7. Wichtige Ressourcen 09.02.2004 RDF in P2P-Netzen
Motivation Data Provider ... ... Service Provider Nachteile von OAI: Abfragen aller Data-Providers Hinzufügen neues Data-Providers Abbau und Reorganisation des Service-Providers Data Provider ... ... Service Provider Clients TIB TIBNCSTRL arXiv Arc My.OAI 09.02.2004 RDF in P2P-Netzen
Motivation OAI-P2P: Ein P2P Netzwerk für OAI Ziel: Eigenschaften: Erweiterung des Query-Services Vermeiden der Abhängigkeiten von zentralisiert, server-basierten Systeme. Eigenschaften: OAI Data-Provider werden Edutella-Provider „front-end“ Service System-Architektur: OAI-P2P Data Wrapper OAI-P2P Query Wrapper 09.02.2004 RDF in P2P-Netzen
System Architektur OAI-P2P Data Wrapper OAI-P2P Query Wrapper Keine Veränderung des Data-Providers Kopiere die Daten zum RDF-Repository sofort implementierbar Update nötig OAI-P2P Query Wrapper Antworte die Anfrage direkt vom Datenspeicher Übersetzung der QEL-Anfrage ist nötig Kopiere die Daten nicht Kein Update 09.02.2004 RDF in P2P-Netzen
Gliederung 1. Einleitung 2. RDF 3. Edutella/RDF-basierte P2P-Netze 4. Implementation 5. OAI-P2P 6. Zusammenfassung 7. Wichtige Ressourcen 09.02.2004 RDF in P2P-Netzen
Zusammenfassung OAI: low barrier Edutella/Schema-basierte P2P-Netze: P2P Infrastruktur explizite Schemata zur Beschreibung ihrer Inhalte. ideal für heterogene Information-Providers Transformationsregel Super-Peer Topologie: effizientes Routing und Clustering Routing-Strategien: effektive Sendung der Anfragen Algorithmen: Konstruktion der Indizes dynamisch Implementierung OAI-P2P 09.02.2004 RDF in P2P-Netzen
Literatur: http://kepler.cs.odu.edu:8080/kepler/index.html [1] Dublin Core Metadata Initiative(DCMI): http://dublincore.org [2] OAI web site und OAI-PMH specification: http://www.openarchives.org/ [3] Kepler Project: http://kepler.cs.odu.edu:8080/kepler/index.html [3] RDF: http://www.w3c.org/RDF/ [4] Edutella: http://edutella.jxta.org/ [5] JXTA: http://www.jxta.org [6] RDF-QEL: http://edutella.jxta.org/spec/qel.html [6] Ahlborn, Benjamin; Nejdl, Wolfgang Nejdl; Siberski, Wolf (2002): OAI-P2P: A Peer-to-Peer Network for Open Archives [7] Nejdl, Wolfgang; Wolpers, Martin; Siberski, Wolf; Schmitz, Christoph; Schlosser, Mario; Brunkhorst, Ingo; Löser, Alexander (2003): Super-Peer-Based Routing and Clustering Strategies for RDF-Based Peer-to-Peer Networks 09.02.2004 RDF in P2P-Netzen