Web Services for Visualization

Similar documents
On the Creation & Discovery of Topics in Distributed Publish/Subscribe systems

Announcements. me your survey: See the Announcements page. Today. Reading. Take a break around 10:15am. Ack: Some figures are from Coulouris

1 Community Grid Labs, Indiana University. 2 Department of Electrical Engineering & Computer Science, Syracuse University

CAS 703 Software Design

Lecture 9: MIMD Architectures

THE GLOBUS PROJECT. White Paper. GridFTP. Universal Data Transfer for the Grid

1.264 Lecture 16. Legacy Middleware

High Performance Computing Course Notes Grid Computing I

Scalable Hybrid Search on Distributed Databases

Software Architecture With ColdFusion: Design Patterns and Beyond Topics Outline Prepared by Simon Horwith for CFUnderground 6

DS 2009: middleware. David Evans

Technical Overview. Access control lists define the users, groups, and roles that can access content as well as the operations that can be performed.

XML Web Service? A programmable component Provides a particular function for an application Can be published, located, and invoked across the Web

High Availability/ Clustering with Zend Platform

A High-Level Distributed Execution Framework for Scientific Workflows

Knowledge-based Grids

Distributed Data Management with Storage Resource Broker in the UK

Lecture 9: MIMD Architectures

Mobile Application Support

04 Webservices. Web APIs REST Coulouris. Roy Fielding, Aphrodite, chp.9. Chp 5/6

SERVO - ACES Abstract

Outline. Definition of a Distributed System Goals of a Distributed System Types of Distributed Systems

Datacenter replication solution with quasardb

Chapter 10 Web-based Information Systems

DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN. Chapter 1. Introduction

Introduction to Grid Computing

EarthCube and Cyberinfrastructure for the Earth Sciences: Lessons and Perspective from OpenTopography

It also performs many parallelization operations like, data loading and query processing.

Towards operational agility using service oriented integration of prototype and legacy systems

MOM MESSAGE ORIENTED MIDDLEWARE OVERVIEW OF MESSAGE ORIENTED MIDDLEWARE TECHNOLOGIES AND CONCEPTS. MOM Message Oriented Middleware

Tools to Develop New Linux Applications

Oracle Fusion Middleware

02 - Distributed Systems

CS555: Distributed Systems [Fall 2017] Dept. Of Computer Science, Colorado State University

The Gateway Computational Web Portal: Developing Web Services for High Performance Computing

02 - Distributed Systems

What is a Web Service?

describe the functions of Windows Communication Foundation describe the features of the Windows Workflow Foundation solution

Chapter 2 Distributed Computing Infrastructure

Distribution and web services

SAS Solutions for the Web: Static and Dynamic Alternatives Matthew Grover, S-Street Consulting, Inc.

Microsoft Office Access 2007: Intermediate Course 01 Relational Databases

IBM WebSphere Business Integration Event Broker and Message Broker V5.0

A Scripting based Architecture for Management of Streams and Services in Real-time Grid Applications

Appendix A - Glossary(of OO software term s)

Chapter 18 Distributed Systems and Web Services

Achieving Scalability and High Availability for clustered Web Services using Apache Synapse. Ruwan Linton WSO2 Inc.

Service-Oriented Architecture for Building a Scalable Videoconferencing System Ahmet Uyar, Wenjun Wu, Geoffrey Fox

Leveraging Software-Defined Storage to Meet Today and Tomorrow s Infrastructure Demands

MONitoring Agents using a Large Integrated Services Architecture. Iosif Legrand California Institute of Technology

Data Management in Data Intensive Computing Systems - A Survey

Semantic Brokering over Dynamic Heterogeneous Web Resources. Anne H. H. Ngu. Department of Computer Science Southwest Texas State University

Mastering SOA Challenges more cost-effectively. Bodo Bergmann Senior Software Engineer Ingres Corp.

Wireless Sensor Architecture GENERAL PRINCIPLES AND ARCHITECTURES FOR PUTTING SENSOR NODES TOGETHER TO

Functional Requirements for Grid Oriented Optical Networks

Advanced School in High Performance and GRID Computing November Introduction to Grid computing.

Sentinet for BizTalk Server SENTINET

Sentinet for Microsoft Azure SENTINET

A Demonstration of Collaborative Web Services and Peer-to-Peer Grids

Introduction to Distributed Systems. INF5040/9040 Autumn 2018 Lecturer: Eli Gjørven (ifi/uio)

DISTRIBUTED COMPUTER SYSTEMS ARCHITECTURES

Oracle Reports 6.0 New Features. Technical White Paper November 1998

Assignment 5. Georgia Koloniari

System models for distributed systems

Peer-to-Peer Grids P2P and Grid Communities Working Together. Topics Covered. Knowledge Review. October 18, 2004

Chapter 4:- Introduction to Grid and its Evolution. Prepared By:- NITIN PANDYA Assistant Professor SVBIT.

3C05 - Advanced Software Engineering Thursday, April 29, 2004

Solace JMS Broker Delivers Highest Throughput for Persistent and Non-Persistent Delivery

CS November 2017

