(57)【要約】【課題】異なる表記がされたロケーション情報のうち同じコンテンツを指し示すロケーション情報を効率的に選別する。【解決手段】ログ加工装置３は、複数の通信ログを取得するログ入出力部４と、複数の通信ログのＵＲＬに含まれる変数名とその変数名に割り当てられた変数値とを抽出する変数抽出部１０と、変数名に割り当てられた変数値の割当数と変数値それぞれが割り当てられた変数名を含む各ＵＲＬ情報で特定されるコンテンツにアクセスしたユーザ数の合計値とを算出して、それらの比である唯一性指標を変数名ごとに求め、各変数名を唯一性指標に基づいて複数の通信ログのＵＲＬから削除するか否かを判定する判定部１１と、削除すると判定された変数名を複数の通信ログのＵＲＬから削除して正規化通信ログへと加工する変数削除部１３を備える。【選択図】図４
2010282354.tif 000002
【特許請求の範囲】
【請求項１】
通信網上に格納されているコンテンツにアクセスしたユーザを識別するユーザ識別子と、当該コンテンツの通信網上の格納位置を示すロケーション情報とが対応付けられた通信ログを加工するログ加工装置であって、
前記ロケーション情報のうち変数部を除く真正ロケーション部が一致する複数の通信ログを取得する取得手段と、
前記取得手段で取得された前記複数の通信ログのロケーション情報に含まれる変数名及び当該変数名に割り当てられた変数値を抽出する変数抽出手段と、
前記変数名に割り当てられた変数値の割当数と、前記変数値それぞれが割り当てられた前記変数名を含む各ロケーション情報で特定されるコンテンツにアクセスしたユーザ数の合計値とを算出し、前記変数値の割当数と前記ユーザ数の合計値との比である変数比に基づいて、前記複数の通信ログの前記ロケーション情報から前記変数名を削除するか否かを判定する判定手段と、
前記判定手段で削除すると判定された前記変数名を前記複数の通信ログの前記ロケーション情報から削除して正規化されたロケーション情報を含む複数の通信ログに加工する変数削除手段と、
を備えたことを特徴とするログ加工装置。
【請求項２】
前記変数抽出手段、前記判定手段、及び前記変数削除手段を備えたログ加工手段を複数備えたログ加工装置であって、
前記取得手段で取得された前記真正ロケーション部が一致する前記複数の通信ログを所定の分散基準に基づいて、複数の前記ログ加工手段のうちのいずれか一の前記ログ加工手段に送信する分散手段を、
更に備えたことを特徴とする請求項１に記載のログ加工装置。
【請求項３】
前記取得手段を複数備えたログ加工装置であって、
複数の前記取得手段のうちのいずれか一の前記取得手段で取得された前記真正ロケーション情報部が一致する前記複数の通信ログを所定の再分散基準に基づいて、複数の前記ログ加工手段のうちのいずれか一の前記ログ加工手段に送信する再分散手段を、
更に備えたことを特徴とする請求項２に記載のログ加工装置。
【請求項４】
通信網上に格納されているコンテンツにアクセスしたユーザを識別するユーザ識別子と、当該コンテンツの通信網上の格納位置を示すロケーション情報とが対応付けられた通信ログを蓄積するログ蓄積手段と、請求項１〜３のいずれか一項に記載のログ加工装置とを備えた情報収集装置であって、
前記ログ加工装置は、前記ログ蓄積手段から前記通信ログを取得して、正規化されたロケーション情報を含む複数の通信ログに加工して前記ログ蓄積手段に蓄積させることを特徴とする情報収集装置。
【請求項５】
通信網上に格納されているコンテンツにアクセスしたユーザを識別するユーザ識別子と、当該コンテンツの通信網上の格納位置を示すロケーション情報とが対応付けられた通信ログを加工するログ加工方法であって、
取得手段が、前記ロケーション情報のうち変数部を除く真正ロケーション部が一致する複数の通信ログを取得する取得ステップと、
変数抽出手段が、前記取得ステップで取得された前記複数の通信ログのロケーション情報に含まれる変数名及び当該変数名に割り当てられた変数値を抽出する変数抽出ステップと、
判定手段が、前記変数名に割り当てられた変数値の割当数と、前記変数値それぞれが割り当てられた前記変数名を含む各ロケーション情報で特定されるコンテンツにアクセスしたユーザ数の合計値とを算出し、前記変数値の割当数と前記ユーザ数の合計値との比である変数比に基づいて、前記複数の通信ログの前記ロケーション情報から前記変数名を削除するか否かを判定する判定ステップと、
変数削除手段が、前記判定ステップで削除すると判定された前記変数名を前記複数の通信ログの前記ロケーション情報から削除して正規化されたロケーション情報を含む複数の通信ログに加工する変数削除ステップと、
を含むことを特徴とするログ加工方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ログ加工装置、該ログ加工装置を備えた情報収集装置、及びログ加工方法に関するものである。
【背景技術】
【０００２】
ＰＣや携帯電話システム上からインターネットやイントラネット上の情報を閲覧するシステム（情報通信端末と呼ぶ）がある。この中で特にインターネット上のコンテンツ（情報）を閲覧するシステムとして、ＨＴＭＬ（Hyper Text Markup Language）とＨＴＴＰ（Hyper Text Transfer Protocol）を用いて情報をやりとりする方法がある。これらのシステムでは、ＵＲＩ（UniformResource Identifier）やＵＲＬ（Uniform Resource Locator）と呼ばれるコンテンツの通信網上の位置（ロケーション）を一意に識別する識別子を利用して、サイトと呼ばれるインターネットやイントラネット情報のサーバにアクセスを行い、それらのコンテンツを入手できるようになっている。また、ＨＴＭＬ内にリンクと呼ばれる他のコンテンツへの参照を上記のＵＲＬやＵＲＩを用いて記載することが可能である。これにより、ユーザは、次々と関連コンテンツを参照することが可能となっている。ＵＲＬやＵＲＩは、標準化されており、それらの記述には一定のルールがあるものの、柔軟性の高い記述ルールとなっている（例えば、非特許文献１参照）。
【０００３】
これらのコンテンツの位置を指し示すＵＲＬ（又はＵＲＩ）を用いて、リンク関係を構築しているインターネット上の膨大なコンテンツを効率よく収集する方法として、クローラと呼ばれるコンテンツ収集装置がある（例えば、特許文献１の[背景技術]参照）。これらの装置は、ＵＲＬ（又はＵＲＩ）を用いたリンクの仕組みを用いて、適当な任意のコンテンツをシード（種）として、そこからリンクをたどることによってコンテンツを収集している。そして、収集してきたコンテンツと、そのときのＵＲＬとを保存することによって、コンテンツとコンテンツを示す識別子（ＵＲＬやＵＲＩなどのロケーション情報）との関連付けを行い保存している。
【０００４】
これらの収集してきたコンテンツ及びそのＵＲＬと、様々なユーザによる通信時に生成されるＵＲＬを含む通信ログを照合することにより、そのコンテンツの統計情報の解析を行うことが可能となっている。通信ログは、プロキシサーバと呼ばれる代理中継装置などで管理されることが考えられるが、それらは一般的にユーザを識別する手段（ユーザ認証のためのＩＤやＩＰアドレスなど）を備えている。これらユーザＩＤに個人の属性を関連付けることも可能である。これにより、例えばユーザ毎のコンテンツの趣味嗜好などを解析することや、コンテンツ毎のユーザのアクセス傾向（例えば、上記のユーザ属性毎に集計すれば年齢や性別を元にした統計情報）を知るといった情報解析も可能となる。さらに、このような情報解析を行うことにより、ユーザの好みに合わせたコンテンツの提供や検索結果の提供などを行うことができる（例えば、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００５−１９００６５号公報（[背景技術]）
【特許文献２】特開２００３−２７１６３７号公報
【非特許文献】
【０００６】
【非特許文献１】Network Working Group RFC2616，Section3.2Uniform Resource Identifiers [Online]、[2009年4月20日検索]、インタ−ネット<URL:http://rfc-jp.nic.ad.jp/rfc/rfc2616.txt>
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ところで、上記したようなコンテンツ及びＵＲＬと通信ログとの照合の際、本来的な性質として、ＵＲＬは、一意のコンテンツを指し示すことができる一方、その逆は、必ずしもそうでないという問題があった。すなわち、表記が異なるＵＲＬが同じコンテンツを指し示すことがある。そのため、クローラで収集したコンテンツ及びＵＲＬを、通信ログから収集したＵＲＬと照合しても、本来、同じコンテンツを指し示すＵＲＬであるにも関わらず、両ＵＲＬが一致しないことがあった。これは、ＵＲＬには、そのユーザを識別するためのユーザ識別子（ユーザＩＤ）や、そのセッション（一連の通信をひとまとめにしたもの）を識別するセッション識別子（セッションＩＤ）などを含ませることができることに起因している。つまり、通信ログにおけるＵＲＬがこれら識別子の情報を含んでいる場合、両ＵＲＬは同一とならないが、その一方で両ＵＲＬが指し示すコンテンツは同じであるということがあった。このような場合、同じコンテンツを指し示す異なる表記のＵＲＬから上述したユーザ識別子やセッション識別子に対応する部分を効率的に抽出、削除し、同じコンテンツを指し示すＵＲＬとして選別することが望まれるが、従来、このような選別技術が提供されていなかった。
【０００８】
そこで、本発明は、かかる課題に鑑みて為されたものであり、通信ログにおいて、異なる表記がされたロケーション情報のうち同じコンテンツを指し示すロケーション情報を効率的に選別できるログ加工装置、該ログ加工装置を備えた情報収集装置、及びログ加工方法を提供することを目的とする。
【０００９】
上記課題を解決するため、本発明に係るログ加工装置は、通信網上に格納されているコンテンツにアクセスしたユーザを識別するユーザ識別子と、当該コンテンツの通信網上の格納位置を示すロケーション情報とが対応付けられた通信ログを加工するログ加工装置であって、ロケーション情報のうち変数部を除く真正ロケーション部が一致する複数の通信ログを取得する取得手段と、取得手段で取得された複数の通信ログのロケーション情報に含まれる変数名及び当該変数名に割り当てられた変数値を抽出する変数抽出手段と、変数名に割り当てられた変数値の割当数と、変数値それぞれが割り当てられた変数名を含む各ロケーション情報で特定されるコンテンツにアクセスしたユーザ数の合計値とを算出し、変数値の割当数とユーザ数の合計値との比である変数比に基づいて、複数の通信ログのロケーション情報から変数名を削除するか否かを判定する判定手段と、判定手段で削除すると判定された変数名を複数の通信ログのロケーション情報から削除して正規化されたロケーション情報を含む複数の通信ログに加工する変数削除手段と、を備えたことを特徴としている。
【００１０】
また、本発明に係るログ加工方法は、通信網上に格納されているコンテンツにアクセスしたユーザを識別するユーザ識別子と、当該コンテンツの通信網上の格納位置を示すロケーション情報とが対応付けられた通信ログを加工するログ加工方法であって、取得手段が、ロケーション情報のうち変数部を除く真正ロケーション部が一致する複数の通信ログを取得する取得ステップと、変数抽出手段が、取得ステップで取得された複数の通信ログのロケーション情報に含まれる変数名及び当該変数名に割り当てられた変数値を抽出する変数抽出ステップと、判定手段が、変数名に割り当てられた変数値の割当数と、変数値それぞれが割り当てられた変数名を含む各ロケーション情報で特定されるコンテンツにアクセスしたユーザ数の合計値とを算出し、変数値の割当数とユーザ数の合計値との比である変数比に基づいて、複数の通信ログのロケーション情報から変数名を削除するか否かを判定する判定ステップと、変数削除手段が、判定ステップで削除すると判定された変数名を複数の通信ログのロケーション情報から削除して正規化されたロケーション情報を含む複数の通信ログに加工する変数削除ステップと、を含むことを特徴としている。
【００１１】
このログ加工装置及びログ加工方法によれば、ロケーション情報に含まれる変数名に割り当てられた変数値の割当数と当該変数名を含むロケーション情報で特定されるコンテンツにアクセスしたユーザ数の合計値とを算出し、変数値の割当数とユーザ数の合計値との比である変数比に基づいて複数の通信ログのロケーション情報から変数名を削除するか否かを判定し、削除すると判定された変数名を複数の通信ログのロケーション情報から削除することで、通信ログの正規化を行っている。このため、例えば、ユーザ識別子などがロケーション情報の変数部に記述されている場合、変数値の割当数がユーザ数の合計値と同等以上となる関係を形成する傾向にあるが、削除する変数名を、これらの比である変数比に基づいて判定することで、同じコンテンツを指し示す異なる表記のロケーション情報からユーザ識別子などを容易に抽出することができる。その結果、同じコンテンツを指し示すロケーション情報を効率的に選別することが可能となる。
【００１２】
また、上記ログ加工装置は、変数抽出手段、判定手段、及び変数削除手段を備えたログ加工手段を複数備えたログ加工装置であって、取得手段で取得された真正ロケーション部が一致する複数の通信ログを所定の分散基準に基づいて、複数のログ加工手段のうちのいずれか一のログ加工手段に送信する分散手段を備えることが好ましい。更に、上記ログ加工装置は、取得手段を複数備えたログ加工装置であって、複数の取得手段のうちのいずれか一の取得手段で取得された真正ロケーション情報部が一致する複数の通信ログを所定の再分散基準に基づいて、複数のログ加工手段のうちのいずれか一のログ加工手段に送信する再分散手段を更に備えることが好ましい。このような構成によれば、非常に大きな容量からなる通信ログを効率的に正規化することができる。
【００１３】
また、本発明に係る情報収集装置は、通信網上に格納されているコンテンツにアクセスしたユーザを識別するユーザ識別子と当該コンテンツの通信網上の格納位置を示すロケーション情報とが対応付けられた通信ログを蓄積するログ蓄積手段と、上記いずれかのログ加工装置とを備えた情報収集装置であって、ログ加工装置は、ログ蓄積手段から通信ログを取得して、正規化されたロケーション情報を含む複数の通信ログに加工してログ蓄積手段に蓄積させるようにしてもよい。このような情報収集装置によれば、ログ蓄積手段に蓄積された通信ログにおいて異なる表記がされたロケーション情報のうち、同じコンテンツを指し示すロケーション情報をログ加工装置で効率的に正規化し、これにより、同じコンテンツを指し示すロケーション情報を効率的に選別することが可能となる。
【発明の効果】
【００１４】
本発明によれば、通信ログにおいて、異なる表記がされたロケーション情報のうち同じコンテンツを指し示すロケーション情報を効率的に選別できる。
【図面の簡単な説明】
【００１５】
【図１】本発明の一実施形態にかかるログ加工装置を備えた情報収集装置の構成を示すブロック図である。
【図２】ＵＲＬの構成を模式的に示す図である。
【図３】ログ加工装置のハードウェア構成を示す図である。
【図４】本発明の一実施形態にかかるログ加工装置の機能構成を示すブロック図である。
【図５】ログ加工装置で取得される通信ログ群の一例を示す図である。
【図６】図５に示される通信ログ群に変数削除後ＵＲＬを関連付けた通信ログ群を示す図である。
【図７】図６に示される通信ログ群に含まれるＵＲＬ毎のＵＵ数を算出した算出表である。
【図８】図７に示される算出表のＵＲＬに含まれる各変数名及び変数値、並びにＵＵ数（合計）をまとめた変数表である。
【図９】図８に示される変数表に含まれる変数毎に唯一性指標を示した変数表である。
【図１０】図５に示される通信ログ群に正規化後ＵＲＬを関連付けた通信ログ群を示す図である。
【図１１】図２のログ加工装置で実行されるログ加工方法を示すフローチャートである。
【図１２】ログ加工装置の変形例を示す図である。
【図１３】ログ加工装置の別の変形例を示す図である。
【発明を実施するための形態】
【００１６】
以下、図面を参照して、本発明に係る好適な実施形態について詳細に説明する。なお、図面の説明において、可能な場合には、同一要素には同一符号を付し、重複する説明を省略する。
【００１７】
まず、図１を参照して、本実施形態に係る情報収集装置１の全体構成を説明する。情報収集装置１は、ログ蓄積データベース２（以下「ログ蓄積ＤＢ２」と記す）及びログ加工装置３を備えている。情報収集装置１は、インターネット等の通信網に接続されており（不図示）、ＨＴＴＰによって通信された通信メッセージごとに、ユーザ識別子（ユーザＩＤ）、通信日時（ＤＡＴＥ）及びＵＲＬを一組とした通信ログ（図５参照）を生成して、ログ蓄積ＤＢ２に保存する。通信ログを構成するユーザ識別子は、通信網上に格納されているコンテンツにアクセスしたユーザをそれぞれ識別するための識別子であり、例えば、「０００１」，「０００２」…と表される。また、通信ログを構成するＵＲＬは、ユーザがアクセスしたコンテンツの通信網上の格納位置（アドレス）を示すロケーション情報であり、例えば、「http://aaa.bbb.com/abc.cgi?a=1&b=1」と表される。
【００１８】
このようなＵＲＬは、図２に示されるように、スキーマ部Ｓ（scheme）、ホスト部Ｈ（host）、絶対パス部Ｐ（abs_path）及びクエリ（query）部Ｑなどを含んで構成されている。クエリ部Ｑは、指定したリソースに情報を渡す場合に使われ、変数を記述する部分（変数部）であり、このような変数として、例えば、あるコンテンツにアクセスしたユーザを識別するためのユーザ識別子（ユーザＩＤ）や、そのセッション（一連の通信をひとまとめにしたもの）を識別するセッション識別子（セッションＩＤ）がクエリ部Ｑに記述される。このため、クエリ部Ｑを含むＵＲＬ（「動的ＵＲＬ」ともいう）では、ＵＲＬの内、クエリ部Ｑを除く部分（便宜上、真正ロケーション部と定義する）が一致するなどした場合、全体として表記の異なるＵＲＬであっても、同じコンテンツを指し示すことがある。但し、クエリ部Ｑには、上述した変数とは別の変数が並列して記述される場合もあり、クエリ部ＱをＵＲＬから一律に削除してしまうと、本来のＵＲＬが指し示めしていたコンテンツと異なるコンテンツを指し示すことになってしまう場合がある。
【００１９】
本実施形態にかかる情報収集装置１は、ログ加工装置３を備え、このログ加工装置３で、ログ蓄積ＤＢ２から取得した通信ログ（図５参照）に含まれるＵＲＬから、ユーザ識別子のようなコンテンツのロケーションを示すのに直接関連していない変数のみを効率的に抽出して削除する。ログ加工装置３は、このような変数の削除により、正規化されたＵＲＬを生成し、正規化後ＵＲＬを含む正規化通信ログ（図１０参照）を生成する。ログ加工装置３は、生成した正規化通信ログをログ蓄積ＤＢ２に出力し、ログ蓄積ＤＢ２は、取得した正規化後ＵＲＬを含む正規化通信ログを、元の通信ログに関連づけて保存する（例えば、元の通信ログに上書き保存する）。ログ蓄積ＤＢ２の通信ログとして正規化通信ログが格納されることにより、例えば、クローラ等で収集したコンテンツ及びＵＲＬを、ログ蓄積ＤＢ２に格納されている通信ログのＵＲＬと照合すると、同じコンテンツを指し示すＵＲＬ同士がより一致するようになる。
【００２０】
ログ加工装置３は、図３に示されるように、物理的には、ＣＰＵ３ａ，ＲＡＭ３ｂ及びＲＯＭ３ｃ等の主記憶装置、ログ蓄積ＤＢ２との間でデータの送受信を行うためのネットワークカード等の通信モジュール３ｄ，ハードディスク等の補助記憶装置３ｅなどを含む通常のコンピュータシステムとして構成される。後述するログ加工装置３の各機能は、ＣＰＵ３ａ，ＲＡＭ３ｂ，ＲＯＭ３ｃ等のハードウェア上に所定のコンピュータソフトウェアを読込ませることにより、ＣＰＵ３ａの制御の元で通信モジュール３ｄを動作させると共に、主記憶装置３ｂ，３ｃや補助記憶装置３ｅにおけるデータの読み出し及び書き込みを行うことで実現される。なお、ログ蓄積ＤＢ２や情報収集装置１も同様である。
【００２１】
ログ加工装置３は、図４に示されるように、機能的には、ログ入出力部４（取得手段）及びログ加工部５（ログ加工手段）を備えている。ログ入出力部４は、入力部６（取得手段）、ＵＲＬ全変数削除部７及び出力部８を含んで構成される。入力部６は、ログ蓄積ＤＢ２に蓄積されている多くの通信ログの中から、全ＵＲＬ（ロケーション情報）のうちクエリ部Ｑを除く真正ロケーション部（スキーマ部Ｓ、ホスト部Ｈ及び絶対パス部Ｐ）が一致する複数の通信ログ（以下「通信ログ群」とも記す）を取得する部分である。このような複数の通信ログの例としては、例えば、図５に示されるような通信ログ群がある。入力部６は、このようにして取得した複数の通信ログ（通信ログ群）をＵＲＬ全変数削除部７に出力する。
【００２２】
ＵＲＬ全変数削除部７は、通信ログ群に含まれる通信ログごとに、ＵＲＬからクエリ部Ｑをすべて除いた変数削除後ＵＲＬを生成し、対応する元の通信ログに関連付けて保存する部分である。変数削除後ＵＲＬを含む通信ログの例としては、例えば、図６に示されるような通信ログ群がある。ＵＲＬ全変数削除部７は、このように生成した複数の通信ログをログ加工部５（後述するユニークユーザ計数部９及び変数削除部１３）に出力する。変数削除後ＵＲＬは、ログ加工部５内でログ加工される通信ログ群を識別する指標として用いられる。出力部８は、ログ加工部５で、後述する所定の正規化処理が施された正規化後ＵＲＬを含む正規化通信ログをログ蓄積ＤＢ２に出力して、登録させる。
【００２３】
続いて、ログ加工部５について詳細に説明する。ログ加工部５は、ユニークユーザ計数部９（変数抽出手段）、変数抽出部１０（変数抽出手段）、判定部１１（判定手段）、削除候補ＤＢ１２、及び変数削除部１３（変数削除手段）を含んで構成される。
【００２４】
ユニークユーザ計数部９は、ＵＲＬ全変数削除部７から複数の通信ログの入力を受けると、複数の通信ログのうちクエリ部を含むＵＲＬ全体が一致する同一通信ログごとに、そのＵＲＬ全体で特定されるコンテンツにアクセスしたユーザ数（ユニークユーザ数；ＵＵ数）をそれぞれ算出する部分である。同一通信ログごとにＵＵ数をまとめた例としては、図７に示される算出表がある。ユニークユーザ計数部９は、同一通信ログごとにユーザ数をまとめた算出表を変数抽出部１０に出力する。
【００２５】
変数抽出部１０は、ユニークユーザ計数部９から算出表が入力されると、ユニークユーザ計数部９でユーザ数がそれぞれ算出された同一通信ログの各ＵＲＬに含まれる変数名及びその変数名に割り当てられた変数値を抽出すると共に、ある変数名とその変数名に割り当てられた一の変数値とを少なくとも含むＵＲＬで特定されるコンテンツにアクセスしたユーザ数を算出する部分である。各変数名及び割り当てられた変数値、並びにユーザ数をまとめた例としては、図８に示される変数表がある。図８に示される変数表では、変数名「ａ」に対して４種類の変数値「１」、「２」、「３」、「４」が割り当てられ、変数名「ｂ」に対しては２種類の変数値「１」、「２」が割り当てられ、「ａ＝１」、「ａ＝２」、「ａ＝３」、「ａ＝４」、「ｂ＝１」、「ｂ＝２」をそれぞれ含むＵＲＬで特定される各コンテンツにアクセスしたユーザ数は、それぞれ１人、１人、１人、１人、３人、１人、となっている。変数抽出部１０は、このような変数表のデータを判定部１１に出力する。
【００２６】
判定部１１は、変数抽出部１０から変数表が入力されると、変数抽出部１０で抽出された変数名に割り当てられた変数値の割当数と、変数値それぞれが割り当てられた変数名を含むＵＲＬで特定されるコンテンツにアクセスしたユーザ数の合計値とを変数名ごとに算出し、変数値の割当数とユーザ数の合計値との比である唯一性指標（変数比）を変数ごとに求め、各変数名をその唯一性指標に基づいて複数の通信ログのＵＲＬから削除するか否かを判定する部分である。具体的には、判定部１１は、「（Ａ）変数値の割当数（ある変数名に対して何種類の変数値が割り当てられているかといった割当数）」と、「（Ｂ）変数値それぞれが割り当てられた変数名を含むＵＲＬで特定されるコンテンツにアクセスしたユーザ数の合計値」とを算出し、以下の式（１）より、唯一性指標を算出する。
唯一性指標＝「（Ａ）変数値の割当数」／「（Ｂ）ユーザ数の合計値」・・・（１）
【００２７】
判定部１１で算出される唯一性指標としては、例えば、図９に示されるような変数表に含まれる唯一性指標がある。図９に示される変数表では、上述した式（１）を用いて、変数名「ａ」及び「ｂ」に対する唯一性指標がそれぞれ、「１」及び「０．５」と算出されている。このような唯一性指標は、例えば、ユーザ識別子などがＵＲＬのクエリ部Ｑに記述されている場合、変数値の割当数がユーザ数の合計値と同等以上となる関係を形成する傾向にあることから、そのような場合には「１」以上の値を示す。そこで、判定部１１は、式（１）により算出された、ある変数名に対する唯一性指標を所定の閾値（例えば、０．８）と比較し、唯一性指標が閾値を上回った場合には、その変数名をＵＲＬから削除する削除候補とし、削除候補ＤＢ１２に登録する。図９に示される変数表では、例えば、変数名「ａ」に対する唯一性指標が閾値である０．８を超えており、削除候補として登録される。判定部１１は、ある変数名を削除候補として登録したら、登録した旨の情報を変数削除部１３に出力する。
【００２８】
変数削除部１３は、複数の通信ログの入力をＵＲＬ全変数削除部７から受けると共に、それら複数の通信ログのＵＲＬに含まれる変数を削除候補に登録した旨の情報入力を判定部１１から受けると、両者を指標となる変数削除後ＵＲＬ等を用いて解析し、判定部１１で削除すると判定されて削除候補ＤＢ１２に登録された変数名のみを複数の通信ログに含まれるＵＲＬから削除し、正規化されたＵＲＬを含む正規化通信ログに加工する部分である。このように加工された正規化通信ログとしては、例えば、図１０に示されるように、変数名「ａ」に関する部分のみがクエリ部Ｑから削除された正規化後ＵＲＬが、複数の通信ログに関連付けられたものがある。なお、変数名「ｂ」は、所定の閾値より小さかったため、コンテンツにアクセスしたユーザを識別するためのユーザ識別子（ユーザＩＤ）のような変数ではないと判定部１１で判定され、変数名「ｂ」に関する部分は、本実施形態では、正規化後ＵＲＬから削除されていない。変数削除部１３は、このようにして生成した正規化通信ログをログ入出力部４の出力部８に出力する。
【００２９】
続いて、ログ加工装置３における通信ログの加工方法について、図１１を参照して説明する。
【００３０】
まず、ステップＳ１において、ログ蓄積ＤＢ２に蓄積されている多くの通信ログの中から、全ＵＲＬのうちクエリ部Ｑを除く真正ロケーション部（スキーマ部Ｓ、ホスト部Ｈ及び絶対パス部Ｐ）が一致する複数の通信ログ（ＵＳＥＲ  ＩＤ、日時、ＵＲＬ、図５参照）が入力部６により取得される（取得ステップ）。次に、ステップＳ２において、複数の通信ログに含まれる各通信ログに対し、ＵＲＬ全変数削除部７により、ＵＲＬからクエリ部Ｑをすべて除いた変数削除後ＵＲＬが生成され、対応する元の通信ログに関連付けて保存される（図６参照）。
【００３１】
続いて、変数削除後ＵＲＬが生成されると、ステップＳ３に進み、複数の通信ログのうちクエリ部を含むＵＲＬ全体が一致する同一通信ログごとに、そのＵＲＬ全体で特定されるコンテンツにアクセスしたユーザ数（ＵＵ数）がユニークユーザ計数部９によりそれぞれ算出される（図７参照）。ステップＳ３でユーザ数が算出されると、ステップＳ４に進み、ユニークユーザ計数部９でユーザ数がそれぞれ算出された同一通信ログの各ＵＲＬに含まれる変数名及びその変数値が変数抽出部１０により抽出され（変数抽出ステップ）、ある変数名とその変数名に割り当てられた一の変数値とを少なくとも含むＵＲＬで特定されるコンテンツにアクセスしたユーザ数の合計が、変数抽出部１０により算出される（図８参照）。
【００３２】
続いて、変数名に割り当てられた変数値の割当数と、変数値それぞれが割り当てられた変数名を含むＵＲＬで特定されるコンテンツにアクセスしたユーザ数の合計値が判定部１１により算出され（判定ステップ）、変数値の割当数及びユーザ数の合計値の比である唯一性指標が式（１）に基づいて変数ごとに求められる（図９参照）。そして、求められた各変数の唯一性指標が所定の閾値よりも大きければ、判定部１１により、その変数名がＵＲＬから削除される削除候補と判定され（判定ステップ）、削除候補ＤＢ１２に登録される（ステップＳ５）。
【００３３】
ステップＳ５で、ある変数名が削除候補として登録されると、ステップＳ６では、その旨の情報入力が行われ、ステップＳ１で取得した通信ログ等と併せて解析し、削除候補ＤＢ１２に登録された削除予定の変数のみが複数の通信ログのＵＲＬから削除され、正規化されたＵＲＬを含む正規化通信ログへと加工される（変数削除ステップ；図１０参照）。なお、ＵＲＬの解析にあたっては、RFC2616のSection3.2等に示されている標準化された技術に従って、ＵＲＬ内の変数名と変数値の組をＵＲＬの形式を損なわないで削除するようにすることが好ましい。その後、生成された正規化後ＵＲＬを含む正規化通信ログがログ入出力部４の出力部８に出力され（ステップＳ７）、出力された正規化通信ログは、ログ蓄積ＤＢ２で、対応する元の通信ログに関連づけて保存される。これにより、ログ加工の処理が終了する。
【００３４】
以上、本実施形態によれば、ＵＲＬに含まれるクエリ部Ｑに割り当てられた変数値の割当数と当該変数名を含むＵＲＬ全体で特定されるコンテンツにアクセスしたユーザ数の合計値とを算出し、変数値の割当数及びユーザ数の合計値の比である唯一性指標（変数比）を変数名ごとに求め、各変数名を唯一性指標である変数比に基づいて複数の通信ログのＵＲＬから削除するか否かを判定し、削除すると判定された変数名のみを複数の通信ログのＵＲＬから削除することで、通信ログの正規化を行っている。このため、ＵＲＬ内でコンテンツを指し示す以外に用いられているユーザ毎やセッション毎の識別子などを効率的に除去することが可能となり、同じコンテンツを指し示す異なる表記のＵＲＬからユーザ識別子などの変数部分を効率的に抽出、削除し、同じコンテンツを指し示すＵＲＬとして選別することが容易にできる。その結果、ユーザが見ているであろうコンテンツを、より正確に推測することが可能となる。なお、ＵＲＬから個人に紐付けられているＩＤなどを削除することが可能となり、個人情報の保護を図ることも可能となる。
【００３５】
以上、本発明をその実施形態に基づき具体的に説明したが、本発明は、上記実施形態に限定されるものではない。例えば、上記実施形態では、ログ入出力部４とログ加工部５とが一対の場合で説明したが、図１２に示されるように、一のログ入出力部４に対して、複数のログ加工部５を備えるログ加工装置３０ａとしたり、図１３に示されるように、複数のログ入出力部４に対して、複数のログ加工部５を備えるログ加工装置３０ｂとしてもよい。
【００３６】
図１２のログ加工装置３０ａは、分散部１４（分散手段）を更に備えており、この分散部１４により、ログ入出力部４で取得された複数の通信ログを所定の分散基準（分散キーやアルゴリズム）に基づいて、複数のログ加工部５のうちのいずれか一のログ加工部５に送信するか否かが判定され、判定結果に応じたログ加工部５に対して、複数の通信ログが送信され、同様の加工処理が行われる。具体的には、例えば、変数削除後ＵＲＬを分散キーとする場合には、変数削除後ＵＲＬに対してハッシュアルゴリズムや剰余アルゴリズムなどを用いて唯一のログ加工部５を選択することが好ましい。これらの分散するための分散キーとアルゴリズムを選択する際には、分散キーとなっている値によって選択されるログ加工部５に偏りがでないように選択することが好ましい。それぞれのログ加工部５では、非同期で上述した分析加工を行い、変数削除後ＵＲＬ付きの通信ログ内の通信ログに対して正規化後ＵＲＬを付与し、その情報を出力部８に出力する。
【００３７】
また、図１３のログ加工装置３０ｂは、再分散部１５（再分散手段）を更に備えており、この再分散部１５により、複数のログ入出力部４のうちのいずれか一のログ入出力部４で取得された複数の通信ログを所定の再分散基準（再分散キーやアルゴリズム）に基づいて、複数のログ加工部５のうちのいずれか一のログ加工部に送信するか否かが判定され、判定結果に応じたログ加工部５に対して、複数の通信ログが送信され、同様の加工処理が行われる。図１３に示されるログ加工装置３０ｂでは、複数のログ入出力部４が非同期で通信ログをログ蓄積ＤＢ２から取得し、非同期で受け取られた通信ログに対して変数削除後ＵＲＬを、分散配置されたＵＲＬ全変数削除部７で変数削除後ＵＲＬ付きの通信ログにすることができ、それらを再分散部１５で分散基準（分散キー）に従って、複数のログ加工部５から選択された唯一のログ加工部５にレコードごとに再分散される。これらの分散するための分散キーとアルゴリズムは選択する際には、上記同様、分散キーとなっている値によって選択されるログ加工部５に偏りがでないように選択することが望ましい。
【００３８】
図１２のログ加工装置３０ａや図１３のログ加工装置３０ｂによれば、非常に大きなサイズの通信ログであっても、複数のログ加工部５で必要となる処理を分散することができ、さらに、各ログ加工部５において必要な情報を内部で保持するために非同期で処理することも可能となる。これは、分散処理のためのオーバヘッドが小さいことを示しており、分散度を上げる（処理ノードを増やす）ことを行っても、装置全体の処理能力がその分散度に比例することを示している。特に、本装置においては、変数削除後ＵＲＬを分散キーにすることで、ログ加工部５における処理はすべて内部の処理として閉じることができ、最大効率を上げることができる。なお、図１２のログ加工装置３０ｂによれば、更に、通信ログにおけるＵＲＬから変数削除後ＵＲＬを計算する作業も分散することができ、一層、処理を分散できる。なお、この場合、再分散のための仕組みが別途、ログ入出力部４に必要とされる。
【００３９】
また、情報収集装置１として、上記実施形態では、ログ蓄積ＤＢ２とログ加工装置３とがそれぞれ１つの装置として説明したが、１つの装置でなくてもよく、例えば、ログ蓄積ＤＢ２内の一部にログ加工装置３の機能が存在するようにしてもよい。また、ログ加工装置３内のログ入出力部４とログ加工部５とは別々のものとして説明したが、１つのサーバ装置として構成されていてもよい。また、図１２や図１３に示される変形例のログ加工装置３０ａ，３０ｂにおいて、各機能部が１つの装置の中の仮想化されたサーバとして分散されていてもよいし、１つ１つがハード装置として分離されていて、それらがネットワーク装置を通じて接続されていてもよい。特に、ログ蓄積ＤＢ２は、ログ入出力部４に対して、一対一対応の分散データベースの格納領域であってもよく、そのような構成にすることで、１つの分散処理データベースでの実装も可能である。
【符号の説明】
【００４０】
１…情報収集装置、２…ログ蓄積ＤＢ、３，３０ａ，３０ｂ…ログ加工装置、４…ログ入出力部、５…ログ加工部、６…入力部、７…ＵＲＬ全変数削除部、８…出力部、９…ユニークユーザ数計数部、１０…変数抽出部、１１…判定部、１２…削除候補ＤＢ、１３…変数削除部、１４…分散部、１５…再分散部。
【図１】
2010282354.tif 000003
【図２】
2010282354.tif 000004
【図３】
2010282354.tif 000005
【図４】
2010282354.tif 000006
【図５】
2010282354.tif 000007
【図６】
2010282354.tif 000008
【図７】
2010282354.tif 000009
【図８】
2010282354.tif 000010
【図９】
2010282354.tif 000011
【図１０】
2010282354.tif 000012
【図１１】
2010282354.tif 000013
【図１２】
2010282354.tif 000014
【図１３】
2010282354.tif 000015