Full HTML for

Basic foilset Overview of Integration of Databases and Distributed Objects with the Web

Given by Geoffrey Fox, Nancy McCracken at Tutorial: ITEA HPCC Conference Aberdeen Md. on July 13 98. Foils prepared July 15 1998
Outside Index Summary of Material


This tutorial covers basic technologies underlying modern Large Scale Enterprise Systems which enable productive services built around web, database and distributed object technologies
This talk surveys structure of tutorial and defines the pragmatic object web approach that unifies these as a multi-tier server architectures
The rest of tutorial does a set of examples plus basic surveys of technologies : JDBC CORBA RMI Livewire ColdFusion Lotus Notes JWORB PL/SQL

Table of Contents for full HTML of Overview of Integration of Databases and Distributed Objects with the Web

Denote Foils where Image Critical
Denote Foils where HTML is sufficient

1 Integration of Databases and Distributed Objects with the Web
2 Abstract of ITEA Tutorial
3 Different Choices -- Client Server Service
4 Demonstration Systems I
5 Demonstration Systems II
6 Evolving Distributed System Concepts
7 Distributed Object Based Computing
8 Today's Pragmatic Object Web: The Confusing Multi-Technology Real World Middleware Server Layer
9 Todays Complex World will evolve to something like the pure CORBA Architecture for a distributed Information System (There are similar COM and Javabean /RMI Versions)
10 NPAC Concepts: Pragmatic Object Web
11 Pragmatic Object Web Technology Model - I
12 Pragmatic Object Web Technology Model - II
13 Specifying Server Side Objects
14 An Object Web-based 3-Tier Computing System
15 Traditional 2 Tier Client Server Architecture
16 Typical 3 Tier Architecture
17 4 Tier Architecture for database example
18 Comparison of 2 3 and 4 Tier Models
19 Two ways of Implementing Data Objects
20 Multi-Server Model
21 So in our WebWisdom Distance Education System
22 Database Architecture for WebWisdom
23 Role of Collaboratory Systems
24 Architecture of Tango used in JSU Distance Education
25 TANGO Server
26 Architecture of Tango
27 While for High Performance Computing
28 Multi-Server Scenario
29 Multi Tier Gateway Architecture
30 What are General Capabilities in Gateway Tier?
31 What Particular Programs could run in Gateway Tier?
32 NPAC Concepts : HPcc High Performance commodity computing
33 The HPCC Dilemma and its Solution
34 What is Commodity Software
35 Computational Grid and the Object Web
36 Exploiting Multi-Tier Commodity Software Model
37 Three Possible Implementations of CFD CSM Linkage
38 Picture of JavaBean and JDK1.1 AWT Event Model
39 Visual Programming WebFlow, DARP on GLOBUS
40 WebFlow 3 Tier Architecture with High Performance Globus and High Functionality IIOP Services
41 What are JavaBeans I
42 What are JavaBeans II
43 Next Steps for HPcc using JavaBeans
44 Minimal Web based Multidisciplinary Application
45 Comparison of Application Integration Communication/Linkage Models
46 Integration of DIS with Object Web Based Computing
47 HLA/RTI versus HPF/MPI
48 HLA/RTI at Top Management Level
49 Architecture of HLA/RTI Services
50 HLA/RTI Management Structure
51 Resource Management and Scheduling

Outside Index Summary of Material



HTML version of Basic Foils prepared July 15 1998

Foil 1 Integration of Databases and Distributed Objects with the Web

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
ITEA Tutorial HEAT Center Aberdeen July 13 1998
Geoffrey Fox, Nancy McCracken,
Chao Wei Ou, Shrideep Pallickara, Tom Pulikal
Deepak Ramanathan, Mehmet Sen, Yuping Zhu
Northeast Parallel Architectures Center
Syracuse University
111 College Place
Syracuse NY
gcf@npac.syr.edu

HTML version of Basic Foils prepared July 15 1998

Foil 2 Abstract of ITEA Tutorial

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
This tutorial covers basic technologies underlying modern Large Scale Enterprise Systems which enable productive services built around web, database and distributed object technologies
This talk surveys structure of tutorial and defines the pragmatic object web approach that unifies these as a multi-tier server architectures
The rest of tutorial does a set of examples plus basic surveys of technologies : JDBC CORBA RMI Livewire ColdFusion Lotus Notes JWORB PL/SQL

