Scalable Trigger Processing* -Eric N. Hanson et al. - PowerPoint PPT Presentation

1 / 20
About This Presentation
Title:

Scalable Trigger Processing* -Eric N. Hanson et al.

Description:

Scalable Trigger Processing*-Eric N. Hanson et al. CSCi8701: Overview of Database Research Paper Presentation Group 4: Betsy George, Vijay Gandhi – PowerPoint PPT presentation

Number of Views:87
Avg rating:3.0/5.0
Slides: 21
Provided by: VijayG1
Category:

less

Transcript and Presenter's Notes

Title: Scalable Trigger Processing* -Eric N. Hanson et al.


1
Scalable Trigger Processing -Eric N. Hanson et
al.
  • CSCi8701 Overview of Database Research
  • Paper Presentation
  • Group 4 Betsy George, Vijay Gandhi

International Conference on Data Engineering,
1999
2
Presentation Outline
  • Motivation
  • Problem Definition
  • Related Work
  • Contributions
  • Key Concepts
  • Validation
  • Future Work
  • Rewrite Today
  • Summary

3
Motivation
  • Traditional uses of Triggers
  • Constraint checking
  • Logging
  • Replication
  • Web-based applications
  • Create triggers interactively
  • E.g. Stock Ticker notification
  • If share value of Google goes down below 500
  • notify a person
  • Limitations of current trigger systems
  • Not scalable

4
Problem Definition
  • Given A Relational DBMS, Trigger statements,
    Data Stream (tokens)
  • Find Triggers corresponding to each token
  • Objective Scalable trigger processing system
  • Constraints
  • Number of distinct structures of trigger
    expressions is small
  • All distinct structures of trigger expressions
    should be small enough to fit in the main memory

5
Related Work

  • Parallel Processing
  • Gupt89,Hell98

Indexing
ECA Model (not scalable)
AI Forg82,Mira87 (smaller rule set)
Range Predicates, Marking based Hans96b,
Ston90 (large memory, complicated storage)
The work proposed here is a combination of
improvised version of some of the modules
mentioned above.
6
Contribution
  • Data Structures
  • If a large number of triggers are created, many
    of them have almost the same format
  • Predicate Index Structure
  • Most important contribution
  • Concurrent processing
  • Identified 4 levels of concurrency
  • Implemented token-level concurrency

7
Key Concepts TiggerMan Architecture
8
Key Concepts Trigger Structure
  • Example Stock ticker notification
  • Create trigger T1 from stock
  • when stock.ticker GOOG and stock.value lt
    500
  • do notify_person(P1)
  • Create trigger T2 from stock
  • when stock.ticker MSFT and stock.value lt
    30
  • do notify_person(P2)
  • Create trigger T3 from stock
  • when stock.ticker ORCL and stock.value lt
    20
  • do notify_person(P3)
  • Create trigger T4 from stock
  • when stock.ticker GOOG
  • do notify_person(P4)

9
Key Concepts Expression Signature
  • Common structures in the condition of triggers
  • Expression Signature
  • E1 stock.ticker const1 and stock.value lt
    const2
  • Expression Signature
  • E2 stock.ticker const3

T1 stock.ticker GOOG and stock.value lt
500 T2 stock.ticker MSFT and stock.value lt
30 T3 stock.ticker ORCL and stock.value lt 20
T4 stock.ticker GOOG
10
Key Concepts A-Treat Network
  • For each trigger condition
  • stock.ticker const1 and stock.value lt const2

11
Key Concepts Expression Signature
  • Expression Signature Table

Ex. ID Data Source Signature Description Constant Table Number of Constants Constant Organization
E1 stock const_e1 2 Main Memory
E2 stock const_e2 1 Main memory

E1 stock.ticker const1 and stock.value lt
const2 E2 stock.ticker const3
12
Key Concepts Constant Table
  • Tables to include constants occurring in the
    condition of triggers
  • const_e1

Ex. ID Trigger ID Constant 1 Constant 2 Next Node Rest
E1 T1 GOOG 500 Node 2
E1 T2 MSFT 30 Node 2
E1 T3 ORCL 20 Node 2
Const_e2
Ex. ID Trigger ID Constant 1 Next Node Rest
E2 T4 GOOG Null
T1 stock.ticker GOOG and stock.value lt
500 T2 stock.ticker MSFT and stock.value lt
30 T3 stock.ticker ORCL and stock.value lt 20
T4 stock.ticker GOOG
13
Key Concepts Summary
  • Expression Signature
  • Common structure in a trigger
  • E1 stock.ticker const1 and stock.value lt
    const2
  • A-treat network
  • Network for trigger condition testing
  • For a Trigger to fire, all conditions must be
    true
  • Constant Tables
  • Constants for each Expressions Signature

14
Key Concepts - Predicate Index
15
Key Concepts - Processing
Update Stock(tickerGOOG,value495)
Root
Index of stock.tickerconst1
Other source Predicate index
E1 stock.ticker const1 and stock.value lt const2
E1
E2
Trigger ID Constant 1 Constant 2 Next Node
T1 GOOG 500 Node 2
T2 MSFT 30 Node 2
T3 ORCL 20 Node 2
const_e1
const_e2
const_e1
16
Concurrency
  • Concurrency
  • Better scalability
  • Even on single processor
  • Identified elements that can be parallelized
  • Token-level
  • Multiple tokens processed in parallel
  • Condition-level
  • Multiple selection conditions tested concurrently
  • Rule-action-level
  • Multiple rule actions fired at the same time
  • Data-level
  • Set of data values in the network processed in
    parallel
  • Implemented Token-level concurrency

17
Validation
  • Important fact If a large number of triggers are
    created, many of them have almost the same format
  • Implemented as an Informix DataBlade
  • No experimental comparisons

18
Assumptions
  • If a large number of triggers are created, many
    of them have almost the same format
  • All distinct predicate structures fit into the
    main memory

19
Rewrite today
  • Validations
  • Provide Experimental Comparisons
  • Test on real datasets
  • Examples Execution Trace
  • Remove sections on TriggerMan Command Language
    and Architecture
  • Describe A-TREAT network

20
Summary
  • If a large number of triggers are created, many
    of them have almost the same format
  • Number of distinct signatures is small enough to
    fit into the main memory
Write a Comment
User Comments (0)
About PowerShow.com