Distributed Systems Question Bank UNIT 1 Chapter 1 1. Define distributed systems. What are the significant issues of the distributed systems?

Managing Learning Objects in Large Scale Courseware Authoring Studio 1

A Comparative Study of Web Services-based Event Notification Specifications

Distributed Systems. Lecture 4 Othon Michail COMP 212 1/27

Agent-Enabling Transformation of E-Commerce Portals with Web Services

Overview SENTINET 3.1

Service Graph Design with Cisco Application Centric Infrastructure

A Survey of Peer-to-Peer Content Distribution Technologies

Fixed Internetworking Protocols and Networks. IP mobility. Rune Hylsberg Jacobsen Aarhus School of Engineering

Vision of J2EE. Why J2EE? Need for. J2EE Suite. J2EE Based Distributed Application Architecture Overview. Umair Javed 1

<Insert Picture Here> Oracle Coherence & Extreme Transaction Processing (XTP)

ATP: Autonomous Transport Protocol

Introduction to MySQL. Database Systems

: ESB Implementation Profile

The InfoLibrarian Metadata Appliance Automated Cataloging System for your IT infrastructure.

Using ESML in a Semantic Web Approach for Improved Earth Science Data Usability

A Simple Mass Storage System for the SRB Data Grid

Distributed Systems Principles and Paradigms

Lecture 9: MIMD Architecture

Scientific Workflow Tools. Daniel Crawl and Ilkay Altintas San Diego Supercomputer Center UC San Diego

Adobe ColdFusion level 1 course content (3-day)

Distributed Systems Principles and Paradigms. Chapter 01: Introduction. Contents. Distributed System: Definition.

Routing protocols in WSN

DSpace Fedora. Eprints Greenstone. Handle System

2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or

Mitigating Risk of Data Loss in Preservation Environments

The COLDEX Metadata Synchronisation Service (MSS) and other services

SOA: Service-Oriented Architecture

Developing with the Cloud

Exploiting peer group concept for adaptive and highly available services

Distributed Systems Principles and Paradigms. Chapter 01: Introduction

Transcription:

Web Services for Visualization Gordon Erlebacher (Florida State University) Collaborators: S. Pallickara, G. Fox (Indiana U.) Dave Yuen (U. Minnesota)

State of affairs Size of datasets is growing exponentially fast Client devices are proliferating with wide range of functionality (PDA, laptop, phones, desktop, powerwalls, etc.) Bandwidth is increasing (Internet 3: 10 Gbit/sec), but insufficiently fast Increasing collaborations between geographically distributed scientists Complexity of systems makes them increasingly unreliable Clusters and Grids are becoming ubiquitous Promised simplicity for the user is often not delivered Aug 6, 2003 University of Stuttgart 2

HTML interface to AMIRA Clients WEB-IS Mantle convection Clustering of earthquake events Aug 6, 2003 University of Stuttgart 3

Clustering display Navigation Clustering compute module Aug 6, 2003 University of Stuttgart 4

Partial Wish List Redundancy of visualization, computational, storage services Support for data files stored redundantly No single point of failure (fault tolerance) Automatic resource discovery transparent to the users Decoupling of the development of client interfaces and resource services User interfaces are all built into the leading browsers: Internet Explorer, Konqueror, Mozilla Accommodate users without the latest java plug-in technology Scalability of the middleware component Clients and services can be written in any language Aug 6, 2003 University of Stuttgart 5

Message Flow with SOAP Client specfies remote commands Remote call is encoded in soap message Service executes remote commands Return values are encoded in soap message Aug 6, 2003 University of Stuttgart 6

Services A service is simply a task Instead of execution at local machine, a service may be executed remotely Generally: services are accessed via point-topoint access (URL/IP of end point is known) Service discovery: seek service in a database, which returns the URL/IP More generally: request access to service by name, and have system choose one for you Aug 6, 2003 University of Stuttgart 7

Services: examples Visualization and graphic services Image processing Scientific visualization Video streaming Creating of videos Computation services Statistical calculations Symbolic manipulation Data filtering and feature extraction Data transforms (e.g., wavelet) Storage services File retrieval, subset selection File caching Aug 6, 2003 University of Stuttgart 8

Solution: Publish/Subscribe Prototypical Example: a news Server Aug 6, 2003 University of Stuttgart 9

News Server: publishers Topics are the newsgroups labels, e.g., Topic: PC hardware Topic: PC software Topic: Mac hardware Topic: OpenGL developers Anyone can publish to any topic Subject to administrative restrictions Can publish at any time Aug 6, 2003 University of Stuttgart 10

News Server: subscribers Users subscribe to particular news groups Updating is equivalent to retrieving all news items from all groups subscribed to As new items are published (i.e., posted) to the groups, they can be forwarded to all the subscribers User can subscribe to a non-existent news topic. If (and when) the topic is created, the subscriber will receive the news item. Aug 6, 2003 University of Stuttgart 11

