Embrace Web Services
Upcoming SlideShare
Loading in...5
×
 

Embrace Web Services

on

  • 2,738 views

Title: Embrace Web Services

Title: Embrace Web Services
Author: Taavi Hupponen

Statistics

Views

Total Views
2,738
Views on SlideShare
2,737
Embed Views
1

Actions

Likes
1
Downloads
22
Comments
0

1 Embed 1

http://www.slideshare.net 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Embrace Web Services Embrace Web Services Presentation Transcript

  • EMBRACE Web Services Taavi Hupponen CSC – Center for Scientific Computing, Finland BOSC 2007
  • Contents
    • Introduction to EMBRACE
    • Motivation for Integration
    • EMBRACE services
    • Choice of Technology and Experiences
    • Summary
  • Introduction to EMBRACE
    • EU FP6 Network of Excellence (2005-2010). 16 partners, coordinated by the EBI
    • Goal: enabling integration and gridification of bioinformatics tools and databases
    • Enabling integration in practice: providing Web services access for tools and databases
    • http://www.embracegrid.info
  • Motivation for Integration
    • Integration: communication between programs, making software to work together
    • Enabling integration in EMBRACE: providing programmatic access to bioinformatics services
    • Benefits:
      • integrating the functionality of a service into existing software
      • powerful workflow applications
      • efficient and powerful access directly from your own script or code
  • Services
    • Databases : EMBL, UniProt, InterPro, Ensembl, ArrayExpress, MSD, SMART, ProDom, JASPAR, UTRdb, PairsDB…
    • Tools : EMBOSS, ELM, GOblet, SAMOSA, CATHEDRAL, CATHSCAN, SSAP, FUNCUT, palign, prodiv-TMHH, RNAmmer…
  • Integration Technology: Web Services
    • Web services: machine to machine communication using web technologies such as HTTP and XML
    • Reasons
      • platform independency, interoperability
        • independent service providers, client developers and users
      • wide-spread technology, also outside bioinformatics
        • existing development tools and specifications
    • The two common styles for implementing Web services:
      • SOAP based Web services
      • RESTful Web services
    • The current EMBRACE technology recommendation promotes the use of SOAP
  • Experiences on SOAP based Web Services
  • SOAP based Web services
    • SOAP as the message protocol
    • WSDL for describing the service interface
    • WS-* specifications provide further functionality such as security
    • Web services toolkits help to deal with messy SOAP and WSDL details
  • Interoperability
    • Interoperability is about different implementations working together, regardless of the implementation language or platform
    • Interoperability is essential when the service providers and users are independent
    • SOAP and WSDL maybe a bit too flexible and somewhat underspecified  possible interoperability issues
    • Interoperability can be achieved by
      • following guidelines in the WS-I Basic Profile
      • using document literal wrapped style
      • keeping in mind that the wire format is XML
  • Transferring non-XML data with SOAP
    • SOAP messages are XML, and the structure information carried with XML is great…
    • … but XML is not the optimal format for every kind of data, e.g images
    • Solutions, depending on the size of the data:
      • small: base64 encoding
      • medium: attachments using MTOM/XOP
      • large:
        • attachments using MTOM/XOP
        • passing references with SOAP and using external transfer mechanism for the data
        • streaming is essential in both cases
  • SOAP Web Services Challenges
    • SOAP and WSDL are sometimes considered somewhat complex
    • Capable Web services toolkit and development tools help when dealing with complexity
    • The features of the available Web services toolkits vary and their use is not without costs
      • learning
      • dependencies
      • more complicated development and build process
    • Many specifications still developing or not widely supported by toolkits (WSDL-S, MTOM)
  • SOAP vs REST?
    • REST is often considered more simple and there is less need for a toolkit
    • The backend is usually the same, regardless of the interface technology
    • Regardless of the interface technology, same tasks need to be done (defining data structures, interface description..)
    • Some SOAP toolkits (e.g. JAX-WS RI) can provided a RESTful interface in addition to a SOAP based one
  • Summary
    • EMBRACE is enabling integration of bioinformatics tools and databases by providing Web services access to them
    • Current technological emphasis is on SOAP based technology, which is a bit complex, but works fine if attention is paid to interoperability and capable tools are used
    • http://www.embracegrid.info
  • Acknowledgements
    • The EMBRACE project is funded by the European Commission within its FP6 Programme, under the thematic area "Life sciences, genomics and biotechnology for health,“ contract number LHSG-CT-2004-512092.