Are you ready for Cloud Computing?

Download Report

Transcript Are you ready for Cloud Computing?

IEEE Computer Society and
GBC/ACM
June 18th 2009
By
Rohit Bhardwaj
Principal Software Engineer
[email protected]
Kronos Inc.
Agenda
 Problem with current web
 Linked Data Principles
 Semantic Web Overview
 RDF and RDFa
 Dbpedia
 OWL
 Querying SemWeb Data
 Semantic Web Services
 WS-Tenacity
 REST
 Conclusion
 References
How did we get here ?
Cloud
Computing
Utility
Computing
Virtualization
SaaS
Web 2.0
GRID Computing
Multi Tenancy
Storage Services
SOA
Mainframes
Client Server
3
Interoperability of data
Agenda
 Problem with current web
 Linked Data Principles
 Semantic Web Overview
 RDF and RDFa
 Dbpedia
 OWL
 Querying SemWeb Data
 Semantic Web Services
 WS-Tenacity
 REST
 Conclusion
 References
Tim Berners Lee on the
Semantic Web
People keep asking what Web 3.0 is. I think maybe when you've got an
overlay of scalable vector graphics - everything rippling and folding and
looking misty - on Web 2.0 and access to a semantic Web integrated across
a huge space of data, you'll have access to an unbelievable data resource."
– Tim Berners-Lee, 2006
RAW data to create new Plants
RAW
DATA
NOW
Raw Data to create Eco-System
Linked Data Principles
1. Use URIs as names for things
2. Use HTTP URIs so that people can look up those
names
3. When someone looks up a URI, provide useful
RDF information
4. Include RDF statements that link to other URIs
so that they can discover related things
Tim Berners-Lee 2007
http://www.w3.org/DesignIssues/LinkedData.html
Computer understands (RDFa)
meaning of web page
Search engines will use semantics for the page
More accurate searches
Agenda
 Problem with current web
 Linked Data Principles
 Semantic Web Overview
 RDF and RDFa
 Dbpedia
 OWL
 Querying SemWeb Data
 Semantic Web Services
 WS-Tenacity
 REST
 Conclusion
 References
Semantic Web
 “provides a common framework that allows data to be
shared and reused across application, enterprise, and
community boundaries. It is a collaborative effort led by
W3C (World Wide Web Consortium)…”
 “Classical” Web: computers deliver documents (text,
multimedia…)
 Semantic Web: let computers process (interpret,
combine, select, judge) and deliver information
Semantic Web Overview
Technologies
Agenda
 Problem with current web
 Linked Data Principles
 Semantic Web Overview
 RDF and RDFa
 Dbpedia
 OWL
 Querying SemWeb Data
 Semantic Web Services
 WS-Tenacity
 REST
 Conclusion
 References
RDF
 Resource Description Framework
 W3C Recommendation
 Specification for a graph metamodel to comment on
web resources (or anything)
Uses a triple form
predicate
Subject
Object
Subject
Predicate
MADONNA
LIKES
Object
SINGING
CURIE: Compact URI
 RDF uses URI (Uniform Resource Identifier) to define
subjects and predicates.
 http://www.example.org/really/really/really/long/urls
/to/work/with/is /very/difficult
Triples and N3 Notation (Graph)
 @prefix pref: <http://example.org/vocabulary#> .
 <#madonna> <pref:likes> <#singing> .
MADONNA
Subject
LIKES
Predicate
SINGING
Object
Vocabulary : FoaF
Britney
KNOWS
Madonna
Creating a triple so that
Browser can understand
 <body xmlns:foaf="http//xmlns.com/foaf/0.1/">

<span about="#Britney" property="foaf:name">

Britney Spears
 </span>
 </body>
 N3 notation:
 @prefix foaf: <http://xmlns.com/foaf/0.1/> .
 <#Britney> foaf:name "Britney Spears" .
#Britney
NAME
Britney Spears
Types and Relationships
 <body xmlns:foaf="http//xmlns.com/foaf/0.1/">













<span about="#Britney" typeof="foaf:Person">
property-"foaf:name">
Britney Spears
</span>
<span about="#Madonna" typeof="foaf:Person">
property-"foaf:name">
Madonna
</span>
<span about="#Britney" typeof="foaf:knows">
resource="#Madonna">
Britney is friend of Madonna
</span>
</body>
Relationship
#Britney
NAME
K
N
O
W
S
#Madonna
Britney
Spears
PERSON
NAME
Madonna
Building Semantic web
 Web of triples going to blogs, sites, countries, places,