HTML version of Basic Foils prepared July 15 1998

Foil 3 Different Choices -- Client Server Service

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
(Business) Logic can be a client, Middleware Server or specialized service layer
Choices in distributed object (database record is "just" a distributed object) specification
Different transport protocols
Client

HTML version of Basic Foils prepared July 15 1998

Foil 4 Demonstration Systems I

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
Student Record Database and Grading System
  • Secure SSL server, CGI mechanism to link to Oracle database
  • Oracle custom language PL/SQL to program functionality
Document Systems: Web Site Management and SCCS Technical Reports, Robot Search System
  • Oracle Web Server to link database to web server
  • Oracle custom language PL/SQL to program functionality
Web Log Access Storage and Visualization System
  • Java JDBC linking to Oracle, Illustra
  • Links to Java visualization server SciVis
WebWisdom NT "Virtual University" Server
  • Java JDBC and Oracle for administration (adding and editing educational objects) and access
  • Access via LiveWire or (soon) a servlet parsing XML based templates

HTML version of Basic Foils prepared July 15 1998

Foil 5 Demonstration Systems II

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
A Simple Distributed Collaborative Environment
  • Java JDBC, RMI, and CORBA
JWORB Multi-protocol server
  • Custom Java server supporting HTTP(Web) and IIOP (CORBA)
  • Web visualization of CORBA server activities
Lotus Notes Examples illustrating asynchronous groupware
  • Lotus Notes and Domino Web Server exporting enterprise services to the web
ColdFusion high level interface to database
  • Java JDBC, ColdFusion and MS Access

HTML version of Basic Foils prepared July 15 1998

Foil 6 Evolving Distributed System Concepts

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
Pragmatic Object Web - Integrate with Web competing models for distributed objects: Java, CORBA, COM, WOM
POW is middleware for multi-tier distributed enterprise applications
  • Note Java is very popular to build middleware even if not 100% Java application
High Performance commodity computing - traditional HPC modules managed by POW on new commodity clusters (PC with NT, Linux or Solaris OS) using Distributed Computing Concepts (HLA,RTI) at coarse grain and classic HPCC for computational kernels

HTML version of Basic Foils prepared July 15 1998

Foil 7 Distributed Object Based Computing

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index

HTML version of Basic Foils prepared July 15 1998

Foil 8 Today's Pragmatic Object Web: The Confusing Multi-Technology Real World Middleware Server Layer

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
W is Web Server
PD Parallel Database
DC Distributed Computer
PC Parallel Computer
O Object Broker
N Network Server e.g. Netsolve
T Collaboratory Server
Clients
Middle Layer (Server Tier)
Third Backend Tier

HTML version of Basic Foils prepared July 15 1998

Foil 9 Todays Complex World will evolve to something like the pure CORBA Architecture for a distributed Information System (There are similar COM and Javabean /RMI Versions)

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index

HTML version of Basic Foils prepared July 15 1998

Foil 10 NPAC Concepts: Pragmatic Object Web

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
3-(or more)-tier architecture - Web browser front-ends, legacy (e.g. databases, HPC modules) backends; fat (1+tier) middleware
Alternative / competing Middleware models:
  • Java RMI+ EJB (Enterprise Javabean) - single language solution by Sun
  • CORBA - all languages solution by OMG
  • COM - multi-language solution by Microsoft
  • WOM/XML - emergent solution by the Web Consortium
Each model has different tradeoffs
POW attempts at integrating various models and services in terms of multi-protocol middleware servers (JWORB)

HTML version of Basic Foils prepared July 15 1998

Foil 11 Pragmatic Object Web Technology Model - I

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
Basic Vision: The current incoherent but highly creative Web will merge with distributed object technology in a multi-tier client-server-service architecture with Java based combined Web-ORB's
COM(Microsoft) and CORBA(world) are competing cross platform and language object technologies
  • Javabeans plus RMI is 100% pure Java distributed object technology
  • Every Netscape4 browser has a Visigenic ORB built in
  • W3C says you should use XML
