PPT - UTPA Faculty Web

advertisement
Was
Derived
From
Storing, Indexing and Querying Large Provenance
Data Sets as RDF Graphs in Apache HBase
Artem Chebotko
Joint work with
John Abraham and Pearl Brazier
University of Texas – Pan American
Anthony Piazza
Piazza Consulting
Andrey Kashlev and Shiyong Lu
Wayne State University
7th IEEE International Workshop on Scientific Workflows, July 2, 2013
1
Provenance in eScience
 Metadata that captures history of an experiment
 Problem diagnosis
 Result interpretation
 Experiment reproducibility
 Scientific Workflow Community Provenance Challenges
 2006: understanding and sharing information about
provenance representations and capabilities
 2006: interoperability of different provenance
 2009: evaluating various aspects of OPM
 2010: showcase OPM in the context of novel applications
 Open Provenance Model (2007 - 2010)
 PROV-DM: The PROV Data Model (W3C
Recommendation 30 April 2013)
2
SWFMS and Provenance
 Support provenance collection
 Use proprietary or third-party systems to manage
provenance
 Differ in provenance models, provenance vocabularies,
inference support, and query languages.
 May eventually converge to W3C PROV specifications
 Taverna
 Galaxy
 Kepler
 Triana
 View
 OPMProv
 VisTrails,
 Karma
 Pegasus
 RDFProv
 Swift
 etc.
3
Sample OPM Provenance Graph
 Nodes:
 artifacts
Create Table
SQL Statements
Create Index
SQL Statements
Create Trigger
SQL Statements
 processes
 agents
 Edges:
Create Database Schema
 used
 wasGeneratedBy
Schema
Dataset
 wasControlledBy
 wasTriggeredBy
 wasDerivedFrom
Load Data
Instance
4
Sample Graph Serialization: OPMV
and Terse RDF Triple Language
Create Table
SQL Statements
Create Index
SQL Statements
Create Trigger
SQL Statements
Create Database Schema
Schema
Dataset
Load Data
Instance
utpb:schema
utpb:instance
utpb:dataset
utpb:loadData
utpb:loadData
rdf:type opmv:Artifact .
rdf:type opmv:Artifact .
rdf:type opmv:Artifact .
rdf:type opmv:Process .
opmv:used utpb:schema,
utpb:dataset .
utpb:instance opmv:wasGeneratedBy utpb:loadData .
utpb:instance opmv:wasDerivedFrom utpb:schema,
utpb:dataset .
5
Provenance Serialization and
Querying
 Both OPM and PROV-DM can be serialized in RDF
 Queried in SPARQL
Find all artifacts and their values, if any, in a provenance graph
with identifier http://cs.panam.edu/utpb#opmGraph
6
This Work - Motivation
 Single provenance graph as an RDF graph
 In general, readily manageable in main memory of a single
machine
 Hundreds of thousands or even millions of provenance
graphs as a provenance (RDF) dataset
 Challenging to manage
 Our Focus/Problem: Efficient and scalable storage and
querying of large collections of provenance graphs
serialized as RDF graphs (in an Apache HBase database)
7
This Work - Contributions
 Novel storage and indexing schemes for RDF data in
HBase that are suitable for provenance datasets
 Novel and efficient querying algorithms to evaluate
SPARQL queries in HBase that are optimized to make use
of bitmap indices and numeric values instead of triples
 Empirical evaluation of our approach using provenance
graphs and test queries of the University of Texas
Provenance Benchmark (UTPB)
8
Talk Outline
 RDF Data and Queries
 Indexing Scheme
 Storage Scheme
 Query Processing
 Performance Study
 Related Work
 Summary and Future work
9
RDF Data and Queries
10
RDF Data and Queries
11
Indexing Scheme
 Selection Indices: Is, Ip, Io
 Find a triple with known s, p and o:
12
Indexing Scheme
 Join Indices: Iss, Iso, Ios, Ioo
 Find triples with the same object as subject in triple at
position i:
Iso(i)
13
Storage Scheme
 One table with two column families for data and indices
 Each row stores one complete provenance graph
14
Query Processing
 Four efficient algorithms/functions:
 application of selection indices
 application of join indices
 handling of special cases not supported by the indices
 basic graph pattern evaluation
15
Query Processing
16
Query Processing
17
Query Processing
18
Query Processing
19
Query Processing
20
Query Processing
21
Performance Study
 Implementation
 Java, Hadoop 1.0.0, HBase 0.94
 Cluster setup
 One HBase Master
 Eight HBase Region Servers
 All commodity machines
 Benchmark – UTPB (5 datasets, 11 queries)
22
Performance Study
 Q1 – simplest, yet most expensive query due to a large
result set
 Q1. Find all provenance graph identifiers.
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX owl: <http://www.w3.org/2002/07/owl#>
SELECT * WHERE { ?graph rdf:type owl:Thing . }
23
Performance Study
 Q2 – Q11 – different complexity, yet similar performance
 Example: Q8. Find all artifacts and their values, if any, in a
particular provenance graph.
PREFIX opmv: <http://purl.org/net/opmv/ns#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX opmo: <http://openprovenance.org/model/opmo#>
PREFIX utpb: <http://cs.panam.edu/utpb#>
SELECT ?artifact ?value F
ROM NAMED <http://cs.panam.edu/utpb#opmGraph>
WHERE {
GRAPH utpb:opmGraph {
?artifact rdf:type opmv:Artifact .
OPTIONAL { ?artifact opmo:annotation ?annotation .
?annotation opmo:property ?property .
?property opmo:value ?value . } .
OPTIONAL { ?artifact opmo:avalue ?artifactValue .
?artifactValue opmo:content ?value . } .
}
}
24
Performance Study
 Please see other queries in the paper – very efficient and
scalable (nearly constant scalability due to minimal data
transfers and fast index-based join processing)
25
Related Work
 HBase, BigTable, Cassandra
 Hadoop, Hive, Pig, CouchDB, MongoDB, etc.
 NoSQL solutions to RDF data management
 Provenance management systems
 RDF data indexing
26
Summary and Future Work
 Designed novel storage and indexing schemes for RDF
data in HBase that are suitable for provenance datasets
 Empirical evaluation results are promising
 Future work
 Compare, compare, compare
 More experiments with multi-user workloads
 More optimizations
 PROV-DM benchmark anyone?
27
THANK YOU! Questions?
 My contact information:
 Artem Chebotko, Department of Computer Science,
University of Texas – Pan American
 chebotkoa@utpa.edu
 http://www.cs.panam.edu/~artem
28
Download