Presentation is loading. Please wait.

Presentation is loading. Please wait.

Design of a Notification Engine for Grid Monitoring Events and Prototype Implementation Natascia De Bortoli INFNGRID Technical Board Bologna 15-16 Feb.

Similar presentations


Presentation on theme: "Design of a Notification Engine for Grid Monitoring Events and Prototype Implementation Natascia De Bortoli INFNGRID Technical Board Bologna 15-16 Feb."— Presentation transcript:

1 Design of a Notification Engine for Grid Monitoring Events and Prototype Implementation Natascia De Bortoli INFNGRID Technical Board Bologna 15-16 Feb 2005

2 15 Feb 2005Bologna - Natascia De Bortoli2 Overview Requirements & Characteristics GridICE Notification Service – Architecture Schema – Deployment Schema Deployment details

3 15 Feb 2005Bologna - Natascia De Bortoli3 GridICE Notification Service: Requirements (1) Main Concepts: – Events GridICE DB as Event Provider – Subscriptions Express users interests – Notifications Messages regarding events & matched subscriptions Components: – Event Provider, Filter Engine, Notification Manager Event Msg Broker Subscriptions Customized Notifications Event

4 15 Feb 2005Bologna - Natascia De Bortoli4 GridICE Notification Service: Requirements (2) Expressive language to specify subscriptions Users add/delete subscriptions Matching between events and subscriptions Aggregated notifications Users are notified about the changing of state of a subscription Customizable notification frequency Asynchronous notification delivery Scalability Acknowledgment to stop multiple notifications of the same events Customizable subscriptions: – Single notification – Delivery frequency History about notifications Notification of restored states

5 15 Feb 2005Bologna - Natascia De Bortoli5 GridICE Notification Service: characteristics Publish/Subscribe system Message-oriented system Event-driven mechanism No knowledge between recipients Content-based: Predicate over the content of the event XML filtering: Events XML documents Subscriptions XPath queries + Value-based predicates

6 15 Feb 2005Bologna - Natascia De Bortoli6 XML filtering: YFilter Choosen solution for GridICE Notification Service Studied & implemented (Java) by Y.Diao, M.Altinel, M.J. Franklin, P.M. Fischer Filtering via a Nondeterministic Finite Automa (NFA) build from subscriptions Incoming events drive the NFA through its various transitions Incremental construction and maintenance

7 15 Feb 2005Bologna - Natascia De Bortoli7 YFilter Matching = Structure Matching + Predicate Processing Structure Matching: – A subscription matches an event if during parsing an accepting state is reached – Events are processed once Predicate processing: – Inline: value-based predicates are processed as soon as the relevant state is reached during structure matching. – Selection Postponed: predicate processing is executed at the end of the structure matching, if an accepting state is reached.

8 15 Feb 2005Bologna - Natascia De Bortoli8 Subscriptions Users Filter Engine Filtered Data Notifications Notification Manager XML Events DB Publisher Subscriber Filter Engine Notification Manager GridICE Notification Service: Architecture

9 15 Feb 2005Bologna - Natascia De Bortoli9 GridICE Notification Service: Deployment JDBC DB JAXB YFilter Notification Manager Notification Sender Java Mailsmsist msg Filtered Data Events Notifications

10 15 Feb 2005Bologna - Natascia De Bortoli10 GridICE Notification Service: Deployment JDBC DB YFilter Notification Manager Notification Sender Java Mailist msg Filtered Data Events Notifications JAXB Subscriptions

11 15 Feb 2005Bologna - Natascia De Bortoli11 Publisher: events generation Periodical events generation based on GridICE DB (JDBC) – Synchronous process JAXB: Java Architecture for XML Binding – One or more xml schema defined (based on different event type: site, vo, …) – JAXB binding compiler compiles schema & generates JAXB packages, classes, interfaces – GridICE NS uses them to process XML content and to marshal XML document (events) valid with respect the source schema.

12 15 Feb 2005Bologna - Natascia De Bortoli12 Filter Engine Xml documents as input set of (streams) events Subscriptions as “standing queries” Filtering: matching each arriving event against all subscriptions Asynchronous process: – run on new incoming events A set of filtered data is produced: Structure that relates events with all matched subscription (aggregation)

13 15 Feb 2005Bologna - Natascia De Bortoli13 Notification Manager Set of filtered data from Filter Engine as input Asynchronous process Activated by Filter Engine process, it run on each new set of filtered data Get information about: – Identifies user(s) involved by matched subscription (name, mail, last notification time...); – related suscription(s) (type, xpath details,...); – event(s) involved by each subscription (type, xml detail, matching detail, timestamp); Collect user(s) gathered data in an output structure.

14 15 Feb 2005Bologna - Natascia De Bortoli14 Notification Sender Responsible to send notification messages to subscribers: Synchronous process Activated by Notification Manager, it runs periodically Operates on set of User(s) data from Notification Manager in order to: – identify which notification (if any…) must be sent; – identify related notification type (mail, instant msg…) – composes notification messages – sends notification(s) Separating the presentation layer (mail, instant msg) from the notification content by using XML and XSL: – XML Schema: msg target user, msg subject, msg content – XSL Stylesheets: device-specific transformation to select appropriate content

15 15 Feb 2005Bologna - Natascia De Bortoli15 Prototype deployment Predefined set of subscriptions; Predefined set of users; Currently events based on Site View schema, but work in progress to add events based on Service View Schema; GridICE NS is a multithread service: – Several thread run concurrently (synchronization & shared resources); Notification messages sent as mail: – Java Mail API – Studying Notification Services API


Download ppt "Design of a Notification Engine for Grid Monitoring Events and Prototype Implementation Natascia De Bortoli INFNGRID Technical Board Bologna 15-16 Feb."

Similar presentations


Ads by Google