enterprise systems for mars, the space station, and other ... · enterprise systems for mars, the...
TRANSCRIPT
Enterprise Systems for Mars, the Space Station,and Other Interesting Places
Presented July 19, 2005at Sun Microsystems, Inc.
Ronald MakUniversity Affiliated Research Center (UARC)University of California at Santa CruzNASA Ames Research Center
July 19, 2005 Presented at Sun Microsystems, Inc.2
Presentation Agenda
The Mars Exploration Rover MissionThe Collaborative Information Portal (CIP)CIP Middleware Architecture
Integrated SystemsHealth ManagementSystems HealthInformation Portal(SHIP)
July 19, 2005 Presented at Sun Microsystems, Inc.4
Mars Exploration Rover (MER) MissionTwin robot geologists search for past liquid water.
Launched: June 10 and July 7, 2003Landed: January 3 and 24, 2004Duration: 90 days
But after over oneEarth year, both are stilloperating, and the missionwas recently extendedanother 18 months.)
Mission Center:Jet Propulsion Laboratory Pasadena, CA
July 19, 2005 Presented at Sun Microsystems, Inc.5
Surface Operations
Solar-powered rovers operate in daylight.On opposite sides of Mars, so there is always one in daylight
July 19, 2005 Presented at Sun Microsystems, Inc.6
Daily Process for Each Rover TeamReceive downlink of data from a roverProcess and analyze resultsPlan tomorrow’s activitiesConstruct rover command sequenceSend uplink of command sequence to rover
July 19, 2005 Presented at Sun Microsystems, Inc.8
Key scientific discoveries
Scientists now believe that liquid waterdid indeed cover parts of the surface of Mars in the past.
More discoveries are being written up in prestigious scientific journals …
July 19, 2005 Presented at Sun Microsystems, Inc.12
Mission Needs
Time management
Data management
Personnelmanagement
July 19, 2005 Presented at Sun Microsystems, Inc.13
Schedule viewer
Event horizon
Broadcast messages
Clocks
Tool tabs
The Collaborative Information Portal (CIP)
July 19, 2005 Presented at Sun Microsystems, Inc.14
ClocksTick-over at top-of-minute
UTC shown in Day of Year
Local time
Time at DSN location
Time atcollaborator’slocation
Mars timedisplayedin Sols
July 19, 2005 Presented at Sun Microsystems, Inc.15
Schedule Viewer
Multiple time scales
Unified schedules
Schedule update indicator
“Now” bar
July 19, 2005 Presented at Sun Microsystems, Inc.19
CIP is used everywhere …
… inside mission control
… in the science labs
… in homes and offices
July 19, 2005 Presented at Sun Microsystems, Inc.20
Three–Tiered Enterprise Architecture
ClientJava application (Swing)
Middleware ServerWeb services, Enterprise JavaBeans,Java Message ServiceService-oriented architecture (SOA)
Data RepositoryDatabase (Oracle)File monitor (Java application)Data loader (Java application)
July 19, 2005 Presented at Sun Microsystems, Inc.23
Middleware “ilities”
AccessibilityScalabilityExtensibilityReliabilityFlexibilityAdaptabilityMaintainabilitySecurity–ility
July 19, 2005 Presented at Sun Microsystems, Inc.24
But the bottom line for middleware is …
Make the client applications look good.
Remain invisible to the users.
“What server?”
July 19, 2005 Presented at Sun Microsystems, Inc.25
CIP Middleware ServicesUser management
Metadata
Schedules
Mars and Earth time
File and directory
Message
July 19, 2005 Presented at Sun Microsystems, Inc.26
Middleware Technologies
Enterprise JavaBeans (EJBs) to achieve reliability, scalability, security, platform independence, and standards.
Stateless session beansStateful session beansMessage–driven beans
Web services to expose the remote methods of the Service Provider EJBs to the client applications.
Java Message Service (JMS) for synchronous and asynchronous messaging.
BEA WebLogic application server.
July 19, 2005 Presented at Sun Microsystems, Inc.27
Middleware Architecture
WebLogic Application Server
SOAPProcessor
Service ProviderRemote Stateless
Session EJB
SOAPProcessor
Service ProviderRemote Stateless
Session EJB
• Stateless session beans are the Service Providers.
July 19, 2005 Presented at Sun Microsystems, Inc.28
Middleware Architecture
• Web Servicesexpose the remote methods of the Service Provider beans.
WebLogic Application Server
SOAPProcessor
Service ProviderRemote Stateless
Session EJBWeb
ServiceClient Stub
WebService
Client Stub
SOAPProcessor
Service ProviderRemote Stateless
Session EJB
WebService
Client Stub
• Stateless session beans are the Service Providers.
ApplicationJava
ApplicationJava
ApplicationC++
July 19, 2005 Presented at Sun Microsystems, Inc.29
Middleware ArchitectureFIREWALL
FIREWALL
HTTPS
HTTPS
• Web Servicesexpose the remote methods of the Service Provider beans.
WebLogic Application Server
SOAPProcessor
Service ProviderRemote Stateless
Session EJBWeb
ServiceClient Stub
WebService
Client Stub
SOAPProcessor
Service ProviderRemote Stateless
Session EJB
WebService
Client StubHTTPS
• Stateless session beans are the Service Providers.
ApplicationJava
ApplicationJava
ApplicationC++
HTTPS
• HTTPS encrypts the transmissions and gets them through the firewall.
July 19, 2005 Presented at Sun Microsystems, Inc.30
FIREWALL
FIREWALL
Caching Data
HTTPSSOAP
Processor
Service ProviderRemote Stateless
Session EJB
WebLogic Application Server
• Some middleware services cache data to improve performance.
July 19, 2005 Presented at Sun Microsystems, Inc.31
FIREWALL
FIREWALL
Caching Data
HTTPS
Cache Registry
• Stateful session beans cache data in memory.
SOAPProcessor
DataLocal Stateful Session EJB
DataLocal Stateful Session EJB
DataLocal Stateful Session EJB
Service ProviderRemote Stateless
Session EJB
WebLogic Application Server
July 19, 2005 Presented at Sun Microsystems, Inc.32
FIREWALL
FIREWALL
Caching Data
HTTPS
Cache Registry
• The cached beans access the database.
JDBC
JDBC
JDBC
DatabaseSOAP
Processor
DataLocal Stateful Session EJB
DataLocal Stateful Session EJB
DataLocal Stateful Session EJB
Service ProviderRemote Stateless
Session EJB
WebLogic Application Server
July 19, 2005 Presented at Sun Microsystems, Inc.33
FIREWALL File Monitor
Application
Event Notification
“A new pancam image filehas just been downloadedfrom Mars!”
• Publish-subscribe model with topics
JMS Server
WebLogic Application Server
SchedulesTopicResources
TopicPancam ImagesTopic
July 19, 2005 Presented at Sun Microsystems, Inc.34
FIREWALL
Event Notification
• Clients poll for their messages via web services.
WebLogic Application Server
HTTPSSOAP
Processor
Service ProviderRemote Stateless
Session EJBFile MonitorApplication
“A new pancam image filehas just been downloadedfrom Mars!”
JMS Server
SchedulesTopicResources
TopicPancam ImagesTopic
July 19, 2005 Presented at Sun Microsystems, Inc.35
FIREWALL
Event Notification
• User proxies look up JMS consumer objects (POJOs) that represent the active subscriptions.
• The consumer objects retrieve the messages.
WebLogic Application Server
HTTPSSOAP
Processor
Service ProviderRemote Stateless
Session EJB
JMSConsumer
User ProxyLocal Stateful Session EJB
File MonitorApplication
“A new pancam image filehas just been downloadedfrom Mars!”
JMS Server
SchedulesTopicResources
TopicPancam ImagesTopic
July 19, 2005 Presented at Sun Microsystems, Inc.36
FIREWALL
Event Notification
• Messages are converted for return via web services.
WebLogic Application Server
HTTPSSOAP
Processor
Service ProviderRemote Stateless
Session EJB
JMSConsumer
User ProxyLocal Stateful Session EJB
MessageConverter
File MonitorApplication
“A new pancam image filehas just been downloadedfrom Mars!”
JMS Server
SchedulesTopicResources
TopicPancam ImagesTopic
July 19, 2005 Presented at Sun Microsystems, Inc.37
FIREWALL
FIREWALL
Broadcast Message Service
JMS Server
WebLogic Application Server
SOAPProcessor
Service ProviderRemote Stateless
Session EJB
MessageConverter
User ProxyLocal Stateful Session EJB
JMSConsumer
HTTPS
Broadcast MessagesTopic
• The broadcast message service uses the Broadcast Messages topic.
July 19, 2005 Presented at Sun Microsystems, Inc.38
FIREWALL
FIREWALL
Broadcast Message Service
JMS Server
WebLogic Application Server
SOAPProcessor
Service ProviderRemote Stateless
Session EJB
PublisherLocal Stateless
Session EJB
MessageConverter
User ProxyLocal Stateful Session EJB
JMSConsumer
HTTPS
Broadcast MessagesTopic
• The Publisher bean publishes messages to the topic.
July 19, 2005 Presented at Sun Microsystems, Inc.39
FIREWALL
FIREWALL
Broadcast Message Service
• Message–driven bean (MDB) archives broadcast messages to persistent storage for later retrieval.
MessageArchive
JMS Server
WebLogic Application Server
JDBC
SOAPProcessor
Service ProviderRemote Stateless
Session EJB
PublisherLocal Stateless
Session EJBArchivist
MDB
MessageConverter
User ProxyLocal Stateful Session EJB
JMSConsumer
HTTPS
Broadcast MessagesTopic
July 19, 2005 Presented at Sun Microsystems, Inc.40
FIREWALL
FIREWALL
Broadcast Message Service
• The Delegate bean retrieves old messages for browsing.
MessageArchive
JMS Server
WebLogic Application Server
JDBC
SOAPProcessor
Service ProviderRemote Stateless
Session EJB
PublisherLocal Stateless
Session EJB
DelegateLocal Stateless
Session EJB
ArchivistMDB
MessageConverter
User ProxyLocal Stateful Session EJB
JMSConsumer
HTTPS
Broadcast MessagesTopic
JDBC
July 19, 2005 Presented at Sun Microsystems, Inc.41
Metadata Generation
File changes are logged by nfslogd and the File Monitor, or found by the File Detector.
A message is sent to the monitor topic for each file change
The Data Loader generates metadata about the fileRetrieves messages from the monitor topic
July 19, 2005 Presented at Sun Microsystems, Inc.42
Middleware Performance
Enterprise JavaBeans and WebLogicReliable: runs nonstop > 77 days at a time, > 99.9% uptime
Scalable: handle heavy loads well
Good performance: average response time ~0.1 second
Flexible: plug–in, hot–redeployable services
Web servicesGood interface between clients and EJBs
Easy for clients to connect and request services
Good performance: ~100 MB per hour throughput
Language independent: Java and C++ client applications
July 19, 2005 Presented at Sun Microsystems, Inc.43
Official MER Mission Website
http://marsrovers.jpl.nasa.gov/
July 19, 2005 Presented at Sun Microsystems, Inc.45
Integrated Systems Health Management (ISHM)
Large–scale diagnostic models for human spacecraft.Model interactions among disparate subsystems.Model critical software functions.
Filter complex temporal informationfor human decision support.Integrate diagnostics information and mission operations/ground support.
Present overall vehicle health statusand mission capability.
Validate and verify critical systems.Enable autonomy with embedded diagnostics systems.
July 19, 2005 Presented at Sun Microsystems, Inc.46
ISHM Testbed and Prototypes (ITP) Project
Develop advanced ISHM technologies.Use the International Space Station (ISS) as an analog for the new Crew Exploration Vehicle (CEV).
Ecosystem of componentsand applications to support mission and vehicle operations workflow.
fault detection
diagnosis and recovery
July 19, 2005 Presented at Sun Microsystems, Inc.49
Systems Health Information Portal (SHIP)
User access to ITP components and diagnostics dataService provider for ITP componentsUser–driven information integrationInfrastructure for process automationPlatform to reuse and integrate legacy applications
Based on CIP technologiesJ2EE
Web services
July 19, 2005 Presented at Sun Microsystems, Inc.51
SHIP Components
Web ServerThin–client applicationsJavaServer Faces
Application ServerJ2EE and web services
Enterprise InformationIntegration (EII) Server
Composite views of disparate dataViews can be queried and analyzedData sources include databases, XML files, CSV files, web services, binary files
July 19, 2005 Presented at Sun Microsystems, Inc.52
Disparate Data Sources
Example: XML data source accessed via a parameterized URL.
Use GUI to map the XML fields to columns of a virtual relational table.
July 19, 2005 Presented at Sun Microsystems, Inc.53
Relational Table Joins of Disparate Data
Join virtual tables created from disparate data sources.
July 19, 2005 Presented at Sun Microsystems, Inc.54
Client Access via SQL and JDBC
Client applications can query the virtual tables using SQL statements or JDBC calls.
Queries are optimized and cached by the server.
July 19, 2005 Presented at Sun Microsystems, Inc.55
ISHM Website
http://www.nasa.gov/centers/ames/research/technology-onepagers/design_principles.html
July 19, 2005 Presented at Sun Microsystems, Inc.57
Recap
Collaborative Information Portal (CIP)Continues to be used by the highly–successfulMars Exploration Rover (MER) missionSOA using J2EE technologies and web servicesVery reliable
Systems Health Information Portal (SHIP)Subsystem of the Integrated Systems Health Management(ISHM) Testbed and Prototypes (ITP) projectBased on CIPSOA using J2EE technologies and web servicesJavaServer Faces and thin–client applicationsEnterprise Information Integration (EII) server
July 19, 2005 Presented at Sun Microsystems, Inc.58
Contact information
[email protected] government mail server
www.apropos-logic.comPersonal website
[email protected] e–mail address