PeertoPeer Networking for Distributed Learning Repositories: - PowerPoint PPT Presentation

1 / 22
About This Presentation
Title:

PeertoPeer Networking for Distributed Learning Repositories:

Description:

P2P systems don t work without metadata. ... http://purl.org/dc/elements/1.1/author('http://www.xyz.com/ai.html','Stuart Russel' ... – PowerPoint PPT presentation

Number of Views:47
Avg rating:3.0/5.0
Slides: 23
Provided by: dennisk1
Category:

less

Transcript and Presenter's Notes

Title: PeertoPeer Networking for Distributed Learning Repositories:


1
Peer-to-Peer Networking for Distributed Learning
Repositories
  • The Edutella Network
  • Diplomarbeit von Boris Wolf

2
Edutella Motivation
  • P2P systems dont work without metadata.
  • Shortcomings of todays successful P2P systems
    (Napster, LimeWire, Gnutella etc.) Poor
    expressiveness of metadata, focused on certain
    application or community.
  • Edutella Specification and implementation of an
    extendable Open Source infrastructure for
    exchange and processing of any kind of RDF
    metadata (initial focus on educational
    resources).
  • Edutella is Open Source, uses Open Source, builds
    on Open Standards.
  • Part of the PADLR Project (Stanford, Stockholm,
    Uppsala, Hannover, Braunschweig, Karlsruhe).

3
Edutella Technology (RDF)
  • Connects highly heterogeneous peers
    (heterogeneous in uptime, storage capability,
    performance, functionality/services offered,
    number of users etc.).
  • Essential assumption Everything in Edutella can
    be described in RDF therefore
  • Edutella peer RDF repository
  • Edutella network huge RDF repository
    integrating all participating peer repositories.
  • Goal making distributed nature of RDF
    repositories completely transparent to Edutella
    clients.

4
Edutella Technology (JXTA)
  • Open Source project supported by Sun Microsystems
  • JXTA set of protocol specifications to cover
    typical P2P functionality (all protocols based on
    XML).
  • Java binding offers a layered approach to
    standardize P2P application development (core,
    services, applications).
  • Framework for prototyping and developing P2P
    applications.
  • Introduces well-known UNIX concepts to the P2P
    world peer groups, pipes, thin core libraries
    / services, JXTA shell.

5
Edutella Architecture
  • Edutella Collection of JXTA Services.
  • Each peer will be required to support a number of
    basic services and may offer an arbitrary number
    of advanced services.
  • Edutella Query Standardized query and retrieval
    mechanism for RDF metadata stored in distributed
    RDF/XML repositories.
  • Further Edutella Services Edutella Clustering
    (semantic routing), Edutella Replication
    (redundant storage), Edutella Mapping (different
    ontologies), Edutella Annotation (distributed
    annotation facilities).

6
Edutella Query
  • RDF Query Exchange Language RDF-QEL (RDF can be
    easily analyzed utilizing existing RDF/XML
    parsers, and transferred as XML data).
  • Edutella Common Data Model (ECDM) for internal
    represenation of queries and results (based on
    Datalog semantics).

7
Edutella Query Wrappers
  • Wrappers translate between RDF based query
    languages (RDF-QEL-i, RQL, TRIPLE, etc.) and
    local query languages (SQL, Xpath, etc.).

8
Edutella Query Mediators
  • Distributed query mechanism with Mediators/Hubs
    based on query indices Simple Mediators
    distribute entire queries to registered peers,
    advanced Mediators split queries into subqueries
    and reconcile their results.

9
Edutella Query Datalog
  • Datalog Uses logic programming concepts (Prolog)
    for databases and query languages.
  • Literals Predicate expressions describing any
    kind of relations between an arbitrary number of
    constants or variables, e.g.
  • title(X,Artificial Intelligence)
  • Database/Knowledge Base Set of ground facts
    set of literals with constant values only, e.g.
  • title(http//www.xyz.com/ai.html,Artificial
    Intelligence)

10
Edutella Query Datalog
  • Query Conjunction of literals, e.g.
  • ?- title(X,Artificial Intelligence),
    type(X,Book).
  • Rule Implication with one head and an arbitrary
    number of body literals, e.g.
  • aibook(X) - title(X,Artificial
    Intelligence), type(X,Book).

11
Edutella Query Knowledge Base
  • RDF only knows assertions RDF repository
    Knowledge base of ground (binary) facts.
  • http//purl.org/dc/elements/1.1/title('http//www.
    xyz.com/ai.html','Artificial Intelligence')
  • http//purl.org/dc/elements/1.1/author('http//www
    .xyz.com/ai.html','Stuart Russel')
  • http//purl.org/dc/elements/1.1/author('http//www
    .xyz.com/ai.html','Peter Norvig')
  • http//www.w3.org/1999/02/22-rdf-syntax-nstype('h
    ttp//www.xyz.com/ai.html','http//www.lit.edu/typ
    esBook')
  • http//purl.org/dc/elements/1.1/title('http//www.
    xyz.com/sw.html','Software Engineering')
  • http//purl.org/dc/elements/1.1/author('http//www
    .xyz.com/sw.html','Helmut Balzert')
  • http//www.w3.org/1999/02/22-rdf-syntax-nstype('h
    ttp//www.xyz.com/sw.html','http//www.lit.edu/typ
    esBook')
  • http//purl.org/dc/elements/1.1/title('http//www.
    xyz.com/pl.html','Programming in Prolog')
  • http//purl.org/dc/elements/1.1/author('http//www
    .xyz.com/pl.html','William Clocksin')
  • http//purl.org/dc/elements/1.1/author('http//www
    .xyz.com/pl.html','Christopher Mellish')
  • http//www.w3.org/1999/02/22-rdf-syntax-nstype('h
    ttp//www.xyz.com/pl.html','http//www.lit.edu/typ
    esAI-Book')
  • http//purl.org/dc/elements/1.1/title('http//www.
    xyz.com/jv.html','Just Java')
  • http//purl.org/dc/elements/1.1/author('http//www
    .xyz.com/jv.html','Peter van der Linden')
  • http//www.w3.org/1999/02/22-rdf-syntax-nstype('h
    ttp//www.xyz.com/jv.html','http//www.lit.edu/typ
    esBook')

