図面 (/4)
課題
解決手段
概要
背景
近年、インターネット上で普及しているブログ(Web Log)では、該ブログに掲載された記事(エントリー)に対して、コメントの投稿やトラックバックを行うことができるようになっている。ここで、トラックバックとは、一般に、あるブログの記事から他のブログの記事へリンクするために、リンク元のサイトからリンク先のサイト(トラックバックping先URL)にトラックバックpingを送信することをいう。
そして、投稿されたコメントの内容やトラックバックの内容を含むデータは、データベースに登録されブログ上に反映されるようになっている。
ところで、このようなコメントやトラックバックの中には、ユーザにとって迷惑となるスパムコメントやスパムトラックバックがあり、従来から問題となっている(例えば、特許文献1参照)。このような問題に対して、例えば、コメントの内容やトラックバックの内容に禁止文字列が含まれていた場合、そのデータを除去しデータベースに登録しないようにしていた。
概要
データベースへの登録負荷を軽減することが可能なサーバ装置、データ登録制御方法、及びデータ登録制御プログラムを提供する。受信されたデータから抽出したデータ要素を変換関数を用いて変換し、該変換されたデータ要素及びその出現回数を対応付けて一時保存領域に保存し、該変換されたデータが出現する度にその出現回数をインクリメントし、該出現回数が所定回数以上のデータ要素に対応する受信されたデータをデータベースに登録することがないように構成した。
目的
本発明は、以上の点に鑑みてなされたものであり、データベースへの登録負荷を軽減することが可能なサーバ装置、データ登録制御方法、及びデータ登録制御プログラムを提供する
効果
実績
- 技術文献被引用数
- 0件
- 牽制数
- 1件
この技術が所属する分野
(分野番号表示ON)※整理標準化データをもとに当社作成
請求項1
端末装置からネットワークを経由して送信されたデータを受信する受信手段と、前記受信されたデータから所定のデータ要素を抽出する抽出手段と、前記抽出されたデータ要素を所定の変換関数を用いて変換する変換手段と、前記変換されたデータ要素及びその出現回数を対応付けてストレージの一時保存領域に保存し、当該データ要素が出現する度にその出現回数をインクリメントするインクリメント手段と、前記出現回数が所定回数以上のデータ要素に対応する前記データをデータベースに登録することなく、前記出現回数が所定回数未満のデータ要素に対応する前記データをデータベースに登録するデータ登録制御手段と、を備えることを特徴とするサーバ装置。
請求項2
請求項3
請求項2に記載のサーバ装置において、前記ストレージはキーバリューストレージであり、前記インクリメント手段は、前記変換された固定長のデータをキーとして、前記出現回数をバリューとして前記一時保存領域に保存することを特徴とするサーバ装置。
請求項4
請求項1乃至3の何れか一項に記載のサーバ装置において、前記登録制御手段は、前記受信手段による前記データの受信毎に、前記出現回数が所定回数以上であるか否かを判定することを特徴とするサーバ装置。
請求項5
請求項1乃至4の何れか一項に記載のサーバ装置において、前記データ要素は、前記データに含まれる本文、件名、及びIPアドレスであることを特徴とするサーバ装置。
請求項6
コンピュータにより実行されるデータ登録制御方法であって、端末装置からネットワークを経由して送信されたデータを受信するステップと、前記受信されたデータから所定のデータ要素を抽出するステップと、前記抽出されたデータ要素を所定の変換関数を用いて変換するステップと、前記変換されたデータ要素及びその出現回数を対応付けてストレージの一時保存領域に保存し、当該データ要素が出現する度にその出現回数をインクリメントするステップと、前記出現回数が所定回数以上のデータ要素に対応する前記データをデータベースに登録することなく、前記出現回数が所定回数未満のデータ要素に対応する前記データをデータベースに登録するステップと、を含むことを特徴とするデータ登録制御方法。
請求項7
コンピュータを、端末装置からネットワークを経由して送信されたデータを受信する受信手段、前記受信されたデータから所定のデータ要素を抽出する抽出手段、前記抽出されたデータ要素を所定の変換関数を用いて変換する変換手段、前記変換されたデータ要素及びその出現回数を対応付けてストレージの一時保存領域に保存し、当該データ要素が出現する度にその出現回数をインクリメントするインクリメント手段、及び、前記出現回数が所定回数以上のデータ要素に対応する前記データをデータベースに登録することなく、前記出現回数が所定回数未満のデータ要素に対応する前記データをデータベースに登録するデータ登録制御手段として機能させることを特徴とするデータ登録制御プログラム。
技術分野
背景技術
0002
近年、インターネット上で普及しているブログ(Web Log)では、該ブログに掲載された記事(エントリー)に対して、コメントの投稿やトラックバックを行うことができるようになっている。ここで、トラックバックとは、一般に、あるブログの記事から他のブログの記事へリンクするために、リンク元のサイトからリンク先のサイト(トラックバックping先URL)にトラックバックpingを送信することをいう。
0003
そして、投稿されたコメントの内容やトラックバックの内容を含むデータは、データベースに登録されブログ上に反映されるようになっている。
0004
ところで、このようなコメントやトラックバックの中には、ユーザにとって迷惑となるスパムコメントやスパムトラックバックがあり、従来から問題となっている(例えば、特許文献1参照)。このような問題に対して、例えば、コメントの内容やトラックバックの内容に禁止文字列が含まれていた場合、そのデータを除去しデータベースに登録しないようにしていた。
先行技術
0005
特開2007−265368号公報
発明が解決しようとする課題
0006
しかしながら、従来の技術では、予め禁止文字列をブラックリストなどに登録しておかなければならず煩雑であった。また、禁止文字列として登録されるまでの間はそれを含むデータのデータベースへの登録を防ぐことは困難であった。そのため、スパムコメントやスパムトラックバックが増えると、データベースへの登録負荷が増大するという問題が生じる。このことは、ブログばかりでなく、インターネット上で普及している掲示板や商品レビュー等でも同様である。
0007
そこで、本発明は、以上の点に鑑みてなされたものであり、データベースへの登録負荷を軽減することが可能なサーバ装置、データ登録制御方法、及びデータ登録制御プログラムを提供することを課題の一例とする。
課題を解決するための手段
0008
上記課題を解決するために、請求項1に記載の発明は、端末装置からネットワークを経由して送信されたデータを受信する受信手段と、前記受信されたデータから所定のデータ要素を抽出する抽出手段と、前記抽出されたデータ要素を所定の変換関数を用いて変換する変換手段と、前記変換されたデータ要素及びその出現回数を対応付けてストレージの一時保存領域に保存し、当該データ要素が出現する度にその出現回数をインクリメントするインクリメント手段と、前記出現回数が所定回数以上のデータ要素に対応する前記データをデータベースに登録することなく、前記出現回数が所定回数未満のデータ要素に対応する前記データをデータベースに登録するデータ登録制御手段と、を備えることを特徴とする。
0009
この発明によれば、出現回数が所定回数以上の変換されたデータ要素に対応するデータをデータベースに登録しないため、データベースへの登録負荷を軽減することができる。
0011
この発明によれば、変換されたデータ要素の扱い及び比較が容易となる。
0012
請求項3に記載の発明は、請求項2に記載のサーバ装置において、前記ストレージはキーバリューストレージであり、前記インクリメント手段は、前記変換された固定長のデータをキーとして、前記出現回数をバリューとして前記一時保存領域に保存することを特徴とする。
0013
この発明によれば、大量のデータを高速に処理することができる。
0014
請求項4に記載の発明は、請求項1乃至3の何れか一項に記載のサーバ装置において、 前記登録制御手段は、前記受信手段による前記データの受信毎に、前記出現回数が所定回数以上であるか否かを判定することを特徴とする。
0015
この発明によれば、より効率良くデータベースへの登録の負荷を軽減することができる。
0016
請求項5に記載の発明は、請求項1乃至4の何れか一項に記載のサーバ装置において、前記データ要素は、前記データに含まれる本文、件名、及びIPアドレスであることを特徴とする。
0018
請求項6に記載の発明は、コンピュータにより実行されるデータ登録制御方法であって、端末装置からネットワークを経由して送信されたデータを受信するステップと、前記受信されたデータから所定のデータ要素を抽出するステップと、前記抽出されたデータ要素を所定の変換関数を用いて変換するステップと、前記変換されたデータ要素及びその出現回数を対応付けてストレージの一時保存領域に保存し、当該データ要素が出現する度にその出現回数をインクリメントするステップと、前記出現回数が所定回数以上のデータ要素に対応する前記データをデータベースに登録することなく、前記出現回数が所定回数未満のデータ要素に対応する前記データをデータベースに登録するステップと、を含むことを特徴とする。
0019
請求項7に記載の発明は、コンピュータを、端末装置からネットワークを経由して送信されたデータを受信する受信手段、前記受信されたデータから所定のデータ要素を抽出する抽出手段、前記抽出されたデータ要素を所定の変換関数を用いて変換する変換手段、前記変換されたデータ要素及びその出現回数を対応付けてストレージの一時保存領域に保存し、当該データ要素が出現する度にその出現回数をインクリメントするインクリメント手段、及び、前記出現回数が所定回数以上のデータ要素に対応する前記データをデータベースに登録することなく、前記出現回数が所定回数未満のデータ要素に対応する前記データをデータベースに登録するデータ登録制御手段として機能させることを特徴とする。
発明の効果
0020
本発明によれば、受信されたデータから抽出したデータ要素を変換関数を用いて変換し、該変換されたデータ要素及びその出現回数を対応付けて一時保存領域に保存し、該変換されたデータが出現する度にその出現回数をインクリメントし、該出現回数が所定回数以上のデータ要素に対応する受信されたデータをデータベースに登録することがないように構成したので、データベースへの登録負荷を軽減することができる。
図面の簡単な説明
0021
本実施形態に係る情報提供システムSの概要構成の一例を示す図である。
本実施形態に係る情報提供サーバ1の概要構成の一例を示すブロック図である。
情報提供サーバ1のシステム制御部14(CPU14a)におけるデータ登録制御処理の一例を示すフローチャートである。
実施例
0022
以下、図面を参照して本発明の実施形態について説明する。なお、以下に説明する実施の形態は、情報提供システムに対して本発明を適用した場合の実施形態である。
0023
[1.情報提供システムの構成及び機能概要]
先ず、本発明の一実施形態に係る情報提供システムSの構成及び概要機能について、図1を用いて説明する。
0024
図1は、本実施形態に係る情報提供システムSの概要構成の一例を示す図である。
0026
情報提供サーバ1とユーザ端末2は、ネットワークNWを介して、例えば、通信プロトコルにTCP/IP等を用いて相互にデータの送受信が可能になっている。なお、ネットワークNWは、例えば、インターネット、専用通信回線(例えば、CATV(Community Antenna Television)回線)、移動体通信網(基地局等を含む)、及びゲートウェイ等により構築されている。
0028
ユーザ端末2は、Webブラウザ機能を有し、情報提供サーバ1に例えばHTTP(Hyper Text Transfer Protocol)リクエストを送信してそのレスポンスとしてブログページ等のWebページを取得し、ディスプレイ上に表示するようになっている。なお、図1の例では、説明の便宜上、一つのユーザ端末2を示しているが、ユーザ端末2はユーザ毎に多数存在する。また、ユーザ端末2には、例えば、パーソナルコンピュータ、PDA(Personal Digital Assistant)、携帯電話機等が適用可能である。
0029
[2.情報提供サーバ1の構成及び機能]
次に、情報提供サーバ1の構成及び機能について、図2を用いて説明する。
0030
図2は、本実施形態に係る情報提供サーバ1の概要構成の一例を示すブロック図である。
0031
図2に示すように、情報提供サーバ1は、通信部11と、記憶部12と、入出力インターフェース部13と、システム制御部14と、を備えている。そして、システム制御部14と入出力インターフェース部13とは、システムバス15を介して接続されている。
0032
通信部11は、ネットワークNWに接続して、ユーザ端末2との通信状態を制御するようになっている。
0033
記憶部12は、例えば、ハードディスクドライブ等により構成されており、オペレーティングシステム及びサーバプログラム等の各種プログラム(データ登録制御プログラムを含む)を記憶する。なお、各種プログラムは、例えば、他のサーバ装置等からネットワークNWを介して取得されるようにしても良いし、記録媒体に記録されてドライブ装置を介して読み込まれるようにしても良い。
0034
また、記憶部12には、情報提供サイトからユーザ端末2に提供されるサイト情報を記憶する。ここで、サイト情報は、各種Webページを構成するためのデータ(例えば、HTML(Hyper Text Markup Language)ファイル、XML(Extensible Markup Language)ファイル等)である。
0035
また、記憶部12には、会員登録された各ユーザに対応する情報を登録するためのデータベース121が構築されている。具体的には、データベース121には、例えば、ユーザにより開設されたブログページを構成するために必要なデータ(例えば、HTML文書に記述するためのデータ)が含まれる。このデータには、ブログページ上で投稿されたコメントの内容(例えば件名(タイトル)及びコメント本文)やトラックバックの内容(例えばトラックバックpingに含まれる件名や本文(例えば記事の概要)等)等が含まれる。
なお、データベース121は、専用のデータベースサーバに設け、システム制御部14がアクセス可能な構成にしても良い。
0036
入出力インターフェース部13は、通信部11及び記憶部12とシステム制御部14との間のインターフェース処理を行うようになっている。
0037
システム制御部14は、CPU(Central Processing Unit)14a、ROM(Read Only Memory)14b、作業用のRAM(Random Access Memory)14c、及びキーバリューストレージ(Key-Value Storage)14d等により構成されている。
0038
ここで、キーバリューストレージ14dは、例えば、Memcache等の揮発性メモリからなり、データを「キー」と「バリュー」の組み合わせで一時保存領域に保存(格納)する。これにより、大量のデータを高速に処理することが可能となる。
0039
そして、システム制御部14は、CPU14aが、ROM14bや記憶部12に記憶された各種プログラムを読み出し実行することにより、本発明の受信手段、抽出手段、変換手段、インクリメント手段、及びデータ登録制御手段として機能するようになっている。
0040
具体的には、システム制御部14は、ユーザ端末2からネットワークNWを経由して送信されたデータを通信部11を介して受信し、受信したデータ(以下、「受信データ」という)から所定のデータ要素を抽出する。ここで、受信データの例としては、ユーザ端末2に表示されたブログページ上で入力されたコメントに関するデータや、ユーザ端末2からの指示にしたがってWebサイトから送信されたトラックバックに関するデータ等が挙げられる。また、データ要素としては、例えば、トラックバック又はコメントの本文、件名、及びデータ送信元のIPアドレスの組が抽出されることが望ましい。
0041
次に、システム制御部14は、抽出されたデータ要素を所定の変換関数を用いて変換する。なお、変換されたデータ要素を、以下、「変換データ」という。ここで、本発明を効率良く実行させるための変換の要件としては、(1)同一のデータを変換関数に入力した場合、同一の変換データが出力されること、及び(2)出力される変換データが250バイト以下になること、が最低限考えられる。さらに、本実施形態においては、大量のデータを高速に処理するためにキーバリューストレージを使用するので、キーの文字列長を固定長とすることが必要である。これらの要件を満たす変換関数としては、一方向ハッシュ関数が好適である。一方向ハッシュ関数の例としては、MD(Message Digest)5やSHA(Secure Hash Algorithm)等が挙げられる。MD5は、任意長のデータから不可逆な固定長(32バイト)のハッシュ値(ハッシュ化された文字列)を変換データとして生成することができる。
0042
次に、システム制御部14は、上記変換データ及びその出現回数を対応付けてキーバリューストレージ14dの一時保存領域に保存(例えば、1日程度)し、変換データが出現する度にその出現回数を計数(インクリメント)する。そして、システム制御部14は、上記出現回数が所定回数以上の変換データに対応する受信データを、データベース121に登録することなく、データベースへの登録をキャンセルする。一方、システム制御部14は、上記出現回数が所定回数未満の変換データに対応する受信データをデータベース121に登録する。
0043
[3.情報提供サーバ1の動作]
次に、情報提供サーバ1の動作について、図3を用いて説明する。
0044
図3は、情報提供サーバ1のシステム制御部14(CPU14a)におけるデータ登録制御処理の一例を示すフローチャートである。なお、図3に示す処理は、他のWebサイト又はユーザ端末2から、例えばトラックバックに関するデータ又はコメントに関するデータが受信データとして受信された場合に開始される。なお、受信データはRAM14cに一時的に記憶される。
0045
先ず、システム制御部14は、受信データから、例えばトラックバック又はコメントの本文、件名、及びデータ送信元のIPアドレスの組をデータ要素として抽出する(ステップS1)。
0046
次いで、システム制御部14は、抽出したデータ要素を、MD5等の一方向ハッシュ関数を用いて固定長の変換データに変換する(ステップS2)。
0047
次いで、システム制御部14は、ステップS2で得た変換データと同一のキーがキーバリューストレージ14dに保存されているか否かを、データ比較により判定し(ステップS3)、保存されていないと判定した場合には(ステップS3:NO)、ステップS4に進み、保存されていると判定した場合には(ステップS3:YES)、ステップS5に進む。
0048
ステップS4では、システム制御部14は、ステップS2で得た変換データをキーとして、出現回数“1”をバリューとしてキーバリューストレージ14dの一時保存領域に保存し、図3に示す処理を終了する。
0049
一方、ステップS5では、システム制御部14は、ステップS2で得た変換データと同一のキーに対応付けられたバリュー(つまり、出現回数)を“1”インクリメントする。
0050
次いで、システム制御部14は、ステップS5でインクリメントされた出現回数が所定回数(例えば、3回)以上であるか否かを判定する(ステップS6)。つまり、受信データの受信毎に、変換データの出現回数が所定回数以上であるか否かが判定されることになる。
0051
そして、システム制御部14は、出現回数が所定回数以上でない(つまり、所定回数未満)と判定した場合には(ステップS6:NO)、当該所定回数未満の変換データに対応する受信データをRAM14cからデータベース121に登録し(ステップS7)、図3に示す処理を終了する。
0052
一方、システム制御部14は、出現回数が所定回数以上であると判定した場合には(ステップS6:YES)、当該所定回数以上の変換データに対応する受信データを、データベース121に登録することなくRAM14cから削除し(ステップS8)、図3に示す処理を終了する。
0053
以上説明したように、上記実施形態によれば、情報提供サーバ1は、受信データから抽出したデータ要素を一方向ハッシュ関数を用いて変換し、該変換データ及びその出現回数を対応付けて一時保存領域(キャッシュ)に保存し、該変換データが出現する度にその出現回数をインクリメントし、該出現回数が所定回数以上の変換データに対応する受信データをデータベース121に登録しないように構成したので、所定回数以上受信した同じデータ要素を含むデータのデータベース121への登録を防止できる。これにより、上記実施形態に係る情報提供システムSでは、データベース121への登録負荷を軽減することができる。つまり、データベースに登録する前にキャッシュに一時保存してそこの段階でキャンセルを決定してしまうため、データベースへの登録の負荷(言い換えれば、サーバ負荷)を軽減することができる。
0054
一般に、ブログページ上で投稿されたコメントやトラックバックにおけるスパムは、同じデータ要素(例えば、トラックバック又はコメントの本文、件名、及びデータ送信元のIPアドレスの組)を含むデータであることが多い。上記実施形態に係る情報提供システムSでは、同じデータ要素を含むデータを所定回数以上受信した場合、当該データをデータベースに登録しない。そのため、ブログページ上で投稿されたスパムコメントやスパムトラックバック等がデータベースに登録されることを好適に抑制することができる。
0055
また、上記実施形態によれば、一方向ハッシュ関数により変換された固定長の変換データをキーとし、その出現回数をバリューとしてキーバリューストレージ14dの一時保存領域に保存するように構成したので、該変換データの扱い及び比較が容易となり、さらに、CPU14aがキーバリューストレージ14dへ迅速にアクセスすることができる。従って、大量のデータを高速に処理することが可能となる。
0056
また、上記実施形態によれば、受信データの受信毎に出現回数が所定回数以上であるか否かが判定されるので、より効率良くデータベースへの登録の負荷を軽減することができる。なお、受信データのデータベースへの登録がバッチ処理(つまり、所定の時間間隔で一括して処理)で行われる場合には、これに合わせて所定の時間間隔で変換データの出現回数が所定回数以上であるか否かが判定されるように構成しても良い。
0057
また、上記実施形態において、上記抽出されるデータ要素として、トラックバック又はコメントの本文、件名、及びデータ送信元のIPアドレスの組とすれば、フィルタリング性能を高め、スパムの検出精度を向上させることができる。言い換えれば、スパムでないコメント等がデータベースに登録されず削除されることを防止する精度を高めることができる。なお、本文、件名、及びIPアドレスの組よりは精度が低くなるが、本文、件名、及びIPアドレスのうちの何れか2つの組合せをデータ要素として抽出するように構成しても良い。あるいは、本文、件名、及びIPアドレスのうちの何れか1つをデータ要素として抽出するように構成してもよい。また、本文の頭2文字+件名の頭2文字+IPアドレスのクラスCの組合せをデータ要素として抽出しても良い。さらに、上記の他にも、データ要素として、例えばHTTPリクエストのヘッダフィールドに含まれるデータを抽出するように構成しても良い。
0058
また、上記実施形態において、変換関数として一方向ハッシュ関数を例にとったが、データの完全性保護ができればどのような技術でも適用可能である。また、キーバリューストレージを使用しないのであれば、固定長のデータを出力をしなくてもよくなるため、ハッシュ関数以外の変換関数が適用可能となる。例えば、CRC(Cyclic Redundancy Check)やチェックサム等が適用可能である。
0059
なお、本発明は、インターネット上で普及している掲示板や商品レビュー等で入力されるコメントに関するデータ、メッセンジャーで入力されるメッセージに関するデータ、及び電子メールに記述されたメール内容に関するデータに対しても適用可能である。
0060
1情報提供サーバ
2ユーザ端末
11通信部
12 記憶部
13入出力インターフェース部
14システム制御部
15システムバス
NWネットワーク
S 情報提供システム
技術視点だけで見ていませんか?
この技術の活用可能性がある分野
分野別動向を把握したい方- 事業化視点で見る -
(分野番号表示ON)※整理標準化データをもとに当社作成