14
Collaboration in Grid Systems Activities where collaboration important Functional Structure of a Collaborative System Collaborative Visualization Grid Event and Message Service

Collaboration in Grid Systems Activities where collaboration important Functional Structure of a Collaborative System Collaborative Visualization Grid

Embed Size (px)

Citation preview

Page 1: Collaboration in Grid Systems Activities where collaboration important Functional Structure of a Collaborative System Collaborative Visualization Grid

Collaboration in Grid Systems

• Activities where collaboration important

• Functional Structure of a Collaborative System

• Collaborative Visualization• Grid Event and Message Service

Page 2: Collaboration in Grid Systems Activities where collaboration important Functional Structure of a Collaborative System Collaborative Visualization Grid

Grid Collaboration Opportunities

Collaborative Portals: (Portal is a Grid Computing or Training or ? Environment) for Computing or Education

Education Grid: Distance Education is implemented as collaborative Service (between teacher and student) on top of a education/training portal

Computational Grid: Typical examples Collaborative Visualization Collaborative Consulting (help desk) Collaborative selection of parameters (possibly

dynamically) for job submission (Collaborative computational steering)

Page 3: Collaboration in Grid Systems Activities where collaboration important Functional Structure of a Collaborative System Collaborative Visualization Grid

Collaborative Grid

CollabServer

CollabServer

CollabServer

CollabServer

CollabServer

Database

Peer to Peer“Illusion”Among collaborating clients

Collaborating Grid withRedundant ServerNetwork (Industry leaderWebEx has 120 in 6 centers)for persistence and routing(optimal software multicast)

Pu blish Sub scribe

Page 4: Collaboration in Grid Systems Activities where collaboration important Functional Structure of a Collaborative System Collaborative Visualization Grid

What do Collaboration Systems have ?

Audio Video Conferencing (HearMe at low end; Access Grid at high end)

Text chat; white board; instant messengerSecure access; group e-mail; surveys,

quizzes Shared documents or objects including

Shared display (framebuffers) and Shared Export (version of shared object in

some standard form like HTML SVG PDF JPEG) Shared Event (original object)

Page 5: Collaboration in Grid Systems Activities where collaboration important Functional Structure of a Collaborative System Collaborative Visualization Grid

Publish/Subscribe Collaboration The web is full of objects – web pages sitting on web

servers – and these support asynchronous collaboration You post a web page and I later look at it in my own time

Replacing web document by a “CGI script” or servlet (web interface to program, database etc.) gives asynchronous general multi-tier object sharing

This is Publish/Subscribe mechanism If add some mechanism (channel or automatic email or word of

mouth) to tell viewing client when new information is posted We build on JMS (Java Message Service) as Industry standard

for publish/subscribe systems

Synchronous Collaboration provides “real-time” notification and automatic update of changed objects JMS seems fast enough to do real-time as well

asynchronously

Page 6: Collaboration in Grid Systems Activities where collaboration important Functional Structure of a Collaborative System Collaborative Visualization Grid

Collaborative Computing

Shared Display for consultants (remote control for debugging). Basic help desk mode

Visualization done by shared display or shared export (Java3D SVG GIF) Shared SVG for Flash, Adobe, PowerPoint, Gateway

Whiteboard and ? Annotations (pointers) can be shared for scalable

export formats as can separately zoom and still position overlays

Job Submission done by shared Java Server Pages in Gateway and shared web pages for HTML based interfaces

Page 7: Collaboration in Grid Systems Activities where collaboration important Functional Structure of a Collaborative System Collaborative Visualization Grid

Collaborative Visualization

Consider a computer program (object above) and then its output and input wend their way through multiple filters(tiers) until they are finally rendered onsome sort of device: CAVE through PDA.

One can share “object” at any stage in pipeline

ObjectFilterMap

TransformBroker

EventAdapter

Input

Output

Output

ObjectFilterMap

TransformBroker

EventAdapter

Output

Input

A

B

SharedDisplay C

W3CCustom

Master User BCollaboratorsA and C