Need to abstract entities (Web Pages, database entries, simulations) and services as objects with methods(interfaces)
  • CORBA is "just" CGI done right
How do we do this while infrastructure still being designed!
Major Commercial Java Activity today is on Server NOT Client

HTML version of Basic Foils prepared July 15 1998

Foil 12 Pragmatic Object Web Technology Model - II

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
One can anticipate this by building systems in terms of Java objects e.g. develop Web-based databases with Java objects using standard JDBC (Java Database Connectivity) interfaces
  • Oracle DB2 Informix Sybase, Lotus Notes, Object database confusion becomes an issue of performance/robustness NOT functionality
  • Use CORBA to wrap existing applications
Even better use (Enterprise) Javabeans which are Java's (middle tier) or client componentware offering visual interfaces, containers (here they are consistent with CORBA standard) and standard software engineering interfacing rules
  • e.g. Java Blend is built on top of JDBC to use enterprise Javabeans to store Java Objects in relational databases
Confused? Read "Building Distributed Systems on the Pragmatic Object Web" -- Book of class I teach to CS/CE students at Syracuse http://www.npac.syr.edu/users/shrideep/book

HTML version of Basic Foils prepared July 15 1998

Foil 13 Specifying Server Side Objects

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
Documents -- URL
"General Programs including database invocations"
  • Old style Web -- CGI
  • New Style Web -- XML makes server side objects look like applets as far as invocation goes
  • CORBA and COM -- special "interface definition language" (IDL) defines invocation in C++ like syntax RMI uses Java language as IDL language

HTML version of Basic Foils prepared July 15 1998

Foil 14 An Object Web-based 3-Tier Computing System

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
Middle Server Tier
Basic HTTP/CGI Web Server
Java Web Server
Transaction Processing Server
Business Transaction Management
Javabean
Enterprise Javabean
Old and New Useful Backend Software
Object Broker
Back-end Tier
The Services
Client
Front-end Tier

HTML version of Basic Foils prepared July 15 1998

Foil 15 Traditional 2 Tier Client Server Architecture

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
Server: e.g.
Proprietary
Database
Lotus Notes
Web or ORB
Service e.g. Database Repository or file systems accessed by Web Servers
Client
Now in POW style, we add modular capabilities to get 3 4 or more tier

HTML version of Basic Foils prepared July 15 1998

Foil 16 Typical 3 Tier Architecture

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
Back End Server: e.g.
Proprietary
Database
Service e.g. Database Repository
ThickClient e.g. Java Applet GUI
Middle Tier Server with "Business Logic" e.g. map user objects to relational tables as in Java Blend
We get 4 tier by refining client ....

HTML version of Basic Foils prepared July 15 1998

Foil 17 4 Tier Architecture for database example

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
Back End Server: e.g.
Proprietary
Database
Thin Client e.g. pure HTML viewer
Middle Tier Server with "Business Logic" e.g. map user objects to relational tables as in Java Blend
Java Web Server e.g. with servlet converting Java GUI into HTML
But Middle Tier can be a plethora of servers linked in a dataflow model

HTML version of Basic Foils prepared July 15 1998

Foil 18 Comparison of 2 3 and 4 Tier Models

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
Client
Middle Tiers
Back End
Thin Client

HTML version of Basic Foils prepared July 15 1998

Foil 19 Two ways of Implementing Data Objects

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
Old way: Use an Object Database
Current Approach: Use a Relational Database and business logic in EJB
Object Database
Application using data objects
Backend relational database such as Oracle
Enterprise Javabean mapping user object to backend persistent data model
Application using data objects
Middle Tier

HTML version of Basic Foils prepared July 15 1998

Foil 20 Multi-Server Model

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
Clients and their servers
Middle Tier Custom Servers
Back End Servers and
their services

HTML version of Basic Foils prepared July 15 1998

Foil 21 So in our WebWisdom Distance Education System

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
The backend servers would include CORBA objects from Educom's IMS projects; Video servers and Oracle database defined curricula pages from NPAC
The front end servers would include distributed students with mirror sites to get performance
In the middle tier, we have JDBC query processing and XML servlet parsers mapping original data in optimal fashion to match needs of student -- choosing from pure HTML or Interactive Java Whiteboard views of a given object
  • middle tier servers include speech to text converters (for deaf) and text to speech converters (for blind) etc.

