You are previewing Getting Started with Oracle Event Processing 11g.
O'Reilly logo
Getting Started with Oracle Event Processing 11g

Book Description

Create and develop real-world scenario Oracle CEP applications

  • A unique insight and fascinating event driven journey that breathes life into Oracle Event Processing.

  • Explore the evolution and major capabilities of this innovative Oracle product in a step by step, building block fashion.

  • Packed with samples and simple tutorials evolved through years of close collaboration with expert users and industry specialists.

  • Written by the team of professionals behind Oracle Complex Event Processing.

In Detail

Events are everywhere, events which can have positive or negative impacts on our lives and important business decisions. These events can impact a company’s success, failure, and profitability. Technology now allows people from all walks of life to create Event Driven applications that will immediately and completely respond to the events that affect you and your business. So you are much more responsive to your customers, and competitive threats, and can take advantage of transient time sensitive situations.

"Getting Started with Oracle Event Processing" will let you benefit from the skills and years of experience from the original pioneers who were the driving force behind this immensely flexible, complete, and award winning Event Stream Processing technology. It provides all of the information needed to rapidly deliver and understand Event Driven Architecture (EDA) Applications. These can then be executed on the comprehensive and powerful integral Java Event Server platform which utilizes the hardware and operating system.

After an introduction into the benefits and uses of Event Stream Processing, this book uses tutorials and practical examples to teach you how to create valuable and rewarding Event Driven foundational applications. First you will learn how to solve Event Stream Processing problems, followed by the fundamentals of building an Oracle Event processing application in a step by step fashion. Exciting and unique topics are then covered: application construction, the powerful capabilities of the Oracle Event Processing language, CQL, monitoring and managing these applications, and the fascinating domain of real-time Geospatial Movement Analysis. Getting Started with Oracle Event Processing will provide a unique perspective on product creation, evolution and a solid understanding on how to effectively use the product.

