55
COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

JENA DBGroup - 10

Abhishek Kumar

Harshvardhan Singh

Abhisek Mohanty

Suhas Tumkur Chandrashekhara

Page 2: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Introduction

Data Model

Query Language

Implementation

Features

Applications

OUTLINE

Page 3: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Open Source

Java Framework

Semantic Web

Support for OWL

Introduction

Page 4: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Developed by the World Wide Web Consortium (W3C)

Standard for representing vast amount of web

Intended for applications processing web resources

RDF – Resource Description Framework

Data Model

Page 5: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

1997 – Platform for Internet Content Selection PICS

1997 – Dublin Core and Meta Content Framework

1999 – 1st W3C Recommendation

2004 – RDF 1.0

2014 – RDF 1.1

History

Page 6: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Maintains semantics and is unambiguous

Human and Machine processable vocabulary

Triples!

RDF Data Model

Page 7: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Terminology – Subject (Resource), Predicate

(Property Type), Object (Value)

Triples

SubjectPredicate

Object

Page 8: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Simple RDF Statement

source: https://www.w3.org/TR/2004/REC-rdf-primer-20040210/

Page 9: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

RDF Graph

• To identify resources,

RDF uses Uniform

Resource Identifiers

(URIs)

source: http://www.dlib.org/dlib/may98/miller/05miller.html

Page 10: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

RDF/XML Syntax

source: https://www.w3.org/TR/2004/REC-rdf-primer-20040210/

RDF/XML for the Web Page’s Creation Date

Page 11: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

RDF predefines just one datatype – rdf:XMLLiteral

RDF Datatypes

https://www.w3.org/TR/2004/REC-rdf-concepts-20040210/#section-Datatypes

Datatype consists of:

Page 12: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Plain Literals -

string combined

with an optional

language tag

RDF Literals

https://www.w3.org/TR/2004/REC-rdf-primer-20040210/#rdfschema

Page 13: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Typed Literals -

string combined

with a datatype URI

RDF Literals

https://www.w3.org/TR/2004/REC-rdf-primer-20040210/#rdfschema

Page 14: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Merge

Flexible Schema

No Key Constraints

Cardinality

Operations

Page 15: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

A database for storage and retrieval of RDF data

Supports various query languages

SPARQL, RDQL, Versa

Jena, Sesame, AllegroGraph, BigData

Triple Stores

Page 16: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Schema Flexibility

Easy to Query

Standards and Easy Data Migration

Data Provenance

Why Triple Stores?

Page 17: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Query Expressivity

No Joins, one table

Example: Maria is a parent of

Ivan

Find tuples that are persons

Why Triple Stores?

source: https://ontotext.com/documents/white_papers/The-Truth-About-Triplestores.pdf

Page 18: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Inferencing and

Reasoning

Generate and infer new

relationships among existing

data.

Why Triple Stores?

source: https://ontotext.com/documents/white_papers/The-Truth-About-Triplestores.pdf

Page 19: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Inferencing

and

Reasoning

source: https://ontotext.com/documents/white_papers/The-Truth-About-Triplestores.pdf

Page 20: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Can be divided into three broad categories based on

architecture of implementation:

In Memory

RDF graphs stored as triple in Main Memory

Fast, efficient but expensive

Triple Store - Architecture

Page 21: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Native

Persistent storage with own implementation of the databases

Jena TDB, AllegroGraph etc.

Non-Native

Run on third party databases like MySQL, Oracle etc.

Jena SDB

Triple Store - Architecture

Page 22: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Triple -> Graph -> Dataset

Types

Default Graphs

Named Graphs

Specified in SPARQL Queries

RDF Datasets

Page 23: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Default and Named Graphs

Default

G1 G2

N:

G3

N:

G4

N:

G5

Page 24: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

RDF Datasets – Another Example

SELECT ?a

FROM <ex1.ttl>

FROM <ex2.ttl>

FROM NAMED <ex3.ttl>

WHERE{

{ ?b publication ?a }

UNION { GRAPH <ex3.ttl> { ?b publication ?a }

}

}

Page 25: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Old implementation of Triple Stores.

Relational database for storage and querying of RDF data

Multiple stores supported: MySQL, PostgreSQL, Oracle, DB2

Jena SDB

Page 26: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Component of Jena for

RDF storage and query

Stored in a single

directory

Jena TDB

Triple and Quad Indexes

NodeIDs - 64 bit identifiers

B+ Trees

Node Table

NodeId -> Node

Page 27: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Jena TDB

Page 28: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Managed through Command Line and Jena API

