architecture tutorial overview of today’s talks provenance data structures recording and querying...

22
Architecture Tutorial Architecture Tutorial Overview of Today’s Talks • Provenance Data Structures • Recording and Querying Provenance – Break (30 minutes) • Distribution and Scalability • Security • Methodology

Upload: shanon-kelley

Post on 25-Dec-2015

215 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Architecture Tutorial Overview of Today’s Talks Provenance Data Structures Recording and Querying Provenance –Break (30 minutes) Distribution and Scalability

Architecture TutorialArchitecture Tutorial

Overview of Today’s Talks

• Provenance Data Structures

• Recording and Querying Provenance– Break (30 minutes)

• Distribution and Scalability

• Security

• Methodology

Page 2: Architecture Tutorial Overview of Today’s Talks Provenance Data Structures Recording and Querying Provenance –Break (30 minutes) Distribution and Scalability

Architecture TutorialArchitecture Tutorial

Querying for Provenanceby Simon Miles ([email protected])

Page 3: Architecture Tutorial Overview of Today’s Talks Provenance Data Structures Recording and Querying Provenance –Break (30 minutes) Distribution and Scalability

Architecture TutorialArchitecture Tutorial

P-Structure

• To help execute queries about the past processes in an application, a provenance store categorises recorded p-assertions in a larger data structure

• The p-structure is a navigable hierarchy exposed through query interfaces of the provenance store.

Page 4: Architecture Tutorial Overview of Today’s Talks Provenance Data Structures Recording and Querying Provenance –Break (30 minutes) Distribution and Scalability

Architecture TutorialArchitecture Tutorial

Collect p-assertions together in a view. • A view is the set of

assertions by 1 actor about 1 interaction.

• A view contains:– An actor identity– A set of p-assertions

• A view is one of two view kinds: sender or receiver

Donor DataCollector

User Interface

Page 5: Architecture Tutorial Overview of Today’s Talks Provenance Data Structures Recording and Querying Provenance –Break (30 minutes) Distribution and Scalability

Architecture TutorialArchitecture Tutorial

Interaction Records

Page 6: Architecture Tutorial Overview of Today’s Talks Provenance Data Structures Recording and Querying Provenance –Break (30 minutes) Distribution and Scalability

Architecture TutorialArchitecture Tutorial

Query Types

• There are two types of query over a provenance store:– A process documentation query is a query

over the p-structure to retrieve individual pieces of data, e.g. XQuery or XPath

– A provenance query is a query for the provenance of an entity, making use of the process documentation to determine this

Page 7: Architecture Tutorial Overview of Today’s Talks Provenance Data Structures Recording and Querying Provenance –Break (30 minutes) Distribution and Scalability

Architecture TutorialArchitecture Tutorial

Provenance Queries

• Example provenance question:– What is the provenance of a donor organ’s

diagnosis?

• Or can be rephrased as…– Why was a potential donor organ accepted /

rejected for use?

• May be asked when a possible mistake was made, or just for regular auditing

• The results of a query is a subset of the recorded process documentation

Page 8: Architecture Tutorial Overview of Today’s Talks Provenance Data Structures Recording and Querying Provenance –Break (30 minutes) Distribution and Scalability

Architecture TutorialArchitecture Tutorial

Provenance of Donor Diagnosis

DonationDecision Donor Data

CollectorUser Interface

Page 9: Architecture Tutorial Overview of Today’s Talks Provenance Data Structures Recording and Querying Provenance –Break (30 minutes) Distribution and Scalability

Architecture TutorialArchitecture Tutorial

Provenance of Donor Diagnosis

DonationDecision Donor Data

CollectorUser Interface

DecisionRequest

User InterfaceDonor Data

Collector

Patient(in Brain DeathNotification) Brain Death

ManagerUser Interface

Is Response To

Is Decision On

JustificationReport Donor Data

CollectorUser Interface

Is Justified By

Page 10: Architecture Tutorial Overview of Today’s Talks Provenance Data Structures Recording and Querying Provenance –Break (30 minutes) Distribution and Scalability

Architecture TutorialArchitecture Tutorial

Provenance of Donor Diagnosis

DonationDecision Donor Data

CollectorUser Interface

DecisionRequest

User InterfaceDonor Data

Collector

Donor DataCollector

Testing LabEHCR Donor Data

