6/2/2015 doecomponentsjuly01 1 Architecture of Garnet Collaborative Portal DoE Components Meeting July 24 2001 July 24 2001 Geoffrey Fox IPCRES Laboratory.

Slides:



Advertisements
Similar presentations
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Distributed Systems Design 2.
Advertisements

Integration of Hand-Held Devices into Collaboration Environments IC’02 Las Vegas, NV June June Geoffrey Fox, Sung-Hoon Ko, Kangseok Kim,
Distributed Systems Architectures
Client/Server Architecture
Live Meeting APIs Robert Devine Program Manager Microsoft Corporation.
Principles for Collaboration Systems Geoffrey Fox Community Grids Laboratory Indiana University Bloomington IN 47404
A Scalable Framework for the Collaborative Annotation of Live Data Streams Thesis Proposal Tao Huang
Database System Concepts and Architecture Lecture # 3 22 June 2012 National University of Computer and Emerging Sciences.
Cli/Serv.: JXTA/151 Client/Server Distributed Systems v Objective –explain JXTA, a support environment for P2P services and applications ,
GIS technologies and Web Mapping Services
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
June 25 th PDPTA Incorporating an XML Matching Engine into Distributed Brokering Systems.
Evaluation of a Publish/Subscribe System for Collaboration and Mobile Working Collaborative Advertising over Internet with Agents Independent Study: Wireless.
GEM Portal and SERVOGrid for Earthquake Science PTLIU Laboratory for Community Grids Geoffrey Fox, Marlon Pierce Computer Science, Informatics, Physics.
Garnet GXOS GMS GNDI JMS MyXoS 23 January Goals Near Term (May 2001): 1) Build a collaboration system to support distance education 2) Illustrate.
Databases JDBC (Java Database Connectivity) –Thin clients – servlet,JavaServer Pages (JSP) –Thick clients – RMI to remote databases –most recommended way.
A Collaborative Framework for Scientific Data Analysis and Visualization Jaliya Ekanayake, Shrideep Pallickara, and Geoffrey Fox Department of Computer.
Collaboration in Grid Systems Activities where collaboration important Functional Structure of a Collaborative System Collaborative Visualization Grid.
Ipgdec5-01 Remarks on Web Services PTLIU Laboratory for Community Grids Geoffrey Fox, Marlon Pierce, Shrideep Pallickara, Choonhan Youn Computer Science,
Message Management April Geoffrey Fox Computer Science, Informatics, Physics Pervasive Technology Laboratories Indiana University Bloomington IN.
Scalable Hybrid Keyword Search on Distributed Database Jungkee Kim Florida State University Community Grids Laboratory, Indiana University Workshop on.
XGSP Session Protocol DS-RT 2005 Grid Tutorial IEEE DS-RT 2005 Montreal Canada Oct Geoffrey Fox CTO Anabas Corporation and Computer Science, Informatics,
A Demonstration of Collaborative Web Services and Peer-to-Peer Grids Minjun Wang Department of Electrical Engineering and Computer Science Syracuse University,
Some comments on Portals and Grid Computing Environments PTLIU Laboratory for Community Grids Geoffrey Fox, Marlon Pierce Computer Science, Informatics,
AMQP, Message Broker Babu Ram Dawadi. overview Why MOM architecture? Messaging broker like RabbitMQ in brief RabbitMQ AMQP – What is it ?
Object storage and object interoperability
Ubiquitous Access for Collaborative Information System Using SVG July Sangmi Lee, Geoffrey Fox, Sunghoon Ko, Minjun Wang, Xiaohong Qui
Partnerships in Innovation: Serving a Networked Nation Grid Technologies: Foundations for Preservation Environments Portals for managing user interactions.
1 Collaboration Grids GGF16 Athens Greece February Geoffrey Fox Computer Science, Informatics, Physics Pervasive Technology Laboratories Indiana.
Ipgdec5-01 Peer to Peer Networks and Web Services for a Community Grid PTLIU Laboratory for Community Grids Geoffrey Fox, Marlon Pierce, Shrideep Pallickara,
Application Web Service Toolkit Allow users to quickly add new applications GGF5 Edinburgh Geoffrey Fox, Marlon Pierce, Ozgur Balsoy Indiana University.
EJB Enterprise Java Beans JAVA Enterprise Edition
Scaling and Fault Tolerance for Distributed Messages in a Service and Streaming Architecture Hasan Bulut Advisor: Prof. Geoffrey Fox Ph.D. Defense Exam.
Apache Cocoon – XML Publishing Framework 데이터베이스 연구실 박사 1 학기 이 세영.
AMSA TO 4 Advanced Technology for Sensor Clouds 09 May 2012 Anabas Inc. Indiana University.
Distributed Systems Architectures Chapter 12. Objectives  To explain the advantages and disadvantages of different distributed systems architectures.
Distributed Systems Architectures. Topics covered l Client-server architectures l Distributed object architectures l Inter-organisational computing.
Building Distributed Educational Applications using P2P
WEB SERVICES.
CHAPTER 3 Architectures for Distributed Systems
#01 Client/Server Computing
Overview of Garnet Collaboration System
Education as a Peer to Peer Grid Service
Physics meets the Virtual University
Design and Implementation of Audio/Video Collaboration System Based on Publish/subscribe Event Middleware CTS04 San Diego 19 January 2004 PTLIU Laboratory.
Education as a Peer to Peer Grid Service
Peer to Peer Grids and Collaboration
Research and Internet Technologies
Some remarks on Portals and Web Services
Overview of Garnet Collaboration System
Overview of Garnet Collaboration System
Peer to Peer Grids and Collaboration
Education as a Web (Grid) Service
Garnet Collaboration Framework
Distributed System Using Java 2 Enterprise Edition (J2EE)
The Narada Event Brokering System: Overview and Extensions
Architecture of Garnet Collaborative Portal
JXTA and Web Services and Messages
Application Web Services and Event / Messaging Systems
MWCN`03 Singapore 28 October 2003
Gateway and Web Services
Remarks on Peer to Peer Grids
Physics meets the Virtual University
Collaboration and Web Services
Grid Federation JXTA Jini etc.
Collaboration and Web Services
New Tools In Education Minjun Wang
Distributed Systems Architectures
#01 Client/Server Computing
Presentation transcript:

6/2/2015 doecomponentsjuly01 1 Architecture of Garnet Collaborative Portal DoE Components Meeting July July Geoffrey Fox IPCRES Laboratory for Community Grids Computer Science, Informatics, Physics Indiana University Bloomington IN

6/2/2015 doecomponentsjuly01 2 Garnet Heritage/Assumptions l Support Education, Training and if possible Computing as Grid(Web) Services l Use best practice commercial and academic capabilities –Access Grid, HearMe, Anabas, (JMS, WSDL, EJB, Castor, Oracle etc.) –Worry about Centra, WebEx, Placeware, Blackboard, WebCT, Saba, Groove, Docent etc. –Respect IMS/ADL Learning Object standards ( and GGF Computing Objects l Integrate Synchronous and Asynchronous ( “learning management system”) collaboration l Support hand held and desktop clients (universal access)

6/2/2015 doecomponentsjuly01 3 Garnet Technology l Uniform XML event (message) based architecture –Linked with a publish-subscribe paradigm l XML Schema GXOS supports hierarchical data structures (compatible with DoD ADL SCORM for learning objects) –XML for all metadata (Users, documents, computers) and object changes -- from text chats to display changes etc.) l Java Middleware using Enterprise Javabeans l Production system uses JMS (Java Message Service) to implement publish-subscribe –JMS does Synchronous and Asynchronous Messaging l MyXoS manages XML information nuggets

6/2/2015 doecomponentsjuly01 4 Important Capabilities in Initial Garnet l Standard stuff: built in shared display, whiteboard, HearMe Audio control, quizzes, annotations, chat/IM (Jabber.org) –Desktop video will be special case of shared display l Record and replay all features of session (SMIL) –A/V, Presentation, Annotations, Text Chat l Several Specialized Collaborative Shared Export Viewers: JSP, ( later HTML, Acrobat..) l Initial SVG (Scalable Vector Graphics) Shared Batik Viewer –2D Scientific Visualization/Whiteboard –Macromedia (Flash~SVG) and Adobe (already “all” to SVG) l Initial source of SVG: Convert PowerPoint VML/WMF to SVG –Gives shared export model for PowerPoint with each client able to scale independently at high resolution

6/2/2015 doecomponentsjuly01 5 JMS (Java Message Service) Structure in Garnet Convert Events to JMS JavaScript JavaC++ ….. Publish JMS Global (distributed) Event Receptor (Queue) HHMS Subscribe HHMS (Hand Held Message Service) Optimized for Performance. Basic primitive is a topic/property labeled queue = JXTA Pipe Subscribe Pipes are collections of either messages or other pipes and just “nodes” in information hierarchy labeled by a URI

6/2/2015 doecomponentsjuly01 6 Performance of Commercial JMS I Non-persistent as We do database backup outside JMS One millisecond latency is fine for Synchronous Collaboration and fine for Grid Implementation

6/2/2015 doecomponentsjuly01 7 Peer to Peer P2P Networks l Publish/Subscribe is mechanism we use to establish who gets what information for Collaboration and P2P and may be ALL Grid and ALL Web Services? l Gnutella and JXTA are different implementations (from JMS) of P2P information propagation –GMS can be built on top of JXTA or JMS architecture l JXTA like MyXoS identifies the implicit distributed operating (control messages/metadata) system –Both have message queues as primitives –Both have Shell –Both use XML based messages –JXTA Advertisements are similar to GXOS metadata for objects Message (or event) services underlie P2P Grids

6/2/2015 doecomponentsjuly01 8 Classic Grid Architecture Database Netsolve Neos Security Portal Composition Portal Resources ClientsUsers and Devices Middle Tier Brokers Service Providers Typically separate Clients Servers Resources

6/2/2015 doecomponentsjuly01 9 Peer to Peer Network User Resource Service Routing User Resource Service Routing User Resource Service Routing User Resource Service Routing User Resource Service Routing User Resource Service Routing Peers Peers are Jacks of all Trades linked to “all” peers in community Typically Integrated Clients Servers and Resources

6/2/2015 doecomponentsjuly01 10 ServicesGMS Routing Peer to Peer Grid User Resource Service Routing User Resource Service Routing User Resource Service Routing User Resource Service Routing User Resource Service Routing User Resource Service Routing Dynamic Message or Event Routing from Peers or Servers GMS or GES is Grid Message/Event Service

6/2/2015 doecomponentsjuly01 11 Single Server P2P Illusion JMS/GMS Server Data base Traditional Collaboration Architecture e.g. commercial WebEx and old Syracuse system Tango

6/2/2015 doecomponentsjuly01 12 P2P Grid Event Service – a better JMS l Dynamic Collection of some billion computers each of which can either generate, route or consume events l Publisher labels events by an (XML) object which is at simplest a URI but in general a collection of tag-values or instance of XML Schema l Subscribers issue some sort of XML Query e.g. deliver all gxos://garnet/Education/Graduate/ComputerScience/ Indiana/Spring2001/CPS616/Lecture3/* l Need Secure, High Performance, Efficient (don’t propagate events further than they need), Fault Tolerant delivery service l Shrideep Pallickara PhD June l Current version Java RMI based – could be SOAP

6/2/2015 doecomponentsjuly01 13 Proposed GMS Model for Messages l All message publication labels and subscription profiles are defined in XML Publishers Subscribers Message Queue Labeled by (XML) Topic Object Subscriber Profile Objects Specify Query to Event Label Database Subscribes to all events to get persistence

6/2/2015 doecomponentsjuly01 14 Multiple Server P2P Illusion JMS Server Data base JMS Server JMS Server Generate “Automatically” We are moving from client – server – resource model with Clearly defined responsibilities to a Heterogeneous Dynamic Grid of service providers and Service consumers which are not necessarily distinct

6/2/2015 doecomponentsjuly01 15 Some Results – 22 Servers Servers are logically but not necessarily physically distinct from clients

6/2/2015 doecomponentsjuly01 16 Match Rates of 10% & Server Hop to client = 1

6/2/2015 doecomponentsjuly01 17 Event-based Garnet Architecture l All Objects are defined in XML (metadata)– this XML view could be “virtual” but can be used to discover, edit (etc.) objects – labeled by a URI l GXOS manages meta data defining all Objects -- it doesn’t really want to manage Objects, just information required to find, access, store, render and share it –MUST have a good object management system to build collaboration service –Rendering includes Palm devices as well as PC’s –Entities are people, cuuricula, grades, computers etc. l All actions including object changes are events – all events are GXOS objects –Instant Messenger access, Framebuffer changes etc. are all GXOS events uniformly routed/archived etc. l There is a Shell MyXoS with basic Services (copy, create, collaborate etc.) – similar in concept to JXTA Shell

6/2/2015 doecomponentsjuly01 18 Overall Structure of GXOS for a MegaMeeting Global Root UsersDevicesDocumentsAdminMultimedia MegaMeeting Meeting Have a hierarchy of MegaMeetings (any collection of meetings) Course, Degree.. Are MegaMeetings Meeting Event Archive Capabilities gxos://Education/University/Indiana/CS/PhD/Course/Lecture Any level (except lowest) can be a pipe

6/2/2015 doecomponentsjuly01 19 Interface of XML and Java I l How will we teach computing? –K-4: Internet Access –Middle School: (Simple) XML Schema interfaced to some scripting language –High School: Java as the programming model with Java classes (for external data) generated l Probably don’t want to specify objects twice –Start in Java; generate Schema l Or Start with Schema and generate Java l Need a natural API of computer code to real or virtual XML –Current mechanisms seem quaint (JDBC), inefficient (parsers), or non standard (Castor)

6/2/2015 doecomponentsjuly01 20 Interface of XML and Java II l Suppose we have a quadrillion (10 15 ) XML objects as say produced by a physics accelerator per year (Enterprise GXOS) l Need to combine: – –Search Interface to select nodes of XML Tree l l Specify URI l l JDBC or Google like Interfaces – –Castor like Interface to map XML into Java but need to control depth of conversion from XML into Java Database (Virtual) XML View Choose And Convert Middleware(EJB)

6/2/2015 doecomponentsjuly01 21 Current GXOS API Architecture l Initially implement “Personal GXOS” – Information Repository small enough that we can afford to read all possibly relevant information into memory and refine this –E.g. Support course data for individual faculty l File.xml  XML Object  Java Object and vice versa –Use Castor to automate XML Schema to Java Object l Primitives Supported Initially –Get a “leaf Object” –Get a Collection (Internal Node) – “handle” and self.xml (the GXOS properties associated with this node) –List Contents of a collection (recursively) –Get Contents of a collection (recursively)

6/2/2015 doecomponentsjuly01 22 Integration of Hand Held Clients l Client Device (machine) Profile stored in GXOS specifies O/S, default Screen Size modified by user (person) preferences –Dynamically updated with connection bandwidth, user updates l Application Profile stored in GXOS and modified by event stream specifies data delivered by GMS l Adaptor (Personal Server) looks like a conventional client to GMS and adapts data to specified client/user specifications –If PDA “small”, then SVG viewer on “adaptor” and ship framebuffer to PDA –“Resize” on PDA handled by adaptor, scrolling by PDA etc. –Adaptor can process complex XML queries

6/2/2015 doecomponentsjuly01 23 PowerPoint Shared Display PC to PDA