HTML version of Basic Foils prepared July 15 1998

Foil 22 Database Architecture for WebWisdom

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
Educational Objects i.e.
Data Defining Content of Curricula Pages
Server side
Java(JDBC) or
LiveWire
Metadata
Web Server
Conventional HTML Pages
Dynamically Generated
Including XML syntax Dublin Core (IMS)
Web Browser
XML Templates Defining How educational data stored in Pages

HTML version of Basic Foils prepared July 15 1998

Foil 23 Role of Collaboratory Systems

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
Systems like Tango or Habanero built around Java Servers integrate a group of multiple clients as a "Service" at the middle Java Server level
Building systems in this way automatically includes "people in the loop" -- Computational Steering, Education, Multidisciplinary collaborative design
Group of collaborating clients
and client applications
Database
Object Broker
MPP

HTML version of Basic Foils prepared July 15 1998

Foil 24 Architecture of Tango used in JSU Distance Education

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
NPAC Web Server
JSU Web Server
JSU Tango Server
...
Audio Video Conferencing Chat Rooms etc.
Address at JSU of Curriculum Page
Teacher's View of Curriculum Page
Student's View of Curriculum Page
Participants at JSU
Teacher/Lecturer at NPAC
Java Server

HTML version of Basic Foils prepared July 15 1998

Foil 25 TANGO Server

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
Java application
  • requires JDK 1.1 or higher
100% maintenance free and Industry-strength stability
Platform-independent
  • tested on IRIX 5/6, Solaris, Linux, Windows NT
  • will also run on Windows'95 (not recommended)
Java for Servers is dominant industry development as supports thin clients which are preferred as
  • CIO's can manage software on servers whereas clients are in hands of users
  • Java on client is "grim" (quote from Andreessen from Netscape) due to Microsoft / Netscape battles

HTML version of Basic Foils prepared July 15 1998

Foil 26 Architecture of Tango

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
Java Tango
Server
Netscape Browser
Tango
Daemon
Shared Applet 1
Shared Applet 2
Shared
Java/C++/..
Application
Socket Connections
Client Side Bus
Netscape's
LiveConnect
Typical Client
Other
Collaborating
Clients
Shared
JavaScript/ Web Page
Tango CA

HTML version of Basic Foils prepared July 15 1998

Foil 27 While for High Performance Computing

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
We have multiple supercomputers in the backend -- one doing CFD simulation of airflow; another structural analysis while in more detail you have linear algebra servers (Netsolve); Optimization servers (NEOS); image processing filters(Khoros);databases (NCSA Biology workbench); visualization systems(AVS, CAVEs)
  • One runs 10,000 separate programs to design a modern aircraft which must be scheduled and linked .....
All linked to collaborative information systems in a sea of middle tier servers(as on previous page) to support design, crisis management, multi-disciplinary research

HTML version of Basic Foils prepared July 15 1998

Foil 28 Multi-Server Scenario

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
Database
Matrix Solver
Optimization Service
MPP
MPP
Parallel DB Proxy
NEOS Control Optimization
Origin 2000 Proxy
NetSolve Linear Alg. Server
IBM SP2 Proxy
Gateway Control
Agent-based Choice of Compute Engine
Multidisciplinary Control (WebFlow)
Data Analysis Server

HTML version of Basic Foils prepared July 15 1998

Foil 29 Multi Tier Gateway Architecture

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
High Performance Computing and Communication Tier
Clients
Gateway Systems

HTML version of Basic Foils prepared July 15 1998

Foil 30 What are General Capabilities in Gateway Tier?

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
Seamless Interface -- an Enterprise Javabean which processes input from user's Java Applet interface and maps user generic commands to those on specific machine
  • Uses agents to determine optimal execution platform
  • Accounting, Security, Compiling Interface, Seamless Tools Interface, global data and file system interface
Resource management of heterogeneous MPP backend (linked to seamless interface)
Database and Object Brokers
Collaboration Servers including Tango, Lotus Notes and other commercial systems
Visualization Servers
"Business Logic" to map user data view (e.g. objects) to persistent store (e.g. Oracle database) and simulation engine (MPP) preferred format