ACID properties through WRITE-AHEAD-LOGGING

Provides Serializable transactions

Queried using SPARQL

Jena TDB

Page 29: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Subject Predicate Object

Primary Key (heterogeneous)

RDF Data as Relational Database

QUERY ENGINE - ARQ QUERY LANGUAGE - SPARQL

triple

Page 30: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Supports SPARQL RDF Query language

Offers free text search via Lucene

Access and extension of SPARQL algebra

Support for Remote Federated Queries

Extension to other storage systems

Query Engine - ARQ

Page 31: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

SPARQL Protocol and RDF query language

Queries consist of triple patterns (triple store)

Allow analytic operations like JOIN, SORT, AGGREGATE

Query unknown relationships

Pull values from structured and semi-structured data

SPARQL

Page 32: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

SPARQL : Semantic Web : : SQL : Relational Databases

- 3 columns – subject, predicate, object

- Add new predicates without changing schema

SPARQL : Resources : : SQL : Tables and Databases

- Derive any information!

- Draw conclusions and make predictions!

SPARQL as SQL

Page 33: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Prefix declarations – BASE, PREFIX

Dataset definition – FROM, FROM NAMED

Result Clause – SELECT, CONSTRUCT, DESCRIBE, ASK

Query pattern – WHERE

Query modifiers – ORDER BY, LIMIT, DISTINCT, REDUCED

SPARQL Query comprises

Page 34: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Source: https://data-gov.tw.rpi.edu/wiki/How_to_specify_RDF_Dataset_in_SPARQL_queries

Dataset Specification

Scheme

Page 35: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

SELECT query

CONSTRUCT query

ASK query

DESCRIBE query

QUERY FORMS

Page 36: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Parsing - String to Query

Translation - Query to SPARQL algebra expression

Optimization of algebra expression

Determination of query plan

Evaluation of query plan

SPARQL query processing stages

Page 37: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

PREFIX foaf: <http://xmlns.com/foaf/0.1/>

SELECT ?url

FROM <bloggers.rdf>

WHERE {

?contributor foaf:name “Jon Foobar” .

?contributor foaf:weblog ?url .

}

"Find the URL of the blog by the person named Jon Foobar"

Basic SPARQL query

Page 38: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Anatomy of a SPARQL query

Source: http://www.ibm.com/developerworks/xml/library/j-sparql/

Page 39: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

SELECT ?name ?email

WHERE {

?person rdf:type foaf:Person .

?person foaf:name ?name .

OPTIONAL { ?person foaf:mbox ?email

} }

Relational Algebra

for SPARQL

Source: http://www.hpl.hp.com/techreports/2005/HPL-2005-170.pdf

Page 40: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Search multiple resources simultaneously

Distribute query, aggregate results

Disparate databases

Wrapper function for translation

Federated Search

Source: https://en.wikipedia.org/wiki/Federated_search

Page 41: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Schema Flexibility, no downtime or redesign

Less Development Time, low cost

Federating information from websites and databases

Complex joins of structured and semi-structured data

Good interoperability with other software systems

Advantages of SPARQL

Page 42: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Immaturity – lack of wide deployment

Predicates cannot have properties

Negation is complicated

Lacks support for transitive/hierarchical queries

Limitations of SPARQL

Page 43: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

JENA Core API

SPARQL Query on

Database

SPARQL Via API

Implementation

RDF APISPARQL

API

Source: https://jena.apache.org/about_jena/architecture.html

Page 44: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

RDF Graph = Model

Triples = Statement

Namespaces and curie

JENA Core API

Page 45: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Using ARQ

sparql --data URL

SPARQL Command Line

Page 46: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Similar to JDBC

QueryFactory create()

QueryExecution

execSelect()

SPARQL With JENA API

Page 47: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

SPARQL Server

FUSEKI

Page 48: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Scalability

Serialization

Inference

Features

Page 49: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Applications

Source: http://vivo.ufl.edu

Page 50: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Fedora - Flexible Extensible Digital Object Repository

Architecture

GRANATUM – Web Portal for Drug Discovery

UK Government – Land Registry

Environment Data

Applications

Page 51: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Source: http://www.topquadrant.com/company/customers/

Page 52: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Limited API

Centralized

Limitations

Page 53: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

RDF Primer, W3C

Apache Jena

Learning SPARQL, Bob DuCharme

Further Reading

Page 54: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE

Questions

Page 55: College Performance Datamschneid/Teaching/CIS...COMPUTER AND INFORMATION SCIENCE JENA DB Group - 10 Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

COMPUTER AND INFORMATION SCIENCE