semwebbers, loders, what pubsubhubbub can do for you (semtech)

22
© Copyright 2010 Digital Enterprise Research Institute. All rights reserved. Digital Enterprise Research Institute www.deri.ie SemWebbers, LODers: What PubSubHubbub can do for you Alexandre Passant DERI, NUI Galway SemTech 2011 June 09 2011, San Francisco

Upload: alexandre-passant

Post on 20-Aug-2015

5.454 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Semwebbers, LODers, what PubSubHubbub can do for you (SemTech)

© Copyright 2010 Digital Enterprise Research Institute. All rights reserved.

Digital Enterprise Research Institute www.deri.ie

SemWebbers, LODers: What PubSubHubbub can do for you

Alexandre Passant DERI, NUI Galway

SemTech 2011 June 09 2011, San Francisco

Page 2: Semwebbers, LODers, what PubSubHubbub can do for you (SemTech)

Digital Enterprise Research Institute www.deri.ie

Agenda

  Real-time Web and Semantics

  Push vs Pull

  PubSubHubbub (PuSH), SemWeb and Linked Data   sparqlPuSH

  SMOB

  Twarql

  Q/A

Page 3: Semwebbers, LODers, what PubSubHubbub can do for you (SemTech)

Digital Enterprise Research Institute www.deri.ie

A *real-time* Web

  Information is no longer static   The Social Web as an information stream (Twitter, 4sq, ...)

  New trends in ubiquitous computing

  Sensor data and the IoT –  Even the @towerbridge is Tweeting !

  A new area for Citizen Sensing   Earthquake detection (WWW2010 paper)

  Emergency management, reporting and monitoring (Mumbai attacks on Flickr, Twitter, etc.)

  Opinion / trends mining (Box office prediction by HP labs)

3 of XYZ

Page 4: Semwebbers, LODers, what PubSubHubbub can do for you (SemTech)

Digital Enterprise Research Institute www.deri.ie

Semantics and the real-time Web

  Combining social stream, sensors and social data   What’s happening right now, sport-wise, 25km around here ?

–  Geonames, Twitter, Dbpedia, etc.

  Who in my social network, whatever the website we’re connected through, is currently in my hometown

–  FOAF, Geonames, etc.

  Any humidity issues in our server rooms in the US –  Sensors, Geonames, Legacy Enterprise Data, etc.

  New architectures are required   Enabling pro-active notification based on triggers

  Defining semantic triggers ? Yes, with SPARQL !

4 of XYZ

Page 5: Semwebbers, LODers, what PubSubHubbub can do for you (SemTech)

Digital Enterprise Research Institute www.deri.ie

Pull vs Push

  Pull   Constant queries to various sources to get what’s new

  Useless HTTP calls (API/RSS), risks of being banned (TOS), costs and maintenance

5 of XYZ

Schema by M. Dabrowski, DERI

Page 6: Semwebbers, LODers, what PubSubHubbub can do for you (SemTech)

Digital Enterprise Research Institute www.deri.ie

Pull vs Push

  Push   Websites let me know when they have something relevant

  Wait. Receive. Consume

6 of XYZ

Schema by M. Dabrowski, DERI

Page 7: Semwebbers, LODers, what PubSubHubbub can do for you (SemTech)

Digital Enterprise Research Institute www.deri.ie

PubSubHubbub (PuSH) at a glance

  Google’s approach to enable Push on the Web   http://code.google.com/p/pubsubhubbub

  Based on Atom / RSS –  link rel=“hub” header for identifying Hub from a feed

  Simple registration / notification approach –  Libraries available in various languages

–  Open source code for PuSH hub

  Broadcasting data through public hubs –  Use Google’s one, Superfeedr, or host your own (e.g.

Enterprise distribution of content)

7 of XYZ

Page 8: Semwebbers, LODers, what PubSubHubbub can do for you (SemTech)

Digital Enterprise Research Institute www.deri.ie

PubSubHubbub, SemWeb and LOD ?

  Registrations and notifications of structured data   Efficient broadcasting of structured content at Web scale

  sparqlPuSH   Pro-active notifications of changes in RDF stores

  Real-time monitoring using SPARQL and PuSH

  SMOB   Distributed microblogging

  Syncing hubs with PuSH and SPARQL 1.1 Update

  Twarql   Twitter stream analysis

8 of XYZ

Page 9: Semwebbers, LODers, what PubSubHubbub can do for you (SemTech)

Digital Enterprise Research Institute www.deri.ie

sparqlPuSH at a glance

  sparqlPuSH   Combining SPARQL, SPARQL Update and PubSubHubbub

for pro-active notifications of changes in RDF stores

  Can be plugged on the top of any RDF store - http://code.google.com/p/sparqlpush/

  Based on   SPARQL to register feeds based on query patterns

  SPARQL 1.1 Update for triggers registration and detection

  Atom and RSS to get feeds of related changes

  PubSubHubbub for broadcasting changes

9 of XYZ

Page 10: Semwebbers, LODers, what PubSubHubbub can do for you (SemTech)

