I do this on tables with > 1.000.000 records
Something to keep in mind of course, is the number / complexity of indexes.
A possibility is to disable all indexes, remove the duplicates and rebuild the indexes.
Of course, when you have duplicates in your data, the problem is usually the import.
That I try to solve with an LEFT OUTER JOIN on the unique columns.
This way I get idempotence, which is nice