12
Edutella Query Example Query
  • Return all resources which are of type AI-Book
    or which are of type Book and furthermore have
    the title Artificial Intelligence
  • aibook(X) - http//purl.org/dc/elements/1.1/title
    (X,'Artificial Intelligence'), http//purl.org/
    dc/elements/1.1/type(X,'http//www.lib.org/typesB
    ook').
  • aibook(X) - http//purl.org/dc/elements/1.1/type(
    X,'http//www.lib.org/typesAI-Book').
  • ?- aibook(X).
  • Query literals are evaluated one by one.
  • Matching rule heads are substituted and their
    variables unified.
  • Disjunction as rules with identical head.

13
Edutella Query Results
  • Results as tuples of variable bindings.
  • aibook(http//www.xyz.com/ai.html)
  • aibook(http//www.xyz.com/pl.html)

14
Edutella Query RDF-QEL Design criteria for an
RDF Query Exchange Language
  • Standard semantics and sound RDF serialization.
  • Expressiveness (simple queries should look simple
    while complex queries should be possible).
  • Adaptibility (QBE/simple graph query, relational
    calculus, inference engines).
  • Transformability.

15
Edutella Query RDF-QEL-i
  • Solution Several language levels RDF-QEL-i (1-4)
    with increasing
  • expressiveness
  • RDF-QEL-1 purely conjunctive queries, follows
    QBE paradigm (corresponds to Datalog query
    without rules).
  • RDF-QEL-2 disjunctive queries, requires
    reification, AND/OR-tree, suitable for query
    visualization and reuse (corresponds to Datalog
    with non-recursive rules).
  • RDF-QEL-3 allows negation, covers relational
    calculus (corresponds to Datalog with
    non-recursive rules and negated literals).
  • RDF-QEL-4 allows recursion to express transitive
    closure and linear recursive query definitions.

16
Edutella Query Example Query in RDF-QEL-3
17
Edutella Query Example Query
  • aibook(X) - http//purl.org/dc/elements/1.1/title
    (X,'Artificial Intelligence'), http//purl.org/dc/
    elements/1.1/type(X,'http//www.lib.org/typesBook
    ').
  • aibook(X) - http//purl.org/dc/elements/1.1/type(
    X,'http//www.lib.org/typesAI-Book').
  • ?- aibook(X).

18
Edutella Prototype Functionality
  • Edutella Query Wrapper
  • Edutella network interface Import/export of
    RDF-QEL-1, RDF-QEL-3 and Datalog queries.
  • Storage layer interface Export of SQL2 queries.
  • Internal Query Representation
  • Edutella Common Data Model (ECDM).
  • Edutella Query Mediator
  • Maintains Query Index with entries of the form
    ltnamespacegt, ltnamespace, property_namegt or
    ltnamespace, property_name, property_valuegt.

19
Edutella Prototype ECDM Model
20
Edutella Prototype Demonstration
21
Edutella Prototype SQL
  • SELECT STMT0.PREDICATE STMT0_PREDICATE,
    STMT0.ARG0 STMT0_ARG0
  • FROM
  •   (SELECT 'http//www.lib.orgaibook' PREDICATE,
    STMT0.SUBJECT ARG0
  • FROM STATEMENTS STMT0
  • WHERE STMT0.PREDICATE'http//www.w3.org/1999/0
    2/22-rdf-syntax-nstype'
  • AND STMT0.OBJECT'http//www.lit.edu/typesAIBoo
    k'
  • UNION
  • SELECT 'http//www.lib.orgaibook' PREDICATE,
    STMT0.SUBJECT ARG0
  • FROM STATEMENTS STMT0, STATEMENTS STMT1
  • WHERE STMT0.PREDICATE'http//purl.org/dc/elemen
    ts/1.1/title'
  • AND STMT0.OBJECT'Artificial Intelligence'
  • AND STMT1.PREDICATE'http//www.w3.org/1999/02/2
    2-rdf-syntax-nstype'
  • AND STMT1.OBJECT'http//www.lit.edu/typesBook'
  • AND STMT0.SUBJECTSTMT1.SUBJECT ) STMT0

22
Edutella Prototype Future Work
  • Further testing, enhanced error handling.
  • Support for further Query Languages RDF-QEL-2,
    RQL, TRIPLE, RDF/XML, etc.
  • Query Optimizer.
  • Enhanced Distributed Query Mechanism.
Write a Comment
User Comments (0)
About PowerShow.com