JP2008521106A - デバイスのネットワークにおける類似オブジェクトの自動検索方法、デバイス、およびシステム - Google Patents

デバイスのネットワークにおける類似オブジェクトの自動検索方法、デバイス、およびシステム Download PDF

Info

Publication number
JP2008521106A
JP2008521106A JP2007541907A JP2007541907A JP2008521106A JP 2008521106 A JP2008521106 A JP 2008521106A JP 2007541907 A JP2007541907 A JP 2007541907A JP 2007541907 A JP2007541907 A JP 2007541907A JP 2008521106 A JP2008521106 A JP 2008521106A
Authority
JP
Japan
Prior art keywords
similar
storage device
query
objects
controllers
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
Application number
JP2007541907A
Other languages
English (en)
Other versions
JP4721194B2 (ja
Inventor
ジェニングズ、レイモンド、サード
キンツレ、マーティン
ラボア、ジェイソン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2008521106A publication Critical patent/JP2008521106A/ja
Application granted granted Critical
Publication of JP4721194B2 publication Critical patent/JP4721194B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/14Details of searching files based on file metadata
    • G06F16/148File search processing
    • G06F16/152File search processing using file content signatures, e.g. hash values

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Library & Information Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】ネットワーク内でオブジェクトを共有する画像を特徴付ける方法、デバイス、およびシステムを提供する。
【解決手段】方法ステップは、デバイスのネットワークに接続される第1デバイスでクエリ・オブジェクトの照会を開始するステップを含む。デバイスのネットワークに接続される第2デバイスでクエリ・オブジェクトに似た類似オブジェクトを発見し、類似性はネットワーク上の任意のデバイスで自動的に判定される。第2デバイスから第1デバイスに類似オブジェクトを転送する。
【選択図】図3

Description

本発明はネットワーク・プロセッシングに関し、特にネットワーク接続されたコンピュータ上のファイルなどのオブジェクトを探索および検索することに関する。
ユーザがネットワーク上の不明な場所(例えば、グヌーテラなどのピア・ツー・ピア・ネットワーク内のクライアント)から共有オブジェクト(例、ファイル)を得たいと思うとき、ユーザはクライアント・ソフトウェア(例えば、ピア・ツー・ピア・クライアント、ファイル・システム等)を介して要求を発行する。要求が生成されるノードはリクエスタとして知られる。要求はネットワーク上の一または複数のパスに沿って送られ、希望のオブジェクトを所有する任意のノードが応答できる。このノードは直接もしくは要求パス経由で要求側のノードにオブジェクトを返す。この既存のメカニズムは、ユーザがオブジェクトの要求を名前(例、happy_birthday.mp3)によって明示的に発行する必要がある。ユーザがすでに検索したオブジェクトと同様の共有オブジェクトを求める場合、どのオブジェクトが似ているかを判断する手動プロセスを採用して、さらにそのオブジェクトをネットワーク上で探索するのはユーザ側である。
ファイル集合間の類似度を判断する技術が数多くある。ある技術は各ファイルを特色認証し(例、ラビン暗号(Rabin fingerprints)で)、n個のうちm個の特色を照合して類似度を判断する。今まで、この作業は静的なファイル集合に関してのみ行われてきた。加えて、符号化を調べることによって2つのオーディオ・ファイルが似ているかどうかを判断する製品が数多くある。これら技術はテンポとスタイルを調べる。
自動的にミュージック・ファイルをダウンロードする手段を提供するシステムがある。例えば、エージェントを使うシステムがあるが、これはファイルが中央サーバーまたはピア・ノードで利用できるようになるのを待つ。このシステムは、ユーザがファイル名を指定する必要があり、ファイル名のバリエーションを考慮に入れられないという制限がある。しかも、類似のオブジェクトを見つける手段は一切含まれていない。
多くの商取引のウエブ・サイトが客に「類似」の商品を提示する。例えば、客が商品Yをショッピング・カートに追加すると、ウエブ・ページは「Yをご購入になられた方はXおよびZも購入されています」というような文を掲載することがある。商品を相関させるプロセスは手動プロセスか、または購買習慣を追跡する自動化プロセスである。これらのどちらも実際には商品の内容を使って比較してはいない。
本発明の例示的な実施例は、デバイスのネットワーク内でオブジェクトを共有する方法を含む。方法ステップは、デバイスのネットワークに接続された第1デバイスでクエリ・オブジェクトに関する照会(query)を開始するステップを有する。デバイスのネットワークに接続された第2デバイスでクエリ・オブジェクトに似た類似オブジェクトを探し、その類似性をネットワーク上のいずれかのデバイスで自動的に判定する。第2デバイスから第1デバイスに類似オブジェクトを転送する。
別の例示的な実施例は、クエリ・オブジェクトと類似オブジェクトが指定される程度似ていれば、互いに似ているとすることを含む。
本発明の別の例示的な実施例は、類似性がクエリ・オブジェクトと類似オブジェクトの一または複数の特徴の比較に基づくことを含む。
本発明の別の例示的な実施例は、少なくとも1つの特徴がメタデータのタイプであることを含む。
本発明の別の例示的な実施例は、特徴の少なくとも1つがオブジェクト固有タイプとアプリケーション固有タイプのうちの少なくとも1つであることを含む。
本発明の別の例示的な実施例は、メタデータのタイプがオブジェクト・サイズ、オブジェクト名、オブジェクト全体の特色(fingerprint)、およびオブジェクトの少なくとも一部の少なくとも1つの特色のうちの少なくとも1つであることを含む。
本発明の別の例示的な実施例は、特色がコンテンツ定義タイプ、ハッシュ・タイプ、およびオーディオ・タイプのうちの1つであることを含む。
本発明の別の例示的な実施例は、特色がラビン暗号、SHA−1ハッシュ、およびMD5ハッシュのうちの少なくとも1つであることを含む。
本発明の別の例示的な実施例は、特徴の少なくとも1つがクエリ・オブジェクトおよび類似オブジェクトのコンテキストであることを含む。
本発明の別の例示的な実施例は、コンテキストが記憶デバイス上のオブジェクトの少なくとも一部によって定義されることを含む。
本発明の別の例示的な実施例は、コンテキストを共有するオブジェクトを似ていると推定することを含む。
本発明の別の例示的な実施例は、ゼロまたは一以上オブジェクトのブラックリストを提供することを含む。
本発明の別の例示的な実施例は、ブラックリストが明示タイプと黙示タイプのうちの少なくとも1つであることを含む。
本発明の別の例示的な実施例は、ブラックリストにあるオブジェクトがクエリ・オブジェクトと似ていると認定されないことを含む。
本発明の別の例示的な実施例は、デバイスのネットワーク内でオブジェクトを共有する方法を実施するマシンによって実行可能な命令からなるプログラムを有体として具現する、マシンで読取可能なプログラム記憶デバイスを含む。プログラムステップは、デバイスのネットワークに接続される第1デバイスでクエリ・オブジェクトに関する照会を開始するステップを有する。デバイスのネットワークに接続された第2デバイスでクエリ・オブジェクトに似た類似オブジェクトを見つけ、その類似性をネットワーク上の任意のデバイスで自動的に判定する。第2デバイスから第1デバイスに類似オブジェクトを転送する。
本発明の別の例示的な実施例は、コンピュータのネットワーク内で類似オブジェクトを共有するシステムを含む。このシステムは、相互に通信する一または複数のコントローラーを有する。このシステムはまた、一または複数のコントローラーの少なくとも1つと通信して、ゼロまたは一以上オブジェクトを格納する第1記憶デバイスを有し、各オブジェクトが少なくとも1つの特徴をもつ。一または複数のコントローラーの少なくとも1つと通信し、ゼロまたは一以上オブジェクトを格納する第2記憶デバイスもあり、各オブジェクトは少なくとも1つの特徴をもつ。システムはまた、記憶デバイスに通信するコントローラーを経由して、各々が相互に通信する第1および第2の記憶デバイスを有し、そこで照会に応答して、記憶デバイス間での類似オブジェクトの共有は類似性を判定するコントローラーによって促進される。
本発明の別の例示的な実施例は、コントローラーの少なくとも1つが、第2記憶デバイスが第1記憶デバイスに格納された一または複数の格納オブジェクトに似た一または複数の格納オブジェクトをすでに包含しているかを判断ことを含む。また、コントローラーの少なくとも1つが類似格納オブジェクトの少なくとも1つを第1記憶デバイスから第2記憶デバイスに転送することを含む。
本発明の別の例示的な実施例は、記憶デバイスの少なくとも1つと通信するコントローラーのうち少なくとも1つがクエリ・オブジェクトの照会を開始することを含む。また、記憶デバイスの少なくとも1つと通信するコントローラーのうち少なくとも1つが第2記憶デバイスで照会オブジェクトに似た類似オブジェクトを発見することを含む。コントローラーのうち少なくとも1つが類似オブジェクトを第1記憶デバイスに転送する。
本発明の別の例示的な実施例は、第2記憶デバイスが帯域幅の閾値を超えている場合、第2記憶デバイスによる第1記憶デバイスとの転送を拒否することを含む。
本発明の別の例示的な実施例は、記憶デバイスの少なくとも1つに関連する少なくとも1つのブラックリストを含み、ブラックリストに載っているオブジェクトはブラックリストに関連する記憶デバイスには転送できない。
本発明の別の例示的な実施例は、第1記憶デバイスと通信するコントローラーのうち少なくとも1つ(「リクエスタ」)がクエリ・オブジェクトの照会を開始することを含む。また、第2記憶デバイスと通信するコントローラーのうち少なくとも1つ(「レスポンダ」)が照会を受け取り、リクエスタにクエリ・オブジェクトに関する少なくとも1つの特徴を送って回答することを含む。リクエスタは第1記憶デバイスが類似オブジェクトをもつかどうかを判断し、もしもつならレスポンダにそのオブジェクトのリストを送る。レスポンダはそのトランザクションを受付または拒否するかどうかを判断する。トランザクションが受付されたら、リクエスタとレスポンダとの間にオブジェクトの二重転送が起こって、リクエスタはレスポンダから要求される元のオブジェクトを受け取り、レスポンダはリクエスタから類似オブジェクトの少なくとも1つを受け取る。
本発明の別の例示的な実施例は、開始した照会がさらに許容可能な類似度の標識を有することを含む。
図1を参照すると、本発明のある例示的な実施例に従い、本発明を実装するコンピュータ・システム101は中央処理装置(「CPU」)102と、メモリ103と、入出力(「I/O」)インターフェース104を含む。コンピュータ・システム101は一般的に、I/Oインターフェース104を通してディスプレイ105と、マウス、キーボード、および医用画像デバイスなどの様々な入力デバイス106に連結される。サポート回路はキャッシュ、電源、クロック回路、および通信バスなどの回路を含むことができる。メモリ103はランダム・アクセス・メモリ(「RAM」)、読み取り専用メモリ(「ROM」)、ディスク・ドライブ、テープ・ドライブ等、またはその組み合わせを含むことができる。本発明はメモリ103に格納され、CPU102で信号源108からの信号の処理を実行できるルーチン107として実装できる。このように、コンピュータ・システム101は本発明のルーチン107を実行するときに特定目的のコンピュータ・システムとなる汎用コンピュータ・システムである。
コンピュータ・システム101はオペレーティング・システムとマイクロ命令コードも含む。本明細書で説明する様々なプロセスおよび機能は、マイクロ命令の一部またはアプリケーション・プログラムの一部(もしくはその組み合わせ)でよく、オペレーティング・システムを介して実行される。さらに、追加のデータ記憶デバイスおよび印刷デバイスなど、様々な他の周辺デバイスをコンピュータ・プラットフォームに接続してもよい。
図2は、本発明のある例示的な実施例によりネットワーク接続されたノード255の集合を描いており、全体を参照番号200で示される。この例では、全体を参照番号255で示されるノードはネットワーク接続されたコンピュータの集合を表すことができる。ノード255は多数の構成の個別のコントローラーおよび記憶デバイスも表すことができる。接続線230および240で表されるネットワーク200は、コンピュータ210、250、220、およびその他のデバイス255から構成される。ここで、ユーザはネットワーク上の不明な場所から共有オブジェクト(例、ファイル)を取得できる。ユーザはノード210でクライアント・ソフトウェア(例えば、ピア・ツー・ピア・クライアント、ファイル・システム等)を介して要求を発行でき、リクエスタとして知られる。要求は一または複数のパス240に沿って送られ、所望のオブジェクトを所有する任意のノード255、この場合ノード220が応答できる。このノード220は、パス260を介して直接、要求パス240を経由して、またはネットワーク経由でどれか他のパスを経由して要求側のノード210にオブジェクトを返すことができる。
本発明のある例示的な実施例は、あったとしてもユーザからの介入を最小限にして、ユーザに新たな類似コンテンツを自動的に提供する。ユーザが思いもよらなかったまたは知らなかったオブジェクトが発見できるだけでなく、本発明は無駄なユーザ探索をなくせるためユーザの帯域幅をより効率的に使用することもできる。
本発明のある例示的な実施例では、任意の数の技術を使用して2つのオブジェクトが似ているかどうかを判断できる。1例として、2つのオブジェクト間の類似性は2つ以上のユーザのオブジェクト・セットを比較することによって推定できる。例えば、2つのユーザが同じファイルをn%もつ場合、各ユーザは他方のファイルまたはその部分集合の残りに興味をもつと推定できる。
本発明の他の例示的な実施例では、メタデータまたはオブジェクトに関するデータを使用して類似性を判断できる。類似の名前、タイプ等をもつオブジェクトはオブジェクトに従属して似ていると考えられる。算出特色、メタデータの別のタイプ、(例、ラビン暗号、SHA−1ハッシュ、またはオーディオ・ファイル用のオーディオ特色)を各オブジェクトについて算出でき、さらにこれら特色を比較できる。例えば、オブジェクトaとオブジェクトbがオブジェクトaおよびbのn個の部分についてとったn個のラビン暗号のうちm個が一致する場合、似ていると考えられる。他の特徴も同様に使用できる。
本発明の別の例示的な実施例では、オブジェクトの特徴を種々のタイプに分解できる。これらのタイプのうちの2つがオブジェクト固有とアプリケーション固有である。オブジェクト固有の特徴とは、オブジェクトのタイプに関係なくオブジェクトに適用できるものである。これにはオブジェクト・サイズおよびオブジェクト名が含まれるが、それだけに限定されない。アプリケーション固有の特徴とは、オーディオ・ファイル、ビデオ・ファイル、およびイメージ・ファイル、テキスト・ファイルなどであるが、それだけに限定されない固有のオブジェクトのタイプに適用できる特徴である。アプリケーション固有の特徴の例は、肌色などある特定の色の集合の量であり、これは画像でみられる。
本発明の他の例示的な実施例では、ユーザまたはクライアントは求める類似度を指定できる。ユーザまたはクライアントは、受け取る類似オブジェクトの数が多すぎる場合を含むが、それだけに限定されない何らかの理由で類似度を調整することがある。さらに、他のアプリケーションのサービス品質を保証するために帯域幅の上限を指定できる。この帯域幅の上限を類似度の要因の1つに入れてもよい。あるクライアントにとっての他の例として、クラシック音楽とオペラ音楽を似ていると考えることもできよう。ただし、他の人にとってはこの2つが設定される類似度と使用する類似性アルゴリズムに従属していないかもしれない。
本発明の他の例示的な実施例では、オブジェクトをブラックリストに載せる明示および黙示メカニズムがある。ブラックリストに載せるオブジェクトとはユーザが望まないものである。ユーザはクライアント・プログラムに対して一定のメタデータと一致するオブジェクトを検索しないまたは受け取らない(プッシュの場合)と明示的に伝えることができる(例、特定のオペラ歌手の歌をダウンロードしない)。黙示ブラックリストは、ユーザが受け取ったオブジェクトにアクセスしない場合、またはユーザが受け取ったオブジェクトを削除する場合に生じることができる。このようにクライアント・ソフトウェアは類似性およびそれに応じた類似度もしくは類似性またはそれに応じた類似度を調整できる。
図3は本発明のある例示的な実施例に従うシナリオを描いており、全体を参照番号300で示す。図面では、中間ノード310が共有オブジェクト350、360、および370を他のノード320、330、および340にプッシュする。中間ノード310は信用できると分かっているオブジェクト共有ネットワーク内部のノードであり、一定のネットワークで採用される場合、クライアント・ノード320、330、340は中間ノード310を介してネットワーク230に接続できる。中間ノード310は、チャート311で表すように、それぞれに接続されるクライアント320、330、および340の各々に位置するオブジェクト・セット321、331、および341の完全な情報をもつ。例えば、ノード1 320はそのオブジェクト・リスト321にオブジェクト1 324およびオブジェクト2 323の2つのオブジェクトをもつ。加えて、オブジェクト8 322はユーザまたはクライアント・ソフトウェアによってブラックリストに載せられている。中間ノード310はオブジェクト1、4、および6が似ていることを判断する。この類似性はあらゆる数の手段を使って判断でき、その2つの例を以下に述べる。
本発明に従って類似性をどのように判断できるかの1例が、ノード1および2(320および330)がともにオブジェクト2(323および334)をもつことである。2つのノード1および2(320および330)は類似オブジェクトまたは同じオブジェクトを包含するため、この場合ともにオブジェクト2を包含するため、ノード1および2(320および330)は類似コンテキストをもつオブジェクトを包含すると言える。この類似度は、2つのノードの類似(または同じ)オブジェクトの数が増えるにつれて上げることができる。ノード1および2(320および330)は類似コンテキストのオブジェクトを包含するため、中間ノード310は参照番号350で示されるオブジェクト4および6をノード1 320にプッシュでき、参照番号360で示されるオブジェクト1をノード2 320にプッシュできる。
本発明に従い類似性をどのように判断できるかの別の例では、中間ノード310はオブジェクト2と8が似ていると判断する。この場合、ノード310はメタデータ照合アルゴリズムを使って、各オブジェクトに関連する図示していないメタデータを比較する。ただし、この場合、2つのノードのオブジェクトの残りはコンテキストに基づいて似ていると認定されない。このため、参照番号370で示されるようにオブジェクト2がノード3 341にプッシュされる。同様に、参照番号365で示されるように、オブジェクト8 343がノード2 330にプッシュされる。ただし、ノード1 321はオブジェクト8 322をブラックリストに載せているため、ノード1 320にはどのオブジェクトもプッシュされない。このメカニズムを使って、類似オブジェクトをクライアントにプッシュできる。複数のクライアントがさらに多くのオブジェクトを取得すると、そのオブジェクトはその取得に興味をもつ他のユーザと共有できる。
本発明の別の例示的な実施例では、中間ノードはネイバー・ノードとしても知られる隣接ピア・ノードとなることもできるであろうが、その場合オブジェクト・リストが共有される。
図4は本発明の別の例示的な実施例を描く。中間ノードのないネットワーク構成では、他のクライアント・ノードが表示されるようにオブジェクトをプッシュすることがある。図2のネットワーク200を使ってこの例を図示し、全体を参照番号400で示す。ネットワーク200上のオブジェクトの照会は一または複数のパス240を移動するので、照会を送るノード255は類似オブジェクトに関しそれ自身のオブジェクト・セットを検査できる。類似の共有オブジェクトが見つかったら、例えばそのノード410および430は直接パス420および440を介してその類似共有オブジェクトをクライアント210に転送できる。クライアント・ノード210がノード410または430から提供される共有オブジェクトをブラックリストに載せている場合には、クライアント210は開始する前に転送を拒否できる。ノード410および430は自動的にまたは手動の介入を介して、その類似性アルゴリズムを微調整してもよい。例えば、何度も探索を行った後、ノードはオブジェクトをほとんどもしくはまったく転送していなければ、その類似性閾値より低くなることがある。本明細書において類似度としても知られる類似性閾値は、2つのオブジェクトが似ているといえる閾値または程度である。この閾値はノードが使う各アルゴリズムで異なってもよく、またはそのアルゴリズムの一または複数のいくつかの集合体でもよい。
本発明の他の例示的な実施例では、ノード210からの照会は求める類似度を含めることができる。パス240に沿った各ノードは種々の類似性検査技術を採用できる。さらに、照会はクライアントが求める類似オブジェクトに関し最大数の応答を包含できる。パスに沿ったノードが照会に対し類似オブジェクトを返すので、要求をパス上の次のノードに進める前に、この数を1減らせるだろう。この最大数がゼロの場合、類似オブジェクトをもつオブジェクトがあったとしても返答しないであろう。
図5は本発明に従う類似オブジェクトを検索する別のシナリオを描いており、全体を参照記号500で示す。オブジェクトの照会530がリクエスタ210から発行される。この場合レスポンダとして知られるノード220が求められる共有オブジェクト(図示せず)を所有する。レスポンダ220はそのオブジェクトに関するメタデータ540をリクエスタ210に送る。リクエスタはそのオブジェクト・セット(図示せず)を自動的に検査して、一または複数の類似オブジェクトをもつかどうか判断する。もっている場合、類似オブジェクトのリスト(図示せず)を包含する応答550が生成される。レスポンダ220はこの時点でトランザクションを受付560または拒否できる。トランザクションが受付560されたら、両者はオブジェクトの転送570を開始する。リクエスタ210は欲しかったオブジェクトを受け取るとともに、レスポンダ220は一または複数の類似オブジェクトを受け取る。この種のメカニズムはオブジェクトの共有に関与する者に対するお返しなので、クライアントは提供するものが何もないリクエスタの要求を拒否することができる(当分野でリーチ(leaches)として知られる)。
図6は本発明のある例示的な実施例を描くフローチャートであり、全体を参照番号600で示す。これはコンピュータのネットワーク内の類似オブジェクトを取得する方法を示す。ブロック610は第1コントローラーがオブジェクトの照会を開始するステップを表す。ブロック620は第2コントローラーが第2コントローラーと通信する記憶装置に格納される照会オブジェクトに似たオブジェクトを発見するステップを表す。ブロック630は第2記憶デバイスから第1記憶デバイスに類似オブジェクトを転送するステップを表す。
本発明の別の例示的な実施例では、クライアント・プログラムはユーザの代わりにメタデータまたは何か他の特徴に基づいて探索を自動的に発行できる。ノードが類似オブジェクトをもつ場合、本明細書で説明するように応答できる。
図7は本発明のいくつかの他の例示的な実施例を描く。ここでは、図4に描かれるノード400のネットワークが描かれ、全体を参照番号700で示す。この例では、一般ノード255、ノード210およびノード410はそれぞれコントローラー710、210’、および410’に置き換えられている。記憶デバイス720a〜720dは通信手段730を介してコントローラー710、210’、および410’と通信している。コントローラー710、210’、および410’は互いに、またネットワークの他のノードと通信している。コントローラーは一または複数の記憶デバイスに接続してもよい。また、記憶デバイス720cの場合のように、複数のコントローラーを同じ記憶デバイスに接続してもよく、各コントローラー710および410’は照会に似たオブジェクトを発見するのに異なるサーチ・アルゴリズムを使用できる(ただしそうしなければならならいわけではない)。ハードドライブをネットワークで利用できるようにしたコンピュータの場合のように、コントローラーと記憶デバイスを1つのデバイスにまとめてもよい。コントローラーは別の独立型大容量記憶デバイスに接続するコンピュータとなりうる。他の例にはデジタル・カメラが含まれ、これはネットワークに直接またはコンピュータを介して接続できる。別の例はセル接続を介してネットワークに接続する携帯電話でありうる。この例では、携帯電話はコントローラーと記憶デバイス両方の働きができる。ノードは任意の数のメディア・キャプチャ、記憶および再生デバイス、mp3プレーヤーなどの同様なデジタル・メディア・プレーヤーを有することもでき、これをコンピュータを介してまたは直接ネットワークに接続できる。コントローラー間の接続およびコントローラーと記憶デバイスの接続は、有線接続または携帯電話の場合のように無線接続を使って実施できる。
本発明の実施例は、様々な形態のハードウェア、ソフトウェア、ファームウェア、専用プロセッサ、またはその組み合わせに実装できることは理解されるべきである。一実施例では、本発明はプログラム記憶デバイスに有体として具現されるアプリケーション・プログラムとしてソフトウェアに実装できる。アプリケーション・プログラムは何らかの適したアーキテクチャを有するマシンにアップロードでき、かつマシンによって実行できる。
上記説明は例証となる実施例を表すにすぎないことも理解されるべきである。読者の便宜を図って、上記説明は考えられる実施例のうち本発明の原理の説明に役立つ代表的な実例を中心に述べてきたが、考えられる変型のすべてを余すところなく挙げようとしたわけではない。本発明の特定の部分についてその代替実施例を提示していないことが、その代替実施例の放棄とみなしてはならない。本発明の精神および範囲を逸脱することなく他のアプリケーションおよび実施例も簡単に実施できる。そのため、本発明は具体的に述べてきた実施例だけに限定するつもりはなく、本発明は以下に続く請求項に従って定義する。記述していない実施例の多くも本請求項の文字通りの範囲内にあり、かつ他のものは同等であると認められる。
本開示の範囲は、本明細書に開示するあらゆる新規な特徴もしくは特徴の組み合わせを含む。出願人はこれにより本出願の手続遂行中またはそれから派生するあらゆる当該その後の出願の手続遂行中新たな請求項を当該特徴もしくは特徴の組み合わせに従って作成することがあることを予告しておく。特に、添付の請求項に関し、従属請求項の特徴は独立請求項の特徴と組み合わせることができ、また各独立請求項の特徴は請求項に列挙する特定の組み合わせだけでなく、あらゆる適切なやり方で組み合わせることができる。
明確にするために、明細書および請求項を通しここで使われる「有する」という用語は、「だけからなる」を意味すると解釈してはならない。
コンピュータ・システムの例示的な実施例を図示する概略図である。 本発明の例示的な実施例を実装できるノードのネットワークの例を図示する概略図である。 本発明の例示的な実施例により中間ノードが他のノードにオブジェクトをプッシュするネットワークを図示する概略図である。 本発明の例示的な実施例により、オブジェクトが要求パスのノードからプッシュされるデータ処理システムのネットワークを図示する概略図である。 本発明による二重転送の例示的な実施例を図示するシーケンス図である。 本発明の例示的な実施例による類似オブジェクトの自動検索方法を示すフロー図である。 本発明の例示的な実施例によるネットワークを図示する概略図である。

Claims (23)

  1. デバイスのネットワークに接続される第1デバイスでクエリ・オブジェクトの照会(query)を開始するステップと、
    前記デバイスのネットワークに接続される第2デバイスでクエリ・オブジェクトに似た類似オブジェクトを発見するステップで、類似性はネットワーク上の任意のデバイスで自動的に判定される、前記発見するステップと、
    類似オブジェクトを前記第2デバイスから前記第1デバイスに転送するステップとを有する、デバイスのネットワーク内でオブジェクトを共有する方法。
  2. 前記クエリ・オブジェクトと前記類似オブジェクトは、それらが所定の程度似ている場合に互いに似ている、請求項1に記載の方法。
  3. 類似性は前記クエリ・オブジェクトと前記類似オブジェクトの一または複数の特徴の比較に基づく、請求項1または2に記載の方法。
  4. 前記特徴の少なくとも1つがメタデータのタイプである、請求項3に記載の方法。
  5. 前記特徴のうち少なくとも1つがオブジェクト固有タイプとアプリケーション固有タイプのうちの少なくとも1つである、請求項3または4に記載の方法。
  6. 前記メタデータのタイプが、オブジェクト・サイズ、オブジェクト名、オブジェクト全体の特色(fingerprint)、およびオブジェクトの少なくとも一部の少なくとも1つの特色のうちの少なくとも1つである、請求項4または5に記載の方法。
  7. 前記特色がコンテンツ定義タイプ、ハッシュ・タイプ、およびオーディオ・タイプのいずれかである、請求項6に記載の方法。
  8. 前記特色がラビン暗号、SHA−1ハッシュ、およびMD5ハッシュのうち少なくとも1つである、請求項6または7に記載の方法。
  9. 前記特徴のうち少なくとも1つが前記クエリ・オブジェクトと前記類似オブジェクトのコンテキストである、請求項3〜8のいずれかに記載の方法。
  10. 前記コンテキストが記憶デバイスのオブジェクトの少なくとも一部により定義される、請求項9に記載の方法。
  11. 前記コンテキストを共有する前記オブジェクトが似ていると推定される、請求項10に記載の方法。
  12. ゼロまたは一以上オブジェクトのブラックリストを提供するステップをさらに有する、請求項1〜11のいずれかに記載の方法。
  13. 前記ブラックリストが明示タイプと黙示タイプのうちの少なくとも1つである、請求項12に記載の方法。
  14. 前記ブラックリストにある前記オブジェクトが前記クエリ・オブジェクトと似ていると認定されない、請求項12または13に記載の方法。
  15. 請求項1〜14のいずれか1項の方法の各ステップをコンピュータに実行させるためのコンピュータ・プログラム。
  16. デバイスのネットワーク内で類似オブジェクトを共有するシステムが、
    相互に通信する一または複数のコントローラーと、
    前記一または複数のコントローラーの少なくとも1つと通信して、ゼロまたは一以上オブジェクトを格納する第1記憶デバイスで、各オブジェクトが少なくとも1つの特徴をもつ、前記第1記憶デバイスと、
    前記一または複数のコントローラーの少なくとも1つと通信して、前記ゼロまたは一以上オブジェクトを格納する第2記憶デバイスで、各オブジェクトが少なくとも1つの特徴をもつ、前記第2記憶デバイスとを有し、
    前記第1および第2記憶デバイスが各々前記記憶デバイスと通信するコントローラーを介して相互に通信し、
    照会に応答して、前記記憶デバイス間の前記類似オブジェクトの共有が類似性を判定する前記コントローラーによって促される、システム。
  17. 前記格納オブジェクトの一または複数の特徴を比較することによって類似性を判定する、請求項16に記載のシステム。
  18. 前記コントローラーの少なくとも1つが、前記第2記憶デバイスが前記第1記憶デバイスに格納される一または複数の格納オブジェクトに似た一または複数の格納オブジェクトをすでに包含することを判断し、
    さらに前記コントローラーの少なくとも1つが前記第1記憶デバイスの前記類似格納オブジェクトの少なくとも1つを前記第2記憶デバイスに転送する、請求項16または17に記載のシステム。
  19. 前記記憶デバイスの少なくとも1つと通信する前記コントローラーの少なくとも1つがクエリ・オブジェクトの照会を開始することと、
    前記記憶デバイスの少なくとも1つと通信する前記コントローラーの少なくとも1つが、前記第2記憶デバイス内の照会オブジェクトに似た類似オブジェクトを発見することと、
    前記コントローラーの少なくとも1つが前記第1記憶デバイスに前記類似オブジェクトを転送することをさらに有する、請求項16、17、または18に記載のシステム。
  20. 前記第2記憶デバイスが帯域幅の閾値を超えている場合、前記第2記憶デバイスによる前記第1記憶デバイスとの転送を拒否する、請求項16、17、18、または19に記載のシステム。
  21. ブラックリストに載るオブジェクトは前記ブラックリストに関連する前記記憶デバイスに転送できない、前記記憶デバイスの少なくとも1つに関連する少なくとも1つのブラックリストを有する、請求項16〜20のいずれかに記載のシステム。
  22. 前記第1記憶デバイスと通信する前記コントローラーの少なくとも1つ(「リクエスタ」)が、クエリ・オブジェクトの照会を開始することと、
    前記第2記憶デバイスに通信する前記コントローラーの少なくとも1つ(「レスポンダ」)が、前記照会を受け取り、前記クエリ・オブジェクトに関する少なくとも1つの特徴を前記リクエスタに送ることによって応答することと、
    前記リクエスタが前記第1記憶デバイスが類似オブジェクトをもつかどうかを判断し、もつ場合そのオブジェクトのリストを前記レスポンダに送ることと、
    前記レスポンダが前記トランザクションを受付するかまたは拒否するかどうかを決定し、前記トランザクションを受付する場合、前記リクエスタと前記レスポンダの間で前記オブジェクトの二重転送が起こり、そこで前記リクエスタが前記レスポンダから要求される前記元のオブジェクトを受け取り、かつ前記レスポンダが前記リクエスタから前記類似オブジェクトの少なくとも1つを受け取ることをさらに有する、請求項16〜21のいずれかに記載のシステム。
  23. 前記開始された照会がさらに、類似性の受入可能な程度の標識を有する、請求項1〜14のいずれかに記載の方法。
JP2007541907A 2004-11-20 2005-11-02 デバイスのネットワークにおける類似オブジェクトの自動検索方法、デバイス、およびシステム Expired - Fee Related JP4721194B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/993,785 2004-11-20
US10/993,785 US7680798B2 (en) 2004-11-20 2004-11-20 Method, device and system for automatic retrieval of similar objects in a network of devices
PCT/EP2005/055712 WO2006053830A1 (en) 2004-11-20 2005-11-02 Method, device and system for automatic retrieval of similar objects in a network of devices

Publications (2)

Publication Number Publication Date
JP2008521106A true JP2008521106A (ja) 2008-06-19
JP4721194B2 JP4721194B2 (ja) 2011-07-13

Family

ID=36143711

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007541907A Expired - Fee Related JP4721194B2 (ja) 2004-11-20 2005-11-02 デバイスのネットワークにおける類似オブジェクトの自動検索方法、デバイス、およびシステム

Country Status (6)

Country Link
US (1) US7680798B2 (ja)
EP (1) EP1825400A1 (ja)
JP (1) JP4721194B2 (ja)
CN (1) CN101044480A (ja)
TW (1) TW200636509A (ja)
WO (1) WO2006053830A1 (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2007234696B2 (en) * 2006-04-07 2011-08-18 Data Storage Group Data compression and storage techniques
US8832045B2 (en) 2006-04-07 2014-09-09 Data Storage Group, Inc. Data compression and storage techniques
US7844581B2 (en) * 2006-12-01 2010-11-30 Nec Laboratories America, Inc. Methods and systems for data management using multiple selection criteria
US8214517B2 (en) * 2006-12-01 2012-07-03 Nec Laboratories America, Inc. Methods and systems for quick and efficient data management and/or processing
US8032302B1 (en) * 2007-01-02 2011-10-04 Strategic Design Federation W, Inc. Method and system of modifying weather content
US8150807B2 (en) * 2007-10-03 2012-04-03 Eastman Kodak Company Image storage system, device and method
US8370309B1 (en) 2008-07-03 2013-02-05 Infineta Systems, Inc. Revision-tolerant data de-duplication
US8832034B1 (en) 2008-07-03 2014-09-09 Riverbed Technology, Inc. Space-efficient, revision-tolerant data de-duplication
US8078593B1 (en) 2008-08-28 2011-12-13 Infineta Systems, Inc. Dictionary architecture and methodology for revision-tolerant data de-duplication
US11113299B2 (en) 2009-12-01 2021-09-07 Apple Inc. System and method for metadata transfer among search entities
CN102394925B (zh) * 2011-10-28 2014-05-28 广东电网公司电力科学研究院 远程监测诊断中心与地区调度中心的通讯方法及装置
US9230040B2 (en) * 2013-03-14 2016-01-05 Microsoft Technology Licensing, Llc Scalable, schemaless document query model
CN105183734A (zh) * 2014-06-16 2015-12-23 西安中兴新软件有限责任公司 一种图像文件共享方法和装置
CN105550352A (zh) * 2015-12-28 2016-05-04 华为技术有限公司 一种基于图像的重复数据删除方法及装置
CN110390081A (zh) * 2018-04-17 2019-10-29 北大方正集团有限公司 文档比对方法、装置及设备

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001046843A2 (en) 1999-12-21 2001-06-28 Tivo, Inc. Intelligent peer-to-peer system and method for collaborative suggestions and propagation of media
US8132219B2 (en) * 2002-06-21 2012-03-06 Tivo Inc. Intelligent peer-to-peer system and method for collaborative suggestions and propagation of media
US6643652B2 (en) * 2000-01-14 2003-11-04 Saba Software, Inc. Method and apparatus for managing data exchange among systems in a network
GB0009750D0 (en) * 2000-04-19 2000-06-07 Erecruitment Limited Method and apparatus for data object and matching,computer readable storage medium,a program for performing the method,
US6856078B2 (en) * 2001-06-27 2005-02-15 Asm America, Inc. Lamp filament design
US7039634B2 (en) 2003-03-12 2006-05-02 Hewlett-Packard Development Company, L.P. Semantic querying a peer-to-peer network
US7188254B2 (en) * 2003-08-20 2007-03-06 Microsoft Corporation Peer-to-peer authorization method
US8250150B2 (en) * 2004-01-26 2012-08-21 Forte Internet Software, Inc. Methods and apparatus for identifying and facilitating a social interaction structure over a data packet network
US7603370B2 (en) * 2004-03-22 2009-10-13 Microsoft Corporation Method for duplicate detection and suppression
US7886024B2 (en) * 2004-07-01 2011-02-08 Microsoft Corporation Sharing media objects in a network
US7613787B2 (en) * 2004-09-24 2009-11-03 Microsoft Corporation Efficient algorithm for finding candidate objects for remote differential compression
US20060080356A1 (en) * 2004-10-13 2006-04-13 Microsoft Corporation System and method for inferring similarities between media objects

Also Published As

Publication number Publication date
US7680798B2 (en) 2010-03-16
US20060112148A1 (en) 2006-05-25
EP1825400A1 (en) 2007-08-29
CN101044480A (zh) 2007-09-26
JP4721194B2 (ja) 2011-07-13
WO2006053830A1 (en) 2006-05-26
TW200636509A (en) 2006-10-16

Similar Documents

Publication Publication Date Title
JP4721194B2 (ja) デバイスのネットワークにおける類似オブジェクトの自動検索方法、デバイス、およびシステム
US9952753B2 (en) Predictive caching and fetch priority
US9348918B2 (en) Searching content in distributed computing networks
JP3997774B2 (ja) データ処理システム、データ処理方法、および情報処理装置、並びにコンピュータ・プログラム
CN106933854B (zh) 短链接处理方法、装置及服务器
JP2004005491A (ja) ピア・ツー・ピア・ファイル共有の方法及びその装置
US20070118910A1 (en) Identification of files in a file sharing environment
KR100916162B1 (ko) 핑거프린트 데이터베이스 관리 방법 및 시스템
JP2009277219A (ja) 複数の供給源からのメディアファイルの管理
US20140059065A1 (en) Management of network-based digital data repository
Liao et al. A scalable approach for content based image retrieval in cloud datacenter
JP4181196B2 (ja) 検索システム、検索方法、および情報管理装置
KR20130080181A (ko) 클라우드 시스템을 이용하는 단말기의 장치 및 방법
JP2007018153A (ja) 情報検索システム、情報検索装置、情報検索方法、記録媒体及びプログラム
CA3155109A1 (en) Blockchain data search method
TW200928799A (en) Collaborative tagging systems and methods for resources
JP2007200271A (ja) コンテンツ・ネットワークにおいてマルチメディア・コンテンツを検索するシステム及びその検索方法
KR102141411B1 (ko) 콘텐츠 기반 클린 클라우드 시스템 및 그 방법
KR20020095311A (ko) 주문형 비디오 시스템에서 멀티미디어 데이터를 등록 및제공하는 방법
JP6974222B2 (ja) 検索装置、検索方法および検索プログラム
JP2020102048A (ja) ソフトウェア製品提案システム
US20220044215A1 (en) Consumer controlled sharing of details of retail transactions
CN116795288A (zh) 数据存取方法、系统和存储介质
Su et al. Reconfigurable content–based image retrieval on peer–to–peer networks
US20080168051A1 (en) Systems and methods for sharing information

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080813

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101102

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20101214

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101214

RD12 Notification of acceptance of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7432

Effective date: 20101214

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20101215

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110214

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20110225

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110225

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: 20110324

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20110324

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20110324

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110329

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140415

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees