как распознать похожие слова с разницей в написании

Я хочу отфильтровать дубликаты имен клиентов из базы данных. Один клиент может иметь более одной записи в системе с тем же именем, но с небольшой разницей в написании. Итак, вот пример: клиент по имени Брук может иметь три записи в системе с этими вариантами:

Брук БертаБрук БертаБирюк Берта

Давайте предположим, что мы помещаем это имя в один столбец базы данных. Я хотел бы знать различные механизмы для выявления таких дубликатов, скажем, 100 000 записей. Мы можем использовать регулярные выражения в C # для итераций по всем записям или каким-либо другим методам сопоставления с образцом, или мы можем экспортировать эти записи в то, что когда-либо наилучшим образом подходит для таких запросов (SQL с возможностями регулярных выражений)).

Это то, что я думал, как решение

Напишите код C # для перебора каждой записиПолучайте только буквы Согласных по порядку (в приведенном выше случае: BrKBrt)Поиск того же паттерна согласных в других записях с учетом похожих звучащих букв, таких как (C, K) (C, S), (F, PH)

Поэтому, пожалуйста, присылайте любые идеи.