Semantic and Streaming Grids Chinese Academy of Sciences Dec 6 2005 Geoffrey Fox Computer Science, Informatics, Physics Pervasive Technology Laboratories Indiana University Bloomington IN 47401 [email protected] http://www.infomall.org.
Download ReportTranscript Semantic and Streaming Grids Chinese Academy of Sciences Dec 6 2005 Geoffrey Fox Computer Science, Informatics, Physics Pervasive Technology Laboratories Indiana University Bloomington IN 47401 [email protected] http://www.infomall.org.
Semantic and Streaming Grids Chinese Academy of Sciences Dec 6 2005 Geoffrey Fox Computer Science, Informatics, Physics Pervasive Technology Laboratories Indiana University Bloomington IN 47401 [email protected] http://www.infomall.org 1 Four Data Streaming Application Areas Data Assimilation applied to link the data deluge (satellites, sensors, seismometers) in real time to small and large scale parallel simulations • Use in Earthquake Science Department of Defense (and Homeland Security) have built the Global Information Grid with a target architecture NCOW (Network Centric Operations and warfare) • They submit no jobs; rather stream data to brokers from which they are filtered and distributed • Includes their rather dated distributed simulation HLA Audio-Video Conferencing implemented with services and Grid messaging Hand-held Grid linking PDA/cell-phones to Grids 2 Data Deluged Science In the past, we worried about data in the form of parallel I/O or MPI-IO, but we didn’t consider it as an enabler of new science and new ways of computing Data assimilation was not central to HPCC DoE ASCI set up because didn’t want test data! Now particle physics will get 100 petabytes from CERN • Nuclear physics (Jefferson Lab) in same situation • Use around 30,000 CPU’s simultaneously 24X7 Weather, climate, solid earth (EarthScope) Bioinformatics curated databases (Biocomplexity only 1000’s of data points at present) Virtual Observatory and SkyServer in Astronomy Environmental Sensor nets 3 Information/Knowledge Grids Distributed (10’s to 1000’s) of data sources (instruments, file systems, curated databases …) Data Deluge: 1 (now) to 100’s petabytes/year (2012) • Moore’s law for Sensors Possible filters assigned dynamically (on-demand) • Run image processing algorithm on telescope image • Run Gene sequencing algorithm on compiled data Needs decision support front end with “what-if” simulations Metadata (provenance) critical to annotate data Integrate across experiments as in multi-wavelength astronomy Data Deluge comes from pixels/year available 4 Raw Data S S S S FS FS FS FS MD FS MD O S FS O S FS F S FS MD MD SS O S FS FS O S FS MD O S FS F S O S MD Filter Service FS O S FS Other Service MD O S FS MetaData SS S S Database O S FS SS Another Grid FS O S O S SS Decisions MD MD FS SS FS S S O S SS Another Service Wisdom Knowledge Another Grid FS SS Information S S Another Grid Data S S S S Another Service S S S S S S S S S S S S Sensor Service 5 Semantic Grid and Services Implications of SOA (Service Oriented Architectures) for SG (Semantic Grid) • Build services to implement SG Implications of SG for SOA • Build metadata rich systems of services using SG Services receive data in SOAP messages, manipulate it and produce transformed data as further messages Meta-data is carried in SOAP messages Meta-data controls processing and transport of SOAP Messages Knowledge is created from data by services The Grid enhances Web services with semantically rich system and application specific management One must exploit and work around the different approaches to meta-data and their manipulation in Web Services 6 Structure of SOAP Messages Container Workflow H1 H2 H3 H4 Body F1 F2 F3 F4 Service Container Handlers SOAP Messages have System information in the header including WS-Policy based meta-data defining processing options • Processed by Handlers Application data and meta-data is the body (controversies here!) • Processed by the Service itself Some meta-data like WS-RF is logically “only in messages” Other like that in WS-Context or the SRB are stored in logical equivalent of XML databases We only need to preserve semantic structure (XML/SOAP Infoset) so transport in fast XML and store in efficient relational databases 7 What Type of Services are there? There are a horde of support services supplying security, collaboration, database access, user interfaces The support services are either associated with system or application • We will study the WS-* and GS-* which implicitly or explicitly define many support services There are generalized filter services which are applications that accept messages and produce new messages with some data derived from that in input • Simulations (including PDE’s and reactive systems) • Data-mining • Transformations • Agents • Reasoning are all termed filters here There are services like “author ontology”, “parse RDF” or “attach provenance” that directly support Semantic Grid But all services and their interactions are bathed in sea of metadata and so implicitly need and support the Semantic Grid 8 It’s a Composite Hierarchical World Filters can be a workflow which means they are “just collections of other simpler services” • One needs meta-data to control the workflow Services are programs that accept messages and produce messages Grids are a distributed collection of services supporting managed shared resources • Management requires meta-data Grids are distributed systems that accept distributed messages and produce distributed result messages • Can always talk about Grids and view a service or a workflow as a special case of a Grid It just requires meta-data to send a message to a Grid and it routed to “correct computer” holding “requested service” 9 • Meta-data allows mapping of virtual to real addresses Semantically Rich Services with a Semantically Rich Distributed Operating Environment O SOAP Message Streams SS S Another Service Filter Service FS Wisdom MD Data FS SS Raw Data FS Data FS Raw Data O S O FS Knowledge S O S MD Information FS MD SS FS SS FS O S FS FS FS MD F S MD Knowledge O S MD F S Information O S O S FS Other Service MD O S DataFS FS O S FS MD Data FS Decisions O S FS FS SS SS MD O S Information FS SS Another Service FS MetaData SS S S Another Database Grid S S Raw Data S S S S Grids of Grids Architecture S S S S S S S S Raw Data SOAP Message Streams Another Grid S S Sensor Service is same as outward facing application 10 service GIS Grids and Sensor Grids OGC has defined a suite of data structures and services to support Geographical Information Systems and Sensors GML Geography Markup language defines specification of geo-referenced data SensorML and O&M (Observation and Measurements) define meta-data and data structure for sensors Services like Web Map Service, Web Feature Service, Sensor Collection Service define services interfaces to access GIS and sensor information Grid workflow links services that are designed to support streaming input and output messages We are building Grid (Web) service implementations of these specifications for NASA’s SERVOGrid 11 A Screen Shot From the WMS Client 12 WMS uses WFS that uses data sources <gml:featureMember> <fault> <name> Northridge2 </name> <segment> Northridge2 </segment> <author> Wald D. J.</author> <gml:lineStringProperty> <gml:LineString srsName="null"> <gml:coordinates> -118.72,34.243 118.591,34.176 </gml:coordinates> </gml:LineString> </gml:lineStringProperty> </fault> </gml:featureMember> ` WMS le ec tio n Fe a ol tur eC eC oll Ge tF ea e r tu r tu a Fe a Fe et G tur e Client io ct n s ad i l ro ] a R [a-b Railroads WFS Server Hi River [a-d] Bridge [1-5] ry SQL Query ue LQ SQ SQ L gw ay [1 2- Q ue 18 ry ] Interstate Highways Rivers Bridges 90 13 Electric Power and Natural Gas data from LANL Interdependent Critical Infrastructure Simulations Zoom-in Zoom-out FeatureInfo mode Measure distance mode Clear Distance Drag and Drop mode Refresh to initial map Typical use of Grid Messaging in NASA Sensor Grid Grid Eventing Datamining Grid GIS Grid 15 Typical use of Grid Messaging Filter or Datamining Sensor Grid Post after Processing Post before Processing Narada Brokering Grid Database Archives Web Feature Service Notify Subscribe HPSearch Manages WS-Context Stores dynamic data WFS (GIS data) GIS Grid Geographical Information System 16 Real Time GPS and Google Maps Subscribe to live GPS station. Position data from SOPAC is combined with Google map clients. Select and zoom to GPS station location, click icons for more information. 17 Google maps can be integrated with Web Feature Service Archives to filter and browse seismic records. Integrating Archived Web Feature Services and Google Maps 18 Google Maps as Service accessed from our WMS Client 19 3 XML Databases of Importance WS-Context controlling a workflow (Extended) UDDI supporting semantic service discovery WFS or ASFS (see later) provides application specific data/meta-data repository) These have different performance, scalability and data unit size requirement In our implementation, each is currently “just an Oracle/MySQL” database front ended by filters that convert between XML (GML for WFS) and object-relational Schema • Example of Semantics (XML) versus representation (SQL) difference OGSA-DAI offers Grid interface to databases – we could use but don’t as we only need to expose WFS and not MySQL to Grid 20 Information Management/Processing SOAP messages transport information expressed in a semantically rich fashion between sources and services that enhance and transform information so that complete system provides • Semantic Web technologies like RDF and OWL help us have rich expressivity Data Information Knowledge transformation We build application specific information management/transformation systems ASIS for each application domain One special domain is the system itself where the metadata associated with services, sessions, Grids, messages, streams and workflow is itself managed and supported by an SIIS 21 Generalizing a GIS Geographical Information Systems GIS have been hugely successful in all fields that study the earth and related worlds • They define Geography Syntax (GML) and ways to store, access, query, manipulate and display geographical features • In SOA, GIS corresponds to a domain specific XML language and a suite of services for different functions above However such a universal information model has not been developed in other areas even though there are many fields in which it appears possible • • • • • BIS Biological Information System MIS Military Information System IRIS Information Retrieval Information System PAIS Physics Analysis Information System SIIS Service Infrastructure Information System 22 ASIS Application Specific Information System I a) Discovery capabilities that are best done using WS-* standards b) Domain specific metadata and data including search/store/access interface. (cf WFS). Lets call generalization ASFS (Application Specific Feature Service) • Language to express domain specific features (cf GML). Lets call this ASL (Application Specific language) • Tools to manipulate information expressed in language and key data of application (cf coordinate transformations). Lets call this ASTT (Application specific Tools and Transformations) • ASL must support Data sources such as sensors (cf OGC metadata and data sensor standards) and repositories. Sensors need (common across applications) support of streams of data • Queries need to support archived (find all relevant data in past) and streaming (find all data in future with given properties) • Note all AS Services behave like Sensors and all sensors are wrapped as services • Any domain will have “raw data” (binary) and that which has been filtered to ASL. Lets call ASBD (Application Specific Binary Data) 23 ASIS Application Specific Information System II Lets call this ASVS (Application Specific Visualization Services) generalizing WMS for GIS The ASVS should both visualize information and provide a way of navigating (cf GetFeatureInfo) database (the ASFS) The ASVS can itself be federated and presents an ASFS output interface d) There should be application service interface for ASIS from which all ASIS service inherit e) There will be other user services interfacing to ASIS All user and system services will input and output data in ASL using filters to cope with ASBD AS Repository Filter, Transformation, Reasoning, Data-mining, Analysis AS Tool (generic) AS Service (user defined) AS Tool (generic) ASVS Display AS “Sensor” Messages using ASL 24 Directly GS-* WS-* Filters/ASTT Military Information Management System Everything Is a Service or a message/ Information Nugget ASVS 25 MIO or Military Information Object ASFS Unit of Managed Information expressed in ASL OGSA-DAI and Sensor Standards Info-D WS-Notification WS-Eventing 26 Two-level Programming I • The Web Service (Grid) paradigm implicitly assumes a two-level Programming Model • We make a Service (same as a “distributed object” or “computer program” running on a remote computer) using conventional technologies – C++ Java or Fortran Monte Carlo module – Data streaming from a sensor or Satellite – Specialized (JDBC) database access • Such services accept and produce data from users files and databases Service Data • The Grid is built by coordinating such services assuming we have solved problem of programming the service 27 Two-level Programming II The Grid is discussing the composition of distributed services with the runtime Service1 Service2 interfaces to Grid as opposed to UNIX Service3 Service4 pipes/data streams Familiar from use of UNIX Shell, PERL or Python scripts to produce real applications from core programs Such interpretative environments are the single processor analog of Grid Programming Some projects like GrADS from Rice University are looking at integration between service and composition levels but dominant effort looks at each level separately 28 3 Layer Programming Model Web Service 1 WS 2 WS N-1 Web Service N Level 1 Programming inside services Application expressed in in Java Fortran C++ MPI etc. WS-* Infrastructure Level 2 Programming choosing services by virtualization Application Semantics (Metadata, Ontology) Semantic Grid Level 3 Grid Programming composing multiple services Service Workflow, Transactions, Mediation Substantial work in UK e-Science program, international semantic web community 29 Consequences of Rule of the Millisecond Useful to remember critical time scales • • • • • Classic 1) 0.000001 ms – CPU does a calculation Programming 2a) 0.001 to 0.01 ms – Parallel Computing MPI latency 2b) 0.001 to 0.01 ms – Overhead of a Method Call 3) 1 ms – wake-up a thread or process either? 4) 10 to 1000 ms – Internet delay: Workflow So use pointers and the compute memory system when latencies of ≤ 1 millisecond but use URI looked up in a context store when longer delays allowed Transfer data when read-only and long latency allowed Always choose the slowest allowed methodology and remember when in doubt, Moore’s law favors computer performance and systems always get more complex and harder to maintain. 30 GlobalMMCS Web Service Architecture Use Multiple Media servers to scale to many codecs and many versions of audio/video mixing Session Server XGSP-based Control NaradaBrokering All Messaging NB Scales as distributed Admire Web Services SIP H323 Media Servers Filters High Performance (RTP) and XML/SOAP and .. Access Grid Native XGSP Gateways convert to uniform XGSP Messaging NaradaBrokering 31 GlobalMMCS Architecture Non-WS collaboration control protocols are “gatewayed” to XGSP NaradaBrokering supports TCP (chat, control, shared display, PowerPoint etc.) and UDP (Audio-Video conferencing) Audio Video Web Service Instant Messaging Shared Display Shared Web Service Web Service Web Service …. XGSP Conference Control Service Event Messaging Service (NaradaBrokering) 32 XGSP Example: New Session <CreateAppSession> <ConferenceID> GameRoom </ConferenceID> <ApplicationID> chess </ApplicationID> <AppSessionID> chess-0 </AppSessionID> <AppSession-Creator> John </AppSession-Creator> <Private> false </Private> </CreateAppSession> <SetAppRole> <AppSessionID> chess-0 </AppSessionID> <UserID> Bob </UserID> <RoleDescription> black </RoleDescription> </SetAppRole> <SetAppRole> <AppSessionID> chess-0 </AppSessionID> <UserID> Jack </UserID> <RoleDescription> white </RoleDescription> </SetAppRole> 33 XGSP AV Signaling Protocol with H.323 H323 Terminal H323 H323 Gateway H225.Setup H.225 Call Setup H225.Connect XGSP Session server JoinAVSession JoinAVSession OK with the RTPLinks <IP Addr, Port> H.245 Capability Exchange Terminal Capability Set ACK & capability description Terminal Capability Set ACK Open Audio & Video Logic Channels OpenLogicChannel ( Video ) ACK OpenLogicChannel ( Video ) ACK ACK with video RTPLink <IP Addr, Port> JoinAVSession (Video) OpenLogicChannel ( Audio ) ACK OpenLogicChannel ( Audio ) ACK ACK with Audio RTPLink <IP Addr, Port> JoinAVSession (Audio) 34 NaradaBrokering 2003-2006 Messaging infrastructure for collaboration, peer-to-peer and Grids Implements JMS and native high-performance protocols (message transit time of 1 to 2 ms per hop) Order-preserving message transport with QoS and security profiles Support for different underlying transport such as TCP, UDP, Multicast, RTP SOAP message support and WS-Eventing, WS-RM and WS-Reliability. • WS-Notification when specification agreed Active replay support: Pause and Replay live streams. Stream Linkage: can link permanently multiple streams – using in annotation of real-time video streams Replicated storage support for fault tolerance and resiliency to storage failures. Management: HPSearch Scripting Interface to streams and brokers (uses WS-Management) Broker Topics and Message Discovery: Locate appropriate Integration with Axis2 Web Service Container (?) 35 High Performance Transport supporting SOAP Infoset Average Video Delays for one broker – Performance scales proportional to number of brokers Latency ms Multiple sessions One session 30 frames/sec # Receivers 36 Collaboration Grid WS-Context HPSearch UDDI Narada Broker Audio Mixer Video Mixer Narada Broker WS-Security Gateway XGSP Media Service Narada Broker Gateway SharedWS Transcoder Thumbnail Replay Record Annotate SharedDisplay WhiteBoard 37 GIS TV Chat Video Mixer Webcam GlobalMMCS SWT Client 38 e-Annotation e - Annotation Player Player Archived Archieved stream list Stream List Archived Stream Archived stream Player player Real time Real Time stream list Stream List Annotated Annotation /WB Stream Player player Real time stream player e-Annotation e -Annotation Whiteboard Whiteboard Real Time Player 39 Location of software for Grid Projects in Community Grids Laboratory htpp://www.naradabrokering.org provides Web service (and JMS) compliant distributed publish-subscribe messaging (software overlay network) htpp://www.globlmmcs.org is a service oriented (Grid) collaboration environment (audio-video conferencing) http://www.crisisgrid.org is an OGC (open geospatial consortium) Geographical Information System (GIS) compliant GIS and Sensor Grid (with POLIS center) http://www.opengrids.org has WS-Context, Extended UDDI etc. The work is still in progress but core part of NaradaBrokering is quite mature All software is open source and freely available 40 Summary Virtualization everywhere Focus on semantics not representation to get performance combined with expressivity for transport and data access All this enabled by powerful meta-data services Grids add management to rich but potentially chaotic set of Web Services; • management and coherence enabled by meta-data Can define general information architectures (ASIS, GIS, SIIS) for both applications and system Knowledge from filters that span simulations, datamining, reasoning and agents A service is just a special case of a Grid Build systems from SubGrids (Gridlets) 41