Automatically merging relational data
I'm interested in whether merging relational data has been researched, and what the findings have been.


Here are several papers mainly on the tree-to-tree editing problem. A lot of good stuff is related to XML documents.


Diffing, Patching and Merging XML Documents
The tree-to-tree editing problem
The Tree-to-Tree Correction Problem
Simple Fast Algorithms for the Editing Distance between Trees and Related Problems
Change Detection in Hierarchically Structured Information
Efficient Snapshot Differential Algorithms for Data Warehousing
Detecting Changes in XML Documents
Meaningful Change Detection in Structured Data


A record in a database can be considered a simple tree of just a single row of children (the fields) or perhaps extending to the relations the record points to. With that you can do tree diffing/merging using the techniques outlined in these papers, and adding to it any column-specific string diffing techniques.

You could then add extra database-specific heuristics to the diffing system to make it more useful. For example, you have the extra metadata of the schema of the database, which provides a lot of information.