データベースを検索して、メールアドレス間の類似点を見つける方法を探しています。私ができる唯一の解決策はO(N ^ 2)であり、ネストされたループが含まれます。基本的にメールアドレスを取得し、それを残りのアドレスと何度も確認します。データベースで100,000の電子メールアドレスを処理しているため、これは非常に時間がかかります。違いが生じる場合、これはRubyonRailsアプリのバックグラウンドジョブとして実装されます。
これを行う方法はありますか?
私は本当に基本的な類似点だけを探しています。例は
docjohnson@gmail.com
docjohnson1@gmail.com
docjohnson333@gmail.com
docjohnson@hotmail.com
私はそれらすべてが互いに類似しているとマークされていることを望みます。
助けてくれてありがとう!
編集:ゲームがまったく変わる場合は、Mongoidを介してRORに接続されたMongoデータベースを使用しています。