HTML version of Basic Foils prepared July 15 1998

Foil 31 What Particular Programs could run in Gateway Tier?

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
Most of a Command and Control Application
Several FMS and IMT Applications
Some I/O Intensive applications
High value services with modest computational needs e.g. grid generation and other pre-processing, data manipulation and other post-processing
Video Servers for Training
Design and Planning Tools
"Glue" for Multidisciplinary Interactions
Control of metacomputing applications

HTML version of Basic Foils prepared July 15 1998

Foil 32 NPAC Concepts : HPcc High Performance commodity computing

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
Distributed Computing becomes a commodity article (driven by Web Technologies)
Market niches for orthodox MPP style HPC are shrinking
NT clusters become a viable and more cost effective alternative to classic high performance systems
HLA/RTI from distributed simulation community natural for coarse grain while MPI/HPF/.... Natural for fine grain -- must integrate which we claim can be done using a multi tier architecture
Web/Commodity software (Pragmatic Object Web) - promising base to build new HPcc (commodity computing)

HTML version of Basic Foils prepared July 15 1998

Foil 33 The HPCC Dilemma and its Solution

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
HPCC has developed good research ideas but cannot implement them as solving computing's hardest problem with 1 percent of the funding
  • HPCC applications are very complex and use essentially all computer capabilities and also have synchronization and performance constraints from HPCC
We have learnt to use commodity hardware either
  • partially as in Origin 2000/SP2 with consumer CPU's but custom network or
  • fully as in PC cluster with fast ethernet/ATM
Let us do the same with software and design systems with maximum possible commodity software basis

HTML version of Basic Foils prepared July 15 1998

Foil 34 What is Commodity Software

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
The world is building a wonderful distributed computing (information processing) environment using Web (dissemination) and distributed object (CORBA COM) technologies
This includes Java, Web-linked databases and the essential standards such as HTML(documents), VRML(3D objects), JDBC (Java database connectivity).
  • The standard interfaces are essential in that they allow modular (component based) software
We will "just" add high performance to this commodity distributed infrastructure
  • Respecting architecture of the object web, should allow us to naturally use improved software as it produced
The alternative strategy starts with HPCC technologies (such as MPI,HPF) and adds links to commodity world. This approach does not easily track evolution of commodity systems and so has large maintenance costs

HTML version of Basic Foils prepared July 15 1998

Foil 35 Computational Grid and the Object Web

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
Larry Smarr and NCSA Collaboration have stressed analogy of deployment of computer/communication technology with impact that electrical and transportation grids had
  • I.e. they enabled revolutions in society
  • What is relative role of High-end and Commodity-end in Grid?
The transportation system was built using lessons from and feed up/down from Sports cars, Cadillacs, Model T's, Ford Escorts etc.
Computational Grid will be shaped by and shape all applications and technologies
Proposed Education program Internetics expresses synergy between high-end and commodity approaches
A computational grid is a metacomputer or a "high performance distributed computer system" which must be influenced by and influence the "Object Web" which is here defined as "mass-market"/business IntraNet (low to low) use of Internet/distributed Information Systems

HTML version of Basic Foils prepared July 15 1998

Foil 36 Exploiting Multi-Tier Commodity Software Model

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
Essential idea is consider a three tier model
  • Top tier is the client (in "Network Computer" based 4 tier architectures this becomes 2 tiers)
  • Second tier are servers coordinated by commodity technologies such as the Web and CORBA and communicating via HTTP(Web), IIOP(CORBA), RMI or custom Java sockets.
  • Use middle tier component/container model -- Enterprise Javabeans
  • Third tier are services such as databases, MPP's
Preserve the first two tiers as a high functionality commodity information processing system and confine HPCC to the third (lowest) tier.
  • MPI becomes the high performance "machine code" for message passing which you use if HTTP, IIOP or RMI have insufficient performance

HTML version of Basic Foils prepared July 15 1998

Foil 37 Three Possible Implementations of CFD CSM Linkage

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
1)Simple Server Approach 2)Classic HPCC Approach
Data and Control
CFD
Structures
Data Only
CFD Server
Structures Server
Control
Only
3)Hybrid Approach with control at server and
data transfer at
HPCC level

