rule-based programming for vorbs bertram ludaescher arcot rajasekar data and knowledge systems san...
TRANSCRIPT
Rule-Based Programming for VORBs
Bertram Ludaescher
Arcot Rajasekar
Data and Knowledge Systems
San Diego Supercomputer Center
U.C. San Diego
2 ROADNet/VORB Design 12/01
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)
3 ROADNet/VORB Design 12/01
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
4 ROADNet/VORB Design 12/01
Possible VORB Components
actual data transfer
VORBArchive
VORBArchive
Event-Condition-Action Rules
Event-Condition-Action Rules
VORBCat
VORBCat
VORBRule Engine
VORBRule Engine
SrcORBSrcORB SrcORBSrcORBSrcORBSrcORB
Client/App.Client/App. Client/App.Client/App.Client/App.Client/App.
virtual data transfer (ctrl msgs)
5 ROADNet/VORB Design 12/01
VORB Active Rule Engine
VORBCat
VORBCat
SrcORBSrcORB
Client/App.Client/App.
VORB Rule EngineVORB Rule Engine
Event-Condition-Action Rules
Event-Condition-Action Rules
SrcORBSrcORB SrcORBSrcORB
SRC Events
USR Events
ConditionEvaluation
VORBArchive
VORBArchive
SrcORBSrcORB
Client/App.Client/App.
ORB ORB
6 ROADNet/VORB Design 12/01
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
7 ROADNet/VORB Design 12/01
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
– ...
8 ROADNet/VORB Design 12/01
Event Algebra for Complex Events
9 ROADNet/VORB Design 12/01
Event Consumption for Composite Events
10 ROADNet/VORB Design 12/01
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
11 ROADNet/VORB Design 12/01
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.)
12 ROADNet/VORB Design 12/01
Compiling Temporal Queries into Rules
• Complex event detection and evaluation of temporal queries can be implemented by a translation to “state-aware” logic rules.
13 ROADNet/VORB Design 12/01
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
14 ROADNet/VORB Design 12/01
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
Specific VORB Aims
16 ROADNet/VORB Design 12/01
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
17 ROADNet/VORB Design 12/01
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
18 ROADNet/VORB Design 12/01
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
19 ROADNet/VORB Design 12/01
MyVORB Architecture
• Aim #3:– Private Virtual Real Time Data Management
• Configurable Integration
• Information Discovery
• Programmable Methods and Active Rules
20 ROADNet/VORB Design 12/01
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
21 ROADNet/VORB Design 12/01
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
22 ROADNet/VORB Design 12/01
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
23 ROADNet/VORB Design 12/01
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– ...