LUDWIG- MAXIMILIANS- DEPARTMENT DATABASE UNIVERSITÄT INSTITUTE FOR SYSTEMS MÜNCHEN INFORMATICS GROUP Continuous Inverse Ranking Queries in Uncertain Streams Thomas Bernecker*, Hans-Peter Kriegel*, Nikos Mamoulis**, Matthias Renz* and Andreas Zuefle* *) **) Ludwig-Maximilians-Universität München (LMU) University of Hong Kong (HKU) Munich, Germany Hong Kong http://www.dbs.ifi.lmu.de http://www.cs.hku.hk {bernecker, kriegel, renz, zuefle}@dbs.ifi.lmu.de nikos@cs.hku.hk
Outline DATABASE SYSTEMS GROUP 1. Motivation: Probabilistic Inverse Ranking 2. Continuous Inverse Ranking Queries – Initial Computation – Incremental Processing 3. Experimental Evaluation 4. Summary Continuous Inverse Ranking Queries in Uncertain Streams 2
Probabilistic Inverse Ranking DATABASE SYSTEMS GROUP • Identification of the significance of objects among peers – Inverse Ranking: Return the position of the query object q w.r.t. the score function S – Probabilistic Inverse Ranking: Find all possible positions of q • Example: Stock rating system Risk S = Chances - Risk Rank 1 ? → 0 % Rank 2 ? → 50 % q q Rank 3 ? → 50 % Stock I Rank 4 ? → 0 % Stock II Stock III Chances Continuous Inverse Ranking Queries in Uncertain Streams 3
Probabilistic Inverse Ranking DATABASE SYSTEMS GROUP • Probabilistic Inverse Ranking (PIR) Query – Probabilistic database DB where | DB | = n – Uncertain object o : m alternative locations (discrete uncertainty) or pdf (continuous uncertainty) – Query object q + – Score function S : DB → R 0 ( ) – Definition: ∀ i = 1, ..., k : P( q is on rank i w.r.t. S ) = P t i q – There exist exactly i - 1 objects o � DB with S(o) > S(q) • Challenge: Application to dynamic data – General stream model with location updates retrieved at a time t ( ) – P( q is on rank i at time t ) = P t i q – Initial computation – Incremental processing Continuous Inverse Ranking Queries in Uncertain Streams 4
Initial Computation (1) DATABASE SYSTEMS GROUP ( ) ∀ i = 1,..., k • Initial time t : Compute P t i q t – Object o � DB : = P( S ( o ) > S ( q ) at time t ) p o j objects have been processed so far ( o j is the latest) – – Successive processing by the Poisson Binomial Recurrence (PBR) : ⎧ = ∧ = 1 if i 0 j 0 ⎪ = < ∨ > t ⎨ P 0 if i 0 i j ( ) i , j ⎪ ⋅ + ⋅ − t t t t 1 else P p P p ⎩ − − − i 1 , j 1 o i , j 1 o j j i out of j : i-1 out of j-1 : i out of j-1 : S ( o ) > S ( q ) S ( o ) > S ( q ) S ( o ) > S ( q ) and and S ( o j ) > S ( q ) S ( o j ) ≤ S ( q ) Continuous Inverse Ranking Queries in Uncertain Streams 5
Initial Computation (2) DATABASE SYSTEMS GROUP ( ) • j = n ( ∀ i = 0,..., k-1) : = = + t t t P P P i 1 i , j i , n q ⇒ PIR result for q ⇒ runtime: O( k · n ) • Optimizations: = ⇒ o has no effect on the rank of q t – p 0 o = ⇒ increment counter t – t 1 C p o • General case ( ) ⇒ process o by PBR: ∀ i = 0,..., k-1 : < < t 0 p 1 o P t P( i objects processed by PBR have a higher score than q ) = ( i ) PBR • Initial PIR result: ( ) ⎧ − − + ≤ ≤ + + t t t t P i 1 C if C 1 i C 1 k ( ) = t ⎨ PBR P i q ⎩ 0 else Continuous Inverse Ranking Queries in Uncertain Streams 6
Initial Computation (3) DATABASE SYSTEMS GROUP • Example: n = 4, k = 2 1 = 2 = 3 = 4 = t t t t = 0 . 1 0 1 p p p 0 . 6 p t C 0 o o o o o 3 o 2 q o 4 o 1 Continuous Inverse Ranking Queries in Uncertain Streams 7
Initial Computation (3) DATABASE SYSTEMS GROUP • Example: n = 4, k = 2, j = 1 1 = 2 = 3 = 4 = t t t t = 0 . 1 0 1 p p p 0 . 6 p t C 0 o o o o ( ) = ⋅ + ⋅ − = ⋅ + ⋅ = • j = 1: t t t t t 1 0 0 . 1 1 0 . 9 0 . 9 P P p P p − 0 , 1 1 , 0 o 0 , 0 o 1 1 ( ) = ⋅ + ⋅ − = ⋅ + ⋅ = t t t t t P P p P 1 p 1 0 . 1 0 0 . 9 0 . 1 1 , 1 0 , 0 o 1 , 0 o 1 1 Continuous Inverse Ranking Queries in Uncertain Streams 8
Initial Computation (3) DATABASE SYSTEMS GROUP • Example: n = 4, k = 2, j = 2 1 = 2 = 3 = 4 = t t t t = 0 . 1 0 1 p p p 0 . 6 p t C 0 o o o o ( ) = ⋅ + ⋅ − = ⋅ + ⋅ = • j = 1: t t t t t 1 0 0 . 1 1 0 . 9 0 . 9 P P p P p − 0 , 1 1 , 0 o 0 , 0 o 1 1 ( ) = ⋅ + ⋅ − = ⋅ + ⋅ = t t t t t P P p P 1 p 1 0 . 1 0 0 . 9 0 . 1 1 , 1 0 , 0 o 1 , 0 o 1 1 Continuous Inverse Ranking Queries in Uncertain Streams 9
Initial Computation (3) DATABASE SYSTEMS GROUP • Example: n = 4, k = 2, j = 3 1 = 2 = 3 = 4 = t t t t = 0 . 1 0 1 p p p 0 . 6 p t C 0 o o o o ( ) = ⋅ + ⋅ − = ⋅ + ⋅ = • j = 1: t t t t t 1 0 0 . 1 1 0 . 9 0 . 9 P P p P p − 0 , 1 1 , 0 o 0 , 0 o 1 1 ( ) = ⋅ + ⋅ − = ⋅ + ⋅ = t t t t t P P p P 1 p 1 0 . 1 0 0 . 9 0 . 1 1 , 1 0 , 0 o 1 , 0 o 1 1 ( ) = ⋅ + ⋅ − = ⋅ + ⋅ = • j = 3: t t t t t P P p P 1 p 0 0 . 6 0 . 9 0 . 4 0 . 36 − 0 , 2 1 , 1 o 0 , 1 o 3 3 ( ) = ⋅ + ⋅ − = ⋅ + ⋅ = t t t t t P P p P 1 p 0 . 9 0 . 6 0 . 1 0 . 4 0 . 58 1 , 2 0 , 1 o 1 1 , o 3 3 Continuous Inverse Ranking Queries in Uncertain Streams 10
Initial Computation (3) DATABASE SYSTEMS GROUP • Example: n = 4, k = 2, j = 4 1 = 2 = 3 = 4 = t t t t = 0 . 1 0 1 p p p 0 . 6 p t C 1 o o o o ( ) = ⋅ + ⋅ − = ⋅ + ⋅ = • j = 1: t t t t t 1 0 0 . 1 1 0 . 9 0 . 9 P P p P p − 0 , 1 1 , 0 o 0 , 0 o 1 1 ( ) = ⋅ + ⋅ − = ⋅ + ⋅ = t t t t t P P p P 1 p 1 0 . 1 0 0 . 9 0 . 1 1 , 1 0 , 0 o 1 , 0 o 1 1 ( ) = ⋅ + ⋅ − = ⋅ + ⋅ = • j = 3: t t t t t P P p P 1 p 0 0 . 6 0 . 9 0 . 4 0 . 36 − 0 , 2 1 , 1 o 0 , 1 o 3 3 ( ) = ⋅ + ⋅ − = ⋅ + ⋅ = t t t t t P P p P 1 p 0 . 9 0 . 6 0 . 1 0 . 4 0 . 58 1 , 2 0 , 1 o 1 , 1 o 3 3 Continuous Inverse Ranking Queries in Uncertain Streams 11
Initial Computation (3) DATABASE SYSTEMS GROUP • Example: n = 4, k = 2 1 = 2 = 3 = 4 = t t t t = 0 . 1 0 1 p p p 0 . 6 p t C 1 o o o o ( ) = ⋅ + ⋅ − = ⋅ + ⋅ = • j = 1: t t t t t 1 0 0 . 1 1 0 . 9 0 . 9 P P p P p − 0 , 1 1 , 0 o 0 , 0 o 1 1 ( ) = ⋅ + ⋅ − = ⋅ + ⋅ = t t t t t P P p P 1 p 1 0 . 1 0 0 . 9 0 . 1 1 , 1 0 , 0 o 1 , 0 o 1 1 ( ) ( ) = ⋅ + ⋅ − = ⋅ + ⋅ = = • j = 3: t t t t t t P P p P 1 p 0 0 . 6 0 . 9 0 . 4 0 . 36 P 0 − 0 , 2 1 , 1 o 0 , 1 o PBR 3 3 ( ) ( ) = ⋅ + ⋅ − = ⋅ + ⋅ = = t t t t t t P P p P 1 p 0 . 9 0 . 6 0 . 1 0 . 4 0 . 58 P 1 1 , 2 0 , 1 o 1 , 1 o PBR 3 3 ( ) ( ) ( ) = − − = − = • Initial PIR result: t t t P 1 P 1 1 1 P 1 0 q PBR PBR ( ) ( ) ( ) = − − = = t t t P 2 P 2 1 1 P 0 0 . 36 q PBR PBR Continuous Inverse Ranking Queries in Uncertain Streams 12
Incremental Processing (1) DATABASE SYSTEMS GROUP • Location update of one alternative location of object o : ( ) ∀ i = 1,..., k compute P t i q • Naive solution: Apply PBR ⇒ O( n ) ∀ i = 1,..., k • Enhanced solution: just consider update of o ⇒ O( 1 ) ∀ i = 1,..., k – Phase 1 t ∀ i = 0,..., k-1 • Remove effect of old value from p P t ( i ) o PBR 1 i + ˆ P t • Obtain intermediate result ( ) PBR – Phase 2 + 1 i + ˆ t 1 • Incorporate effect of new value in P t p ( ) o PBR 1 i + • Obtain new PIR result P t ( ) q Continuous Inverse Ranking Queries in Uncertain Streams 13
Incremental Processing (2) DATABASE SYSTEMS GROUP • Phase 1: Three cases ( ) ( ) = = ˆ t ⇒ t t 1. 0 P i P i p o PBR PBR ( ) ( ) = = + = − ˆ t ⇒ t t t 1 t 2. and p 1 P i P i C C 1 o PBR PBR ( ) < < ⇒ remove t t P t 3. from 0 p 1 p i o o PBR ( ) ( ) ( ) ( ) = − ⋅ + ⋅ − ˆ ˆ t t t t t P i P i 1 p P i 1 p PBR PBR o PBR o ( ) ( ) − − ⋅ ˆ t t t ( ) P i P i 1 p = ˆ t PBR PBR o P i − PBR t 1 p o ( ) t ( ) P 0 = 1 ˆ t PBR P 0 − PBR t p o Continuous Inverse Ranking Queries in Uncertain Streams 14
Recommend
More recommend