HTML version of Basic Foils prepared July 15 1998

Foil 38 Picture of JavaBean and JDK1.1 AWT Event Model

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
4)Invoke High Performance Message Transfer between Observers and Sources specified in Message Event
3)Source Callbacks Listener with Message Event
Listener
Source Control
1)Register Listeners
with Master Source
Server Tier
Data Source
Data Sink (Observers)
5)Actual Data Transfer
High Performance Tier
2)Prepare
Message Event in Source Control
1)Register Observers with Listener

HTML version of Basic Foils prepared July 15 1998

Foil 39 Visual Programming WebFlow, DARP on GLOBUS

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
Client (Tier 1): Java Graph Editor for Webflow or interpreted debugger (DARP) linked to Java Visualizer SciVis
  • In four tier model, these Java tools would run on Java Web Server with pure HTML client
Middle Tier 2: Network of Java Servers linking UNIX and Windows NT systems with "all" services
Back-end Tier 3: Globus where available. In early 98, this is high performance UNIX system links with no databases and no NT
Note this is a good high performance I/O architecture whether file system, CORBA or database based
Next foil shows
  • Pure Tier 2 WebFlow system with simple Java Image filters
  • Customized "database" solution for NCSA Grand Challenge in Quantum Monte Carlo
  • DARP Debugging Interface for HPF with interactive breakpoints -- typical of universal front end tools

HTML version of Basic Foils prepared July 15 1998

Foil 40 WebFlow 3 Tier Architecture with High Performance Globus and High Functionality IIOP Services

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
Client Tier
IIOP High Functionality
Middle Tier
Future Globus
Globus
Future Parallel I/O

HTML version of Basic Foils prepared July 15 1998

Foil 41 What are JavaBeans I

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
They are Java's implementation of "component-based" visual programming
This modern software engineering technique produces a new approach to libraries which become a "software component infrastructure(SCI)"
There is a visual interface to discovery of and setting of values of and information about parameters used in a particular software component
JavaBeans uses the event model of JDK1.1 to communicate between components
  • This is exactly the ideas we used to get high performance separating control and data transfer
One expects Javabeans to become the CORBA component interface

HTML version of Basic Foils prepared July 15 1998

Foil 42 What are JavaBeans II

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
The visual interface allows inspection of and implementation of both individual beans and their linkage . This visual construction of linkage allows one to form nontrivial programs with multiple communicating components
  • We will see this as next step for WebFlow
Apart from the event mechanism which is a communication/linkage mechanism, ComponentWare (and JavaBeans in particular) "just" give a set of universal rules (needed for interoperability) for rather uncontroversial (albeit good) object-oriented and visual programming practices
  • Hiding of properties which can only be accessed by methods (which must have special names)
  • Display of these properties (as given by methods)

HTML version of Basic Foils prepared July 15 1998

Foil 43 Next Steps for HPcc using JavaBeans

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
Currently WebFlow uses a Java Server and manipulates Java applications which can be front ends with native methods to Fortran C or C++ routines
Change Java Server to JWORB -- server integrating HTTP and IIOP (Web and CORBA)
Change Java Applications to JavaBeans and non-Java apps to CORBA objects
Change linkage in WebFlow to respect JavaBean event mechanism
Then we get HPComponentware
And using our multi-tier model high performance CORBA
WebFlow is HPCC version of a
Typical Visual Interface for JavaBeans

HTML version of Basic Foils prepared July 15 1998

Foil 44 Minimal Web based Multidisciplinary Application

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
This combines TANGO for collaboration with WebFlow to link server side applications
If necessary WebFlow could support high performance inter-module communication as in structures-CFD Linkage example but it would always implement control at middle tier and this allows TANGO integration with server side computation
  • This illustrates why we keep control at tier 2 so adding collaboration does not disturb high performance layer
WebFlow communication model is a dynamic dataflow
Of course other server side compute models are possible and in general need (web-linked) data bases, file systems, object brokers etc.,
On client one can share tools such as CAD systems like CATIA or AUTOCAD so Tango interfaces with API to these system and drives "slaves" from state extracted from linkage to master.

HTML version of Basic Foils prepared July 15 1998

