Presentation is loading. Please wait.

Presentation is loading. Please wait.

1. 2  RDF triples database – memory-resident  SPARQL query language  Aimed at customers who Have large datasets Want to do graph analytics.

Similar presentations


Presentation on theme: "1. 2  RDF triples database – memory-resident  SPARQL query language  Aimed at customers who Have large datasets Want to do graph analytics."— Presentation transcript:

1 1

2 2  RDF triples database – memory-resident  SPARQL query language  Aimed at customers who Have large datasets Want to do graph analytics

3 3  “Resource Data Framework”  A data representation intended to be Somewhat self-defining Data items unique across the Internet  Each triple represents an item of information Subject Predicate Object “John Gilbert drives a Yugo”

4 4  They waste space compared to relational DB  BUT they’re graph-oriented John GilbertYugo person car yd:carType#Yugo

5 5  SPARQL Protocol And RDF Query Language  Similar to SQL prefix yd: SELECT ?car WHERE { yd:person#JohnGilbert yd:drivesCar ?car } car Yugo

6 6 prefix yd: SELECT ?driver ?car WHERE { ?driver yd:drivesCar ?car ?driver a yd:UniversityProf } driver car JohnGilbert Yugo AndrewLumsdaine Studebaker DavidBader AMC_Matador

7 7 SELECT ?driver ?car WHERE { ?driver yd:drivesCar ?car ?driver a yd:UniversityProf ?car yd:yearBuilt ?modelYear } FILTER ( ?modelYear > “ T12:00:00”^^xsd:dateTime ) drivercar  Plus other useful features like updates, etc.

8 8 LUBM Query 9: PREFIX rdf: PREFIX ub: SELECT ?X, ?Y, ?Z WHERE { ?X rdf:type ub:Student. ?Y rdf:type ub:Faculty. ?Z rdf:type ub:Course. ?X ub:advisor ?Y. ?Y ub:teacherOf ?Z. ?X ub:takesCourse ?Z } ?X?Y?Z

9 9 “Cool. Can you also do betweenness centrality on that?”

10 1010 Steve “Nailgun” Reinhardt’s breadth-first search external server iterative script w. SPARQL API Urika SPARQL query engine “Get neighbors of these vertices” Set of vertices

11 1  Extending SPARQL with “INVOKE” operator INVOKE ( )  INVOKE is paired with SPARQL’s existing CONSTRUCT operator CONSTRUCT WHERE { yd:person#JohnGilbert ?p1 ?o1. ?o1 ?p2 ?o2. ?o2 ?p3 ?o3. } INVOKE ( yd:person#JohnGilbert, yd:carType#Ferrari )  We extended SPARQL so that you can nest a CONSTRUCT/INVOKE pair.

12 1212 SELECT ?vertexID ?edgeID ?vertex2ID WHERE { CONSTRUCT { ?s1 ?s2 ?s3. ?startVertex a. } WHERE { { ?s1 ?s2 ?s3. FILTER (!sameterm( ?s2, ) ) } UNION { VALUES ?startVertex { lub:GraduateStudent30 lub:GraduateStudent102 lub:GraduateStudent68 lub:GraduateStudent16 lub:GraduateStudent5 } INVOKE yd:graphAlgorithm.kpointfive(1) PRODUCING ?vertexID ?edgeID ?vertex2ID }

13 1313 query engine query three-column “IRA” S P O Graph algorithm “wrapper” graph algorithm from library input graph algorithm expects graph algorithm results vertexID edgeID vertex2ID three-column “IRA”

14 1414  VHLL for graph algorithms Maybe extend with some RDF access features  New platform for Urika Likely to be commodity processor-based

15 1515 In conclusion…


Download ppt "1. 2  RDF triples database – memory-resident  SPARQL query language  Aimed at customers who Have large datasets Want to do graph analytics."

Similar presentations


Ads by Google