things and their relationships between news, people,
movies
RDFS
 RDF Schema (RDFS)
 – Vocabulary for RDF – taxonomies of classes and
 properties, domain, range, …
:Dog rdfs:subClassOf :Animal.
:Person rdfs:subClassOf :Animal.
:hasChild rdfs:range :Animal;
rdfs:domain :Animal.
:hasSon rdfs:subPropertyOf :hasChild.
:Max a :Dog.
:Abel a :Person.
:Adam a :Person;
:hasSon :Abel.
Agenda
 Problem with current web
 Linked Data Principles
 Semantic Web Overview
 RDF and RDFa
 Dbpedia
 OWL
 Querying SemWeb Data
 Semantic Web Services
 WS-Tenacity
 REST
 Conclusion
 References
Dbpedia Example
dbpedia
 As of November 2008[update], the DBpedia dataset
describes more than 2.6 million things, including at
least 213,000 persons, 328,000 places, 57,000 music
albums, 36,000 films, 20,000 companies. The dataset
features labels and short abstracts for these things in
30 different languages; 609,000 links to images and
3,150,000 links to external web pages; 4,878,100
external links into other RDF datasets, 415,000
Wikipedia categories, and 75,000 YAGO categories.[1]
Example
 Community effort to
 Publish existing open license datasets as Linked
Data on the Web
 Interlink things between different data sources
 Develop clients that consume Linked Data from
the Web
Linked Data Browsers
 Tabulator Browser (MIT, USA)
 Disco Hyperdata Browser (FU Berlin, DE)
 OpenLink RDF Browser (OpenLink, UK)
 Zitgist RDF Browser (Zitgist, USA)
 Humboldt (HP Labs, UK)
 Fenfire (DERI, Irland)
 Marbles (FU Berlin, DE)
Example 1
 http://graphs.gapminder.org/world
Example 2
 http://bitmunk.com/media/6995806
FUZZ Firefox plug-in
FUZZ Plug-in
OpenLink Firefox Plug-in
Some more examples
 http://richard.cyganiak.de/2007/10/lod/
 http://www4.wiwiss.fu-
berlin.de/bizer/pub/lod-datasets_2009-0305.html
 http://www.openstreetmap.org/
 http://revyu.com/
 DBpedia Mobile
Agenda
 Problem with current web
 Linked Data Principles
 Semantic Web Overview
 RDF and RDFa
 Dbpedia
 OWL
 Querying SemWeb Data
 Semantic Web Services
 WS-Tenacity
 REST
 Conclusion
 References
OWL
 Web Ontology Language (OWL)
 W3C Recommendation
 Designed to support different levels of expression with
 different computational requirements
 OWL Lite
 OWL DL
 OWL Full
“Berlin” Ontology example:
Berlin local transport service
Agenda
 Problem with current web
 Linked Data Principles
 Semantic Web Overview
 RDF and RDFa
 Dbpedia
 OWL
 Querying Semantic Web Data
 Semantic Web Services
 WS-Tenacity
 REST
 Conclusion
 References
Querying Semantic Web Data:
SPARQL
 Emerging W3C Standard for querying RDF
 SPARQL Protocol and RDF Query Language
 It has been a moving target, but various tools are
starting to support it
 ARQ SPARQL Processor for Jena
 Rasqal RDF query library for Redland
 Pellet, KAON2 OWL DL Reasoners
SPARQL
 Simple Protocol and RDF Query Language
 – SQL like language for RDF querying




SELECT ?name ?mbox
WHERE { ?x foaf:name ?name .
?x foaf:mbox ?mbox .
}
 – graph matching/construction
 – SELECT, CONSTRUCT, DESCRIBE, ASK
 – ORDER BY, DISTINCT, OFFSET, LIMIT
 • Operates on any RDF graph
 – i.e., including RDFS/OWL
SPARQL DEMO
 http://demo.openlinksw.com/sparql_demo/#
 http://www.sparql.org/query.html
Semantic Search
 One of the primary goals of semantic web
 Not only keyword full-text search
 Query includes relations between resources
 Connecting data: mash-up from different
sources
 Within enterprise or enterprises
 Relevant research: “semantic desktop”
 semantic search within data in a single PC
