You are previewing Principles and Applications of Distributed Event-Based Systems.
O'Reilly logo
Principles and Applications of Distributed Event-Based Systems

Book Description

Principles and Applications of Distributed Event-Based Systems showcases event-based systems in real-world applications. Containing expert international contributions, this advanced publication provides professionals, researchers, and students in systems design with a rich compendium of latest applications in the field.

Table of Contents

  1. Copyright
  2. Editorial Advisory Board
  3. List of Reviewers
  4. Foreword
  5. Preface
    1. THE COMMUNITY
    2. THE FOUNDATION
    3. THIS BOOK
    4. REFERENCES
    5. ENDNOTES
  6. 1. Generic Architecture of Complex Event Processing Systems
    1. ABSTRACT
    2. INTRODUCTION
    3. CASE STUDIES
      1. Service Availability Management
      2. Disaster Management
    4. PRELIMINARIES
      1. Events
      2. Rules
      3. Event Architectures
      4. CA Agile Architecture (C3A)
    5. THE GRID CEP
    6. CEP SYSTEM STRUCTURE
      1. Event Sources
      2. Event Collection
      3. Event Purification
      4. Event Storing
      5. Event Inferencing
    7. EVENT SITUATION MANAGEMENT
    8. DISCUSSION
    9. CONCLUSION
    10. REFERENCES
    11. ENDNOTES
  7. 2. Event Models in Distributed Event Based Systems
    1. ABSTRACT
    2. INTRODUCTION
    3. FEATURES OF THE DEBS EVENT MODEL
    4. RELATED WORK
    5. EVENT DECLARATION
      1. Event Declaration in DEBSs
    6. EVENT ATTRIBUTES
      1. Event Attributes in DEBSs
    7. EVENT BINDING
      1. Event Binding in DEBSs
    8. ATTRIBUTE BINDING
      1. Attribute Binding in DEBSs
    9. EVENT ANNOUNCEMENT
      1. Event Announcement in DEBSs
    10. EVENT SUBSCRIPTION
      1. Event subscription in DEBSs
    11. EVENT DELIVERY
      1. Event Delivery in DEBSs
    12. EVENT PERSISTENCE
      1. Event Persistence in DEBSs
    13. EVENT NOTIFICATION
      1. Event Notification in DEBSs
    14. DEBS EVENT MODEL: RECAPITULATION
    15. FUTURE TRENDS
    16. CONCLUSION
    17. REFERENCES
    18. KEY TERMS AND DEFINITIONS
  8. 3. Time/Space Aware Event Correlation
    1. ABSTRACT
    2. INTRODUCTION
    3. BACKGROUND
      1. Emergence of Loosely Coupled Communication
      2. Subscription Model
      3. Event Structure
      4. Distributed Stream Data Processing
      5. Event Correlation
    4. EVENT AND QUERY MODEL
      1. Event Model
        1. Event
        2. Timestamps
        3. Spacestamp
        4. Duration
        5. Duplication
        6. Typed Events
      2. Events in Hypercube
        1. Cube Subscription
        2. Expressiveness
    5. EVENT CORRELATION
      1. Correlation Definition Language
      2. Event Correlation in Middleware
      3. Event Correlation Semantics
        1. Composite Event Operators
        2. Temporal Conditions
        3. Interval Semantics
        4. Event Context
        5. Consumption Policy
        6. Subset Policy
        7. Precision Policy
      4. Duplication Handling
        1. Adaptation to Resource-Constrained Environments
      5. Event Detection
        1. Detection Algorithm
      6. Experiments
        1. Prototype Implementation
        2. Example 1
        3. Example 2
        4. Example 3
        5. Example 4
        6. Example 5
      7. Object Tracking with Active BAT
        1. Distributed Gateways
        2. Durative Event Efficiency
        3. Event Correlation
    6. FUTURE TRENDS
      1. Fuzzy Semantic Query
      2. High Level Language for Event Correlation Semantics
      3. Programmable Networks
    7. CONCLUSION
    8. REFERENCES
  9. 4. Temporal Perspectives in Event Processing
    1. ABSTRACT
    2. INTRODUCTION
      1. Introduction to Event Processing
      2. Temporal Aspects of Event Processing
    3. TEMPORAL DIMENSIONS OF EVENTS
      1. Temporal Dimensions of States
      2. Temporal Dimensions of Transitions
      3. The "Instantaneous" Question: Does Event Occur Over a Time-Point or Over an Interval?
      4. Time Granularity
      5. Examples in the Patient Monitoring story
    4. TEMPORAL CONTEXTS
      1. Fixed Interval
      2. Event Interval
      3. Sliding Interval
      4. Examples in the Patients Monitoring Story
    5. TEMPORAL PATTERNS
      1. Processing Based on the Different Time Perspectives
      2. Event-at-a-Time Patterns
      3. Set-at-a-Time Patterns
      4. Examples in the Patient Monitoring Story
    6. TEMPORAL PROPERTIES OF DERIVED EVENTS
      1. Sequence Example
      2. Time Out Pattern Example
      3. Aggregation Example
      4. Occurrence Time Policies
    7. THE ORDER OF EVENTS
      1. The Need for Event Ordering
      2. Ordering in the Event Source Level
      3. Time-Out Reordering
      4. Retrospective Updates
    8. THE IMPACT OF DISTRIBUTION ON THE TEMPORAL ASPECTS
      1. Time Zones
      2. Time Synchronization
      3. Time Validity for Mobile Consumers
    9. CONCLUSION
    10. REFERENCES
  10. 5. Serendipity Reloaded: Fair Loading in Event-Based Messaging
    1. ABSTRACT
    2. INTRODUCTION
    3. THE LOADING PROBLEM
    4. PEER-TO-PEER NETWORKING
      1. Unstructured P2P
      2. Structured P2P
    5. LOAD BALANCING
      1. Storage/Registration Distribution
      2. Access/Query Distribution
      3. Comprehensive Load Distribution
    6. EVENT-BASED MESSAGING OVER P2P
    7. ICE: A TESSERAL P2P SUBSTRATE
      1. Tesseral Addressing
      2. Amortised Routing
        1. Point-to-Point Routing
        2. Multipoint Routing
        3. Overlay Mapping
        4. Self-Stabilisation
    8. APPLYING ICE
      1. Registry Distribution
        1. Peer Flux and Self-Stabilisation
      2. Registry Replication
        1. Peer Flux and Self-Stabilisation
    9. EVALUATION OF LOAD DISTRIBUTION
    10. CONCLUSION
    11. ACKNOWLEDGMENT
    12. REFERENCES
    13. KEY TERMS AND DEFINITIONS
  11. 6. Securing Event-Based Systems
    1. ABSTRACT
    2. INTRODUCTION
    3. APPLICATION REQUIREMENTS
    4. EVENT DISSEMINATION INFRASTRUCTURE
      1. Point-to-Point
      2. Publish/Subscribe
      3. Hermes Publish/Subscribe
    5. APPLICATION-LEVEL DATA DEFINITION AND ACCESS CONTROL
      1. Role-Based Access Control
      2. Management of Event Names, Types and Policies
      3. OASIS Role-Based Access Control
      4. Access Control Policy for Publish/Subscribe Clients
      5. Domain Security Architecture
    6. SECURING COMMUNICATION IN LARGE-SCALE, DEDICATED BROKER NETWORKS
      1. Building the Domain Structure
      2. Delegating Authority
        1. Broker Network Access
        2. Introducing New Types/Topics
        3. Extending Types/Topics
        4. Accessing the Pub/Sub API
      3. Credential Propagation
      4. Encrypting Event Content
        1. Whole-Event Encryption
        2. Attribute Encryption
      5. Encrypting Subscriptions
      6. Avoiding Unnecessary Encryption
      7. Key Management
        1. Secure Group Communication
        2. Key Refreshing
    7. BROKER-SPECIFIC POLICY ENFORCEMENT
      1. Interaction Control
        1. Client Restrictions
        2. Transformations
      2. Pub/Sub Data Control in Distributed Broker Networks
    8. CONCLUSIONS AND OPEN ISSUES
    9. REFERENCES
  12. 7. Automating Integration Testing of Large-Scale Publish/Subscribe Systems
    1. ABSTRACT
    2. INTRODUCTION
    3. PROPERTIES OF PUBLISH/SUBSCRIBE PLATFORMS
      1. Explicit vs. Implicit Dependencies
      2. Rendez-Vous vs. Persistent Messages
      3. Synchronous vs. Asynchronous Interaction
      4. Call-Reply vs. Data-Flow
      5. Runtime Testing
    4. INTEGRATION TESTING IN EVENT-BASED SYSTEMS
      1. Background
        1. Assumptions on the System
        2. Verification and Validation
        3. Built-In Testing and Beyond
      2. Finding Dependencies Between Components
      3. Testing Random Event Sequences
      4. Testing Specific Data-Flows
    5. RUNTIME TESTING FOR COMPONENT-BASED PLATFORMS
      1. Background
      2. Runtime Testability
      3. Avoiding Interferences Between Production and Testing Domains
      4. Reducing the Amount of Test Cases
    6. RUNTIME INTEGRATION TESTING: A CONTROLLED EXPERIMENT
      1. Ais: Automatic Identification System
      2. The Initial System
      3. First Integration Acceptance
      4. Update of the System
    7. FUTURE TRENDS
    8. SUMMARY AND CONCLUSION
    9. ACKNOWLEDGMENT
    10. REFERENCES
      1. KEY TERMS AND DEFINITIONS
    11. ENDNOTES
  13. 8. The PADRES Publish/Subscribe System
    1. ABSTRACT
    2. INTRODUCTION
    3. MESSAGE ROUTING
      1. Language Model
        1. Publications
        2. Advertisements
        3. Subscriptions
        4. Notifications
      2. Broker Network and Broker Architecture
      3. Content-Based Routing Protocols
        1. Covering and Merging Based Routing
        2. Adaptive Content-Based Routing for General Overlays
        3. Composite Subscription Routing
    4. HISTORIC DATA ACCESS
      1. Atomic Subscription Routing
      2. Adaptive Routing
    5. LOAD BALANCING
    6. FAULT-TOLERANCE
      1. Consistency
      2. Fault-Tolerant Forwarding Algorithm
      3. Recovery Procedure
    7. TOOLS
      1. Monitor
    8. PANDA
    9. APPLICATIONS
      1. Consumer Applications
        1. Newscast Services
        2. Intelligent Vehicular Ad-Hoc Networks
      2. Enterprise Applications
        1. Sensor Networks
        2. Business Process Management
        3. Business Application Monitoring
        4. Enterprise Service Bus
      3. Infrastructure Applications
        1. Intrusion Detection
        2. Service Level Agreements
    10. RELATED WORK
    11. CONCLUSION
    12. ACKNOWLEDGMENT
    13. REFERENCES
    14. ENDNOTES
  14. 9. TinyDDS: An Interoperable and Configurable Publish/Subscribe Middleware for Wireless Sensor Networks
    1. ABSTRACT
    2. INTRODUCTION
    3. BACKGROUND
      1. Publish/Subscribe Communication in WSNs
      2. OMG DDS Specification
    4. TINYDDS ARCHITECTURE
      1. DDS Interfaces
      2. Overlay Event Routing Protocols
      3. TinyCDR
      4. TinyGIOP
      5. TinyDDS L4 Adaptation Layer
      6. Application Development With TinyDDS
      7. DDS Gateway
      8. DDS Web Clients
    5. NON-FUNCTIONAL PROPERTIES OF TINYDDS
      1. Application-Level Non-Functional Properties
      2. Middleware-Level Non-Functional Properties
    6. EVALUATION
      1. Per-Packet Header Overhead
      2. Memory Footprint
      3. Processing and Power Efficiency
      4. Size of Application Source Code
    7. RELATED WORK
    8. CONCLUSION
    9. REFERENCES
    10. ENDNOTES
  15. 10. Knowledge-Based Networking
    1. ABSTRACT
    2. INTRODUCTION
    3. RELATED WORK
      1. Other Relevant Work
    4. THE SEMANTIC EXTENSION
    5. THE BAG EXTENSION
      1. Simple Bag Subscription Operator
      2. Composite Bag Subscription Operator
      3. Performance of Subscription Tree Merge and Lookup using Simple Bag Operators
      4. Performance of Subscription Tree Merge and Lookup using Composite Bag Operators
    6. IMPLEMENTING A KBN
    7. MOTIVATIONAL CASE STUDIES
      1. Decentralised Semantic Service Discovery
      2. Distributed Correlation of Faults in a Managed Network
      3. News Feed Distribution and Subscription
      4. Context Distribution
      5. Discussion of Case Studies
      6. Additional Proposed Scenarios
    8. CONCLUSION AND FURTHER WORK
    9. REFERENCES
  16. 11. StreamMine
    1. ABSTRACT
    2. INTRODUCTION
    3. RELATED WORK
    4. ARCHITECTURE
    5. BLOOM FILTER-BASED ROUTING
      1. Overview
      2. Content Summarization Using Bloom Filters
      3. Subscription Content Summarization
      4. Event Content Summarization
    6. STM-BASED PARALLELIZATION
      1. Overview
      2. Optimistic Parallelization of Stateful Components
      3. Limiting Speculation
      4. Distributed Speculation
    7. LOAD BALANCING
    8. MEASUREMENTS
      1. Microbenchmarks
      2. Latency and Throughput
      3. Parallelization and Speculative Execution
    9. CONCLUSION
    10. REFERENCES
    11. ENDNOTES
    12. KEYTERMS AND DEFINITIONS
  17. 12. Event Processing in Web Service Runtime Environments
    1. ABSTRACT
    2. INTRODUCTION
    3. BACKGROUND
      1. Related Work
      2. Esper
    4. VIENNA RUNTIME ENVIRONMENT FOR SERVICE-ORIENTED COMPUTING
      1. Motivating Example
      2. VRESCo Overview
      3. Versioning, Dynamic Binding and Invocation
      4. VRESCo Service Metadata Model
      5. VRESCo Eventing Engine
        1. Event Types
        2. Event Participants
        3. Event Ranking
        4. Event Correlation
        5. Subscription and Notification Mechanism
        6. Event Persistence and Event Search
        7. Event Visibility
      6. VRESCo Runtime Manager
      7. Usage Examples
    5. FUTURE TRENDS
    6. CONCLUSION
    7. REFERENCES
      1. KEY TERMS AND DEFINITIONS
    8. ENDNOTES
  18. 13. Event-Based Realization of Dynamic Adaptive Systems
    1. ABSTRACT
    2. INTRODUCTION
    3. DYNAMIC ADAPTIVE APPLICATION EXAMPLE
    4. TWO OPPOSITE EXAMPLE REALIZATIONS
      1. Introduction to Our Approach
      2. Request/Reply Realization of the Application Example
      3. Straightforward Eventbased Realization of the Application Example
      4. Comparing both Realizations of the Application Example
    5. CONFIGURABLE, EVENT-BASED INTERACTION STYLE REALIZATION
    6. CONCLUSION AND FUTURE WORK
    7. REFERENCES
    8. ENDNOTE
  19. 14. Event-Driven Mobile Computing with Objects
    1. ABSTRACT
    2. INTRODUCTION
    3. BACKGROUND
      1. Coupling Properties of EventDriven Communication
        1. Decoupling in Time
        2. Decoupling in Space
        3. Synchronization Decoupling
      2. State of the Art in Event-Driven Middleware for Manets
        1. Publish/Subscribe Systems
          1. Location-Based Publish/Subscribe
          2. Scalable Timed Events and Mobility
          3. One.world
          4. Epidemic Messaging Middleware for Ad Hoc Networks
        2. Tuple Space-Based Systems
          1. Linda in a Mobile Environment
          2. Mobile Agent Reactive Spaces and Tuples on the Air
    4. THE OBJECT-EVENT IMPEDANCE MISMATCH
      1. Specific vs. Generic Communication
      2. Connection-Oriented vs. Connectionless Designation
      3. Bidirectional vs. Unidirectional Communication
      4. Threads vs. Event Loops
      5. Reconciling Objects with Events
    5. AMBIENTTALK
      1. Event Loop Concurrency
      2. Ambient References
      3. Previous and Related Work
      4. Limitations
    6. THE OBJECT-EVENT IMPEDANCE MISMATCH REVISITED
      1. Specific vs. Generic Communication
      2. Connection-Oriented vs. Connectionless Designation
      3. Bidirectional vs. Unidirectional Communication
      4. Threads vs. Event Loops
      5. Reconciling Objects with Events
      6. Alternative Approaches to Resolving the Impedance Mismatch
      7. Summary
    7. FUTURE TRENDS
    8. CONCLUSION
    9. REFERENCES
    10. KEY TERMS AND DEFINITIONS
  20. 15. Event-Based System Architecture in Mobile Ad Hoc Networks (MANETs)
    1. ABSTRACT
    2. INTRODUCTION
      1. A Notional Example Scenario of P/S in MANET
    3. BACKGROUND
      1. Tree-Based vs. Non-Tree Approaches
      2. Existing MANET Tree-Based P/S Architecture
    4. HIERARCHICAL TREE-BASED INTERCONNECTION IN MANET: A GENERIC MODEL
      1. Graph Theory Preliminaries
      2. Model Analysis
      3. Path Overhead Ratio
    5. BASIC ARCHITECTURE DESIGN
      1. Inner-Tree Level Interconnection
        1. Inner-Tree Subscription and Publication
        2. Parent Evaluation Metrics (PEM)
      2. Inter-Tree Level Interconnection
        1. Root Node Selection and Tree Merging
        2. Inter-Tree Communication
      3. SOMER vs. SensTrac
    6. SPECIAL ISSUE: EVENT CAUSAL DEPENDENCIES AND SELF-RECONFIGURING ARCHITECTURAL FACILITATION
      1. Event Causal Dependencies
      2. Self-Construction of System Causal Graph
      3. Self-Reconfiguration with Awareness of Event Causal Dependencies
    7. EXPERIMENTAL EVALUATION
      1. Timely and Reliable Event Delivery
        1. Timeliness
        2. Reliability
      2. Tree Merging and New Root Selection
      3. Event Delivery with Awareness of Causal Dependencies
      4. Network Traffic Load
    8. CONCLUDING REMARKS AND FUTURE TRENDS
    9. REFERENCES
      1. KEY TERMS AND DEFINITIONS
    10. ENDNOTE
  21. 16. mTrigger: An Event-Based Framework for Location-Based Mobile Triggers
    1. ABSTRACT
    2. INTRODUCTION
    3. MTRIGGER CLIENT-SERVER ARCHITECTURE
    4. SCALABLE PROCESSING OF LOCATION TRIGGERS: SERVERSIDE OPTIMIZATIONS
      1. Safe Period Optimizations
      2. Safe Region Optimizations
    5. MTRIGGER CLIENT-CENTRIC ARCHITECTURE
    6. EXPERIMENTAL EVALUATION
    7. RELATED WORK
    8. CONCLUSION AND FUTURE WORK
    9. ACKNOWLEDGMENT
    10. REFERENCES
  22. 17. Mobile Push for Converged Mobile Services: The Airline Scenario
    1. ABSTRACT
    2. INTRODUCTION
    3. BACKGROUND
      1. Delivery Strategies: Push
      2. Delivery Strategies: Pull-Based Push
      3. Mobile Push Challenges
    4. SCENARIO REQUIREMENTS
    5. DESIGN AND IMPLEMENTATION
      1. Implementing Secure Mobile Push
      2. Experimental Results
    6. IMPLEMENTING THE MOBILE AIRLINE SCENARIO
      1. Pushing the Electronic Ticket
    7. DISCUSSION AND FUTURE TRENDS
      1. Lessons Learned from the Design
    8. CONCLUSION
    9. REFERENCES
  23. 18. Event-Based Interaction for Rescue and Emergency Applications in Mobile and Disruptive Environments
    1. ABSTRACT
    2. INTRODUCTION
    3. BACKGROUND: APPLICATION SCENARIO AND NETWORK ENVIRONMENT
      1. Rescue Operations
      2. Communication Infrastructure and Routing
      3. Requirements
    4. DESIGN CHOICES
      1. Events and Subscription Languages
        1. From Real-World Events to Event Notifications
        2. Describing, Locating and Filtering Events
      2. Event Notification Service Architecture
    5. ANALYSIS OF RELATED WORK
      1. ENs for Mobile Environments
      2. Information Dissemination
    6. A NOVEL ENS APPROACH FOR EMERGENCY AND RESCUE APPLICATIONS
      1. Subscription Language Independence in DENS
      2. DENS Overlay
      3. Using DENs for Remote Patient Monitoring
    7. CONCLUSION
    8. REFERENCES
  24. 19. Panel: Current State and Future of Event-Based Systems
    1. ABSTRACT
    2. PANELLISTS' CONTRIBUTIONS
      1. Jean Bacon
        1. Reflections and Comments
      2. Alex Buchmann
        1. Reflections and Comments
      3. Sharma Chakravarthy
        1. Reflections and Comments
      4. Mani Chandy
      5. Avigdor Gal
      6. Dieter Gawlick
      7. Richard Tibbets
    3. REFLECTION AND SUMMARY OF CONTRIBUTIONS
      1. Understanding of the Central Terms of the Field
      2. Assumptions, Pros and Cons
      3. EBS and Other Software Architectures
      4. Future of EBS: Applications and Challenges
    4. ACKNOWLEDGMENT
  25. Compilation of References
  26. About the Contributors