integrating taverna player into scratchpads

26
Integrating Taverna Player into Scratchpads www.taverna.org.uk | scratchpads.eu Robert Haines + , Simon Rycroft * , Vince Smith * , Carole Goble + + University of Manchester, UK; * Natural History Museum, UK r [email protected]

Upload: robert-haines

Post on 10-May-2015

221 views

Category:

Software


1 download

DESCRIPTION

Scratchpads, developed as part of the ViBRANT project, are an online virtual research environment for biodiversity, allowing anyone to share their data and create their own research networks. Sites are hosted at the Natural History Museum London, and offered freely to any scientist. Sites can focus on specific taxonomic groups, or the biodiversity of a biogeographic region, or indeed any aspect of natural history. Scratchpads are also suitable for societies or for managing and presenting projects. Key features of Scratchpads include: tools to manage biological classifications, bibliography management, media (images, video and audio), rich taxon pages (with structured descriptions, specimen records, and distribution data), and character matrices. Scratchpads support various ways of communicating with site members and visitors such as blogs, forums, newsletters and a commenting system. There are currently 568 Scratchpads with 6,759 active users. Taverna Player, developed as part of the BioVeL project, enables the running of a workflow within a Ruby-on-rails application. Taverna Player has a REST API that allows inputs to the workflow to be specified, a run to be started and monitored, and the resultant outputs to be retrieved. Any interactions the workflow includes are presented to the user for them to complete. Taverna Player has been released in the RubyGems registry and is used within the BioVeL Portal to run a wide range of biodiversity workflows. As part of a collaboration between BioVeL and ViBRANT, Taverna Player has been integrated into Scratchpads in two ways. Firstly, workflows can be embedded in a page in the same way a video from YouTube would be embedded; the workflow itself is running on the BioVeL Portal but all set up and interaction is done in the embedded widget within the Scratchpads site. Secondly, the Scratchpads can use the Taverna Player REST API directly; this allows workflows to be run with a higher degree of control and results to be ingested back into the Scratchpads for further analysis. In both cases data can be automatically injected into the workflow run from the host Scratchpads site. Security is handled at the individual Scratchpads level; each Scratchpads site has its own credentials to access the BioVeL Portal and run workflows. This allows the community within a Scratchpads site to create and share workflow runs that all members have access to by default while preserving privacy if required.

TRANSCRIPT

Page 1: Integrating Taverna Player into Scratchpads

Integrating Taverna Playerinto Scratchpads

www.taverna.org.uk | scratchpads.eu

Robert Haines+, Simon Rycroft*,Vince Smith*, Carole Goble+

+University of Manchester, UK; *Natural History Museum, UK

[email protected]

Page 2: Integrating Taverna Player into Scratchpads

Scratchpads and Taverna Player

• What are Scratchpads?• Taverna and Taverna Player• Why integrate the two?• Lightweight integration (embed)• Tight integration (Web Service)

• Scratchpads developed in ViBRANT• Taverna Player developed in BioVeL

Page 3: Integrating Taverna Player into Scratchpads

What are Scratchpads?

• Virtual Research Environments

• Hosted websites for biodiversity data

• Virtual research & publication platform

• Curated data and analysis

• Completely open access & open source

• Modular & flexible

Page 4: Integrating Taverna Player into Scratchpads

The Scratchpads concept

A Scratchpad is a website that holds data for you and your community

Your data External data & services

Page 5: Integrating Taverna Player into Scratchpads

The Scratchpads concept

Page 6: Integrating Taverna Player into Scratchpads

Scratchpads details

• Drupal CMS (7.26) with both custom and Drupal.org contributed modules.

• Over 500 Scratchpads sites managed by Aegir– www.aegirproject.org

• Hosted on two application servers– Load balancing and caching performed by Varnish

• 2 MySQL database servers– master-master configuration

• 1 Apache Solr search server

Page 7: Integrating Taverna Player into Scratchpads

Taverna

• Scientific Workflow Management System• Workbench– Desktop application

• Command-line tool– Batch

• Server– Multi-user– Secure separation of workflow runs– REST and SOAP interfaces

Page 8: Integrating Taverna Player into Scratchpads

Taverna Player

• A Ruby on Rails plugin library– Hooks into host application’s• Workflow model• Authentication and authorization system

– Provides a REST interface• Talks to Taverna Server’s REST interface– Uploads the workflow, sets inputs– Presents workflow interactions to the user– Retrieves results, logs and provenance data

Page 9: Integrating Taverna Player into Scratchpads

Taverna Player

• Surfaces a workflow run in three ways:– As a Web interface in the browser• In the host application