CollectorEHCRS

Patient(in Brain DeathNotification) Brain Death

ManagerUser Interface

Is Response To

Is Based On

Patient

TestResults

Test ResultsDonor Data Collection

Is Decision On

JustificationReport Donor Data

CollectorUser Interface

Is Justified By

Page 11: Architecture Tutorial Overview of Today’s Talks Provenance Data Structures Recording and Querying Provenance –Break (30 minutes) Distribution and Scalability

Architecture TutorialArchitecture Tutorial

Provenance of Donor Diagnosis

DonationDecision Donor Data

CollectorUser Interface

DecisionRequest

User InterfaceDonor Data

Collector

Donor DataCollector

Testing LabEHCR Donor Data

CollectorEHCRS

Patient(in Brain DeathNotification) Brain Death

ManagerUser Interface

Is Response To

Is Based On

Patient

TestResults

Test ResultsDonor Data Collection

EHCRRequest

EHCRSDonor Data

Collector

Is Response To

Testing LabDonor Data

Collector

Request BloodTests

Is Response To

Is Decision On

JustificationReport Donor Data

CollectorUser Interface

Is Justified By

Page 12: Architecture Tutorial Overview of Today’s Talks Provenance Data Structures Recording and Querying Provenance –Break (30 minutes) Distribution and Scalability

Architecture TutorialArchitecture Tutorial

Provenance of Donor Diagnosis

DonationDecision Donor Data

CollectorUser Interface

DecisionRequest

User InterfaceDonor Data

Collector

Donor DataCollector

Testing LabEHCR Donor Data

CollectorEHCRS

Patient(in Brain DeathNotification) Brain Death

ManagerUser Interface

Is Response To

Is Based On

Patient

TestResults

Test ResultsDonor Data Collection

Data CollectionRequest Donor Data

CollectorUser Interface

EHCRRequest

EHCRSDonor Data

Collector

Is Response To

Was Caused By

Testing LabDonor Data

Collector

Request BloodTests

Is Response To

Was Caused By

Is Decision On

JustificationReport Donor Data

CollectorUser Interface

Is Justified By

Request BloodTests Donor Data

CollectorUser Interface

Was Caused By

Page 13: Architecture Tutorial Overview of Today’s Talks Provenance Data Structures Recording and Querying Provenance –Break (30 minutes) Distribution and Scalability

Architecture TutorialArchitecture Tutorial

Provenance Queries

• A provenance query is made up of two parts:– Query Data Handle

• Identifies the entity of which you want to find the provenance, e.g. the donor organ decision

– Relationship Target Filter• Scopes the query results, so that only a

manageable amount of relevant information is returned

Page 14: Architecture Tutorial Overview of Today’s Talks Provenance Data Structures Recording and Querying Provenance –Break (30 minutes) Distribution and Scalability

Architecture TutorialArchitecture Tutorial

Query Data Handles

• Identifies a particular entity at the time of a particular event

• For example, a patient at the end of a transplant operation

• In our model, events are identified as the sending or receiving of messages

• The provenance of an entity is the process by which it came to be in the state it is in at that event

Page 15: Architecture Tutorial Overview of Today’s Talks Provenance Data Structures Recording and Querying Provenance –Break (30 minutes) Distribution and Scalability

Architecture TutorialArchitecture Tutorial

Query Data Handles

• For a provenance store, a query data handle is a search within process documentation for a given documented entity

• Therefore, a query data handle is expressed as a search over the p-structure, e.g. in XPath

• In the example, the entity, the donation decision, is documented in the interaction between the User Interface and Donor Data Collector

DonationDecision Donor Data

CollectorUser Interface

Page 16: Architecture Tutorial Overview of Today’s Talks Provenance Data Structures Recording and Querying Provenance –Break (30 minutes) Distribution and Scalability

Architecture TutorialArchitecture Tutorial

Relationship Target Filters

• To scope the results of a provenance query, a relationship target filter is used

• The filter is a function over an object of a relationship (a relationship target) returning true or false, depending on whether that object should be included in the results

Donor DataCollector

Testing Lab

TestResults

DecisionRequest

User InterfaceDonor Data

Collector

Test ResultsIs Based On

Page 17: Architecture Tutorial Overview of Today’s Talks Provenance Data Structures Recording and Querying Provenance –Break (30 minutes) Distribution and Scalability

