1

ユーザー提供の住所データを住所参照データセットと照合しようとしています。両方のデータセットにインデックスを付け、インデックス付きフィールドに結合したいと考えています。WHERE REF_ADDR = INPUT_ADDR完全な世界では、これは完全なアドレスからなるキーを使用します (たとえば、100 W Main St, Springfield, OH 45502 = 100 W Main St, Springfield, OH 45502)。もちろん、住所が完全であることはめったにないため、ファジー ロジックを使用して違いに対応できるスクリプトを用意しています。ただし、このスクリプトは非常に遅いため、使用する前に照合プロセスを試行する参照データセットからの候補の数を減らしたいと考えています。すべての潜在的な候補を見つけるために、結合に使用される個々の住所コンポーネントから派生したインデックス付きキーを作成するつもりです。問題は、1 つのキーだけではすべての候補を取得できないことです。すべての候補を取得するには、複数のインデックス付きキーを作成する必要があるでしょう。

たとえば、100 WMNST 455for addressの形式のインデックス付きキーは100 W Main St, Springfield, OH 45502ほとんどの場合適切ですが、そのようなキーでは検出されないアドレス エラーがいくらでも発生する可能性があります。マッチング プロセスで認識される可能性のあるすべてのエラーに対応するには、結合用に少なくともいくつかのインデックス付きキーを実装する必要があります。

この問題を処理するための推奨事項があるかどうか疑問に思っています。参照データセットは 4,000 万レコードで構成され、ユーザー提供の住所データは通常、約 10,000 レコードです。私が提案している方法とは対照的に、単純に住所フィールドでLIKEandクエリを使用する方が効果的でしょうか? OR後者のデータセット内で次のバリエーションに遭遇することは珍しくありません (スクリプトによって調整されます)。

Address: 100 W MAIN
City: 
Zip: 45502

Address: 100 MAIN ST
City: SPNGFLD
Zip:

Address: 100 W MAIN STREET
City: SPRINGFIELD
Zip: 54502

Address: 100 MAIN
City: NORTHRIDGE
Zip: 45502
4

1 に答える 1