Foil 45 Comparison of Application Integration Communication/Linkage Models

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
WebFlow supports dataflow model in middle tier where user must supply routines to process input of data that drives module and output of data for other modules
TANGO supports shared state and user supplies routines that read or write either
  • Total state of application or
  • Change in state of application
One can write Tango linkage for applications like AUTOCAD as vendor supplies necessary API
CFD
Structures

HTML version of Basic Foils prepared July 15 1998

Foil 46 Integration of DIS with Object Web Based Computing

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
DoD modeling and simulation (FMS,IMT) community is currently evolving towards the HLA(High level Architecture) framework with the RTI (Run Time Infrastructure) based communication bus.
The goal of HLA/RTI is to enhance interoperability across more diverse simulators than in the DIS realm, ranging from real-time to time-stepped to event-driven paradigms.
HLA defines a set of rules governing how simulators (federates) interact with each others. Federates describe their objects via Object Model Template (OMT) and agree on a common Federation Object Model (FOM).
The overall HLA/RTI model is strongly influenced by the CORBA architecture and in fact the current prototype development is indeed CORBA based.
Building HPCC on the Object Web implies that we can a common framework for both distributed (event driven) simulations and classic time stepped parallel computing

HTML version of Basic Foils prepared July 15 1998

Foil 47 HLA/RTI versus HPF/MPI

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
We can support any given paradigm at either high functionality (web server) or high performance (backend) level
HPCC Messaging could be a Java/RMI middle tier MPI or Nexus/Optimized Machine specific MPI at backend
JWORB supports CORBA based RTI already and we can bridge to high performance event driven simulation systems like SPEEDES at the high performance backend layer
However most problems can be thought of a set of coarse grain entities which are internally data parallel but the coarse grain structure is "functional" parallelism
So HLA/RTI is especially natural as tier 2 management level of these coarse entities
Entities can be time synchronized simulations and use MPI(HPF?) at either middle or back end tier or in fact as in DMSO simulations a federate running a custom discrete event simulation

HTML version of Basic Foils prepared July 15 1998

Foil 48 HLA/RTI at Top Management Level

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
Resource Management typically breaks down into either
  • a) Scheduling of largely independent jobs
  • b) Optimized data placement in a data parallel entity
So a) is all at middle tier and should use commodity solutions -- there are many queuing systems such as Condor, Codine, LSF which we can "wrap" and Microsoft does not yet have a fully scalable commodity solution
  • Enterprise computing has Transaction Monitors
So it is still embryonic but we suggest adopting the HLA/RTI framework as this supports job placement, interdependencies (time management) and hierarchical systems of federations --> federates
Optimized data placement has been largely solved as a mathematical problem by HPCC but not packaged broadly. Our suggestion suggests how to invoke as backend support for a commodity service

HTML version of Basic Foils prepared July 15 1998

Foil 49 Architecture of HLA/RTI Services

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index

HTML version of Basic Foils prepared July 15 1998

Foil 50 HLA/RTI Management Structure

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
So we have a hierarchy of entities Federation --> Federates --> Objects where can have many tiers in each category
A Federation could be the set of all jobs to be run on a particular site
A Federate could be a job consisting of multiple possibly shared objects
Objects are just data structures in HLA -- you send interaction events instead of invoking methods
These aspects are organized by Federation, Object and Ownership management services
We can classify both jobs and computers as separate federations

HTML version of Basic Foils prepared July 15 1998

Foil 51 Resource Management and Scheduling

From Overview of Integration of Databases and Distributed Objects with the Web Tutorial: ITEA HPCC Conference Aberdeen Md. -- July 13 98. *
Full HTML Index
Declaration Management corresponds to publication and subscription model of matching services and needs
  • Natural (agent-based) computing model on web
Time Management corresponds to scheduling of sequenced events in discrete event simulations -- it will allow support generally dependencies in jobs -- the CAVE visualization system must be used after simulation
Data management is classic "load-balancing" problem of parallel computing where you map objects optimally to computers to minimize communication cost and load imbalance

© Northeast Parallel Architectures Center, Syracuse University, npac@npac.syr.edu

If you have any comments about this server, send e-mail to webmaster@npac.syr.edu.

Page produced by wwwfoil on Sat Nov 28 1998