Architecture TutorialArchitecture Tutorial

Relationship Target

• The set of information about an object of a relationship– Relationship name– Data item content– Parameter name– Source and sink of interaction– Asserter identity– Provenance store location– View kind (sender/receiver)

Donor DataCollector

Testing Lab

TestResults

DecisionRequest

User InterfaceDonor Data

Collector

Test ResultsIs Based On

Page 18: Architecture Tutorial Overview of Today’s Talks Provenance Data Structures Recording and Querying Provenance –Break (30 minutes) Distribution and Scalability

Architecture TutorialArchitecture Tutorial

Exclude“Is JustifiedBy”Relation

DonationDecision Donor Data

CollectorUser Interface

DecisionRequest

User InterfaceDonor Data

Collector

Donor DataCollector

Testing LabEHCR Donor Data

CollectorEHCRS

Patient(in Brain DeathNotification) Brain Death

ManagerUser Interface

Is Response To

Is Based On

Patient

TestResults

Test ResultsDonor Data Collection

Data CollectionRequest Donor Data

CollectorUser Interface

EHCRRequest

EHCRSDonor Data

Collector

Is Response To

Was Caused By

Testing LabDonor Data

Collector

Request BloodTests

Is Response To

Was Caused By

Is Decision On

JustificationReport Donor Data

CollectorUser Interface

Is Justified By

Request BloodTests Donor Data

CollectorUser Interface

Was Caused By

Page 19: Architecture Tutorial Overview of Today’s Talks Provenance Data Structures Recording and Querying Provenance –Break (30 minutes) Distribution and Scalability

Architecture TutorialArchitecture Tutorial

ExcludeDonor DataCollectionParameter

DonationDecision Donor Data

CollectorUser Interface

DecisionRequest

User InterfaceDonor Data

Collector

Donor DataCollector

Testing LabEHCR Donor Data

CollectorEHCRS

Patient(in Brain DeathNotification) Brain Death

ManagerUser Interface

Is Response To

Is Based On

Patient

TestResults

Test ResultsDonor Data Collection

Data CollectionRequest Donor Data

CollectorUser Interface

EHCRRequest

EHCRSDonor Data

Collector

Is Response To

Was Caused By

Testing LabDonor Data

Collector

Request BloodTests

Is Response To

Was Caused By

Is Decision On

JustificationReport Donor Data

CollectorUser Interface

Is Justified By

Request BloodTests Donor Data

CollectorUser Interface

Was Caused By

Page 20: Architecture Tutorial Overview of Today’s Talks Provenance Data Structures Recording and Querying Provenance –Break (30 minutes) Distribution and Scalability

Architecture TutorialArchitecture Tutorial

ExcludeProcessMarked withTracer

DonationDecision Donor Data

CollectorUser Interface

DecisionRequest

User InterfaceDonor Data

Collector

Donor DataCollector

Testing LabEHCR Donor Data

CollectorEHCRS

Patient(in Brain DeathNotification) Brain Death

ManagerUser Interface

Is Response To

Is Based On

Patient

TestResults

Test ResultsDonor Data Collection

Data CollectionRequest Donor Data

CollectorUser Interface

EHCRRequest

EHCRSDonor Data

Collector

Is Response To

Was Caused By

Testing LabDonor Data

Collector

Request BloodTests

Is Response To

Was Caused By

Is Decision On

JustificationReport Donor Data

CollectorUser Interface

Is Justified By

Request BloodTests Donor Data

CollectorUser Interface

Was Caused By

Page 21: Architecture Tutorial Overview of Today’s Talks Provenance Data Structures Recording and Querying Provenance –Break (30 minutes) Distribution and Scalability

Architecture TutorialArchitecture Tutorial

Summary

• The p-structure is the schema of a provenance store and a categorisation of p-assertions

• The process documentation query interface allows querying actors to search and extract process documentation from the p-structure

• The provenance query interface allows querying actors to find the provenance of an application entity

• Querying for provenance involves following relationships back from the documentation of the entity, to find its causes

• Results are scoped to that relevant to the querier

Page 22: Architecture Tutorial Overview of Today’s Talks Provenance Data Structures Recording and Querying Provenance –Break (30 minutes) Distribution and Scalability

Architecture TutorialArchitecture Tutorial

Questions?

Simon Miles

[email protected]