Digital Enterprise Research Institute www.deri.ie

A 2-steps approach

  A two-steps approach   Query registration

  Change notification

  A sparqlPuSH endpoint   Plugged on top of any RDF store (implementation-agnostic)

  Registration can be done remotely, through an HTTP request sent to the sparqlPuSH endpoing

  Notification is triggered as soon as relevant data appears in the store, loaded with SPARQL Update through sparqlPuSH

  Clients must understand the rel=“hub” link in the feed header, and interpret notification from PuSH hubs

10 of XYZ

Page 11: Semwebbers, LODers, what PubSubHubbub can do for you (SemTech)

Digital Enterprise Research Institute www.deri.ie

Query registration

11 of XYZ

Page 12: Semwebbers, LODers, what PubSubHubbub can do for you (SemTech)

Digital Enterprise Research Institute www.deri.ie

Example of query registration

  Identifying changes on a particular object   Be notified when something happens to ex:FooBar

  Using the Changeset vocabulary by Talis

12 of XYZ

Page 13: Semwebbers, LODers, what PubSubHubbub can do for you (SemTech)

Digital Enterprise Research Institute www.deri.ie

Query registration

13 of XYZ

Page 14: Semwebbers, LODers, what PubSubHubbub can do for you (SemTech)

Digital Enterprise Research Institute www.deri.ie

Conventions in query registration

  Using conventions to get a well-formatted Atom / RSS feed   Easier to read in standard aggregators

  Mandatory elements   ?uri - their URI of the element(s) to be retrieved

  ?date - their creation / modification date

  Can be used to retrieve named graphs if content itself is not dated

  Optional elements   ?label - their label

  ?author - their author

14 of XYZ

Page 15: Semwebbers, LODers, what PubSubHubbub can do for you (SemTech)

Digital Enterprise Research Institute www.deri.ie

Browsing available feeds

  The sparqlPuSH UI   Lists available feeds, including timestamp of last update

  Ability to create feeds from the interface

15 of XYZ

Page 16: Semwebbers, LODers, what PubSubHubbub can do for you (SemTech)

Digital Enterprise Research Institute www.deri.ie

Notification

16 of XYZ

Page 17: Semwebbers, LODers, what PubSubHubbub can do for you (SemTech)

Digital Enterprise Research Institute www.deri.ie

Notification on data update

  SPARQL Update support   HTTP-Posting data to the sparqlPuSH endpoint

–  Then loaded in the underlying RDF store

–  Allows *real-time* identification (as opposed to cron-job)

  Identifying relevant changes   Applying all registered queries to the updated dataset

  Broadcasting changes   Using PubSubHubbub ! (Scalability and RT delivery)

17 of XYZ

Page 18: Semwebbers, LODers, what PubSubHubbub can do for you (SemTech)

Digital Enterprise Research Institute www.deri.ie

Implementation

  Source code (PHP)   http://code.google.com/p/sparqlpush/ (BSD license)

  Server   Connection to any SPARQL endpoint

  Additional connector for ARC2 using the ARC2 API

  Generating RSS or Atom feeds

  Demo client   Registering / unregistering queries to remote interfaces

  Receiving updates from registered feeds

18 of XYZ

Page 19: Semwebbers, LODers, what PubSubHubbub can do for you (SemTech)

Digital Enterprise Research Institute www.deri.ie

SMOB

  Distributed and Semantic Microblogging   Setup your own hub, own your data, broadcast it

  Fully SemWeb based (RDF backend, RDFa, LOD, etc.)

  http://smob.me

  SMOB and PuSH ?   Broadcasting SPARQL 1.1

Update queries (in RSS feed)

  Instant notification for your

followers

  Ability to broadcast content

deletion

19 of XYZ

HTTP POST

SPARQL/Update + HTTP POST

Local SPARQL/Update

SMOB hub at http://apassant.net

SMOB hub at http://example.org

http://twitter.com

Page 20: Semwebbers, LODers, what PubSubHubbub can do for you (SemTech)

Digital Enterprise Research Institute www.deri.ie

SPARQL 1.1 Update + RSS + PuSH

20 of XYZ

Page 21: Semwebbers, LODers, what PubSubHubbub can do for you (SemTech)

Digital Enterprise Research Institute www.deri.ie

Twarql

  Twitter feeds through SPARQL   Entity extraction from Twitter feeds

  Representation as Linked Data (SMOB Stack)

  SPARQL queries + PuSH for notifications

  Code and demos   http://wiki.knoesis.org/index.php/Twarql

  http://bit.ly/twarql

21 of XYZ

Page 22: Semwebbers, LODers, what PubSubHubbub can do for you (SemTech)

Digital Enterprise Research Institute www.deri.ie

Questions ?

  Acknowledgements   Google Research Awards

  Julie Anaya (SMOB + PuSH)

  Pablo Mendes / Pavan Kapanipathi (Twarql)

  Contact   [email protected]

  http://apassant.net

  @terraces

22 of XYZ