Web of Data Search Engines
 SWSE (DERI, Ireland)
 Swoogle (UMBC, USA) http://swoogle.umbc.edu/
 Falcons (IWS, China)
 Sindice (DERI, Ireland)
 Watson (Open University, UK)
 MicroSearch (Yahoo, Spain)
Agenda
 Problem with current web
 Linked Data Principles
 Semantic Web Overview
 RDF and RDFa
 Dbpedia
 OWL
 Querying SemWeb Data
 Semantic Web Services
 WS-Tenacity
 REST
 Conclusion
 References
Semantic Web Services
 Semantic enrichment of Web Services
 Semantic interoperability
 Special ontologies developed for the description of
services: OWL-S, WSMO, …
 service matchmaking to allow service discovery,
composition and execution
OWL-S
 OWL ontology for describing services
 OWL-S Matchmaking:
 Description of input and output conditions as a concept
Agenda
 Problem with current web
 Linked Data Principles
 Semantic Web Overview
 RDF and RDFa
 Dbpedia
 OWL
 Querying SemWeb Data
 Semantic Web Services
 WS-Tenacity
 REST
 Conclusion
 References
WS-Tenacity
SOA = WSDL + SOAP + UDDI
WS-Complexity
 Real Complexity
 Hard things hard
 Artificial Complexity
 Easy things are (still!) hard
WS-Inoperability
 SOAP
 Message-oriented request
 Mixes verb space and content space (No nouns!)
 WSDL
 What You See Is What You Get
 UDDI
 Published metadata about service
 Simultaneously complex and limited
WS-Flexibility
 If you build it...
 Amazon supports both SOAP-based and RESTful Web
Services
 Developers have spoken (80-90% prefer REST)
Agenda
 Problem with current web
 Linked Data Principles
 Semantic Web Overview
 RDF and RDFa
 Dbpedia
 OWL
 Querying SemWeb Data
 Semantic Web Services
 WS-Tenacity
 REST
 Conclusion
 References
REST is History
 REST (REpresentational State Transfer)
 Based largely on Roy Fielding’s Ph.D. thesis
 Architectural style designed to promote
 Performance
 Scalability
 Generality
 Simplicity
 Modifiability
Separation of Concerns
HTTP://REST.BLUEOXEN.NET/CGI-BIN/WIKI.PL?RESTTRIANGLE
Noun Space
 Resources are an abstraction for what is available
 Files
 Generated Content
 Computational Results
 Concepts/Organizations/People
 What comes back can change over time
 Think about today’s /. Page
Verb Space
 Constrained semantics for acting upon resources
 Traditionally
 GET
 POST
 PUT
 DELETE
 Allows intermediaries to apply security/caching
policies
REST Architecture
The Web as Model
 Scalability
 Addressability
 Bookmarkability
 Evolvable architecture
 Simple, Generalized Model
 Coordination on the Edge (Republishability)
Web Building Blocks
 Standard URI Scheme addresses
 Documents, Data, Services, Concepts
 Logical resolution to concrete representation
 Standard application protocols for manipulation
 Standard metadata languages
Scalability
Content Negotiation
Access Control
Architectural Migration
RESTful Web Services
 Putting the “Web” in Web Services
 Reusing existing technologies
 Simple things easy, hard thing possible
 Can layer on complexity as necessary
 Nothing necessarily to buy
Agenda
 Problem with current web
 Linked Data Principles
 Semantic Web Overview
 RDF and RDFa
 Dbpedia
 OWL
 Querying SemWeb Data
 Semantic Web Services
 WS-Tenacity
 REST
 Conclusion
 References
Conclusion
 Semantic web is future
 RDFa and Ontology languages help computers
understand
 REST is AN Answer
 For architectural styles that support it, REST allows
systems to be simple but complete
 Promotes separation of noun, verb and content spaces
for simplicity and extensibility
 Systems built on principles of REST demonstrate great
scalability
 Some places REST is not the right answer
Semantic Web Examples
http://simile.mit.edu/wiki/Exhibit/Examples
Semantic Web Examples
http://simile.mit.edu/wiki/Exhibit/Examples
Semantic Web Examples
Questions?
Specifications
References
 Roy Fielding’s Thesis http://tinyurl.com/cvamh
 OpenLink Data Explorer 0.25 for firefox
 http://microformats.org/about/
 http://www.openstreetmap.org/
 http://rdfa.info/about
 http://www.dataportability.org/
 Tabulator, Disco RDF Browser