Your SlideShare is downloading. ×
0
Embrace Web Services
Embrace Web Services
Embrace Web Services
Embrace Web Services
Embrace Web Services
Embrace Web Services
Embrace Web Services
Embrace Web Services
Embrace Web Services
Embrace Web Services
Embrace Web Services
Embrace Web Services
Embrace Web Services
Embrace Web Services
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Embrace Web Services

1,928

Published on

Title: Embrace Web Services …

Title: Embrace Web Services
Author: Taavi Hupponen

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,928
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
23
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

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

×