Generic Entity Resolution Identifying RealWorld Entities in Large

  • Slides: 87
Download presentation
Generic Entity Resolution: Identifying Real-World Entities in Large Data Sets Steven Whang Stanford University

Generic Entity Resolution: Identifying Real-World Entities in Large Data Sets Steven Whang Stanford University Work with: Hector Garcia-Molina, David Menestrina, Omar Benjelloun, Qi Su, Jennifer Widom, Tyson Condie, Nicolas Pombourcq, Tait Larson, Johnson Gong, Makoto Tachibana, Sutthipong Thavisomboon, Georgia Koutrika, Martin Theobald

Entity Resolution e 2 e 1 N: a A: b CC#: c Ph: e

Entity Resolution e 2 e 1 N: a A: b CC#: c Ph: e N: a Exp: d Ph: e 2

Applications • comparison shopping e 1 • mailing lists • classified ads N: a

Applications • comparison shopping e 1 • mailing lists • classified ads N: a A: b • customer files CC#: c Ph: e e 2 • counter-terrorism N: a Exp: d Ph: e 3

Outline • Why is ER challenging? • How is ER done? • Some ER

Outline • Why is ER challenging? • How is ER done? • Some ER work at Stanford – Generic ER – Distributed ER – Iterative Blocking 4

Challenges (1) • No keys! • Value matching – “Kaddafi”, “Qaddafi”, “Kaddaffi”. . .

Challenges (1) • No keys! • Value matching – “Kaddafi”, “Qaddafi”, “Kaddaffi”. . . • Record matching Nm: Tom Ad: 123 Main St Ph: (650) 555 -1212 Ph: (650) 777 -7777 Nm: Thomas Ad: 132 Main St Ph: (650) 555 -1212 5

Challenges (2) • Merging records Nm: Tom Ad: 123 Main St Ph: (650) 555

Challenges (2) • Merging records Nm: Tom Ad: 123 Main St Ph: (650) 555 -1212 Ph: (650) 777 -7777 Nm: Thomas Ad: 132 Main St Ph: (650) 555 -1212 Zp: 94305 Nm: Tom Nm: Thomas Ad: 123 Main St Ph: (650) 555 -1212 Ph: (650) 777 -7777 Zp: 94305 6

Challenges (3) • Chaining Nm: Tom Ad: 123 Main BD: Jan 1, 85 Wk:

Challenges (3) • Chaining Nm: Tom Ad: 123 Main BD: Jan 1, 85 Wk: IBM Oc: lawyer Nm: Thomas Ad: 123 Maim Oc: lawyer Nm: Tom Wk: IBM Oc: laywer Sal: 500 K Nm: Tom Ad: 123 Main BD: Jan 1, 85 Wk: IBM Oc: lawyer Sal: 500 K 7

Challenges (4) • Un-merging Nm: Tom Ad: 123 Main BD: Jan 1, 85 Wk:

Challenges (4) • Un-merging Nm: Tom Ad: 123 Main BD: Jan 1, 85 Wk: IBM Oc: lawyer Sal: 500 K too young to make 500 K at IBM!! 8

Challenges (5) • Confidences in data (0. 8) Nm: Tom (0. 9) Ad: 123

Challenges (5) • Confidences in data (0. 8) Nm: Tom (0. 9) Ad: 123 Main St (1. 0) Ph: (650) 555 -1212 (0. 6) Ph: (650) 777 -7777 (0. 8) • In value matching, match rules, merge: conf = ? 9

Taxonomy • Pairwise snaps vs. clustering • De-duplication vs. fidelity enhancement • Schema differences

Taxonomy • Pairwise snaps vs. clustering • De-duplication vs. fidelity enhancement • Schema differences • Relationships • Exact vs. approximate • Generic vs application specific • Confidences 10

Schema Differences Name: Tom Address: 123 Main St Ph: (650) 555 -1212 Ph: (650)

Schema Differences Name: Tom Address: 123 Main St Ph: (650) 555 -1212 Ph: (650) 777 -7777 First. Name: Tom Street. Name: Main St Street. Number: 123 Tel: (650) 777 -7777 11

Pair-Wise Snaps vs. Clustering r 1 r 2 s 7 r 5 r 2

Pair-Wise Snaps vs. Clustering r 1 r 2 s 7 r 5 r 2 s 9 r 3 r 4 r 1 r 8 s 10 s 8 r 7 r 3 r 9 r 10 r 4 r 5 r 6 12

