本実施形態のコンテンツ配信システムは、インターネットを通信媒体として情報を発信する、1または複数のコンピュータを含んだシステムである。コンテンツ配信システムは、アクセスしてきたクライアント端末で設定されている情報や、クライアント端末を特定するグローバルIPアドレスなどを用いて、利用者(以下、「サイト訪問者」、「訪問者」と称する)がいずれのグループに属するかの類別を行う。そして本実施形態のコンテンツ配信システムは、サイト内で扱っているコンテンツを案内するページとして、サイト訪問者の属するグループに適した案内画面(コンテンツを代表する画像を一覧で表示した画面)を配信する。尚、本実施形態では、日本語や英語など、サイト訪問者が主として使用する言語でグループ分けを行っている。
具体例として、例えば日本の観光スポットを紹介するサイトを想定する。このサイトにおいて、サイト内で紹介しているコンテンツの中で、フランス語圏の訪問者群からは京都の祇園に関するコンテンツに対して、特にアクセスがあるとする。この場合、本実施形態のコンテンツ配信システムは、フランス語を使用するサイト訪問者からアクセスがあると、祇園の街並みをあらわす画像(コンテンツを代表する画像であり、当該コンテンツとリンクを張って紐づけられた画像である。この画像は、例えばコンテンツの表題と並べて表示される場合もある。以下同様。)を、その他の画像よりも大きくした案内ページを提供する。これは、当該サイトに初めて訪れたフランス語圏の訪問者に対しても、同じ表示となる。また、浅草に関するコンテンツに対して、中国語圏の訪問者群から特にアクセスがある場合、中国語を使用するサイト訪問者からアクセスがあると、新規のサイト訪問者であるかリピーターのサイト訪問者であるかにかかわらず、浅草の街並みをあらわす画像を目立つように配置した案内ページを提供する。
このような態様により、サイト訪問者が所望しているコンテンツへのアクセス性を向上させることができる。また本実施形態により、ユーザ個人の特定情報に基づくのではなく、あくまでも当該ユーザが属するグループの集合体の最新のアクセス動向に基づいて、コンテンツを提供することができる。よって、久しぶりにサイトを訪問したユーザに対しても、最新の傾向に沿ったコンテンツを提供することができる。
引き続き、図面を参照しながら本実施形態のコンテンツ配信システムについて説明する。図1は、本実施形態のコンテンツ配信システムを含んだ全体の構成例を示す図である。
コンテンツ配信システム100は、Webサーバ110、表示パターン選定サーバ120を少なくとも有する。コンテンツ配信システム100は、外部のクラウドシステムであるアクセスログ収集部200と連携し、アクセスログ収集部200に蓄積されている、これまでに収集したアクセスログを用いて、クライアント端末301、302、303にコンテンツを配信する。
クライアント端末301、302、303は、コンテンツ配信システム100にアクセスするサイト訪問者が使用しているPC、スマートフォン、タブレットであり、Webブラウザを搭載している。尚、ここではクライアント端末を3つのみ示しているが、当然、Webブラウザを有し、インターネットに接続可能な全ての端末がクライアント端末となり得る。また以降の説明において、クライアント端末301〜303を個別に特定する必要のない場合は、クライアント端末300と称する。
アクセスログ収集部200について説明する。アクセスログ収集部200は、Webページのアクセス分析サービスを提供するクラウドシステムである。本実施形態では、外部の他組織や企業体がアクセスログ収集部200を管理、運営しているものとして説明する。
アクセスログ収集部200は、ウェブサイトを訪問した訪問者の訪問履歴であり、当該ウェブサイト内で扱っているコンテンツに対する履歴情報を、アクセスログとして収集する。アクセスログ収集部200は、一般的に、サイト訪問者の動向を把握することで、当該サイトの改善を図ること目的として用いられる。アクセスログ収集部200が収集可能なログとしては、サイトの訪問者数、閲覧ページ数、閲覧したページ(後述のコンテンツパス)、滞在時間、訪問回数、新規来訪者の数や割合、訪問頻度、ブラウザの種類、ブラウザに設定されている使用言語(後述のブラウザ言語設定)、回線の種類、プロバイダ、アクセスしてきた国・地域などがある。尚、ここで列記したものはあくまでも一例である。またアクセスログ収集部200は、サイト訪問者がウェブサイト内で行った動作(例えばサイト閲覧や商品購入など)を収集し、各動作に基づいた計測値を、アクセスログとして収集することができる。例えば、アクセスログ収集部200は、コンテンツの閲覧から購入に至った件数(売上貢献)などの計測値を、ロジックを用いて演算し、アクセスログとして収集することができる。
またアクセスログ収集部200は、サイト運用者からの要求に応じて、アクセスログそのままのデータ(生データ)を通知したり、当該アクセスログを集計、分析した結果を通知したりする。
アクセスログの収集方法としては、ウェブサイト内で提供する各ページに所定のタグやトラッキングコードを埋め込んでおく手法、ウェブサイト内でアクセスログを収集しておき、このアクセスログをアクセスログ収集部200に送信する手法、ウェブサイトで送受信されるパケットをキャプチャしてアクセスログを抽出し、これをアクセスログ収集部200に送信する手法などがある。尚、タグやトラッキングコードを埋め込んでおく手法は、クライアント端末300がサイトを訪れた際に、クライアント端末300がトラッキングコードを実行することで、アクセスログを直接アクセスログ収集部200に送信する手法となる。本実施形態では、ウェブサイト側で訪問者のアクセスログを収集しておく手法を採用する。
Webサーバ110は、80番ポート(HTTP)、443番ポート(HTTPS)などの規定のポート番号で待ち受け、クライアント端末300からリクエスト情報(HTTP GET)を受信すると、これに応じてレスポンス(コンテンツ)を返信する。
Webサーバ110には、Webサーバプログラムとともに、コンテンツ管理システムであるCMS111が事前に導入されている。CMS111は、テンプレートを動的に切り替える機能を有しており、本実施形態では、この機能を利用してサイト訪問者の使用言語ごとに表示内容を切り替える。
CMS111は、サードパーティが提供する各種プラグインを組み込む機能を有している。本実施形態では、以降で説明する各種動作を実施するため、プラグイン112がCMS111に組み込まれている。プラグイン112は、CMSでサポートしている言語(例えばPHPなど)で、CMSの種別ごとに定められた書式に則り作成されるプログラムファイルであり、規定のフォルダに格納することで、CMS111に組み込まれる。
表示パターン選定サーバ120は、案内ページ(=案内画面)に対するアクセスがサイト訪問者からあった際、アクセスログ収集部200でこれまでに収集されているアクセスログを取得する。そして表示パターン選定サーバ120は、このアクセスログに基づき、事前にWebサーバ110内に用意された複数のテンプレートの中から1つのテンプレートを選定する。
Webサーバ110は、表示パターン選定サーバ120によって選定されたテンプレートに従い、サイト訪問者に案内ページを配信する。
引き続き、コンテンツ配信システム100の動作について説明する。コンテンツ配信システム100の動作は、大きく2つの局面(フェーズ)に分けることができる。1つ目は、十分に蓄積されるまでアクセスログを収集する「ログ収集フェーズ」であり、2つ目は十分に蓄積されたアクセスログを用いて、サイト訪問者に応じたテンプレートを使って案内ページを配信する「動的表示フェーズ」となる。
図2は、ログ収集フェーズの動作を説明するための図である。以下の例では、Webサーバ110のプラグイン112のみを動作主体としているが、アクセスログ収集部200のクラウドシステム側により提供される機構(ロジック)を用いて行われてもよい。
Webサーバ110のプラグイン112は、サイトの各コンテンツにアクセスがあったときのアクセスログを生成し、これをアクセスログ収集部200に送信する。ログ収集フェーズでは、案内ページに限らず、各コンテンツにアクセスがあるごとに、アクセスログが生成され、これをアクセスログ収集部200に送信される。
ここで収集可能なログは上記のように様々なものがあるが、本実施形態では、少なくともクライアント端末300のWebブラウザに設定された言語設定(以下、「ブラウザ言語設定」と称する)、およびサイト訪問者が閲覧を所望するコンテンツのパス(「コンテンツパス」と称する)が収集される。
ブラウザ言語設定は、具体的にはHTTPリクエストヘッダに含まれる「Accept-Language」の値となる。HTTPリクエストヘッダに例えば「Accept-Language: en」(尚、「en」は英語をあらわす識別子)が含まれている場合、プラグイン112は、ブラウザ言語設定として「en」を抽出して取得する。またコンテンツパスは、HTTPリクエストメッセージの「GET」以降で指定されるURLである。
これによりアクセスログ収集部200には、ブラウザ言語設定と、サイト訪問者が閲覧したコンテンツパスとを対応付けたテーブル(後述の図9に示すテーブルT1)が蓄積されていく。
図3は、動的表示フェーズの動作を説明するための図である。
クライアント端末300は、まずはWebサーバ110のトップページにアクセスする。このトップページは、サイト内でどのようなコンテンツを扱っているかを一覧表示した案内ページとなっている。
クライアント端末300からWebサーバ110の案内ページにアクセスがあると、Webサーバ110のプラグイン112は、当該アクセス時に受信したHTTPリクエストヘッダに含まれる「Accept-Language」の値を抽出する。ここで取得される値は、上記のブラウザ言語設定と同じものであるが、アクセスログ収集部200で収集されているブラウザ言語設定と区別をするため、「訪問者使用言語」と称する。訪問者使用言語も同様に、HTTPリクエストヘッダにおいて、「Accept-Language: fr」(「fr」はフランス語をあらわす識別子)となっている場合、プラグイン112は、訪問者使用言語としてこの「fr」を抽出して取得する。そしてプラグイン112は、表示パターン選定サーバ120に対し、表示パターンの問い合わせメッセージを、抽出した訪問者使用言語とともに送信する。
問い合わせメッセージを受信した表示パターン選定サーバ120は、アクセスログ収集部200に対し、これまでに収集し、蓄積されているアクセスログを要求するメッセージを送信する。表示パターン選定サーバ120は、この送信に対する返信として、登録済みのアクセスログをアクセスログ収集部200から受信する。ここで受信されるアクセスログは、少なくともブラウザ言語設定とコンテンツパスとを対応付けた生データとする(後述の図9に示すテーブルT1)。
表示パターン選定サーバ120は、受信したアクセスログに基づき、訪問者使用言語における、コンテンツパスごとのPV(ページビュー)数を導出する(後述の図9に示すテーブルT3)。
次いで表示パターン選定サーバ120は、コンテンツごとのPV数に基づき、特定のコンテンツにアクセスが集中しているか否かをあらわす指標値を算出する。詳細については後述するが、ここでは指標値としてジニ係数が算出される。尚、本実施形態ではジニ係数を用いるものとするが、あくまで一例であり、標準偏差などその他の統計値やロジック・アルゴリズムにより演算した値を、指標値として用いてもよい。
表示パターン選定サーバ120は、算出した指標値と閾値とを比較して、表示パターンを選定する。図4(A)〜図4(D)は、表示パターンを例示した案内画面の画面イメージである。
算出した指標値が、いずれのコンテンツにもアクセスが集中していないことを示すものである場合、表示パターン選定サーバ120は、各コンテンツそれぞれに紐づけられたリンク画像の全てが均一配置となる表示パターンを選定する。図4(A)の例は、全てのリンク画像C1〜C9を均一の画像サイズで配置させた案内画面である。
また算出した指標値が、一部のコンテンツにアクセスが集中していることを示すものである場合、表示パターン選定サーバ120は、当該一部のコンテンツに紐づけられたリンク画像を目立たせて配置した表示パターンを選定する。図4(B)の例は、アクセスの集中しているコンテンツに紐づけられたリンク画像C2、C5を大きく、且つ上部に配置させた案内画面である。図4(B)の例では、その他のリンク画像については、小さく、下部に配置している。
算出した指標値が、1つのコンテンツに特にアクセスが集中していることを示すものである場合、表示パターン選定サーバ120は、当該1つのコンテンツに紐づけられたリンク画像を目立たせて配置する表示パターンを選定する。図4(C)の例は、アクセスが特に集中しているコンテンツに紐づけられたリンク画像C3のサイズを大きく、且つ上部に配置させた案内画面である。図4(C)の例では、その他のリンク画像については、小さく、下部に表示している。
また図4(D)のように、特にアクセスの集中しているコンテンツのリンク画像C3を、表示領域の全域に配置し、その他のコンテンツ(図4(D)中のC1、C2、C4、C5)については、リンクの張られたテキストのみを配置した画面を採用しても構わない。
尚、図4に例示した案内画面は、あくまでも例示であり、これ以外を採用しても構わない。
表示パターン選定サーバ120は、選定した表示パターンを一意に示す識別情報、およびアクセスの集中しているコンテンツパスを、Webサーバ110に送信する。
Webサーバ110のプラグイン112は、事前にCMS111に登録されているテンプレートの中から、受信した表示パターンの識別情報に応じたテンプレートを特定する。そしてCMS111は、当該テンプレートに従った案内画面、例えば図4(A)〜図4(D)のいずれかを採用し、且つ、アクセスの集中しているコンテンツを目立たせた案内画面を作成する。そしてWebサーバ110は、作成した画面イメージをアクセス元となるクライアント端末300に返信する。
以上により、アクセス元のWebブラウザに設定されている訪問者使用言語に応じて、最適化された画面を提供することができる。
以下、本実施形態の動作の詳細について説明する。図5は、システムリリース前の動作を示したフローチャートであり、主に開発者や運用担当者により行われるリリース前準備を示したフローチャートである。
まず、案内画面用のテンプレート、およびコンテンツ群のテンプレートが、Webサーバ110の規定のフォルダ内に格納される(S001)。そしてアクセスログを収集する機構(ロジック)や、選定されたパターンの一覧画面を提供する機構であるプラグイン112が、Webサーバ110内に組み込まれる(S002)。アクセスログを収集する機構(ロジック)については、アクセスログ収集部200にデータ収集を行わせるため、クラウドシステムが提供する機構(ロジック)も、必要に応じて組み込まれる。また一方で、表示パターンを決定する機構(ロジック)や、アクセスログ収集部200からデータを取得するためのクラウドシステムが提供する機構(ロジック)が、表示パターン選定サーバ120に組み込まれる(S003)。
図6は、ログ収集フェーズの動作例を示すフローチャートである。
Webサーバ110は、80番ポート(HTTP)や443番ポート(HTTPS)を開放し、クライアント端末300からアクセスがあるまで待ち受ける(S101:Noのループ)。クライアント端末300からアクセスを受け付けると(S101:Yes)、Webサーバ110のプラグイン112は、当該クライアント端末300のブラウザで設定されているブラウザ言語設定の値、および要求のあったコンテンツパスを取得する。そしてWebサーバ110は、これらを対応付けて一時的に記憶する(S102)。上記のとおりブラウザ言語設定の値は、HTTPリクエストヘッダ内の「Accept-Language」で指定されている値であり、コンテンツパスは、「HTTP GET」リクエストで指定されるURLである。プラグイン112は、これらをHTTPリクエストメッセージから抽出し、対応付けてアクセスログとして一時的に記憶しておく。
Webサーバ110のプラグイン112は、一定期間アクセスログを収集し続けた段階で、もしくはアクセスのあった都度、アクセスログ収集部200にアクセスログを送信する(S103)。そしてアクセスログ収集部200は、受信したアクセスログを記憶して蓄積する(S104)。ここでアクセスログ収集部200は、ブラウザ言語設定の値、コンテンツパスを対応付けてアクセスログを蓄積するが、これ以外にも、アクセスのあった日時や滞在時間、訪問回数なども、対応付けて蓄積してもよい。
上記S101〜S104の処理は、システムが停止するまで繰り返し実行される(S105:Noのループ)。システムが停止すると(S105:Yes)、図6のフローチャートの動作は終了する。
図6に示す動作によりアクセスログが十分に蓄積された場合、動的表示の運用が開始される。図7は、この動的表示フェーズの動作例を示すフローチャートである。
Webサーバ110は、80番ポート(HTTP)や443番ポート(HTTPS)を開放し、クライアント端末300からアクセスがあるまで待ち受ける(S201:Noのループ)。クライアント端末300から、案内ページ(=案内画面)へのアクセスを受け付けると(S201:Yes)、Webサーバ110のプラグイン112は、クライアント端末300から送信された訪問者使用言語(「Accept-Language」の値)とともに、表示パターンの問い合わせメッセージを表示パターン選定サーバ120に送信する(S202)。
表示パターン選定サーバ120は、問い合わせメッセージを受信すると、これとともに送信された訪問者使用言語と、アクセスログ収集部200に蓄積されているアクセスログとに基づき、事前に設けられている表示パターンを選定する。そして表示パターン選定サーバ120は、選定した表示パターンの識別情報(「表示パターン識別情報」とする)、およびアクセスの集中しているコンテンツがあれはそのコンテンツパスを、Webサーバ110に返信する(S203)。このS203の動作の詳細については後述する。
Webサーバ110のプラグイン112は、表示パターン選定サーバ120から返信メッセージを受信すると、このメッセージの中から表示パターン識別情報、およびアクセスの集中しているコンテンツパスを抽出する。プラグイン112は、表示パターン識別情報に対応したテンプレートを、事前にCMS111に登録されているテンプレートの中から取得する(S204)。そしてプラグイン112は、アクセスの集中しているコンテンツパスが強調表示されるよう、当該コンテンツパスをテンプレートの特定箇所に埋め込む。CMS111は、このテンプレートに従った画面イメージを生成し、アクセス元となるクライアント端末300に返信する。これにより、最適化された案内ページ(=案内画面)がクライアント端末300側で表示される。
上記のS201〜S205の各動作は、システムが停止するまで繰り返し行われる(S206:No)。ウェブサイトのシステムメンテナンスなど、必要に応じてサイトの運用を一時的に停止する場合(システムが停止する場合)(S206:Yes)、図7のフローチャートの動作は終了する。
図8は、図7に示すS203(表示パターンの選定動作)の詳細動作を示したフローチャートである。
表示パターン選定サーバ120は、Webサーバ110から表示パターンの問い合わせメッセージがあるまで待機する(S301:Noのループ)。問い合わせメッセージを受信すると(S301:Yes)、表示パターン選定サーバ120は、問い合わせメッセージの中から訪問者使用言語を抽出するとともに、アクセスログ収集部200からアクセスログを取得する(S302)。
表示パターン選定サーバ120は、訪問者使用言語における、コンテンツパスごとのPV数を集計する(S303)。
S303の動作を、図9を用いて説明する。アクセスログ収集部200から取得されるアクセスログは、図9に例示するテーブルT1のとおり、ブラウザの言語設定とアクセスのあったコンテンツパスとを対応付けた生データである。
表示パターン選定サーバ120は、ブラウザ言語設定が訪問者使用言語と一致するレコードを、テーブルT1から抽出する。これによりテーブルT2が得られる。尚、図9の例では、訪問者使用言語が「fr」である場合を例示している。
次いで表示パターン選定サーバ120は、テーブルT2で、コンテンツパスが一致しているレコードを集めて集計値(レコード数)を求める。例えば図9に示すテーブルT2に、コンテンツパスを「http://○○.com/BBB」としたレコードが250件ある場合、当該コンテンツの集計値は250となる。この集計値が、「http://○○.com/BBB」のコンテンツのPV数となる。
ここでは、表示パターン選定サーバ120は、アクセスログ収集部200に蓄積されている生データの全てを取得し、表示パターン選定サーバ120の側で、集計処理を行ってコンテンツパスとPV数とを対応付けたテーブルT3を求めている。これに対し、アクセスログ収集部200側で同様の集計処理を行ってテーブルT3を作成し、S302の段階で、表示パターン選定サーバ120がアクセスログ収集部200からテーブルT3を受信することも可能となる。
次いで表示パターン選定サーバ120は、テーブルT3を用いてジニ係数を算出する(S304)。このジニ係数は、特定のコンテンツにアクセスが集中しているか否かをあらわす指標値として算出される。
図10(A)を用いて、本実施形態のジニ係数の算出方法について説明する。図10(A)は、横軸にサイト内のコンテンツ数の累積比(0〜1の範囲)、縦軸にPV数の累積比(0〜1の範囲)をとっている。また点線で記すグラフは均等分配線であり、実線で記すグラフはローレンツ曲線である。
ローレンツ曲線は、PV数(PV数の累積比)の低いものから順に並べていき、この順でPV数を累積的に加算していったグラフである。ジニ係数は、均等分配線とローレンツ曲線とで閉じられた領域Rの面積を2倍にした値(0〜1の範囲)となる。
ここで、全てのコンテンツに均等にアクセスがあり、コンテンツごとのPV数に全く隔たりが無い場合、ローレンツ曲線は均等分配線と同じとなる(ジニ係数=0)。また、アクセスが集中しているコンテンツが無く、コンテンツごとのPV数にほとんど隔たりが無い場合、ローレンツ曲線は、例えば図10(B)に示すものとなり、ジニ係数も小さな値をとる。
これに対し、一部のコンテンツにアクセスが集中している場合、ローレンツ曲線は例えば図10(C)に示すものとなり、ただ1つのコンテンツに対して特にアクセスが集中している場合、ローレンツ曲線は例えば図10(D)に示すものとなる。このように、PV数の隔たりが大きくなるほど、領域Rの面積は増加していき、三角形(ジニ係数=1)に近似していく。
尚、図10(E)のように、横軸をPV数の多いものから順位づけたもの(ランキング順位)とし、縦軸を当該順位のコンテンツのPV数として、ジニ係数を求めてもよい。このような座標系であっても、上記同様の手法でジニ係数を求めることができる。
図8のフローチャートの説明に戻る。以降、表示パターン選定サーバ120は、第1閾値および第2閾値(第1閾値<第2閾値)の2つの閾値を用いて、算出したジニ係数との比較を行い、表示パターンを選定する。
ジニ係数が第1閾値よりも小さい場合(S310:Yes)、表示パターン選定サーバ120は、アクセスが集中しているコンテンツは無いものと扱い、表示パターンとして図4(A)に例示したパターンAを選定する(S311)。
ジニ係数が第1閾値以上且つ第2閾値よりも小さい場合(S310:No、S320:Yes)、表示パターン選定サーバ120は、一部のコンテンツにアクセスが集中しているものと扱い、表示パターンとして図4(B)に例示したパターンBを選定する(S321)。そして表示パターン選定サーバ120は、アクセス数の集中している上位コンテンツの識別情報(=コンテンツパス)を、テーブルT3から抽出する(S322)。ここでは、図4(B)の表示に合わせるため、PV数の上位2つのコンテンツパスをテーブルT3から抽出するものとするが、態様はこれに限定されない。
S320の判定結果が否定である場合、すなわちジニ係数が第2閾値以上である場合(S320:No)、表示パターン選定サーバ120は、1つのコンテンツにアクセスが集中しているものと扱い、表示パターンとして図4(C)に例示したパターンCや図4(D)に例示したパターンDを選定する(S330)。そして表示パターン選定サーバ120は、PV数の集中している最上位のコンテンツの識別情報(=コンテンツパス)を、テーブルT3から抽出する(S331)。
S311、S322、S331の後、表示パターン選定サーバ120は、選定したパターンの識別情報(例えば図4(A)〜(D)のいずれかを一意にあらわす識別情報)、S322、S331で抽出された上位または最上位のコンテンツの識別情報をWebサーバ110に送信する(S340)。
以降は、図7で説明したS204の動作となる。
本実施形態は上記のような態様となるが、ここで機能ブロックを用いた構成例について補足する。
図11は、上記で説明したコンテンツ配信システム100の機能構成例を示すブロック図である。コンテンツ配信システム100は、送受信部1001、導出部1002、集計値算出部1003、指標値算出部1004、テンプレート選定部1005、画面生成部1006、ログ収集部1007を有する。
アクセスログ収集部200(=収集システム)には、上記のとおり、ブラウザ言語設定(=グループ特定情報、言語設定情報)と、アクセスのあったコンテンツのパス(=コンテンツ特定情報)とを少なくても対応付けて蓄積している。尚、上記の実施形態では、アクセスログ収集部200は外部のクラウドシステムとしているが、コンテンツ配信システム100に含めてもよい。
送受信部1001は、クライアント端末300(=アクセス元)から、コンテンツ案内画面にアクセスするためのリクエスト情報を受信する。ここでリクエスト情報とは、送信元IPアドレス、「HTTP GET」メッセージ、HTTPリクエストヘッダなどを含んだ要求メッセージである。
導出部1002は、受信したリクエスト情報から訪問者使用言語(=グループ特定情報、言語設定情報)を導出する。上記実施形態では、上記のとおりHTTPリクエストヘッダ内の「Accept-Language」の項目で指定されている値を、訪問者使用言語として抽出し、導き出すことを例示した。
集計値算出部1003は、導出された訪問者使用言語と、アクセスログ収集部200に収集されている情報(図9のテーブルT1)とに基づき、導出された訪問者使用言語における、ウェブサイトで扱っているコンテンツごとのアクセス集計値を導出する。上記の実施形態では、図9を用いて、テーブルT1からテーブルT3を導き出すことを例示した。
指標値算出部1004は、テーブルT3に基づき、特定のコンテンツにアクセスが集中しているか否かをあらわす指標値を算出する。上記実施形態では、指標値としてジニ係数を算出することを説明した。
テンプレート選定部1005は、算出されたジニ係数に基づき、アクセスの集中しているコンテンツに紐づいた画像を他のものよりも目立たせたコンテンツ案内画面を選定する。上記実施形態では、図8のS310〜331で示した処理を行うことで、図4(A)〜図4(D)で示すレイアウトの中から1つを選定することを説明した。
画面生成部1006は、テンプレート選定部1005で選定されたコンテンツ案内画面を生成する。上記実施形態では、事前に設けられるテンプレートの中から、テンプレート選定部1005により選定されたテンプレートを取得し、PV数の上位のコンテンツもしくは最上位のコンテンツのパスを、テンプレートの特定箇所(目立たせる表示となるように事前に指定されている箇所)に埋め込むことを説明した。また、このテンプレートに従ったコンテンツ案内画面を生成することを説明した。
この生成後のコンテンツ案内画面は、送受信部1001によりアクセス元のクライアント端末300に送信される。
また一方で、ログ収集部1007は、クライアント端末300から受信したリクエスト情報からコンテンツパスを抽出する。またログ収集部1007は、受信したリクエスト情報からブラウザ言語設定を導出し、これらを対応付けてアクセスログ収集部200に送信する。これによりアクセスログ収集部200は、情報の収集を行うことができる。このログ収集部1007の動作は、実施形態におけるログ収集フェーズの動作であり、図2や図6を用いて説明した。
図11において、送受信部1001、導出部1002、画面生成部1006、ログ収集部1007は、Webサーバ110に備えられ、集計値算出部1003、指標値算出部1004、テンプレート選定部1005は、表示パターン選定サーバ120に備えられるものとしたが、態様はこれに限定されない。サーバと機能ブロック(ソフトウェア)との対応付けは、どのような構成であっても構わない。
また、コンテンツ配信システム100は、上記実施形態ではWebサーバ110と表示パターン選定サーバ120の2つのサーバ(コンピュータ)を含む構成としているが、これに限定されない。1つのサーバであってもよく、3つ以上の複数のサーバを含んだ構成であればよい。
最後に、Webサーバ110のハードウェア構成例を図12に示す。尚、表示パターン選定サーバ120も図12に示すものと同じ構成を有している。
Webサーバ110は、一般的なコンピュータと同等のハードウェア資源を備えている。したがって、CPU1110、RAM1120、ROM1130、ストレージ1140、および通信I/F1150がバス1160を介して接続されている。通信I/F1150は、有線または無線で機器間を通信するためのインタフェースを構成し、表示パターン選定サーバ120などの外部機器と接続する。
CPU1110は演算処理装置であり、Webサーバ110全体の動作を制御する。RAM1120は揮発性記憶装置であり、ROM1130は不揮発性記憶装置である。そしてストレージ1140は、HDDやSSDなどの大容量記憶装置(補助記憶装置)である。
このハードウェア構成において、ROM1130やストレージ1140に格納されたプログラム1141は、RAM1120にロードされ、CPU1110がこれを演算実行する。この実行により、種々の機能モジュールを含むソフトウェア制御部が構成される。このようにして構成されたソフトウェア制御部と、上記の構成を含むハードウェア資源との組み合わせによって、図11に示す機能ブロックが構成される。
上記の実施形態では、ブラウザに設定されている訪問者使用言語を導出するものとするが、これに替えて、もしくは訪問者使用言語とともに、サイト訪問者の属している国情報を導出してもよい。国情報は、例えば送信元のグローバルIPアドレスをICANNなどで管理されているサーバに問い合わせることで、導き出すことができる。
上記の実施形態では、アクセスログを収集する際、アクセス日時の情報も収集してアクセスログ収集部200に記憶させておき、表示パターン選定サーバ120が、規定期間(例えば日単位、週単位、月単位など)内のアクセスログのみを処理対象にしてもよい。これにより、陳腐化したアクセスログを除外して、より好適な一覧を作成することができる。
上記の実施形態では、サイト訪問者からアクセスがあったときに、表示パターン選定サーバ120がその都度動作して表示パターンの選定処理を行っている(図7のS203、図8参照)。これに対し、サイト訪問者からのアクセスと、表示パターンの選定処理とを非同期にしてもよい。例えば、表示パターン選定サーバ120は、アクセスログ収集部200に収集されているブラウザ言語設定ごとの表示パターンを、例えば日単位や週単位など、特定の周期処理にて行い、事前に選定しておく(=第1の処理)。ここでは、表示パターン選定サーバ120は、図8の動作を、アクセスログ収集部200に収集されている全てのブラウザ言語設定ごとに行うものとする(ja、en、fr、・・・それぞれの表示パターンを選定しておく)。またここでは、ブラウザ言語設定と表示パターンの識別情報とを対応付けたテーブルが作成される。
そしてWebサーバ110がサイト訪問者からアクセスを受け付け、表示パターン選定サーバ120に問い合わせを行うと、表示パターン選定サーバ120は、作成した上記のテーブルに基づき、事前に選定済みの表示パターン識別情報を返却する。Webサーバ110は、返却された表示パターン識別情報に基づき案内画面を作成し、これをアクセス元に送信する(=第2の処理)。この実装により、サイト訪問者からアクセスがあった際のレスポンスが向上する。
本実施形態では、サイト訪問者に関する情報の1または複数の要素を類別してグループ分けを行っている。本実施形態では、ブラウザ言語設定がグループ分けの類別要素となっており、例えば「ja」(日本語圏のサイト訪問者)が第1グループ、「en」(英語圏のサイト訪問者)が第2グループ、「fr」(フランス語圏のサイト訪問者)が第3グループなどとなっている。また本実施形態においては、同じグループに所属するサイト訪問者同士は、同じ表示パターンとなり、グループの異なるサイト訪問者同士は、異なった表示パターンとなる。
すなわち、従来の構成では、ユーザ個人に紐づけられた履歴情報に基づき、表示を切り替えるものであったが、本実施形態の構成は、事前に定義されたグループに類別した集合体ごとの履歴情報に基づき、表示を切り替える。よって、初めてアクセスしたサイト訪問者に対しても、当該サイト訪問者の所属グループを特定することができれば、当該所属グループにとって好適となる一覧画面を、そのサイト訪問者に提供することができる。
本実施形態では、このようにブラウザ言語設定でグループを構成するものとしているが、これに限らない。例えば上記のように、送信元のグローバルIPアドレスを用いることで、国ごとにグループ分けを行うこともできる。また、例えばショッピングモールサイトなどでは、商品の種類や商品の色、値段区分などでグループ分けを行ってもよい。また、人の趣向について類別が可能であれば、この単位でグループ分けを行ってもよい。
本実施形態の案内ページ(=案内画面)の生成動作は、サイト内のトップページのものに特定されない。サイトのページ階層構成において、トップページ以外の中段ページに、本実施形態の態様を適用してもよい。
本実施形態では、コンテンツごとのPV数(=アクセス集計値)を、サイト訪問者の所属グループごとに集計し、表示方法を決定する実装例について説明した。PV数以外にも、例えばサイト訪問者の滞在時間、新規来訪者の閲覧割合、ECサイトの場合はコンテンツ閲覧からの売上貢献(例えばコンテンツの閲覧から購入に至った件数)などを、訪問者が属するグループ(国や言語など)毎に集計して、ランキングや表示方法を決定してもよい。すなわち、コンテンツ配信システム100は、アクセスログ収集部200がアクセスログとして収集可能な、サイトの訪問者数、閲覧ページ数などと上記で一例として列記した各種データや算出される値を、グループごとに集計し、ランキングや表示方法を決定してもよい。
コンテンツごとにPV数を集計する場合は、図9に示すように、所属グループを特定するのに用いられるブラウザ設定言語、およびコンテンツパスのみを対応付けたテーブルT1があれば、集計することができる。これに対し、PV数以外、例えば「コンテンツ閲覧からの売上貢献」に基づき、案内画面の表示内容をグループごとに変える場合、集計対象となる「売上貢献」の情報も必要になる。よってこの場合、図9に示すテーブルT1は、ブラウザ設定言語、コンテンツパス、および売上貢献を対応付けたものとなる。そして図9に示すテーブルT2は、抽出後のブラウザ設定言語、コンテンツパス、売上貢献を対応付けたものとなり、テーブルT3は、抽出後のブラウザ設定言語における、コンテンツパスと売上貢献とを対応付けたものとなる。このテーブル構成以外は、上記で説明した処理を適用することができ、例えば売上貢献が他に比べて逸脱して大きく貢献しているコンテンツを大きくして強調表示したり、逆に売上貢献が他に比べて逸脱して小さいコンテンツを、売上が上がるように目立たせるため、大きくして強調表示したりすることができる。
本実施形態では、逸脱しているコンテンツの画像を大きくするなどして強調表示するものとしているが、逆に、逸脱しているコンテンツの画像を小さくして、相対的に他のものを強調表示するようにしてもよい。このように、コンテンツ配信システム100は、コンテンツごとに集計したデータのうち、他に比べて逸脱しているものがある場合、当該逸脱しているコンテンツと紐づけられた画像を逸脱している方向に強調表示した案内画面を生成する。ここで、「逸脱している方向」とは、集計値の大小の方向を意味し、集計値の大きいものは大きく表示し、集計値の小さいものは小さく表示するなどの方向を意味する。
上記をまとめると、本実施形態では、PV数などの集計対象となる情報を、例えば、売上貢献、滞在時間、新規来訪者の閲覧数など、他の数値データに変更することが可能であり、当該集計対象となる情報に基づき、強調表示する画像をグループごとに変更することができる。
また、上記実施形態では、グループとして、ブラウザ言語設定に紐づくサイト訪問者の使用言語や、IPアドレスに紐づくサイト訪問者の国などを例示したが、グループの種別についてはこれに限らない。例えば、サイト訪問者の性別、年齢層、趣向、ウェブサイトの利用年月の長さや利用回数などでグループ分けをしてもよい。ECサイトなど、ウェブサイトがサイト訪問者のユーザ登録を行うものである場合、当該登録された内容に基づき、容易に所属グループの割り出しを行うことができる。ユーザ登録を行わないサイトの場合であっても、閲覧したコンテンツなどを分析することで、サイト訪問者の性別、年齢層、趣向などを類推することも可能である。これらをグループとする場合、例えばcookieの技術を用い、cookieの値に基づきサイト訪問者の所属グループを導出する。一つの実装例を記すと、まずWebサーバ110が、ウェブサイトにアクセスするためのリクエスト情報に含まれるcookieの値を抽出する。そしてWebサーバ110は、この値に紐づけられたサイト訪問者の性別、年齢層、趣向、ウェブサイトの利用年月の長さや利用回数などを、アクセスログ収集部200から取得して、サイト訪問者の所属グループを割り出す。以降の動作については、上記で説明した動作を応用することができる。このようにすることで、サイト訪問者の性別ごと、世代ごと、趣向ごと、利用年月や利用回数ごとに、案内画面を切り替えることができる。尚、これ以外にも様々なグループの種別を用いて、案内画面を切り替えることができる。
以上、本実施形態のコンテンツ配信システム100は、アクセス元から、案内画面にアクセスするためのリクエスト情報を受信し、受信したリクエスト情報に基づき、当該アクセス元の所属するグループを導出する。そしてコンテンツ配信システム100は、アクセスログ収集部200に収集されているアクセスログから、アクセス元と同じグループに所属するアクセスログの集合体を抽出する。コンテンツ配信システム100は、事前に定義されたデータ(例えばPV数、売上貢献、滞在時間、新規来訪者の閲覧数、売上貢献など、アクセスログとして収集される上記で列記したデータ)でコンテンツごとに集計する処理を、抽出したアクセスログの集合体に対して行う。そしてコンテンツ配信システム100は、このコンテンツごとの集計値の中で、他のものや規定の範囲から逸脱しているものがある場合、当該逸脱しているコンテンツと紐づけられた画像を強調表示した案内画面を生成し、アクセス元にこの案内画面を送信する。
本実施形態では装置内部に発明を実施する機能が予め記録されている場合について説明したが、これに限らず、同様の機能をネットワークから装置にダウンロードしてもよいし、同様の機能を記録媒体に記憶させたものを装置にインストールしてもよい。記録媒体としては、CD−ROM、DVD等、プログラムを記憶でき、かつ装置が読み取り可能な記録媒体であれば、いずれの形態であってもよい。またこのように予めインストールやダウンロードにより得る機能は、装置内部のOS(オペレーティング・システム)等と協働して、その機能を実現させてもよい。
本発明は、その精神または主要な特徴から逸脱することなく、他の様々な形で実施することができる。そのため、前述の実施形態はあらゆる点で単なる例示に過ぎず、限定的に解釈してはならない。本発明の範囲は、特許請求の範囲によって示すものであって、明細書本文には、なんら拘束されない。さらに、特許請求の範囲の均等範囲に属する全ての変形、様々な改良、代替および改質は、すべて本発明の範囲内のものである。