Table of Contents

  1. Getting Started with Oracle Event Processing 11g
    1. Table of Contents
    2. Getting Started with Oracle Event Processing 11g
    3. Credits
    4. About the Authors
    5. About the Reviewers
      1. Support files, eBooks, discount offers and more
      2. Why Subscribe?
      3. Free Access for Packt account holders
      4. Instant Updates on New Packt Books
    7. Preface
      1. What this book covers
      2. What you need for this book
      3. Who this book is for
      4. Conventions
      5. Reader feedback
      6. Customer support
        1. Downloading the example code
        2. Errata
        3. Piracy
        4. Questions
    8. 1. An Overview of Complex Event Processing
      1. What is event processing?
      2. Relating this to a business in computing terms
      3. Use case: A solution for customer problems
      4. Key elements of event stream processing
        1. An event
        2. An event stream
        3. An event type
        4. Event Processing Network
      5. Event processing languages and extensibility
        1. Processor event node methodologies
        2. Processor extensibility
        3. Event processor "Intelligence Injection"
      6. Holistic Event-Driven and Service Orientated Architectures
      7. Predicting an event
      8. Summary
    9. 2. An Overview of Oracle Event Processing
      1. Understanding the heritage of Oracle Event Processing
      2. The Java Event-Driven Server, the bits and bytes of the architecture
      3. The adopted event language
        1. CQL concepts
      4. The philosophy and fundamentals of developing
        1. Creating an Oracle Event Processing application
        2. Some hints and tips
      5. Controlling from the command line
      6. Watching things happen and changing what happens
      7. Summary
    10. 3. Adapting Events for OEP
      1. Creating and converting events
      2. Event type system
      3. Platform adapters
        1. The JMS adapter
        2. The CSV adapter
        3. HTTP pub-sub adapter
      4. Configuring your own custom adapter
        1. Leveraging OSGi services to create an adapter
        2. Packaging custom adapters
      5. Summary
    11. 4. Assembling and Configuring OEP Applications
      1. Implementing the component model
      2. Exploring the EPN extensions
        1. Defining a simple Spring bean
        2. Creating the event type repository
        3. Setting up the adapters
        4. Configuring channels
        5. Implementing event-beans
        6. Enabling the power of CQL processors
        7. Defining a database table
        8. Using caching
      3. Understanding the application configuration
        1. Adapter configuration
        2. Channel configuration
        3. Cache configuration
      4. Defining resources in the server configuration
      5. Extending the component type infrastructure
      6. Summary
    12. 5. Coding with CQL
      1. Introducing CQL
      2. Understanding CQL fundamentals
        1. Establishing your sources and destinations
        2. Processing models
      3. The structure and semantics of event processing
        1. Restricting streams with Windows
          1. Tuple-based windows
          2. Partitioned windows
        2. Output
        3. Controlling output with slides
        4. The unbounded window
        5. The constant value range window
        6. The NOW window and the Last Event window
      4. SQL as a foundation
        1. Joins
          1. External sources
        2. Aggregations
        3. Ordering
        5. Set operations
      5. Typing and expressions
      6. Timing models
      7. Summary
    13. 6. Managing and Monitoring Applications
      1. Configuring the logging service
      2. Provisioning applications
      3. Changing application configuration
      4. Managing server-wide configuration
        1. Controlling concurrency with work managers
        2. Accessing contextual data with data sources
        3. Browsing metadata with the event type repository
      5. Monitoring progress
      6. Summary
    14. 7. Using Tables and Caches for Contextual Data
      1. Setting up JDBC data sources
      2. Enriching events using a database table
      3. Setting up caching systems
      4. Enriching events using a cache
      5. Using caches as event sources and sinks
      6. Implementing an event bean to access a cache
      7. Monitoring Coherence in the Visualizer
      8. Summary
    15. 8. Pattern Matching with CQL
      1. Extending CQL with OEP cartridges
      2. Blending CQL and Java
        1. Class loading in CQL
        2. Handling ambiguities between Java and CQL
        3. Using the JavaBeans conventions in CQL
      3. Processing XML with CQL
        1. Handling XML document sources
      4. Pattern matching
        1. Partitioning events for matching
        2. Patterns as regular expressions
          1. Controlling the number of matches
        3. Working with correlation groups
        4. Expiring patterns
      5. Summary
    16. 9. Implementing Performance Scaling, Concurrency, and High Availability for Oracle Event Processing
      1. Scalability versus high availability
      2. Understanding performance and ways to influence
      3. Scaling Oracle Event Processing
        1. The threading model
        2. Optimizing threading in channels
      4. The EventPartitioner example
      5. Using concurrency with processors
        1. Partitioned versus pipelined parallelism
        2. Improving performance with batching
        3. General event processing, network performance tuning, and memory sizing observations
      6. High availability in Oracle Event Processing
        1. Failure scenarios
      7. A sample HA Event Processing application
      8. High availability quality of services
        1. Simple failover
        2. Simple failover with buffering
        3. Lightweight queue trimming
        4. Precise recovery with JMS
      9. The HA application
        1. ActiveMQ server
        2. The JMS Message Client
        3. Running the HA solution sample
        4. Studying the Visualizer tooling for HA implementation
      10. Summary
    17. 10. Introducing Spatial: A Telemetric Use Case
      1. Introduction to Oracle Spatial with Oracle Event Processing
      2. Basic geospatial concepts and use cases
        1. Geo-streaming
        2. Geo-fencing
        3. Bus tracking movement event patterns
      3. The Oracle Spatial Data Cartridge
      4. Oracle geospatial features
      5. Tracking vehicles with an Oracle Event Processing application
        1. Key application elements
          1. Bus tracking EPN
          2. BusSpatialProcessor
          3. Bus tracking visual user interface
          4. How to run this bus tracking sample application
      6. Summary
    18. 11. Extending CQL with Spatial and JDBC
      1. Creating geometries
      2. Determining if geometries relate to each other
      3. Configuring the spatial context
      4. Retrieving external tables using SQL
      5. Summary
    19. 12. Looking Ahead: The Future of Oracle Event Processing
      1. Possible technology strategic directions
      2. Evolving developer environments
      3. Service-oriented Architecture integration
      4. Event intelligence on the computing edge with Sensor integration
        1. Event container platform manipulation profiles
          1. The Embedded profile
      5. Fast Data for Big Data
        1. Fast data sample
      6. Looking around the corner with predictive analytics
        1. More on analytics
        2. A Predicting Use Case
        3. Understanding the "Fuzzy" results
        4. Extending insurance solutions and JDBC data cartridge summary
      7. Advancing performance with embedded hardware
      8. The growing event processing standards
      9. Summary
    20. Index