NaradaBrokering (NB) Developer: S. Pallickara, Indiana Univ. Distributed Messaging Infrastructure Messages are tagged by a topic Multiple publishers send messages to the same topic Multiple subscribers receive messages from a given topic Any client/service can subscribe or publish to multiple topics Messages have a lifetime Transient: they disappear once any subscriber consumes it Indefinite: message stays in the system until explicitly removed by some outside action Network of brokers Nodes can be added and removed from the network without affecting functionality Aug 6, 2003 University of Stuttgart 12

Message Flow Origin Standard Destination Publish Narada- Brokering S ubscrib e Origin Destination Aug 6, 2003 University of Stuttgart 13

Scheduler Publish Subscribe Aug 6, 2003 University of Stuttgart 14

Messaging with SOAP and NB Client Service Offscreen Render SOAP Narada- Brokering SOAP Client Proxy Wrapped SOAP Wrapped SOAP Service Proxy Aug 6, 2003 University of Stuttgart 15

Proxies Soap messages become body of a NB message Messages identified by topic Only proxies can publish and subscribe to NB Proxies shield clients and servers from any knowledge of NB Aug 6, 2003 University of Stuttgart 16

Advantages of scheme Asynchronous discovery of task schedulers, available resources, resource metadata, file locations Both task schedulers and resources accept tasks based on load Ability to maintain audit trails to track system usage, task execution, and task execution failures In the event of failures, return of partial results and the status of the computation Built-in collaboration mechanisms: task results can be viewed by multiple users sharing one or more task IDs. Task updates are published to a Task update topic to allow clients to keep track of task execution Ability to override previous task submissions in the light of changing conditions Aug 6, 2003 University of Stuttgart 17

Advantages (cont.) Ability to cache results to improve performance Built-in fault tolerance NB is a cluster Duplication of services Complete decoupling of clients and services through proxies Interrupts Send message to interrupt topic Unsuscribe topics based on message content Aug 6, 2003 University of Stuttgart 18

Disadvantages Increased number of intermediate hops between client and service: Client to proxy client Proxy client to NB Multiple hops within NB cluster NB to proxy server Proxy server to server and the return path Aug 6, 2003 University of Stuttgart 19

External Databases DB proxies subscribe and publish to NB on behalf of the DB Queries (SQL) are sent to DB in the guise of a message published to NB Query DB for topic information Aug 6, 2003 University of Stuttgart 20

Schedulers Take a high level task definition and break it into subtasks Submit these subtasks to appropriate services Perform dependency analysis on the subtasks Return results to the subscribers Aug 6, 2003 University of Stuttgart 21

Services Can be in any language which has interface to SOAP Executed via remote calls Therefore, defined in terms of an interface Interface is encoded into SOAP messages Aug 6, 2003 University of Stuttgart 22

Storage Services Retrieve files from storage Supercomputer File servers Archival storage Process file (on one or multiple servers) Extract subset Filter subset Transform subset Send processed file for computing or visualization services Aug 6, 2003 University of Stuttgart 23

Visualization Services Offscreen, remote visualization Hardware-enabled using MesaOS (Mesa off-screen) and DRI (direct rendering interface) Cache partial results (perhaps a caching service) Wrap existing software We already have developed interface to Amira (U. Berlin, Template Graphic Software) Custom remote software (hopefully) leverage work done at Stuttgard U. (Stegmaier and others) Aug 6, 2003 University of Stuttgart 24

Computation Services Statistical modules Clustering modules Earthquake clustering (10 5 10 6 events) Wavelet and filtering modules Aug 6, 2003 University of Stuttgart 25

Collaboration Two subscribers to the same topic can receive the same information Subscribers may subscribe to a visualization topic asynchronously Issue: how does one subscriber directly communicate with another How can collaborators exchange information Aug 6, 2003 University of Stuttgart 26

Possible bottlenecks When large files are transported, it may be inefficient to encapsulate them in a message to Narada. Images (2D) can be sent through Narada (don t take too much bandwidth) Large 3D datafiles (or subsets thereof) should perhaps be transported directly to destination via point to point Aug 6, 2003 University of Stuttgart 27

Client2 Subscribe to ClientIDz Client1 Visualization Service Subscribe to VizID Viz1 Narada- Brokering Clien2t Visualization Service Subscribe to ClientIDz Client2 Subscribe to VizID Viz2 Aug 6, 2003 University of Stuttgart 28

Service discovery A service discovery service is responsible for providing clients with information on available services Can be implemented using UDDI, or some other XML-based querying language Aug 6, 2003 University of Stuttgart 29

Redundancy All services should be redundant. These include: Databases Schedulers Visualization, computation, or other services Service discovery The NB is a clustered service with built-in redundancy Consequence: part of NB or some services may become unavailable without impacting usage Aug 6, 2003 University of Stuttgart 30

Conclusions We described a new middleware fabric, which, Is flexible Provides loose coupling between clients and services Provides fault tolerance through a publish/subscribe mechanism Has the potential to develop powerful, yet flexible collaborative systems Through offscreen rendering, can deliver results of visualization tools to a variety of desktops through a variety of GUIs suitable to a variety of devices Ease of use (and installation) will be one of our design goals!! Aug 6, 2003 University of Stuttgart 31