De-Duplication vs. Fidelity Enhancement B R S S N 13

De-Duplication vs. Fidelity Enhancement B R S S N 13

Relationships authors same? ? papers a 1 p 1 a 2 p 2 a

Relationships authors same? ? papers a 1 p 1 a 2 p 2 a 3 p 5 a 4 p 7 a 5 14

Exact vs Approximate ER cameras CDs ER resolved cameras ER resolved CDs ER resolved

Exact vs Approximate ER cameras CDs ER resolved cameras ER resolved CDs ER resolved books products books . . . 15

Generic vs Application Specific • Match function M(r, s) • Merge function <r, s>

Generic vs Application Specific • Match function M(r, s) • Merge function <r, s> => t 16

Taxonomy • Pairwise snaps vs. clustering • De-duplication vs. fidelity enhancement • Schema differences

Taxonomy • Pairwise snaps vs. clustering • De-duplication vs. fidelity enhancement • Schema differences • Relationships • Exact vs. approximate • Generic vs application specific • Confidences 17

Outline • Why is ER challenging? • How is ER done? • Some ER

Outline • Why is ER challenging? • How is ER done? • Some ER work at Stanford – Generic ER – Distributed ER – Iterative Blocking 18

Taxonomy • Pairwise snaps vs. clustering • De-duplication vs. fidelity enhancement • Schema differences

Taxonomy • Pairwise snaps vs. clustering • De-duplication vs. fidelity enhancement • Schema differences No • Relationships No • Exact vs. approximate • Generic vs application specific • Confidences No 19

Model r 1 Nm: Tom r 2 Ad: 123 Main BD: Jan 1, 85

Model r 1 Nm: Tom r 2 Ad: 123 Main BD: Jan 1, 85 Wk: IBM Nm: Thomas Ad: 123 Maim Oc: lawyer M(r 1, r 2) Nm: Tom Ad: 123 Main BD: Jan 1, 85 Wk: IBM Oc: lawyer r 4: <r 1, r 2> r 3 Nm: Tom Wk: IBM Oc: laywer Sal: 500 K M(r 4, r 3) Nm: Tom Ad: 123 Main BD: Jan 1, 85 Wk: IBM Oc: lawyer Sal: 500 K <r 4, r 3> 20

Correct Answer r 1 r 2 s 7 s 9 r 3 r 4

Correct Answer r 1 r 2 s 7 s 9 r 3 r 4 ER(R) = All derivable records. . . s 10 Minus “dominated” records s 8 r 5 r 6 21

Question • What is best sequence of match, merge calls that give us right

Question • What is best sequence of match, merge calls that give us right answer? 22

Brute Force Algorithm • Input R: – r 1 = [a: 1, b: 2]

Brute Force Algorithm • Input R: – r 1 = [a: 1, b: 2] – r 2 = [a: 1, c: 4, e: 5] – r 3 = [b: 2, c: 4, f: 6] – r 4 = [a: 7, e: 5, f: 6] 23

Brute Force Algorithm • Input R: • Match all pairs: – r 1 =

Brute Force Algorithm • Input R: • Match all pairs: – r 1 = [a: 1, b: 2] – r 2 = [a: 1, c: 4, e: 5] – r 3 = [b: 2, c: 4, f: 6] – r 4 = [a: 7, e: 5, f: 6] – r 12 = [a: 1, b: 2, c: 4, e: 5] 24

