EmbedJoin: Efficient Edit Similarity Joins via Embeddings
Haoyu Zhang (Indiana University Bloomington);Qin Zhang (Indiana University Bloomington)
We study the problem of edit similarity joins, where given a set of strings and a threshold value $K$, we need to output all the pairs of strings whose edit distances are at most $K$. Edit similarity join is a fundamental operation in numerous applications such as data cleaning/integration, bioinformatics, natural language processing, and has been identified as a primitive operator for database systems. This problem has been studied extensively in the literature. However, we observed that all the existing algorithms fall short on long strings and large distance thresholds. In this paper we propose an algorithm named \ebdjoin\ that scales very well with string length and distance threshold. Our algorithm is built on the recent advance of metric embeddings for edit distance, and is very different from all of the previous approaches. We demonstrate via an extensive set of experiments that \ebdjoin\ significantly outperforms the previous best algorithms on long strings and large distance thresholds. For example, on a collection of 20,000 real-world DNA sequences each of length 20,000 and a distance threshold that is 1\% of the string length (1\% errors), the previous best algorithms that we have tested cannot finish in 10 hours, while \ebdjoin\ finished in less than 6 minutes. Moreover, \ebdjoin\ scales very well up to 20\% errors which is critical in applications such as bioinformatics, and is far beyond the reach of existing algorithms.