Shared export

Page 8: Collaboration in Grid Systems Activities where collaboration important Functional Structure of a Collaborative System Collaborative Visualization Grid

Research Issues: Collaborative Grids Optimal routing and possibly dynamic server arrangement

based on aggregation of topic based subscriptions Event and Message service (an event is just a time

stamped message) integrating clients and servers XML specification of events

Compare standard JMS with proposed GMS GMS XML not text based properties GMS supports synchronous and asynchronous

collaboration GMS has agent based routing HHMS or GMS Micro-edition for Hand held clients GMS uses meta-objects managed MyXoS – Web OS based

on interpreted XML (RDF statements)All Information Service issues in access of shared

resources

Page 9: Collaboration in Grid Systems Activities where collaboration important Functional Structure of a Collaborative System Collaborative Visualization Grid

JMS (Java Message Service) Structure

Convert Eventsto JMS

JavaScript Java C++ …..

PublishPDA

without JMS

PDAwith JMS

Global (distributed) Event Receptor (Queue)

HHMSSubscribe

HHMS (Hand Held Message Service) Optimized forPerformance. Assume complex (XML) processingdone on “personal server”

Page 10: Collaboration in Grid Systems Activities where collaboration important Functional Structure of a Collaborative System Collaborative Visualization Grid

Bandwidth of Commercial JMSNon-Persistent/Non-Durable

Number of Topic : 50pub/sub per Topic : 1

0500

1000150020002500300035004000

publisher subscriber

Message Size (bytes) : 100

Me

ss

ag

es

pe

r S

ec

on

d

iBus

FioranoMQ

SonicMQ

Page 11: Collaboration in Grid Systems Activities where collaboration important Functional Structure of a Collaborative System Collaborative Visualization Grid

Commercial JMS Latency

Latency (Non-Persistent)

1

10

100

1000

10000

0 4 16 64 256 1K 4K

16K

64K

256K 1M

Message Size (bytes)

mill

i-s

ec

on

ds

JMQ

iBus

SonicMQ

FioranoMQ

Page 12: Collaboration in Grid Systems Activities where collaboration important Functional Structure of a Collaborative System Collaborative Visualization Grid

Comments on JMS

Message latency varies from 3 millisec for small to 300 millisecond for 1 megabyte messages (OK as dealing with human perception time)

JMS has rather limited matching criterion for topics – replace by XML based objects in GMS

Do not use on hand helds: these managed by personal server and linked by HHMS or GMSME which is very light weight

Persistence by subscribing a database system to all topics

Natural distributed model (replication or distribution of topics) for performance and fault tolerance

Page 13: Collaboration in Grid Systems Activities where collaboration important Functional Structure of a Collaborative System Collaborative Visualization Grid

Proposed GMS Model for Messages Agent based messaging with server (broker) side

intelligence and archiving

Publishers Subscribers

ServerMessage

Input QueueSubscriber

Profiles

Agentcombines

Message PropertiesSubscriber Requests

to decide onmessage recipient

Database

GMS: Grid Message Servicecan be built on commercial JMS

Subscribes to all events to getpersistence

Central Knowledge

Set via GMS

All events in XML

Page 14: Collaboration in Grid Systems Activities where collaboration important Functional Structure of a Collaborative System Collaborative Visualization Grid

MyXoS MetaObject Event-based Computing Paradigm All entities are MetaObjects defined in universal GXOS XML

Syntax – Meta means GXOS doesn’t really want to manage Object, just information required to find, render and share it Rendering includes Palm devices as well as PC’s Entities are people, computers, data sources,

information from e-mail, scientific visualization to digitized Bible

All actions including object changes are events – all events are GXOS objects e-mail, paging etc. are all GXOS events uniformly

routed/archived etc. All action is instantiated or recorded in messages which

are events themselves All events are archived allowing actions to be undone and

to be reviewed There is an MetaObject Shell MyXoS with basic Services

(copy, create, collaborate etc.) expressed in RDF Discovery etc. via Jini/Napster mechanisms