Brute Force Algorithm • Match all pairs: • Repeat: – r 1 = [a:

Brute Force Algorithm • Match all pairs: • Repeat: – r 1 = [a: 1, b: 2] – r 2 = [a: 1, c: 4, e: 5] – r 3 = [b: 2, c: 4, f: 6] – r 4 = [a: 7, e: 5, f: 6] – r 12 = [a: 1, b: 2, c: 4, e: 5] – r 123 = [a: 1, b: 2, c: 4, e: 5, f: 6] 25

Question # 1 Can we avoid comparisons? 26

Question # 1 Can we avoid comparisons? 26

Question # 2 Can we delete r 1, r 2? 27

Question # 2 Can we delete r 1, r 2? 27

ICAR Properties • Idempotence: – M(r 1, r 1) = true; <r 1, r

ICAR Properties • Idempotence: – M(r 1, r 1) = true; <r 1, r 1> = r 1 • Commutativity: – M(r 1, r 2) = M(r 2, r 1) – <r 1, r 2> = <r 2, r 1> • Associativity – <r 1, <r 2, r 3>> = <<r 1, r 2>, r 3> 28

More Properties • Representativity – If <r 1, r 2> = r 3, then

More Properties • Representativity – If <r 1, r 2> = r 3, then for any r 4 such that M(r 1, r 4) is true we also have M(r 3, r 4) = true. r 4 r 1 r 3 r 2 29

ICAR Properties Efficiency • Commutativity • Idempotence • Associativity • Representativity • Can discard

ICAR Properties Efficiency • Commutativity • Idempotence • Associativity • Representativity • Can discard records • ER result independent of processing order 30

Swoosh Algorithms • R-Swoosh • Merges records as soon as they match • Optimal

Swoosh Algorithms • R-Swoosh • Merges records as soon as they match • Optimal in terms of record comparisons • F-Swoosh • Remembers values seen for each feature • Avoids redundant value comparisons 31

R-Swoosh R r 1 r 2 r 3 R’ M(r 1, r 2)=true M(r

R-Swoosh R r 1 r 2 r 3 R’ M(r 1, r 2)=true M(r 12, r 3)=true r 4 32

R-Swoosh R r 2 r 3 r 4 R’ r 1 M(r 1, r

R-Swoosh R r 2 r 3 r 4 R’ r 1 M(r 1, r 2)=true M(r 12, r 3)=true 33

R-Swoosh R r 12 r 3 r 4 R’ M(r 1, r 2)=true M(r

R-Swoosh R r 12 r 3 r 4 R’ M(r 1, r 2)=true M(r 12, r 3)=true 34

R-Swoosh R r 3 r 4 R’ r 12 M(r 1, r 2)=true M(r

R-Swoosh R r 3 r 4 R’ r 12 M(r 1, r 2)=true M(r 12, r 3)=true 35

R-Swoosh R r 123 r 4 R’ M(r 1, r 2)=true M(r 12, r

R-Swoosh R r 123 r 4 R’ M(r 1, r 2)=true M(r 12, r 3)=true 36

R-Swoosh R r 4 R’ r 123 M(r 1, r 2)=true M(r 12, r

R-Swoosh R r 4 R’ r 123 M(r 1, r 2)=true M(r 12, r 3)=true 37

R-Swoosh R R’ r 123 r 4 M(r 1, r 2)=true M(r 12, r

R-Swoosh R R’ r 123 r 4 M(r 1, r 2)=true M(r 12, r 3)=true 38

Scalability R-Swoosh G-Swoosh F-Swoosh 39

Scalability R-Swoosh G-Swoosh F-Swoosh 39

If ICAR Properties Do Not Hold? r 12: [Joe Sr. , 123 Main, Ph:

If ICAR Properties Do Not Hold? r 12: [Joe Sr. , 123 Main, Ph: 123, DL: X] r 23: [Joe Jr. , 123 Main, Ph: 123, DL: Y] r 1: [Joe Sr. , 123 Main, DL: X] r 3: [Joe Jr. , 123 Main, DL: Y] r 2: [Joe, 123 Main, Ph: 123] 40

If ICAR Properties Do Not Hold? r 12: [Joe Sr. , 123 Main, Ph:

If ICAR Properties Do Not Hold? r 12: [Joe Sr. , 123 Main, Ph: 123, DL: X] r 23: [Joe Jr. , 123 Main, Ph: 123, DL: Y] r 1: [Joe Sr. , 123 Main, DL: X] r 3: [Joe Jr. , 123 Main, DL: Y] r 2: [Joe, 123 Main, Ph: 123] Full Answer: ER(R) = {r 12, r 23, r 1, r 2, r 3} Minus Dominated: ER(R) = {r 12, r 23} 41

If ICAR Properties Do Not Hold? r 12: [Joe Sr. , 123 Main, Ph:

If ICAR Properties Do Not Hold? r 12: [Joe Sr. , 123 Main, Ph: 123, DL: X] r 23: [Joe Jr. , 123 Main, Ph: 123, DL: Y] r 1: [Joe Sr. , 123 Main, DL: X] r 3: [Joe Jr. , 123 Main, DL: Y] r 2: [Joe, 123 Main, Ph: 123] Full Answer: ER(R) = {r 12, r 23, r 1, r 2, r 3} Minus Dominated: ER(R) = {r 12, r 23} R-Swoosh Yields: ER(R) = {r 12, r 3} or {r 1, r 23} 42

Swoosh Without ICAR Properties G-Swoosh in R-Swoosh in G-Swoosh 43

Swoosh Without ICAR Properties G-Swoosh in R-Swoosh in G-Swoosh 43

Generic ER Summary • Entity resolution is critical • Generic approach yields reusable techniques

Generic ER Summary • Entity resolution is critical • Generic approach yields reusable techniques • Efficient resolution is important 44

Outline • Why is ER challenging? • How is ER done? • Some ER

Outline • Why is ER challenging? • How is ER done? • Some ER work at Stanford – Generic ER – Distributed ER – Iterative Blocking 45

Partition Input Data R 1 r 2 R'1 R 2 r 3 r 4

Partition Input Data R 1 r 2 R'1 R 2 r 3 r 4 R'2 R 3 R'3 r 5 r 6 46

Partition Input Data R 1 R'1 r 2 R 2 R'2 <r 3, r

Partition Input Data R 1 R'1 r 2 R 2 R'2 <r 3, r 4> R 3 R'3 r 5 r 6 47

Partition Input Data R 1 R'1 r 2 R 2 R'2 <r 3, r

Partition Input Data R 1 R'1 r 2 R 2 R'2 <r 3, r 4> R 3 R'3 r 5 r 6 ? 48

Partition Input Data R 1 r 4 r 2 r 5 r 3 r

Partition Input Data R 1 r 4 r 2 r 5 r 3 r 6 R'1 R 2 r 1 r 4 r 2 r 5 r 3 r 6 R'2 R 3 R'3 r 1 r 4 r 2 r 5 r 3 r 6 49

Partition Input Data R 1 R'1 r 1 <r 3, r 4> <r 2,

Partition Input Data R 1 R'1 r 1 <r 3, r 4> <r 2, r 5> r 6 R 2 R'2 r 1 <r 3, r 4> <r 2, r 5> r 6 R 3 R'3 r 1 <r 3, r 4> <r 2, r 5> r 6 50

Partition Input Data R 1 R'1 R 2 r 1 <r 3, r 4>

Partition Input Data R 1 R'1 R 2 r 1 <r 3, r 4> <r 2, r 5> r 6 R'2 R 3 r 1 <r 3, r 4> <r 2, r 5> r 6 R'3 r 1 <r 3, r 4> <r 2, r 5> r 6 Redundant work! 51

Scope and Responsible • scope(r) – Returns list of processors that receive r •

Scope and Responsible • scope(r) – Returns list of processors that receive r • resp(pk, ri, rj) – true if processor pk should perform comparison of ri and rj Coverage property: For any pair of matching records r, r', there exists at least one processor Pk such that Pk ∈ scope(r)∩scope(r') and resp(Pk, r, r') = true. 52

D-Swoosh R 1 r 3 r 4 r 6 R'1 R 2 r 1

D-Swoosh R 1 r 3 r 4 r 6 R'1 R 2 r 1 r 2 r 4 r 5 R'2 R 3 R'3 r 2 r 3 r 5 r 6 53

D-Swoosh R 1 r 3 r 4 r 6 R'1 R 2 r 1

D-Swoosh R 1 r 3 r 4 r 6 R'1 R 2 r 1 r 2 r 4 r 5 R'2 R 3 R'3 r 2 r 3 r 5 r 6 54

D-Swoosh R 1 R'1 R 2 r 1 r 3 r 4 r 6

D-Swoosh R 1 R'1 R 2 r 1 r 3 r 4 r 6 r 1 r 2 r 4 r 5 R'2 R 3 R'3 r 2 r 3 r 5 r 6 -(r 4) -(r 3) 55

D-Swoosh R 1 R'1 r 3 r 4 r 6 R 2 r 1

D-Swoosh R 1 R'1 r 3 r 4 r 6 R 2 r 1 r 2 r 5 R'2 R 3 R'3 r 2 r 5 r 6 +(<r 3, r 4>) 56

D-Swoosh R 1 r 6 R'1 R 2 r 1 r 2 r 5

D-Swoosh R 1 r 6 R'1 R 2 r 1 r 2 r 5 <r 3, r 4> R'2 R 3 R'3 r 2 r 5 r 6 <r 3, r 4> 57

Defining scope and resp • What are good scope and resp functions? • How

Defining scope and resp • What are good scope and resp functions? • How do different functions compare and scale? • How can we exploit semantic knowledge? 58

Full Replication p 1 p 2 p 3 r 1 r 2 r 3

Full Replication p 1 p 2 p 3 r 1 r 2 r 3 r 4 r 5 r 6 59

Majority p 1 p 2 r 1 r 2 r 3 r 4 r

Majority p 1 p 2 r 1 r 2 r 3 r 4 r 6 r 4 r 5 p 3 r 2 r 3 r 5 r 6 60

Grid B 1 B 2 B 1 p 1 B 2 p 3 B

Grid B 1 B 2 B 1 p 1 B 2 p 3 B 3 p 4 p 5 B 3 p 6 61

Experimental Results Runtime (seconds) Full Replication Majority Grid number of processors 62

Experimental Results Runtime (seconds) Full Replication Majority Grid number of processors 62

Distributed ER Summary • Entity Resolution is fundamentally expensive • Reduce processing time by:

Distributed ER Summary • Entity Resolution is fundamentally expensive • Reduce processing time by: – Distributing data – Eliminating redundant work • ER benefits greatly from distributed computing 63

Outline • Why is ER challenging? • How is ER done? • Some ER

Outline • Why is ER challenging? • How is ER done? • Some ER work at Stanford – Generic ER – Distributed ER – Iterative Blocking 64

Entity Resolution Record Name Zip Email r 1 John Doe 12345 jdoe@yahoo r 2

Entity Resolution Record Name Zip Email r 1 John Doe 12345 jdoe@yahoo r 2 John Doe 94305 r 3 J. Foe 94305 jdoe@yahoo 65

Entity Resolution Record Name Zip Email r 1 John Doe 12345 jdoe@yahoo r 2

Entity Resolution Record Name Zip Email r 1 John Doe 12345 jdoe@yahoo r 2 John Doe 94305 r 3 J. Foe 94305 jdoe@yahoo {12345, 94305} jdoe@yahoo r 12 John Doe r 12 r 1 r 2 r 3 66

Entity Resolution Record Name Zip Email r 1 John Doe 12345 jdoe@yahoo r 2

Entity Resolution Record Name Zip Email r 1 John Doe 12345 jdoe@yahoo r 2 John Doe 94305 r 3 J. Foe 94305 r 12 John Doe {12345, 94305} r 123 {John Doe, J. Foe} {12345, 94305} jdoe@yahoo r 123 r 12 r 1 r 2 r 3 67

Entity Resolution Record Name Zip Email r 1 John Doe 12345 jdoe@yahoo r 2

Entity Resolution Record Name Zip Email r 1 John Doe 12345 jdoe@yahoo r 2 John Doe 94305 r 3 J. Foe 94305 r 12 John Doe {12345, 94305} r 123 {John Doe, J. Foe} {12345, 94305} jdoe@yahoo r 123 r 12 r 1 r 2 r 3 ER Solution: {r 123} 68

Blocking Record Name Zip Email r 1 John Doe 12345 jdoe@yahoo r 2 John

Blocking Record Name Zip Email r 1 John Doe 12345 jdoe@yahoo r 2 John Doe 94305 r 3 J. Foe 94305 jdoe@yahoo r 123 Partition by Block#1 Block#2 zip r 12 r 2 , r 3 r 1 r 2 r 3 69

Blocking Record Name Zip Email r 1 John Doe 12345 jdoe@yahoo r 2 John

Blocking Record Name Zip Email r 1 John Doe 12345 jdoe@yahoo r 2 John Doe 94305 r 3 J. Foe 94305 jdoe@yahoo r 123 Partition by Block#1 Block#2 zip r 1 1 st char last name r 1 , r 2 r 12 r 2 , r 3 r 1 r 2 r 3 70

Blocking Record Name Zip Email r 1 John Doe 12345 jdoe@yahoo r 2 John

Blocking Record Name Zip Email r 1 John Doe 12345 jdoe@yahoo r 2 John Doe 94305 r 3 J. Foe 94305 jdoe@yahoo r 123 Partition by Block#1 Block#2 zip r 1 1 st char last name r 12 r 2 , r 3 r 1 r 2 r 3 71

Blocking Record Name Zip Email r 1 John Doe 12345 jdoe@yahoo r 2 John

Blocking Record Name Zip Email r 1 John Doe 12345 jdoe@yahoo r 2 John Doe 94305 r 3 J. Foe 94305 jdoe@yahoo r 123 Partition by Block#1 Block#2 zip r 1 1 st char last name r 12 r 2 , r 3 r 1 r 2 r 3 Blocking Solution: {r 12, r 3} 72

Iterative Blocking Record Name Zip Email r 1 John Doe 12345 jdoe@yahoo r 2

Iterative Blocking Record Name Zip Email r 1 John Doe 12345 jdoe@yahoo r 2 John Doe 94305 r 3 J. Foe 94305 jdoe@yahoo r 123 Partition by Block#1 Block#2 zip r 1 1 st char last name r 1 , r 2 r 12 r 2 , r 3 r 1 r 2 r 3 73

Iterative Blocking Record Name Zip Email r 1 John Doe 12345 jdoe@yahoo r 2

Iterative Blocking Record Name Zip Email r 1 John Doe 12345 jdoe@yahoo r 2 John Doe 94305 r 3 J. Foe 94305 jdoe@yahoo r 123 Partition by Block#1 Block#2 zip r 1 1 st char last name r 12 r 2 , r 3 r 1 r 2 r 3 74

Iterative Blocking Record Name Zip Email r 1 John Doe 12345 jdoe@yahoo r 2

Iterative Blocking Record Name Zip Email r 1 John Doe 12345 jdoe@yahoo r 2 John Doe 94305 r 3 J. Foe 94305 jdoe@yahoo r 123 Partition by Block#1 Block#2 zip r 1 , r 12 1 st char last name r 12 r 2 , r 3, r 12 r 3 r 1 r 2 r 3 75

Iterative Blocking Record Name Zip Email r 1 John Doe 12345 jdoe@yahoo r 2

Iterative Blocking Record Name Zip Email r 1 John Doe 12345 jdoe@yahoo r 2 John Doe 94305 r 3 J. Foe 94305 jdoe@yahoo r 123 Partition by Block#1 Block#2 zip r 12 1 st char last name r 123 r 1 r 2 r 3 76

Iterative Blocking Record Name Zip Email r 1 John Doe 12345 jdoe@yahoo r 2

Iterative Blocking Record Name Zip Email r 1 John Doe 12345 jdoe@yahoo r 2 John Doe 94305 r 3 J. Foe 94305 jdoe@yahoo r 123 Partition by Block#1 Block#2 zip r 123 1 st char last name r 123 r 12 r 1 r 2 r 3 77

Iterative Blocking Record Name Zip Email r 1 John Doe 12345 jdoe@yahoo r 2

Iterative Blocking Record Name Zip Email r 1 John Doe 12345 jdoe@yahoo r 2 John Doe 94305 r 3 J. Foe 94305 jdoe@yahoo r 123 Partition by Block#1 Block#2 zip r 123 1 st char last name r 123 r 12 r 1 r 2 r 3 Iterative Blocking Solution: {r 123} 78

Overview • Model • Algorithms • Experimental Results 79

Overview • Model • Algorithms • Experimental Results 79

Iterative Blocking Model • Result is the fixed-point state of applying a “core” ER

Iterative Blocking Model • Result is the fixed-point state of applying a “core” ER algorithm on blocks and redistributing new records • Can plug in any core ER algorithm that partitions records 80

In-memory Algorithm (Lego) • Maintains “maximal records” for efficient block updates • Maintains a

In-memory Algorithm (Lego) • Maintains “maximal records” for efficient block updates • Maintains a queue of blocks to process 81

Disk-based Algorithm (Duplo) • Reads into memory and processes “N blocks at a time”

Disk-based Algorithm (Duplo) • Reads into memory and processes “N blocks at a time” using segments • Maintains a queue of segments to process • Updates segments by scanning a merge log on disk • Uses timestamps to avoid a full scan for each segment read 82

Accuracy Iterative Blocking 83

Accuracy Iterative Blocking 83

Performance Exhaustive Solution Iterative Blocking 84

Performance Exhaustive Solution Iterative Blocking 84

Scalability Iterative Blocking (merge log in memory) 85

Scalability Iterative Blocking (merge log in memory) 85

Iterative Blocking Summary • Proposed model & efficient algorithms (inmemory, disk) for iterative blocking

Iterative Blocking Summary • Proposed model & efficient algorithms (inmemory, disk) for iterative blocking • Showed that iterative blocking can be more accurate and scalable than simple blocking 86

ER in the Info. Lab • Generic ER [VLDB J. 09] • Distributed ER

ER in the Info. Lab • Generic ER [VLDB J. 09] • Distributed ER [ICDCS 07] • Iterative Blocking [SIGMOD 09] • Negative Rules [VLDB J. 09] • Confidences [VLDB Clean. DB 06] • Evolving Rules • Joint ER • ER Measures • ER in Probabilistic Databases • Privacy and Information Leakage 87