VORBs - San Diego Supercomputer Center

Rule-Based Programming for VORBs
Bertram Ludaescher
Arcot Rajasekar
Data and Knowledge Systems
San Diego Supercomputer Center
U.C. San Diego
Background and Overview
• Goals ...
–
–
–
–
streaming real-time environmental data ...
... over wireless networks,
... seamlessly collecting, integrating, and archiving
... heterogeneous multi-disciplinary data!
• .... and The Noble Path
– extending the ORB to an all-powerful VORB!
=> dynamic reconfiguration and programming of ORBs via a
layer of rule-programmable VORBs
– build VORBs as SRB-lets (= extensions to SRB)
ROADNet/VORB Design 12/01
2
All about VORBs ...
• Virtual Object Ring Buffers
– overcome the static bindings...
Applications
 ORB 
RealTimeSensors
– ... by rule-based “VORB
mediators”
– ... VORBs need metadata
about available ORBs, the
connected sensors, and
“fellow VORBs”
=> VORB catalog/registry
ROADNet/VORB Design 12/01
3
Possible VORB Components
Client/App.
Client/App.
Client/App.
Event-ConditionAction Rules
actual data transfer
VORB
Rule Engine
VORB
Cat
VORB
Archive
SrcORB
SrcORB
SrcORB
virtual data transfer (ctrl msgs)
ROADNet/VORB Design 12/01
4
VORB Active Rule Engine
Client/App.
Client/App.
USR Events
Condition
VORB Evaluation
Cat
VORB Rule Engine
Event-ConditionAction Rules
SRC Events
SrcORB
ROADNet/VORB Design 12/01
ORB
VORB
Archive
SrcORB
SrcORB
SrcORB
5
Event-Condition-Action (ECA) Rules
• Rule Syntax
– ON <event> IF <condition> THEN <action>
• Rule Semantics
– whenever the event occurs, the rule is triggered, the condition
checked and – if satisfied – the action is executed
 Active Database Rules (=ECA rules)
 Flexible, Dynamic Programming Style
• Declarative Reconfiguration based on ...
– logic language for conditions,
– logic language for complex events detection, and
– ... an algebraic action language
ROADNet/VORB Design 12/01
6
Events
• Database Events
– INS, DEL, UPD, BOT, EOT, ABORT, COMMIT,
ROLLBACK, CHECKPOINT
• Temporal Events
– absolute (@MM/DD/YYYY:HH:MM)
– relative, periodic, ...
• Application-Specific/Data Source Events
– sensor-value > threshold
– ORB up/down
– ...
ROADNet/VORB Design 12/01
7
Event Algebra for Complex Events
ROADNet/VORB Design 12/01
8
Event Consumption for Composite Events
ROADNet/VORB Design 12/01
9
Conditions
• ... may be even more “heavy-weight” than events
• ... involve the registry/VORB Cat/VORB DB
• ... may be quite similar to complex event detection
=> temporal query conditions  complex events
ROADNet/VORB Design 12/01
10
Temporal Queries
• Homework
– replace such employee/salary temporal queries by ones that
correspond to interesting ...
• ... real-time sensor ones (from the sources)
• ... reconfiguration ones (from the client/apps.)
ROADNet/VORB Design 12/01
11
Compiling Temporal Queries into Rules
• Complex event detection and evaluation of temporal queries can be
implemented by a translation to “state-aware” logic rules.
ROADNet/VORB Design 12/01
12
Actions
• Reconfiguration Actions:
– brokering actual data paths
– adapting sampling rates, transmission rates, ...
– turning on/off data archival, automatic dissemination, ...
• Will query and update the VORB/Cat
ROADNet/VORB Design 12/01
13
Summary and Outlook
• Active (Event-Condition-Action) Rules provide flexible rule-based
programming for dynamic reconfiguration of VORBs
• ECA rules will be executed in a SRB environment (SRB-lets)
• SRB/MCAT can also manage the VORB/Cat
• Tasks
–
–
–
–
–
VORB use cases!
VORB requirements and specification
design of event, condition, and action sublanguages
design of rule evaluation algorithm
implementation
ROADNet/VORB Design 12/01
14
Specific VORB Aims
Design
• Aims
– Virtualized Access to Real Time Data Streams
• VORB
– Virtualized Integration of Real Time Data
• Multiple VORBs
– Private Virtual Real Time Data Management
• Private VORBs
– Rapidly Configurable RT Data Networks
• Demand-driven Reconfigurable VORB
• Requirements
–
–
–
–
Federated Resource Brokering
Metadata Catalog
Rule-driven Data Aquisition and Integration
Extensible ORBs
ROADNet/VORB Design 12/01
16
VORB- A Real Time DataGrid Architecture
• Aim #1:
– Virtualized Access to Real Time Data Streams
• Hide Physical Aspects of RTD Resources
– Handling Heterogeneity of Resources
– Plug and Play
• Uniform Protocol & API
• Common Authentication & Authorization
• Replication, Fault Tolerance, Load Distribution
• Caching, Scheduling, Data Placement
• Uniform Name Space – Persistence & Discovery
ROADNet/VORB Design 12/01
17
Federated VORB
• Aim #2:
– Virtualized Integration of Real Time Data
• Integrate packets from multiple data streams
– Heterogeneous & Distributed RT Data Resources
• Hide Logical Aspects of VORB-accessed Resources
– Virtualized Schema
– Rule-based Integration
• Uniform Protocols & API
• Metadata-based Discovery
ROADNet/VORB Design 12/01
18
MyVORB Architecture
• Aim #3:
– Private Virtual Real Time Data Management
• Configurable Integration
• Information Discovery
• Programmable Methods and Active Rules
ROADNet/VORB Design 12/01
19
Demand VORB
• Aim #4:
– Rapidly Configurable RT Data Networks
•
•
•
•
•
Based on situation and demands
More sensors activated/brought online
Changing VORB Federation
Rapid Information Publication
Fault tolerance
ROADNet/VORB Design 12/01
20
Resource Broker
• SRB extension to ORB & other RT resources
– Resource Transparency
• Local or Remote, Resource Type & Access Method
– Location Transparency
• Stream Names, Stream Structure/Schema
–
–
–
–
–
Cross-Domain Authentication
Replicated Data Management
Data Redirection, Load Balancing, Fault Tolerance
Data Discovery
Uniform API, Protocol
ROADNet/VORB Design 12/01
21
Metadata Catalog
• System-level Metadata
– Sensor info, Data Format Info
– Resource Info, Method Info, Event/Trigger Info
– User Transparency
• Uniform User Name Space
• Access Control
– Uniform Data Stream Name Space – Persistence
• Logical Metadata - Conceptual Info
– Data Discovery
– Data Integration Info
• User-defined Metadata
ROADNet/VORB Design 12/01
22
Rule-Driven Integration and Extensible ORBs
• Use of Virtual XML Data Views
– metadata (and data?) sources as queryable XML databases
 develop XML Schema for source metadata
 XML queries (e.g., XPath, XQuery tools)
• Active Rules for Dynamic Reconfiguration
– Event-Condition-Action rules as SRB extensions
– develop VORB protocols and corresponding XML DTD
– trigger execution based on “action tags”!?
• Rule Engine within VORB-SRB
– implemented in ... (Prolog, Python, Perl???)
• Extensible ORBs
– ...
ROADNet/VORB Design 12/01
23