JP2005196480A - 集合管理装置、システム、方法及びプログラム - Google Patents
集合管理装置、システム、方法及びプログラム Download PDFInfo
- Publication number
- JP2005196480A JP2005196480A JP2004002220A JP2004002220A JP2005196480A JP 2005196480 A JP2005196480 A JP 2005196480A JP 2004002220 A JP2004002220 A JP 2004002220A JP 2004002220 A JP2004002220 A JP 2004002220A JP 2005196480 A JP2005196480 A JP 2005196480A
- Authority
- JP
- Japan
- Prior art keywords
- filter information
- management device
- byte sequence
- filter
- common
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Abstract
【課題】 ネットワークを介して通信可能な各集合管理装置間で各々管理する集合同士を演算する際に、ネットワーク通信量を抑制する。
【解決手段】 演算元集合Gsと演算先集合Gdとの共通集合Gs∩Gdを演算元サーバ10が抽出する際に、ネットワーク上で演算元集合Gsの各バイト列の個数|Gs|及び演算先集合Gdの識別子IDgdを含むフィルタ情報要求を送信し、演算先集合Gsの各バイト列を表すフィルタ情報を受信するものの、従来とは異なり、共通要素のリストを送受信しない。
【選択図】 図1
【解決手段】 演算元集合Gsと演算先集合Gdとの共通集合Gs∩Gdを演算元サーバ10が抽出する際に、ネットワーク上で演算元集合Gsの各バイト列の個数|Gs|及び演算先集合Gdの識別子IDgdを含むフィルタ情報要求を送信し、演算先集合Gsの各バイト列を表すフィルタ情報を受信するものの、従来とは異なり、共通要素のリストを送受信しない。
【選択図】 図1
Description
本発明は、任意の情報が属する複数の集合を管理し、各集合から共通集合を抽出可能な集合管理装置、システム、方法及びプログラムに係り、特に、複数の集合管理装置間のネットワーク通信量を低減し得る集合管理装置、システム、方法及びプログラムに関する。
従来、複数の顧客を記述した複数の顧客リスト、各クライアント端末のIPアドレスを記述した複数のIPアドレスリスト、複数の機器を記述した機器リスト等といった各種のリストが2台以上のサーバ装置に管理される場合がある。この場合、同一の情報を含む各リストを利用する際に、各リストの共通部分を抽出する技術が知られている。
具体的には例えば、あるバイト列がバイト列の集合に含まれるか否かを確率的に検査する方法として、ブルームフィルタを代表とする技術が存在する。ブルームフィルタの場合、バイト列をハッシュ関数にかけた結果を、ある長さのフィルタビット列(以下、単にフィルタともいう)の対応するビットに1を立てる。これをフィルタヘの登録と呼ぶ。このとき、立てられた“1”は、バイト列特有の「痕跡」を表している。ブルームフィルタでは、バイト列の集合に含まれる各バイト列(各要素)をフィルタに登録し、集合の全てのバイト列の痕跡が刻まれたフィルタを生成する。
一方、集合に含まれるか否かが未知のバイト列に関し、同じ方式でフィルタを検査し、「痕跡」に相当する全てのビットが立っているか否かにより、集合に含まれる「可能性が有る」か、「集合には存在しない」かが判別される。
さて、このようなフィルタの特性として、未登録のバイト列であるにも関わらず、そのバイト列に対応する痕跡が存在する場合がある。ブルームフィルタでは、例えば全てのビットが立っている場合に相当する。このように、未登録のバイト列を登録済のバイト列として誤って検出する場合の確率を、誤検出確率と呼ぶ。
この誤検出確率は、フィルタに入力可能なバイト列の個数(要素数)の最大値と、バイト列の長さとにより決定される。逆に、誤検出確率とバイト列の個数の最大値とを定めると、この誤検出確率を満たすフィルタの長さが決定される。
このようなブルームフィルタを利用し、遠隔に配置された複数の装置間で、各装置が管理しているバイト列の集合のうち、両者に共通するバイト列を取得する方法がある。この方法に関し、図9に示すように、演算元サーバ装置SAに管理される演算元集合TAと、演算先サーバ装置SBに管理される演算先集合TBとの共通部分を抽出する例を述べる。
演算元サーバ装置SAは、演算元集合TAに基づいて、演算元集合TAの各バイト列の痕跡を示すフィルタ情報FAを生成し(ST1)、このフィルタ情報FAを演算先サーバ装置SBに送信する(ST2)。
演算先サーバ装置SBは、フィルタ情報FAに対して演算先集合TBの各バイト列を検査し、得られた検査結果に基づいて、共通する各バイト列を示すリストIを生成し(ST3)、得られたリストIを演算元サーバ装置SAに送信する(ST4)。
演算元サーバ装置SAは、このリストIを検査し(ST5)、リストIから演算元集合TAに無いバイト列を排除し、残った各バイト列を共通要素として出力する(ST6)。これにより、共通要素の抽出が完了する。
さてここで、フィルタ情報FAの長さは、前述したように、誤検出確率とバイト列の個数の最大値とを定めると、この誤検出確率を満たすように決定される。
さてここで、フィルタ情報FAの長さは、前述したように、誤検出確率とバイト列の個数の最大値とを定めると、この誤検出確率を満たすように決定される。
一方、演算元サーバ装置SAは、保持する演算元集合TAと、演算先サーバ装置SBの演算先集合TBとの間で共通要素を求める場合、演算先集合TBの要素の数が未知なので、誤検出確率を制御できない。従って、演算元サーバ装置SAは、演算先集合TBのうち、共通する各バイト列を含むリストIを送信してもらい、誤検出確率を確認する必要がある。
また、以上のような手順において、3つ以上の集合の共通要素を得る際に、通信量を削減する観点から、サーバ装置間の通信を直列化する方式がある(例えば、非特許文献1参照。)。しかしながら、この方式は、受信した要求に含まれる次のサーバ装置の通信終点(IPアドレス等)を盲信した場合、サービス拒否攻撃(Denial of Service Attack)を中継してしまう可能性がある。また、通信の直列化は、高いレイテンシ(遅延時間)に帰結するので、集合の数に比例して望ましくない結果を導く。
P.レイノルズ(P. Reynolds),A.バーダット(A. Vahdat)、"エフィシェント・ピア・トゥー・ピア・キーワード・サーチング(Efficient peer-to-peer keyword searching)"、ミドルウエア2003(Middleware 2003)又は<http://issg.cs.duke.edu/search/> B.ブルーム(B. Bloom)、"スペース/タイム・トレードオフ・イン・ハッシュ・コーディング・ウィズ・アローワブル・エラーズ(Space / time tradeoff in hash coding with allowable errors)"、コミニュケーションズ・オブ・ザ・エイシーエム(Communications of the ACM)、13(7)、1970年、p.422-426
P.レイノルズ(P. Reynolds),A.バーダット(A. Vahdat)、"エフィシェント・ピア・トゥー・ピア・キーワード・サーチング(Efficient peer-to-peer keyword searching)"、ミドルウエア2003(Middleware 2003)又は<http://issg.cs.duke.edu/search/> B.ブルーム(B. Bloom)、"スペース/タイム・トレードオフ・イン・ハッシュ・コーディング・ウィズ・アローワブル・エラーズ(Space / time tradeoff in hash coding with allowable errors)"、コミニュケーションズ・オブ・ザ・エイシーエム(Communications of the ACM)、13(7)、1970年、p.422-426
以上説明したように、共通要素抽出方法においては、演算先集合TBの要素の数が未知なので、誤検出確率を制御できない不都合がある。これに伴い、相手側の演算先集合TB内で共通する各バイト列を送信してもらう必要がある。その結果、相対的にネットワーク上の通信量が増える問題が生じてしまう。
また、3つ以上の集合の共通要素を得る際に、サーバ装置を直列化する必要がある。この直列化は、サービス拒否攻撃を中継する可能性と高いレイテンシとにつながるので、好ましくない。
本発明は上記実情を考慮してなされたもので、ネットワークを介して通信可能な各集合管理装置間で各々管理する集合同士を演算する際に、ネットワーク通信量を抑制し得る集合管理装置、システム、方法及びプログラムを提供することを目的とする。
また、本発明の他の目的は、3台以上の集合管理装置を直列化せずに、3台以上の集合管理装置で各々管理する集合同士の共通集合を抽出し得る演算元集合管理装置を提供することにある。
第1の発明は、各バイト列を含む第1集合を管理する他の集合管理装置にネットワークを介して接続され、各バイト列を含む第2集合を管理する集合管理装置において、前記第2集合の各バイト列を表すフィルタ情報を要求するための、前記第1集合の各バイト列の個数及び前記第2集合の識別情報を含むフィルタ情報要求を前記他の集合管理装置から受信する要求受信手段と、この第2集合の識別情報に基づいて、前記第2集合の各バイト列の個数を得る個数取得手段と、前記第1及び第2集合のそれぞれの各バイト列の個数に基づいて、前記第1及び第2集合の共通集合を得るときの誤検出確率を満たすように前記フィルタ情報のサイズを決定するサイズ決定手段と、前記サイズをもつフィルタ情報を前記第2集合の各バイト列に基づいて生成するフィルタ情報生成手段と、前記生成されたフィルタ情報を前記他の集合管理装置に返信するフィルタ情報返信手段と、を備えた集合管理装置である。
従って、第1の発明によれば、共通集合が抽出される際に、ネットワーク上でフィルタ情報要求やフィルタ情報を送受信するものの、従来とは異なり、共通要素のリストを送受信しない。このため、ネットワークを介して通信可能な各集合管理装置間で各々管理する集合同士を演算する際に、ネットワーク通信量を抑制することができる。また、フィルタ情報生成手段は、各集合の各バイト列の個数が分かっているので、誤検出確率を満たすようにフィルタ情報を生成することができる。
第2の発明は、各バイト列を含む複数の演算先集合を個別に管理する複数の演算先集合管理装置にネットワークを介して接続され、各バイト列を含む演算元集合を管理する演算元集合管理装置において、演算先集合の各バイト列を表すフィルタ情報を要求するための、演算元集合の各バイト列の個数及び演算先集合の識別情報を含むフィルタ情報要求を前記各演算先集合管理装置に並列に送信する並列送信手段と、前記各演算先集合管理装置から並列にフィルタ情報を受信する並列受信手段と、前記受信した各フィルタ情報に対して、前記演算元集合の各バイト列に対応するか否かを検査し、前記演算元集合と各演算先集合との個別の共通部分を抽出する第1の共通部分抽出手段と、前記個別の共通部分の間の更なる共通部分を抽出する第2の共通部分抽出手段と、を備えた演算元集合管理装置である。
従って、第2の発明によれば、3つ以上の集合の共通集合を演算する際に、演算元集合管理装置と他の各集合管理装置との間でフィルタ情報要求やフィルタ情報を並列に送受信するので、3台以上の集合管理装置を直列化せずに、3台以上の集合管理装置で各々管理する集合同士の共通集合を抽出することができる。
なお、以上の各発明は、各装置を個別に「装置」というカテゴリーで表現したが、これに限らず、各装置全体又は各装置個別に「システム」、「方法」、「コンピュータ読取り可能な記憶媒体」又は「プログラム」等といった任意のカテゴリーで表現しても良いことは言うまでもない。
以上説明したように本発明によれば、ネットワークを介して通信可能な各集合管理装置間で各々管理する集合同士を演算する際に、ネットワーク通信量を抑制できる。また、3台以上の集合管理装置を直列化せずに、3台以上の集合管理装置で各々管理する集合同士の共通集合を抽出できる。
以下、本発明の各実施形態について図面を参照しながら説明する。
(第1の実施形態)
図1は本発明の第1の実施形態に係る集合管理システムの構成を示す模式図である。この集合管理システムは、元集合サーバ(第1の集合管理装置)10及び先集合サーバ(第2の集合管理装置)20がネットワークを介して接続されている。なお、元集合サーバ10及び先集合サーバ20は、ハードウェア構成とソフトウエア構成との組合せにより実現可能となっている。ソフトウェア構成の部分は、予め各サーバ10,20の機能を実現させるためのプログラムがネットワーク又は記憶媒体から各サーバ10,20のコンピュータにインストールされて実現される。この各サーバ10,20(集合管理装置)がプログラムをインストールしても実現可能なことは以下の各実施形態でも同様である。
(第1の実施形態)
図1は本発明の第1の実施形態に係る集合管理システムの構成を示す模式図である。この集合管理システムは、元集合サーバ(第1の集合管理装置)10及び先集合サーバ(第2の集合管理装置)20がネットワークを介して接続されている。なお、元集合サーバ10及び先集合サーバ20は、ハードウェア構成とソフトウエア構成との組合せにより実現可能となっている。ソフトウェア構成の部分は、予め各サーバ10,20の機能を実現させるためのプログラムがネットワーク又は記憶媒体から各サーバ10,20のコンピュータにインストールされて実現される。この各サーバ10,20(集合管理装置)がプログラムをインストールしても実現可能なことは以下の各実施形態でも同様である。
元集合サーバ10は、演算元集合記憶部11、要求送出部12、フィルタ受信部13及び共通集合演算部14を備えている。
演算元集合記憶部11は、要素としての各バイト列を含む演算元集合(第1集合)Gsが当該集合の識別子IDgsと関連付けて記憶されるものであり、要求送出部12及び共通集合演算部14から読出可能となっている。
演算元集合記憶部11は、要素としての各バイト列を含む演算元集合(第1集合)Gsが当該集合の識別子IDgsと関連付けて記憶されるものであり、要求送出部12及び共通集合演算部14から読出可能となっている。
要求送出部12は、何らかの要求入力に従い演算元集合(第1集合)の識別子IDgsと演算先集合(第2集合)の識別子IDgdとが選択されたとき、演算元集合記憶部11を参照しながら、演算先集合Gdの各バイト列を表すフィルタ情報を要求するためのフィルタ情報要求を先集合サーバ20に送信する機能をもっている。
ここで、各識別子IDgs,IDgdの選択は、一般的なGUI等を用いても良いし、別途通信手順を定めても良い。
フィルタ情報要求は、少なくとも演算元集合Gsの各バイト列の個数(以下、要素数ともいう)|Gs|及び演算先集合Gdの識別子IDgdを含んでおり、他には例えば、フィルタ情報の生成条件(ハッシュ関数の繰り返し回数p)を含んでもよい。ここでは、フィルタ情報要求はハッシュ関数の繰返し回数pを含むものとする。
フィルタ受信部13は、先集合サーバ20からフィルタ情報を受信し、このフィルタ情報を共通集合演算部14に送出する機能をもっている。
共通集合演算部14は、フィルタ受信部により受信されたフィルタ情報に対して、演算元集合記憶部11を参照しながら、演算元集合Gsの各バイト列に対応するか否かを検査し、演算元集合Gsと演算先集合Gdとの共通部分(Gs∩Gd)を抽出する機能と、得られた共通部分を共通集合として出力する機能とをもっている。
先集合サーバ20は、演算先集合記憶部21、要求受信部22、フィルタ長決定部23、フィルタ生成部24、フィルタ送出部25を備えている。
演算先集合記憶部21は、要素としての各バイト列を含む演算先集合(第2集合)Gdが当該集合の識別子IDgdと関連付けて記憶されるストレージデバイス等であり、フィルタ長決定部23及びフィルタ生成部24から読出可能となっている。なお、記憶される集合が1つであり、演算先集合Gdを特定する必要がない場合、演算先集合Gdの識別子IDgdを省略しても良い。
要求受信部22は、フィルタ情報要求を受信するためにネットワーク側からの入力を待ち、先集合サーバ20宛の入力があり、この入力がフィルタ情報要求であればこれを受信する機能と、受信したフィルタ情報要求から、演算元集合Gsの要素数|Gs|、演算先集合Gdの識別子IDgd及びハッシュ関数の繰返し回数pを得る機能と、得られた内容|Gs|,IDgd,pをフィルタ長決定部23に送出する機能とをもっている。
フィルタ長決定部23は、要求受信部22から|Gs|,IDgd,pを受けると、識別子IDgdに基づいて演算先集合記憶部21から演算先集合Gdの各バイト列の個数(要素数)|Gd|を抽出する機能と、各集合Gs,Gdの要素数|Gs|,|Gd|に基づいて、誤検出確率f(FRP)を満たすようにフィルタ情報のサイズ(以下、フィルタ長Lという)を決定する機能とをもっている。
詳しくはフィルタ長決定部23は、識別子IDgdに基づいて得られた|Gd|と|Gs|とを足して各要素数の合計値M(=|Gd|+|Gs|)を得る機能と、この合計値M及びハッシュ関数繰り返し回数pと、予め定められた(フィルタ情報の)ビット比率sから得られる誤検出確率fとに基づいてフィルタ長Lを算出する機能と、得られたフィルタ長L及びハッシュ関数繰り返し回数pをフィルタ生成部24に送出する機能とをもっている。なお、誤検出確率fは、フィルタ情報要求に含められて元集合サーバ10から指定されてもよい。
ここで、ビット比率sは、演算先集合Gdがフィルタ情報に登録された場合における、フィルタ情報の全Lビットのうち、値が1となることが期待されるビットの比率である。非特許文献2はs=0.5の時の効率を最大としているので、ここではビット比率s=0.5に固定した。
フィルタ生成部24は、フィルタ長決定部23から受けたフィルタ長L及びハッシュ関数繰返し回数pに基づいて、このフィルタ長Lをもつフィルタ情報を、演算先集合記憶部21内の演算先集合Gdの各バイト列eに基づいて生成する機能と、得られたフィルタ情報をフィルタ送出部25に送出する機能とをもっている。
詳しくはフィルタ情報生成部24は、図2(a)に示すように、初期値0でフィルタ長Lをもつフィルタビット列に対し、図2(b)に示すように、各バイト列eをハッシュ関数h(e,1)にかけた結果iに基づいてiビット目に1を立てる。これを図2(c)に示すように、各バイト列e毎に最大p個の1を立ててフィルタ情報を生成する。
ここで、フィルタ情報は、演算先集合Gdの各ビット列eを表す最大p個のハッシュ値(mod L)を多重化した情報である。また、フィルタ情報は、少なくともフィルタ長Lを含み、他フィルタの実装により必須となる情報を含む。例えばブルームフィルタの場合、一要素当りに何ビット用いるかを示す、ハッシュ関数繰り返し回数pを含む。
ここで、繰り返し回数pは、通常、各集合Gs,Gdの全ての要素数Mに従属するパラメータとして定められる。例えば、全ての要素数M全体を検査した際に一つの誤検出が発生するように誤検出確率f(=sp)を定める等の例が考えられる。このような繰り返し回数pは、一定の上限と下限(例えば、0.01>f>1.0×10−6等)を設ける事が望ましい。また、繰り返し回数pは、ここではフィルタ情報要求により先集合サーバ10から与えられたが、これに限らず、フィルタ長決定部23が保持又は算出してもよい。
フィルタ送出部25は、フィルタ生成部24により生成されたフィルタ情報を元集合サーバ10に返信する機能をもっている。
次に、以上のように構成された集合管理システムによる共通集合抽出方法について図3のシーケンス図を用いて述べる。
元集合サーバ10においては、要求送出部12が、何らかの要求入力に従い演算元集合の識別子IDgsと演算先集合の識別子IDgdとが選択されると、演算元集合記憶部11から演算元集合Gsの要素数|Gs|を抽出する(ST11)。
しかる後、要求送出部12は、この要素数|Gs|、演算先集合Gdの識別子IDgd及びハッシュ関数繰り返し回数pを含むフィルタ情報要求を先集合サーバ20に送信する(ST12)。
先集合サーバ20においては、要求受信部22が、フィルタ情報要求を受信するためにネットワーク側からの入力を待ち、先集合サーバ20宛の入力があり、この入力がフィルタ情報要求であればこれを受信する。また、要求受信部22は、受信したフィルタ情報要求から、演算元集合Gsの各バイト列の個数|Gs|、演算先集合Gdの識別子IDgd及びハッシュ関数の繰返し回数pを得ると、得られた内容|Gs|,IDgd,pをフィルタ長決定部23に送出する。
フィルタ長決定部23は、要求受信部22から|Gs|,IDgd,pを受けると、識別子IDgdに基づいて演算先集合記憶部21から演算先集合Gdの各バイト列の個数|Gd|を抽出する(ST13)。
次に、フィルタ長決定部23は、各集合Gs,Gdのそれぞれの要素数|Gs|,|Gd|に基づいて、演算元及び演算先集合Gs,Gd間の共通集合を得るときの誤検出確率fを制御しつつ、フィルタ長Lを決定する(ST14)。
具体的にはフィルタ長決定部23は、フィルタアルゴリズムがブルームフィルタの場合、例えば以下の式(1)〜(4)に従い計算を行う。なお、式(2)は、与えられたpが所定の誤検出確率fを満足するか否かの確認に用いられ、満足しない場合にはビット比率sと誤検出確率fから新たな繰返し回数pを算出可能となっている。また、式(2),式(3)は何れを先に計算しても良い。
(4)式の計算後、フィルタ長決定部23は、得られたフィルタ長L及びハッシュ関数繰り返し回数pをフィルタ生成部24に送出する。
フィルタ生成部24は、このフィルタ長L及びハッシュ関数繰返し回数pに基づいて、当該フィルタ長Lをもつフィルタ情報を、演算先集合記憶部21内の演算先集合Gdの各バイト列eに基づいて生成する(ST15)。
ここで、フィルタ情報は、Lビットのフィルタバイト列を0で初期化し、演算先集合Gdの各バイト列を所定の方式に従い、記録する。例えば、ブルームフィルタの場合は以下の通りである。
[1]フィルタ生成部24は、ハッシュ関数h(e,pi)=md5(e‖pi)mod Lを用意する。なお、eは演算先集合Gdのバイト列を表し、piは別途入力される現在の繰返し回数piを示すバイト列を表す。関数md5はMD5アルゴリズムに基づくハッシュ関数を表し、演算子‖はバイト列の結合を表す。modは割り算の剰余を表す。
すなわち、ハッシュ関数h(e,pi)は、二つの値e,piを入力とし、0からL−1までの値を返す機能をもつ。なお、ハッシュ関数は、MD5に限らず、統計的に一様に分散するハッシュ関数であれば、任意のハッシュ関数を用いても良い。
[2]長さLビットのフィルタビット列を用意する。フィルタビット列は初期値を全て0で初期化する。
[3]演算先集合の各要素eを取出す。各要素eに対し、図2(c)に示したように、順に以下の手順をp回実行する。なおpiは繰り返される手順の何回目かを示す数値である。
i=h(e,pi)を求める。
用意したビット列のiビット目を1にセットする。
以上のように、フィルタ生成部24はフィルタ情報を生成し、得られたフィルタ情報をフィルタ送出部25に送出する。
フィルタ送出部25は、フィルタ生成部24により生成されたフィルタ情報を元集合サーバ10に返信する(ST16)。
元集合サーバ10においては、フィルタ受信部13がフィルタ情報を受信し、このフィルタ情報を共通集合演算部14に送出する。
共通集合演算部14は、このフィルタ情報に対して、演算元集合記憶部11を参照しながら、演算元集合Gsの各バイト列に対応するか否かを検査し、演算元集合Gsと演算先集合Gdとの共通部分(Gs∩Gd)を抽出する(ST17)。
しかる後、共通集合演算部14は、得られた共通部分を共通集合として出力する(ST18)。
上述したように本実施形態によれば、共通集合が抽出される際に、ネットワーク上でフィルタ情報要求やフィルタ情報を送受信するものの(ST12,ST16)、従来とは異なり、共通要素のリストを送受信しない。このため、ネットワークを介して通信可能な元集合サーバ10と先集合サーバ20との間で各々管理する集合同士Gs,Gdを演算する際に、ネットワーク通信量を抑制することができる。また、フィルタ生成部24は、各集合Gs,Gdの要素数|Gs|,|Gd|が分かっているので、誤検出確率fを満たすようにフィルタ情報を生成することができる。
以上の効果は、通信手順において必要十分な情報を選択し、誤検出確率fを制御したことにより得られたものである。これにより、任意の2つの集合に対する共通要素の抽出演算に必要な通信量を、許容可能な誤検出確率fの範囲内で劇的に削減することができる。
(第2の実施形態)
図4は本発明の第2の実施形態に係る集合管理システムの構成を示す模式図であり、図1と同一部分には同一符号を付してその詳しい説明を省略し、ここでは異なる部分について主に述べる。なお、以下の各実施形態も同様にして重複した部分の説明を省略する。
図4は本発明の第2の実施形態に係る集合管理システムの構成を示す模式図であり、図1と同一部分には同一符号を付してその詳しい説明を省略し、ここでは異なる部分について主に述べる。なお、以下の各実施形態も同様にして重複した部分の説明を省略する。
すなわち、本実施形態は、第1の実施形態の変形例であり、元集合サーバ10及び先集合サーバ20の単体を接続した構成に代えて、元集合サーバ10及び先集合サーバ20の両者の機能を併せ持つ集合管理サーバ30A,30Bが互いに接続された構成となっている。
ここで、集合管理サーバ30Aは、前述した元集合サーバ10に加え、先集合サーバ20が有する要求受信部22、フィルタ長決定部23、フィルタ生成部24及びフィルタ送出部24と同等の各部22〜25を更に備えている。但し、演算元集合記憶部11及び演算先集合記憶部21は個別に備えず、共通化した演算集合記憶部31Aとして備えている。
同様に、集合管理サーバ30Bは、前述した先集合サーバ20に加え、元集合サーバ10が有する要求送出部12、フィルタ受信部13及び共通集合演算部14と同等の各部12〜14を更に備えている。但し、演算先集合記憶部21及び演算元集合記憶部11及びは個別に備えず、共通化した演算集合記憶部31Bとして備えている。
以上のような構成によれば、集合管理サーバ30Aが元集合サーバ10として機能し、集合管理サーバ30Bが先集合サーバ20として機能する場合には第1の実施形態の作用効果を得ることができ、逆に、集合管理サーバ30Aが先集合サーバ20として機能し、集合管理サーバ30Bが元集合サーバ10として機能することもできる。
従って、各集合管理サーバ30A,30Bが状況に応じて元集合サーバ10又は先集合サーバ20の何れの処理をも実行できるので、利便性を向上させることができる。なお、このように、元集合サーバ10には先集合サーバ20の機能を付加し、先集合サーバ20には元集合サーバ10の機能を付加することにより、各サーバが元集合サーバ10及び先集合サーバ20の何れにもなることができる旨は、以下の各実施形態にも適用することができる。但し、説明を簡単にするため、以下の各実施形態は、元集合サーバ10と先集合サーバ20とをそれぞれ単体で設けた場合を代表例に用いて述べる。
(第3の実施形態)
図5は本発明の第3の実施形態に係る集合管理システムの構成を示す模式図である。この集合管理システムは、利用者端末40がLAN50を介して元集合サーバ10に接続され、元集合サーバ10がインターネット51を介して先集合サーバ20に接続されている。
図5は本発明の第3の実施形態に係る集合管理システムの構成を示す模式図である。この集合管理システムは、利用者端末40がLAN50を介して元集合サーバ10に接続され、元集合サーバ10がインターネット51を介して先集合サーバ20に接続されている。
すなわち、本実施形態は、第1の実施形態の具体例であり、各サーバ10,20が映像や音声などのコンテンツを放送するものであり、コンテンツを視聴したユーザのリストを演算元集合や演算先集合として保持する構成となっている。
ユーザのリストは例えばメールアドレスや、システムで一意な番号(ユーザID)を示すものである。ここでいうユーザIDは、システムで一意な番号であればよいので、通常のユーザIDに限らず、URI(Uniform Resource Indicator)、IPアドレス、ポート番号、メールアドレス等が適用可能となっている。
また、コンテンツを放送するサーバ10,20は世界中に無数に存在するが、ここでは2台を代表例に用いる。すなわち、番組P1を放送するサーバを元集合サーバ10、同様に番組P2を放送するサーバを先集合サーバ20とする。
各サーバ10,20は、番組P1,P2を放送する機能に伴い、視聴者に利用者IDを要求又は発行する機能と、各利用者IDを番組IDに対応づけて保存する機能とをもっている。
利用者IDはシステム全体で利用者に固有の値であり、全てのサーバ間で共通する。また、前述した演算元集合Gsをある番組P1を視聴したユーザ集合U1とし、演算先集合Gdを異なる番組P2を視聴したユーザ集合U2とする。これに伴い、演算元集合Gsの要素数|Gs|をユーザ集合U1の要素数N1とし、演算先集合Gdの要素数|Gd|をユーザ集合U2の要素数N2とする。
一方、利用者端末40は、通常のコンピュータ機能を有する端末装置であり、特に、利用者Xの操作により、共通集合を抽出する対象となるユーザ集合U1,U2の識別子IDU1,IDU2を元集合サーバ10に入力する機能と、元集合サーバから受けた共通集合{U1∩U2}を出力する機能をもっている。なお、この例では、ユーザ集合U1,U2の識別子IDU1,IDU2は、各番組IDに相当する。
LAN50は、利用者端末40と元集合サーバ10との間の構内ネットワークであり、通信量を低減したい対象のネットワークとは異なる。
インターネット51は、元集合サーバ10と先集合サーバ20との間のネットワークであり、通信量を低減したい対象のネットワークである。
インターネット51は、元集合サーバ10と先集合サーバ20との間のネットワークであり、通信量を低減したい対象のネットワークである。
次に、以上のように構成された集合管理システムによる共通集合抽出方法を図6のシーケンス図を用いて説明する。
始めに、ある利用者Xが、番組P1とP2を視聴したとする。この時、番組P1,P2の両方を視聴した人は、利用者Xと興味が近いと言える。興味が近い人の集合を得る事で、利用者Xは、以下のような事(a)〜(c)が可能になる。
(a)番組P1,P2を視聴した人々が、他にどのような番組を見ているかを知る。
(b)番組P1,P2を視聴した人々に、類似した番組を教える。
(c)番組P1,P2を視聴した人々と、番組の感想などを交換する。
(b)番組P1,P2を視聴した人々に、類似した番組を教える。
(c)番組P1,P2を視聴した人々と、番組の感想などを交換する。
これら(a)〜(c)を実現するには、任意の2つ以上の番組に個別に対応する各ユーザ集合U1,U2から、共通に含まれる視聴者のリストを抽出する操作が必要となる。この操作は、世界中のあらゆるコンテンツのユーザ集合U1,U2,…から特定の番組のユーザ集合を抽出する場合を考えると、できるだけ安価に行える必要がある。
ここで、複数のユーザ集合U1,U2から共通するユーザ集合を抽出することは、例えばマーケティング等に利用される。特定の分野の番組の視聴者を抽出する事は、その分野の市場の興味を知る助けとなる。あるいは、特定の俳優等が出演する複数の番組の視聴者を抽出することは、その俳優等に興味がある視聴者を知ることにつながる。なお、マーケティングに利用する場合、利用者Xは、単に統計をとるだけの場合があるので、必ずしも番組P1,P2を見ている必要は無い。
次に、利用者Xが番組P1,P2の共通の視聴者を抽出するまでの過程を図6を用いて述べる。
利用者端末40は、利用者Xの操作により、番組P1を放送する元集合サーバ10にLAN50を通じてアクセスする。利用者端末40は、元集合サーバ10に、番組P1,P2の共通の視聴者を抽出する命令を送信する(ST20)。
利用者端末40は、利用者Xの操作により、番組P1を放送する元集合サーバ10にLAN50を通じてアクセスする。利用者端末40は、元集合サーバ10に、番組P1,P2の共通の視聴者を抽出する命令を送信する(ST20)。
元集合サーバ10は、演算元集合記憶部11内にユーザ集合U1を有するが、ユーザ集合U2を持たない。なお、ユーザ集合U2を保持する先集合サーバ10のアドレス等の接続情報は、ユーザ集合U2の識別子IDU2から知る又は調べることができるものとする。
ここで、元集合サーバ10は、要求送出部12が演算元集合記憶部11からユーザ集合U1の要素数N1を抽出する(ST21)。次に、元集合サーバ10は、要求送出部12が、ユーザ集合U2の要素を表すフィルタ情報を要求するため、要素数N1と番組P2の識別子IDU2を含むフィルタ情報要求(のメッセージ)を先集合サーバ20に送信する(ST22)。
先集合サーバ20は、要求受信部22がフィルタ情報要求を受信すると、フィルタ長決定部23が、フィルタ情報要求内の識別子IDU2からユーザ集合U2を選択し、演算先集合記憶部21からユーザ集合U2の要素数N2を抽出し(ST23)、フィルタ情報要求内の要素数N1、適切に設定された誤検出確率fからフィルタ長Lを決定する(ST24)。
ここで、誤検出確率fの設定は、要素数N1,N2の集合全てを試験して、平均して1つ程度の誤検出がある、等の条件を元に決定する。具体的には誤検出確率f=1/(N1+N2)以下となるよう設定することが望ましい。一方、非常にサイズの大きい母集合や小さい母集合に対して、誤検出確率fの上限・下限を設定することもできる。
フィルタ長決定部23は、例えばブルームフィルタの場合、前述同様に(4)式により、フィルタ長を決定する。但し、M=N1+N2である。なお、通常、(4)式の下では、誤検出確率fは、ハッシュ関数繰り返し回数pに依存しており、誤検出確率をfとおくと、f=0.5pとなる。ここでは、f=0.5pの式と上記誤検出確率f≦1/(N1+N2)とから定まるpを(4)式に代入することにより、最も効率の良いフィルタ長Lを決定できる。
フィルタ長Lが定まると、フィルタ生成部24は、前述同様に、フィルタ情報を生成する(ST25)。具体的には、ユーザ集合U2の内容を一つづつバイト列として取り出し、フィルタ上の対応するビットを1にセットする手続きとなる。
以下同様に、フィルタ送出部25は、生成されたフィルタ情報を元集合サーバ10に返信する(ST26)。ここで、フィルタ情報はN1+N2に基づいて生成されており、元集合サーバ10においてユーザ集合U1の各要素を検査する際、上記誤検出確率f以下であることが保証される。
従って、元集合サーバ10の共通集合演算部14は、フィルタ情報に対し、ユーザ集合U1の各要素を検査し、検査結果がフィルタ情報に対応する要素を共通集合{U1∩U2}として抽出する(ST27)。この共通集合は、元集合サーバ10から利用者端末40に返信される(ST28)。なお、元集合サーバ10は、プライバシ保護を理由に、ユーザ集合U1,U2の共通集合を利用者端末40に返信することを拒否しても良い。
利用者端末40では、返信された共通集合を出力する(ST29)。
上述したように本実施形態によれば、元集合サーバ10が利用者端末40からの命令に応じて先集合サーバ20との間で共通集合を抽出する構成としても、第1の実施形態と同様の作用効果を得ることができる。
上述したように本実施形態によれば、元集合サーバ10が利用者端末40からの命令に応じて先集合サーバ20との間で共通集合を抽出する構成としても、第1の実施形態と同様の作用効果を得ることができる。
また、ハッシュ関数繰返し回数pをフィルタ情報要求に含めず、先集合サーバ20が共通集合の候補となる全ての要素数N1,N2に基づいて算出する構成としても、第1の実施形態と同様の作用効果を得ることができる。
(第4の実施形態)
図7は本発明の第4の実施形態に係る集合管理システムの構成を示す模式図である。
図7は本発明の第4の実施形態に係る集合管理システムの構成を示す模式図である。
すなわち、本実施形態は、第3の実施形態の変形例であり、3つ以上のn個の集合から共通要素を抽出するための通信手順を並列化する観点から、元集合サーバ10に対してn台の先集合サーバ201,…,20nを並列に接続した構成となっている。
これに伴い、元集合サーバ10は、演算先のユーザ集合U1,…,Unの各バイト列を表すフィルタ情報を要求するための、演算元のユーザ集合U0の各バイト列の個数N0及び演算先のユーザ集合U1,…,Unの識別子IDU1,…,IDUnを含むフィルタ情報要求を各先集合サーバ201,…,20nに並列に送信する機能と、各先集合サーバ201,…,20nから並列にフィルタ情報を受信する機能と、受信した各フィルタ情報に対して、演算元のユーザ集合U0の各バイト列に対応するか否かを検査し、演算元のユーザ集合U0と各演算先のユーザ集合U1,…,Unとの個別の共通部分(共通要素){U0∩U1},{U0∩U2},…,{U0∩Un-1},{U0∩Un}を抽出する第1の共通部分抽出機能と、個別の共通部分の間の更なる共通部分(共通要素){U0∩U1∩U2∩,…,∩Un-1∩Un}を抽出する第2の共通部分抽出機能と、最終的に得られた共通部分(共通集合)を利用者端末40に返信する機能とをもっている。
なお、各先集合サーバ201〜20nは、前述同様のものである。
なお、各先集合サーバ201〜20nは、前述同様のものである。
次に、以上のように構成された集合管理システムによる共通集合抽出方法を図8のシーケンス図を用いて説明する。
いま、利用者端末40は、前述同様に、利用者の操作により、ユーザ集合U0〜Unの識別子IDU0,…,IDUnを含む共通要素の抽出命令を元集合サーバ10に送信したとする(ST30)。
元集合サーバ10は、この抽出命令に基づいて、演算先のユーザ集合U1,…,Unの各バイト列を表すフィルタ情報を要求するための、演算元のユーザ集合U0の要素数N0及び演算先のユーザ集合U1,…,Unの識別子IDU1,…,IDUnを含むフィルタ情報要求を対応する各先集合サーバ201,…,20nに並列に送信する(ST31−1〜ST31−n)。
詳しくは、先集合サーバ201には、ユーザ集合U0の要素数N0及びユーザ集合U1の識別子IDU1を含むフィルタ情報要求が送信される(ST31−1)。先集合サーバ202には、ユーザ集合U0の要素数N0及びユーザ集合U2の識別子IDU2を含むフィルタ情報要求が送信される(ST31−2)。以下同様に、各々の先集合サーバ203,…,20nに応じた内容のフィルタ情報要求が送信される(ST31−3,…,ST31−n)。
各先集合サーバ201,…,20nは、夫々前述同様にフィルタ情報を生成して元集合サーバ10に返信する(ST31−1,…,ST31−n)。
元集合サーバ10は、並列に受信した各フィルタ情報に対して、演算元のユーザ集合U0の各バイト列に対応するか否かを検査し、演算元のユーザ集合U0と各演算先のユーザ集合U1,…,Unとの個別の共通要素{U0∩U1},{U0∩U2},…,{U0∩Un-1},{U0∩Un}を抽出する(ST33)。
しかる後、元集合サーバ10は、個別の共通要素の間の更なる共通要素{U0∩U1∩U2∩,…,∩Un-1∩Un}を抽出し、最終的に得られた共通集合{U0∩U1∩U2∩,…,∩Un-1∩Un}を利用者端末40に返信する(ST34)。
利用者端末40は、返信された共通集合を出力する(ST35)。
上述したように本実施形態によれば、3つ以上の集合の共通集合を演算する際に、元集合サーバ10と先集合サーバ201〜20nとの間でフィルタ情報要求やフィルタ情報を並列に送受信するので、3台以上のサーバ装置10,201〜20nを直列化せずに、3台以上のサーバ装置10と先集合サーバ201〜20nで各々管理する集合同士の共通集合を抽出することができる。また、従来とは異なり、通信を直列化する必要が無くなり、並列通信が可能になったので、低いレイテンシを期待することができる。
なお、上記各実施形態に記載した手法は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フロッピー(登録商標)ディスク、ハードディスクなど)、光ディスク(CD−ROM、DVDなど)、光磁気ディスク(MO)、半導体メモリなどの記憶媒体に格納して頒布することもできる。
また、この記憶媒体としては、プログラムを記憶でき、かつコンピュータが読み取り可能な記憶媒体であれば、その記憶形式は何れの形態であっても良い。
また、記憶媒体からコンピュータにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているOS(オペレーティングシステム)や、データベース管理ソフト、ネットワークソフト等のMW(ミドルウェア)等が本実施形態を実現するための各処理の一部を実行しても良い。
さらに、本発明における記憶媒体は、コンピュータと独立した媒体に限らず、LANやインターネット等により伝送されたプログラムをダウンロードして記憶又は一時記憶した記憶媒体も含まれる。
また、記憶媒体は1つに限らず、複数の媒体から本実施形態における処理が実行される場合も本発明における記憶媒体に含まれ、媒体構成は何れの構成であっても良い。
尚、本発明におけるコンピュータは、記憶媒体に記憶されたプログラムに基づき、本実施形態における各処理を実行するものであって、パソコン等の1つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であっても良い。
また、本発明におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本発明の機能を実現することが可能な機器、装置を総称している。
なお、本願発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
10…元集合サーバ、11…演算元集合記憶部、12…要求送出部、13…フィルタ受信部、14…共通集合演算部、20,201〜20n…先集合サーバ、21…演算先集合記憶部、22…要求受信部、23…フィルタ長決定部、24…フィルタ生成部、25…フィルタ送出部、30A,30B…集合管理サーバ、40…利用者端末、IDgs,IDgs…識別子、|Gs|,|Gd|…要素数、Gs,Gd…集合、p…ハッシュ関数繰返し回数、L…フィルタ長、e…各バイト列。
Claims (10)
- 各バイト列を含む第1集合を管理する他の集合管理装置にネットワークを介して接続され、各バイト列を含む第2集合を管理する集合管理装置において、
前記第2集合の各バイト列を表すフィルタ情報を要求するための、前記第1集合の各バイト列の個数及び前記第2集合の識別情報を含むフィルタ情報要求を前記他の集合管理装置から受信する要求受信手段と、
この第2集合の識別情報に基づいて、前記第2集合の各バイト列の個数を得る個数取得手段と、
前記第1及び第2集合のそれぞれの各バイト列の個数に基づいて、前記第1及び第2集合の共通集合を得るときの誤検出確率を満たすように前記フィルタ情報のサイズを決定するサイズ決定手段と、
前記サイズをもつフィルタ情報を前記第2集合の各バイト列に基づいて生成するフィルタ情報生成手段と、
前記生成されたフィルタ情報を前記他の集合管理装置に返信するフィルタ情報返信手段と、
を備えたことを特徴とする集合管理装置。 - 請求項1に記載の集合管理装置において、
前記フィルタ情報は、ブルームフィルタであることを特徴とする集合管理装置。 - 請求項1に記載の集合管理装置において、
前記フィルタ情報要求は、許容可能な誤検出確率を含んでおり、
前記サイズ決定手段は、前記フィルタ情報要求に含まれた誤検出確率を満たすように前記サイズを決定することを特徴とする集合管理装置。 - 各バイト列を含む第1集合を管理する第1の集合管理装置と、前記第1の集合管理装置にネットワークを介して接続され、各バイト列を含む第2集合を管理する第2の集合管理装置とを備えた集合管理システムにおいて、
前記第1の集合管理装置は、
前記第2集合の各バイト列を表すフィルタ情報を要求するための、前記第1集合の各バイト列の個数及び前記第2集合の識別情報を含むフィルタ情報要求を前記第2の集合管理装置に送信する要求送信手段と、
前記第2の集合管理装置から前記フィルタ情報を受信するフィルタ情報受信手段と、
前記受信したフィルタ情報に対して、前記第1集合の各バイト列に対応するか否かを検査し、前記第1集合と前記第2集合との共通部分を抽出する共通部分抽出手段と、
を備え、
前記第2の集合管理装置は、
前記フィルタ情報要求を前記第1の集合管理装置から受信する要求受信手段と、
この第2集合の識別情報に基づいて、前記第2集合の各バイト列の個数を得る個数取得手段と、
前記第1及び第2集合のそれぞれの各バイト列の個数に基づいて、前記第1及び第2集合の共通集合を得るときの誤検出確率を満たすように前記フィルタ情報のサイズを決定するサイズ決定手段と、
前記サイズをもつフィルタ情報を前記第2集合の各バイト列に基づいて生成するフィルタ情報生成手段と、
前記生成されたフィルタ情報を前記第1の集合管理装置に返信するフィルタ情報返信手段と、
を備えたことを特徴とする集合管理システム。 - 請求項4に記載の集合管理システムにおいて、
前記第1の集合管理装置は、
前記第2の集合管理装置が有する前記要求受信手段、前記個数取得手段、前記サイズ決定手段、前記フィルタ情報生成手段及び前記フィルタ情報返信手段と同等の各手段を更に備え、
前記第2の集合管理装置は、
前記第1の集合管理装置が有する前記要求受信手段、前記個数取得手段、前記サイズ決定手段、前記フィルタ情報生成手段及び前記フィルタ情報返信手段と同等の各手段を更に備えたことを特徴とする集合管理システム。 - 請求項4に記載の集合管理システムにおいて、
前記フィルタ情報は、ブルームフィルタであることを特徴とする集合管理システム。 - 請求項4に記載の集合管理システムにおいて、
前記フィルタ情報要求は、許容可能な誤検出確率を含んでおり、
前記サイズ決定手段は、前記フィルタ情報要求に含まれた誤検出確率を満たすように前記サイズを決定することを特徴とする集合管理システム。 - 各バイト列を含む第1集合を管理する第1の集合管理装置と、前記第1の集合管理装置にネットワークを介して接続され、各バイト列を含む第2集合を管理する第2の集合管理装置とを備え、前記第1及び第2集合の共通集合を抽出するための共通集合抽出方法において、
前記第1の集合管理装置が、前記第2集合の各バイト列を表すフィルタ情報を要求するための、前記第1集合の各バイト列の個数及び前記第2集合の識別情報を含むフィルタ情報要求を前記第2の集合管理装置に送信する工程と、
前記第2の集合管理装置が、前記フィルタ情報要求を前記第1の集合管理装置から受信する工程と、
前記第2の集合管理装置が、この第2集合の識別情報に基づいて、前記第2集合の各バイト列の個数を得る工程と、
前記第2の集合管理装置が、前記第1及び第2集合のそれぞれの各バイト列の個数に基づいて、前記第1及び第2集合の共通集合を得るときの誤検出確率を満たすように前記フィルタ情報のサイズを決定する工程と、
前記第2の集合管理装置が、前記サイズをもつフィルタ情報を前記第2集合の各バイト列に基づいて生成する工程と、
前記第2の集合管理装置が、前記生成されたフィルタ情報を前記第1の集合管理装置に返信する工程と、
前記第1の集合管理装置が、前記第2の集合管理装置から前記フィルタ情報を受信する工程と、
前記第1の集合管理装置が、前記受信したフィルタ情報に対して、前記第1集合の各バイト列に対応するか否かを検査し、前記第1集合と前記第2集合との共通部分を抽出する共通部分抽出手段と、
を備えたことを特徴とする共通集合抽出方法。 - 各バイト列を含む第1集合を管理する他の集合管理装置にネットワークを介して接続され、各バイト列を含む第2集合を管理する集合管理装置のコンピュータに用いられるプログラムにおいて、
前記コンピュータを、
前記第2集合の各バイト列を表すフィルタ情報を要求するための、前記第1集合の各バイト列の個数及び前記第2集合の識別情報を含むフィルタ情報要求を前記他の集合管理装置から受信する要求受信手段、
この第2集合の識別情報に基づいて、前記第2集合の各バイト列の個数を得る個数取得手段、
前記第1及び第2集合のそれぞれの各バイト列の個数に基づいて、前記第1及び第2集合の共通集合を得るときの誤検出確率を満たすように前記フィルタ情報のサイズを決定するサイズ決定手段、
前記サイズをもつフィルタ情報を前記第2集合の各バイト列に基づいて生成するフィルタ情報生成手段、
前記生成されたフィルタ情報を前記他の集合管理装置に返信するフィルタ情報返信手段、
として機能させるためのプログラム。 - 各バイト列を含む複数の演算先集合を個別に管理する複数の演算先集合管理装置にネットワークを介して接続され、各バイト列を含む演算元集合を管理する演算元集合管理装置において、
演算先集合の各バイト列を表すフィルタ情報を要求するための、演算元集合の各バイト列の個数及び演算先集合の識別情報を含むフィルタ情報要求を前記各演算先集合管理装置に並列に送信する並列送信手段と、
前記各演算先集合管理装置から並列にフィルタ情報を受信する並列受信手段と、
前記受信した各フィルタ情報に対して、前記演算元集合の各バイト列に対応するか否かを検査し、前記演算元集合と各演算先集合との個別の共通部分を抽出する第1の共通部分抽出手段と、
前記個別の共通部分の間の更なる共通部分を抽出する第2の共通部分抽出手段と、
を備えたことを特徴とする演算元集合管理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004002220A JP3947165B2 (ja) | 2004-01-07 | 2004-01-07 | 集合管理装置、システム、方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004002220A JP3947165B2 (ja) | 2004-01-07 | 2004-01-07 | 集合管理装置、システム、方法及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005196480A true JP2005196480A (ja) | 2005-07-21 |
JP3947165B2 JP3947165B2 (ja) | 2007-07-18 |
Family
ID=34817506
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004002220A Expired - Fee Related JP3947165B2 (ja) | 2004-01-07 | 2004-01-07 | 集合管理装置、システム、方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3947165B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016512404A (ja) * | 2013-03-08 | 2016-04-25 | クゥアルコム・インコーポレイテッドQualcomm Incorporated | 近傍アウェアネットワークにおいてデバイスを発見するためのシステムおよび方法 |
-
2004
- 2004-01-07 JP JP2004002220A patent/JP3947165B2/ja not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016512404A (ja) * | 2013-03-08 | 2016-04-25 | クゥアルコム・インコーポレイテッドQualcomm Incorporated | 近傍アウェアネットワークにおいてデバイスを発見するためのシステムおよび方法 |
Also Published As
Publication number | Publication date |
---|---|
JP3947165B2 (ja) | 2007-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101340036B1 (ko) | 전자 컨텐트 가이드 생성 방법 및 그 장치 | |
KR101037263B1 (ko) | 세션 기술 메시지 확장 | |
CN104137553B (zh) | 视频管理系统 | |
EP1703453A2 (en) | Instant Messaging with transmission of presence documents according to the peer to peer paradigm | |
US20100115041A1 (en) | Creating a message readable by a plurality of heterogeneous recipients | |
US8583743B1 (en) | System and method for message gateway consolidation | |
US9832148B2 (en) | System and method for attaching a remotely stored attachment to an email | |
KR20030006734A (ko) | 통신망을 이용한 영상 데이터 관리 방법 및 시스템 | |
US7783974B2 (en) | Multimedia communication and presentation | |
US20090063676A1 (en) | Method and apparatus for providing status information by utilizing presence service and method and apparatus for generating content status information by utilizing presence service | |
JP2013501265A (ja) | ソーシャルネットワークの更新におけるメディアオブジェクトの一部分へのリンクのリアルタイムな提供 | |
JP2013500542A (ja) | データのロギングと分析の方法およびシステム | |
JP2008252907A (ja) | ペイロード検査を介したパケット・ルーティング、及びパブリッシュ/サブスクライブ型ネットワークにおけるサブスクリプション処理 | |
KR20120048525A (ko) | Sms를 통해 원격 디바이스를 제어하는 방법 및 이를 위한 장치 | |
US8914436B2 (en) | Data processing device and data retriever | |
US20120221650A1 (en) | Broker facilitated peer-to-peer publisher collaboration in a publish-subscription environment | |
CN108446373A (zh) | 动画播放方法、装置、设备和存储介质 | |
JP2012529194A (ja) | 放送メッセージをターゲティングするシステムおよび方法 | |
US20090319519A1 (en) | Communication system, communication device, and computer program | |
US20150200995A1 (en) | Methods, systems, and media for providing an entropy source | |
CN114629929A (zh) | 一种日志记录方法、装置及系统 | |
JP3947165B2 (ja) | 集合管理装置、システム、方法及びプログラム | |
US7409446B2 (en) | Information-provision method and information-provision device for structuralized documents stored in different devices connected to a network | |
US20150160925A1 (en) | Methods, Systems, and Media for Generating Random Numbers | |
CN104011718B (zh) | 用于选择识别的消息组的方法、计算机可读介质和计算机 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20070410 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070412 |
|
LAPS | Cancellation because of no payment of annual fees |