Algoritmo de deduplicação de dados para um grande número de contactos

estou a desenvolver uma aplicação que deve ser capaz de encontrar e juntar duplicados em centenas de milhares de inform ... Smith = Smyth (Phonetic sound the same) 123 Main st = 123 Main street (abbrevation) Bob Smith = Robert Smith (synonym)