Title: Monitoring of distributed applications (in P2P) Serge Abiteboul, Pierre Bourhis, Bogdan Marinoiu, INRIA Saclay and Universit
1Monitoring of distributed applications (in P2P)
Serge Abiteboul, Pierre Bourhis, Bogdan
Marinoiu, INRIA Saclay and Université Paris 11
2Organization
- The context the AXML program
- Motivation for monitoring
- The architecture
- Axlog
- Example
- Conclusion
3The context the AXML program
4Distributed data management with AXML
- Active XML XML document with embedded function
calls - Intentional dynamic information
- In pull or push mode
- Object Active data
- AXML store AXML peer/V2
- persistence, activation of local data
- AXML query processor and optimizer Optimax
- Distributed query plans
- AXML Business artifacts verification
- AXML monitor P2Pmonitor
- Distributed monitoring
5Motivation
6With the Web, more and more distribution
- Often distributed applications are very dynamic
- Content change rapidly
- Intense communications
- Complex and hard to control systems
- Many peers
- Peers are distributed
- Peers are autonomous
- Peers are sometimes unreliable and selfish
- Peers sometimes come and leave
- Goal monitor such systems
- support active features ala active databases
7Example Dell supply chain
Suppliers
Monitoring of distributed information
manufacturing system
Monitor
Revolver
Monitor
Shipping Co.
Shipping Co.
Plant
Monitor
Monitor
Webstore
Customer
Monitor
Bank
Bank
Global supervisor
Monitor
8More examples
- Business applications
- Gather information for billing, bug tracing
- Procurement
- Web Intelligence e.g., business intelligence and
surveillance of competing companies - Security surveillance against intrusion, spamming
- P2P applications
- Optimization and tuning e.g., gather statistics,
control indexing - Error management, detection, diagnosis
9The architecture
10Architecture
Alerters
Streams
actions
Stream processors
publishers
RSS
11Alerter monitor a single system
- Detect events at the peer level
- Depend on the peer that is monitored
- Monitor what?
- Database updates
- Events in RSS feed
- Web page changes
- WS calls (in/out)
- Each event is represented as an XML document
- Active stream
Active stream
12Active streams
- Monotone case
- Stream of XML documents (possibly Active XML)
- Nonmonotone case
- Think of the stream as defining a forest
- We can send updates to the previous data,
typically deletions - Insert 12,jean,1300, 11,marie,1555
- Insert 3,zoe,1333
- Delete Id12 Insert 5,noé,1111
- In the style of RSS feeds
- Streams are published as channel where it is
possible to subscribe - They are implement as Web service calls
13Stream processors
- Efficient Filter - can support a large number of
selections simultaneously - Binary operators union, join, etc.
- Operator with memory duplicate elimination
- Aggregation operator
- Publisher
- XML page, RSS, email, Web page
- Novelty axlog (axlog subscription axlog
engine)
14Algebraic (monitoring) plans
- ActiveXML algebra same algebra as for
distributed query processing - Algebra over streams of (A)XML documents
- To send just some tree T T, eos
- From ActiveXML XML embedded service calls
- A service may be any query
- The algebraic glue send, receive, eval
15Axlog (axml datalog)
16Axlog principle Doc query
Q
- Incoming streams
- The outgoing stream is defined by a query Q (tree
pattern join) - Each time an incoming message arrives, it
modifies the document - Possibly the query result
- An outgoing message is generated
- Incremental view maintenance
Active XML document
17Axlog - continued
- We have implemented an axlog engine
- We use datalog to benefit from
- Incremental view maintenance in datalog ?
technique - Query optimization in datalog Magic set
- We have developed specific techniques
- 3-valued based (true, false, possibleInFuture)
- Avoid some derivation that Magic would do
preprocessing - Precompute in an optimistic manner
- Garbage collection
18Example
19Example
- Some process (e.g.,, BPEL workflow mailOrder)
may be initiated at a webStore in US or France - The last operation of the process (e.g.,
shipping) occurs on Shipping we are interested
in shipping from UK - We want to detect when one mailOrder took more
that 5 days to process when the customer is a
Premium customer - Easy case
- Monotone in-stream
- Monotone query
- No time constraint
- No aggregation
20Local alerter specifications
- On webStore US and webStore FR
- for call in(WS-outCall)
- where call/method mailOrder
- return ltstartgt ltIdgt call/ID ltIdgt
- lttimegt call/time lt/timegt lt/startgt
- On shipping UK
- for call in(WS-outCall)
- where call/method shipping
- return ltstartgt ltIdgt call/ID ltIdgt
- lttimegt call/time lt/timegt lt/startgt
-
21Axlog specification
- AXML monitor.axml
- ltxmlgt ltstartsgt mailOrder-Alert_at_webStore.del
l.com() - mailOrder-Alert_at_webStore.dell.fr()
lt/startsgt - ltendsgt shippping-Alert_at_shipping.dell.uk(
) lt/endsgt - lt/xmlgt
- Query from supervisor in India
- For s in doc(monitor.axml)/starts/start,
- e in doc(monitor.axml)/ends/end
- Where s/Id e/Id and s//Premium
- and (e/time - s/time) gt 1800 and
- Return ltlong IDe/idgt s, e lt/longgt
22Monitoring task plan
wsAlert_at_FR
wsAlert_at_US
wsAlert_at_UK
s
s
s
?
?Join
Reporter
Publisher
Emai lto India
23Monitoring task plan localisation
Site UK
wsAlerter s
wsAlerter s
wsAlerter
Publish
s
?
Site FR
Publish
?Join
Site US
Reporter
channel
Publisher
Email to India
24Conclusion
- Prelim paper in International Workshop on Web
Information and Data Management 2007 - Demo in ICDE08
- On going
- Temporal queries
- Negation in queries
- Deletion
- Related work on Mashups with Tel Aviv Univ. IBM
Haifa - Purely relational
-
25Merci
Merci