– As an embeddable widget• In any Web page (c.f. YouTube videos)

– As a REST-based Web Service• All look-and-feel and styling is derived from

the host application– Rails’s hierarchical layouts and views

Page 10: Integrating Taverna Player into Scratchpads

Taverna Player

• Total workflow run isolation– A worker per run– State passed via database

• Scaling

TavernaPlayer

Host Application

TavernaServer

Workers

TavernaServer

TavernaServer

Page 11: Integrating Taverna Player into Scratchpads

Taverna all together

Page 12: Integrating Taverna Player into Scratchpads

Taverna Player details

• Ruby on Rails– Version 3.2 (released) and 4.x (testing)– Plugin

• Delayed Job for workflow run isolation– Manages workflow run queues– Start workers to match Taverna Server capacity– Loss of a workflow run will not affect any others

Page 13: Integrating Taverna Player into Scratchpads

Player in the BioVeL Portal

https://www.youtube.com/watch?v=s3D8JXc-tSM

SEEKCarole Goble,

1400

Page 14: Integrating Taverna Player into Scratchpads

Why integrate?

• Join two communities

• BioVeL Portal– Good for the “day job”, collaboration with others

in, or close to, the project.• Scratchpads– Dissemination; wide reach but focussed area– Move science into the public domain– Lots of data compatible with BioVeL pipelines

Page 15: Integrating Taverna Player into Scratchpads

Workflows in Scratchpads I

• Lightweight embedding of a workflow

• Scratchpads updated to expose public data– As CSV– For each individual taxa

• Workflow is run as “guest” user– Embedding only available for “public” workflows

• Results stay in Taverna Player

Page 16: Integrating Taverna Player into Scratchpads

Workflows in Scratchpads I

• Embed like a YouTube video• Embedded workflow is passed the URI of data

• This level of integration is lightweight– Science showcases– One off analyses

<iframe src="http://portal.org/runs/new? embedded=true& workflow_id=1& input_uri=http://scratchpad.org/taxa/1234/data“></iframe>

https://github.com/myGrid/taverna-player/wiki/Embedding

Page 17: Integrating Taverna Player into Scratchpads

Workflows in Scratchpads I

Page 18: Integrating Taverna Player into Scratchpads

Workflows in Scratchpads II

• Tighter integration of analysis pipelines– Scratchpads directly controls Taverna Player

• Scratchpads has ‘offsite computation’ modules– Large scale batch operations, etc– Workflow runs added to this group

• Scratchpads uses the Taverna Player REST API– Within the host application/portal

Page 19: Integrating Taverna Player into Scratchpads

Workflows in Scratchpads II

TavernaPlayer

Host Application

TavernaServer

Scratchpads

Data

Control(JSON REST API)

https://github.com/myGrid/taverna-player/wiki/JSON-API-Documentation

Page 20: Integrating Taverna Player into Scratchpads

Workflows in Scratchpads II

• Scratchpads can– Authenticate to Taverna Player– Get a list of workflows and show these to the user– Set up the workflow run, inputs, etc– Present interactions to the user– Retrieve results for further analysis

• This level of integration is more suited to– Long-running workflows– Larger, repeated studies

Page 21: Integrating Taverna Player into Scratchpads

Workflows in Scratchpads II

Page 22: Integrating Taverna Player into Scratchpads

Workflows in Scratchpads II

Page 23: Integrating Taverna Player into Scratchpads

Workflows in Scratchpads II

Page 24: Integrating Taverna Player into Scratchpads

Workflows in Scratchpads II

Page 25: Integrating Taverna Player into Scratchpads

Integration comparison

Lightweight embedding• Run a specified workflow

– Chosen by the Scratchpads owner

• Results are not stored in the Scratchpads itself

• Workflow run retains host app look and feel

Tight integration• Run any workflow

– That the Scratchpads is authorized to see

• Results are available for further analysis

• Workflow appears as part of the Scratchpads

• Workflows are run within Taverna Player in the host app• Interactions are presented to the user• Results can be downloaded

Common

Page 26: Integrating Taverna Player into Scratchpads

Thank you!

• Taverna Player– Robert Haines: [email protected]– Web: www.taverna.org.uk– Code: github.com/myGrid/taverna-player– Licence: BSD

• Scratchpads– Simon Rycroft: [email protected]– Web: scratchpads.eu– Code: git.scratchpads.eu/git/scratchpads-2.0.git– Licence: GPL2

This work was enabled by BioVeL (grant no. 283359) and ViBRANT (grant no. 261532) that received fundingfrom the European Union’s Seventh Framework Programme for research, technological development and demonstration.

www.biovel.eu | www.vbrant.eu