2011年5月3日火曜日

顧客データのデータマッチング方法テクニック

実務でよくある問題に顧客情報のマッチングがあります。例えば、データウェアハウスの構築をした際に複数の業務システムで顧客を管理しており、それを1つのマスターデータとしてデータウェアハウスで管理したい、などです。ほかにも単純にAのデータとBのデータをマッチングしたいという要望もあるかもしれません。

この辺のデータマッチングやクレンジング機能は欧米で発達しました。欧米は英語圏なので日本語の漢字などの問題が非常に少ないので比較的単純にできます。その点、日本語は漢字、全角、半角の問題などあって非常に厄介ですよね。

今回は、簡単にできる顧客データマッチングの方法を紹介したいと思います。

通常データマッチングは、データのクレンジング(フォーマットの統一、全角/半角の統一、漢数字の数字変換など)→データマッチングの順で行います。今回はデータマッチングの部分に的を絞って記載します。

顧客マッチングで利用するデータと言えば、顧客名、住所(郵便番号を含む)、電話番号です。まずはこれをクレンジングします。そのあとのマッチングですが、単純に完全一致にしたり、マッチング条件を緩くしすぎるとマッチング精度に問題ができます。そこで利用するのが、じょじょにマッチング要件を緩くしていく方法です。例えば、AデータとBデータがあったとします。まず、顧客名、住所、電話番号の完全一致でマッチングします。そして、マッチングしなかったAデータとBデータを抽出して今度は、少し緩い条件、例えば、顧客名部分一致、住所、電話番号などにします。そしてその後はさらにマッチングしなかったデータをどんどん条件を緩くしてマッチングしてきます。

この方法であれば、マッチング精度が高いものからマッチングしていくので精度も高くなります。また、実際の方法ですが、Accessを利用して、SQLでマッチングしていけば簡単にできます。マッチングしなかったデータはLEFT JOINやRIGHT JOINでNULLの情報を指定することで抽出できます。

0 件のコメント:

コメントを投稿