(57)【要約】  コンピュータプログラムプロダクトを含む、データファイル転送フレームワーク内での削除のための方法および装置。フレームワークは、相互接続されたコンピュータシステムノードのネットワークであって、データファイルが、前記ネットワーク内の物理ストレージデバイスに記憶されることなく、コンピュータメモリからコンピュータメモリに連続的に転送される、ネットワークと、ネットワークに結合された中央サーバと、ネットワークに結合された削除サーバとを含む。【選択図】  図１
2011523120.tif 000002
【特許請求の範囲】
【請求項１】
相互接続されたコンピュータシステムのネットワークにおける方法であって、前記ネットワークにおいて、データファイルが、前記ネットワーク内の物理ストレージデバイスに記憶されることなく、コンピュータメモリからコンピュータメモリに連続的に転送され、該方法が、
連続的に転送されているデータファイルを削除するリクエストであって、ファイル名を含む該リクエストを、前記ネットワークに結合されたソースシステムから受信することと、
前記ファイル名に対して、前記ネットワーク内の中央サーバに関連付けられたインデックスファイルを検索することと、
前記インデックスファイルから前記ファイル名を削除することと、
前記ネットワーク内の、前記ファイル名によって示される前記データファイルを見つけることと、
前記見つけたデータファイルを、前記ネットワーク内のデータファイルを転送または記憶しないコンピュータシステムのメモリに案内することと、
を含む、方法。
【請求項２】
前記見つけることは、
ノードメモリに入る前記データファイルを示すハッシュマークを用いて、前記中央サーバにおいて前記リクエストをマッチングすることと、
メモリ内に前記データファイルを有すると予測されるノードにメッセージを送ることと、
前記データファイルが削除されたことを伝える確認メッセージを前記中央サーバに送ることと、
を含む、請求項１に記載の方法。
【請求項３】
前記リクエストされたデータファイルが削除されたことを伝えるアクナリッジメントを、前記ネットワーク内のデータファイルを転送しない前記コンピュータシステムから受信することをさらに含む、請求項２に記載の方法。
【請求項４】
データファイルを維持するために情報担体に有形に具現化されるコンピュータプログラム製品であって、該コンピュータプログラム製品は、データ処理装置に、相互接続されたコンピュータシステムのネットワークであって、データファイルが、前記ネットワーク内の物理ストレージデバイスに記憶されることなく、コンピュータメモリからコンピュータメモリに連続的に転送される、ネットワークにおいて、
連続的に転送されているデータファイルを削除するリクエストであって、ファイル名を含む該リクエストを、前記ネットワークに結合されたソースシステムから受信させ、
前記ファイル名に対して、前記ネットワーク内の中央サーバに関連付けられたインデックスファイルを検索させ、
前記インデックスファイルから前記ファイル名を削除させ、
前記ネットワーク内の、前記ファイル名によって示される前記データファイルを見つけさせ、
前記見つけたデータファイルを、前記ネットワーク内のデータファイルを転送または記憶しないコンピュータシステムのメモリに案内させるよう、動作可能である、コンピュータプログラム製品。
【請求項５】
前記見つけることは、
ノードメモリに入る前記データファイルを示すハッシュマークを用いて、前記中央サーバにおいて前記リクエストをマッチングすることと、
メモリ内に前記データファイルを有すると予測されるノードにメッセージを送ることと、
前記データファイルが削除されたことを伝える確認メッセージを前記中央サーバに送ることと、
を含む、請求項１に記載のコンピュータプログラム製品。
【請求項６】
データ処理装置にさらに、
前記リクエストされたデータファイルが削除されたことを伝えるアクナリッジメントを、前記ネットワーク内のデータファイルを転送しない前記コンピュータシステムから受信させるよう、動作可能である、請求項５に記載のコンピュータプログラム製品。
【請求項７】
相互接続されたコンピュータシステムノードのネットワークであって、データファイルが、前記ネットワーク内の物理ストレージデバイスに記憶されることなく、コンピュータメモリからコンピュータメモリに連続的に転送される、ネットワークと、
前記ネットワークに結合された中央サーバと、
前記ネットワークに結合された削除サーバと、
を含む、フレームワーク。
【請求項８】
前記中央サーバは、
前記ネットワーク内を連続的に転送されているデータファイルを削除するリクエストを受信し、
前記データファイルを示すファイル名に対して、前記中央サーバに関連付けられたインデックスファイルを検索し、
前記インデックスファイルから前記ファイルを削除するように適応される、請求項７に記載のフレームワーク。
【請求項９】
前記中央サーバはさらに、
前記ネットワーク内の、前記ファイル名によって示される前記データファイルを見つけ、
前記見つけたデータファイルを前記削除サーバに案内するように適応される、請求項８に記載のフレームワーク。
【請求項１０】
前記見つけることは、
ノードメモリに入る前記データファイルを示すハッシュマークを用いて、前記中央サーバにおいて前記リクエストをマッチングすることと、
メモリ内に前記データファイルを有すると予測されるノードにメッセージを送ることと、
前記データファイルが削除されたことを伝える確認メッセージを前記中央サーバに送ることと、
を含む、請求項９に記載のフレームワーク。
【発明の詳細な説明】
【技術分野】
【０００１】
[001]  本明細書において開示する少なくとも幾つかの実施形態は、データストレージに関わり、より具体的にはデータファイル転送フレームワークにおける削除に関する。
【背景技術】
【０００２】
[002]  個人、組織、企業、および政府によって保存されなくてはならないデータ量は年々増加している。単に要求に対応することに加えて、組織は他のストレージに関する問題にも直面している。オンラインでリアルタイムの企業および政府に移行するにつれて、重要なデータは、ソフトウェアまたはハードウェアの障害による損失やアクセス不可状況から保護されなければならない。今日では、多くのストレージプロダクトが障害に対する完全な保護を提供せず、ユーザはデータ損失またはデータが利用不可というリスクに晒されている。例えば、今日、市場にある多くのストレージソリューションは、プロセッサ障害といった幾つかの障害モードに対する保護は提供するが、ディスクドライブ障害といった他のものには保護を提供しない。多くの組織が、それらのデータストレージシステムにおけるコンポーネント障害によるデータ損失またはデータが利用不可というリスクに晒されている。
【０００３】
[003]  データストレージの市場は、概して、２つの大きなセグメント、すなわち、ＤＡＳ（ダイレクト・アタッチド・ストレージ）とネットワークストレージとに分類される。ＤＡＳは、サーバに直接接続されたディスクを含む。
【０００４】
[004]  ネットワークストレージは、特定のサーバではなくネットワークに取り付けられたディスクを含み、当該ネットワーク上の他のデバイスおよびアプリケーションによってアクセスおよび共有されることが可能である。ネットワークストレージは、概して、２つのセグメント、すなわち、ＳＡＮ（ストレージ・エリア・ネットワーク）およびＮＡＳ（ネットワーク・アタッチド・ストレージ）に分類される。
【０００５】
[005]  ＳＡＮは、ユーザのより大規模のネットワークに代わって、様々な種類のデータストレージデバイスを、関連付けられるデータサーバに相互接続する高速専用ネットワーク（またはサブネットワーク）である。通常、ＳＡＮは、ある企業のコンピュータリソースネットワーク全体の一部である。ストレージ・エリア・ネットワークは、他のコンピュータリソースの直ぐ近くに集められるが、ＷＡＮ（ワイド・エリア・ネットワーク）キャリア技術を利用して、バックアップまたはアーカイブストレージのために遠隔位置まで拡張されてもよい。
【０００６】
[006]  ＮＡＳは、ネットワークのワークステーションユーザにアプリケーションを提供しているローカルコンピュータに取り付けられるのではなく、独自のネットワークアドレスを有してセットアップされるハードディスクストレージである。ストレージアクセスおよびその管理をローカルサーバから外すことによって、アプリケーションプログラミングとファイルは共により高速に提供可能となる。これは、アプリケーションプログラミングとファイルは、同じプロセッサリソースを求めて競合しないからである。ＮＡＳは、ローカル・エリア・ネットワーク（通常、イーサネット（登録商標）ネットワーク）に取り付けられ、ＩＰアドレスが割り当てられている。ファイルリクエストは、メインサーバによってＮＡＳファイルサーバにマッピングされる。
【０００７】
[007]  上述したものすべては、色々な意味でアキレス腱となりうる1つの共通の特徴を共有している。すなわち、データは、ディスクドライブ、ＣＤドライブ等の物理的な媒体に記憶されることである。
【発明の概要】
【０００８】
[008]  本発明は、コンピュータプログラムプロダクトを含む、データファイル転送フレームワークにおける削除のための方法および装置を提供する。
【０００９】
[009]  一態様では、本発明は方法を特徴とし、この方法は、相互接続されたコンピュータシステムのネットワーク内の任意の物理ストレージデバイスに記憶されることなく、データファイルがコンピュータメモリからコンピュータメモリに連続的に転送される該ネットワークにおいて、連続的に転送されているデータファイルを削除するリクエストであって、ファイル名を含む該リクエストを、ネットワークに結合されたソースシステムから受信することと、ファイル名に対して、ネットワーク内の中央サーバに関連付けられたインデックスファイルを検索することと、インデックスファイルからファイル名を削除することと、ネットワーク内の、ファイル名によって示されるデータファイルを見つけることと、見つけたデータファイルを、ネットワーク内のデータファイルを転送または記憶しないコンピュータシステムのメモリに案内することと、を含む。
【００１０】
[0010]  別の態様では、本発明はフレームワークを特徴とし、このフレームワークは、相互接続されたコンピュータシステムノードのネットワーク内の任意の物理ストレージデバイスに記憶されることなく、データファイルがコンピュータメモリからコンピュータメモリに連続的に転送される、該ネットワークと、ネットワークに結合された中央サーバと、ネットワークに結合された削除サーバと、を含む。
【００１１】
[0011]  本発明の１以上の実施の詳細を、添付図面および以下の説明に記載する。本発明の更なる特徴、態様、および利点は、以下の説明、図面、および請求項から明らかとなろう。
【図面の簡単な説明】
【００１２】
[0012]  実施形態は、添付図面において限定ではなく例示的に示す。図中、同様の参照符号は同様の要素を示す。
【図１】[0013]  図１は、例示的なフレームワークのブロック図である。
【図２】[0014]  図２は、例示的なユーザシステムのブロック図である。
【図３】[0015]  図３は、例示的なネットワークシステムのブロック図である。
【図４】[0016]  図４は、プロセスのフロー図である。
【図５】[0017]  図５は、プロセスのフロー図である。
【図６】[0018]  図６は、プロセスのフロー図である。
【図７】[0019]  図７は、プロセスのフロー図である。
【図８】[0020]  図８は、プロセスのフロー図である。
【発明を実施するための形態】
【００１３】
[0021]   ピア・ツー・ピア・ネットワークでは、データファイルを最終的にディスクドライブのような物理媒体に記憶するために、データファイル転送を過渡的に（in a transient fashion）使用する。本発明は、これと異なり、連続的なデータファイル転送システムである。すなわち、データファイルは、1つのノードメモリから別のノードメモリにデータファイルを連続的に転送することによって記憶される。
【００１４】
[0022]  図１に示すように、例示的なフレームワーク１０は、ユーザシステム１２と、多数のネットワークシステム１４、１６、１８、２０、２２を含む。各ネットワークシステム１４、１６、１８、２０、２２は、フレームワーク１０内のノードと見なすことができ、また、１つのそのようなネットワークシステム、例えばネットワークシステム１４は、中央サーバとして指定されてよく、中央サーバは、フレームワーク１０における管理的立場をとりうる。各ノード１４、１６、１８、２０、２２は、中央サーバ１４の直接管理下にあるプライベート管理ネットワークのピアとして確立されうる。ピアノードは、プライベートノードおよびパブリックノードの混合であってもよく、したがって、中央サーバ１４の直接の物理的管理下になくてもよい。フレームワーク１０は、全体がパブリックであってもよい。この場合、中央サーバ１４（または複数のサーバ）は、いずれのピアノードも直接的には保有せず、直接の物理的管理を行わない。
【００１５】
[0023]  一例では、ノード１４、１６、１８、２０、２２は、プライベートネットワークであると見なされる。プライベートネットワークでは、アドミニストレータがノードを管理し、どのノードが中央サーバであるか指定しうる。フレームワーク１０はさらに、1以上の追加ノードを含むことができる。例えば、ノード２４、２６、および２８である。これらのノード２４、２６、および２８は、アドミニストレータがその中においてほとんどまたは全く管理を行わない１以上のパブリックネットワークの一部と見なされる。
【００１６】
[0024]  図２に示すように、ユーザシステム１２は、プロセッサ３０、メモリ３２、および入力／出力（Ｉ／Ｏ）デバイス３４を含みうる。メモリ３２は、リナックス（登録商標）、アップル（登録商標）ＯＳ、またはウィンドウズ（登録商標）といったオペレーティングシステム（ＯＳ）３６、1以上のアプリケーションプロセス３８、および以下に詳細に説明するストーレジプロセス１００を含みうる。アプリケーションプロセス３８は、オープンオフィスまたはマイクロソフト（登録商標）オフィスといったユーザプロダクティビティソフトウェアを含みうる。Ｉ／Ｏデバイス３４は、ユーザ４２に対して表示するためのグラフィカルユーザインターフェイス（ＧＵＩ）４０を含みうる。
【００１７】
[0025]  図３に示すように、各ネットワークシステムは、ネットワークシステム１４のように、プロセッサ５０およびメモリ５２を含みうる。メモリ５２は、リナックス（登録商標）、アップル（登録商標）ＯＳ、またはウィンドウズ（登録商標）といったＯＳ５４、以下に十分に説明する、テータファイル転送プロセス２００、検索プロセス３００、および取り出しプロセス４００を含みうる。
【００１８】
[0026]  ネットワークシステム２２といった1つのネットワークシステムが、以下により詳細に説明する削除ノードとして指定される。削除ノード２２のメモリは、データファイル転送プロセス２００、検索プロセス３００、および取り出しプロセス４００を含まない。削除ノードによって受信される任意のデータファイルは転送も保存もされない。削除ノードのメモリにおいて新しく受信されたデータは、削除ノードのメモリによって受信された古いデータに上書きする。事実上、削除ノード２２は、それに転送されてきたデータファイルのブラックホールとして機能する。
【００１９】
[0027]  従来のシステムでは、アプリケーションプロセス３８は、データファイルを記憶し、削除し、検索し、および取り出す必要がある。これらの従来のシステムでは、データファイルは、ローカルまたはリモートの物理デバイスに記憶される。さらに、幾つかのシステムでは、このデータファイルは、様々なピースまたはパケットにセグメントされて、ストレージの物理媒体にローカルでまたはリモートで記憶されうる。固定の物理データストレージデバイスを使用すると、費用、メンテナンス、管理が発生し、また、ユーザ４２が望むまたは望まざるに関わらず、データの固定の物理レコードが生成される。
【００２０】
[0028]  本発明は、データファイルを記憶するために固定の物理データストレージを使用しない。本明細書では、用語「データファイル」は、例えば、データ用のファイル、プログラムファイル、オーディオファイル、ビデオファイル、ピクチャファイル等といったシステムによって取り扱われるあらゆるファイルおよび媒体タイプを示すものとして用いられる。データファイルを記憶するリクエストが、ストレージプロセス１００から中央サーバ１４によって受信されると、データファイルは、フレームワーク１０内のノードメモリに案内され、フレームワークでは、データファイルは、ハードドライブといった物理記憶媒体に記憶されることなく、各ネットワークノード内のデータファイル転送プロセス２００によって、フレームワーク１０内のノードメモリからノードメモリへと連続的に転送される。転送されたデータファイルは、フレームワーク１０内の任意の1つのノードのメモリ内に非常に短い時間の間のみ駐在する。データファイルは、どのネットワークノードのどの物理記憶媒体にも記憶されない。
【００２１】
[0029]  データファイルを取り出すリクエストが、ストレージプロセス１００から中央サーバ１４によって受信されると、フレームワーク１０内でノードメモリからノードメモリに転送されている、リクエストされたデータファイルが取り出される。
【００２２】
[0030]  このように転送されるデータファイルはセグメント化されてもよく、セグメントは上述したように転送される。ここでも、セグメント化されたデータは、どのネットワークノードのどの物理記憶媒体にも記憶されないが、1つのノードのメモリから別のノードのメモリへと転送される。
【００２３】
[0031]  このように転送されるデータファイルは削除されてもよく、したがって、ノードメモリからノードメモリへと転送されなくなる。
【００２４】
[0032]  図４に示すように、ストーレジプロセス１００は、データファイルを記憶、取り出し、または削除するよう中央サーバ１４にリクエストを送信すること（１０２）を含む。リクエストが、データファイル取り出しリクエストである場合、ストーレジプロセス１００は、中央サーバ１４またはネットワーク内のノードからリクエストしたデータファイルを受信する（１０４）。
【００２５】
[0033]  中央サーバ１４へのリクエストが、データファイル記憶リクエストである場合、ストーレジプロセス１００は、中央サーバ１４からノードのアドレスを受信し（１０６）、データファイルを、受信したアドレスによって示されるノードメモリに転送する（１０８）。
【００２６】
[0034]  図５に示すように、データファイル転送プロセス２００は、データファイルを記憶するリクエストを、ネットワーク内のソースシステムから受信すること（２０２）を含む。
【００２７】
[0035]  プロセス２００は、データファイルを、ネットワーク内のコンピュータメモリに案内する（２０４）。プロセス２００は、データファイルのファイル名、また、幾つかの実施では、ファイルタイプ、ユーザ名、および日付スタンプを、中央サーバ１４に関連付けられたインデックスファイルに保存する（２０６）。データファイル内に含まれる実際のデータは、任意の物理媒体に記憶されない。以下に十分に説明するように、インデックスファイルは、検索プロセス３００時にデータファイルを検索するために用いられる。プロセス２００は、データファイルのコンテンツのコピーをスクランブルし（２０８）、コピーされたスクランブル済みデータを、中央サーバ１４に関連付けられたメモリ内または物理ストレージデバイスに保存する（２１０）。
【００２８】
[0036]  例えば「myfile.txt」という名前のデータファイルが次のテキストを含むと仮定する：
「This is an example of data contained in an exemplary data file.  The text herein is maintained as written in the data file and the data file continuously forwarded from node memory to node memory without storing on a physical medium.」。
【００２９】
[0037]  上記のデータファイルのコピーをスクランブルする（２０８）ことによって、一例では、次のようなスクランブルされたデータがもたらされる：
「to without storing on a physical medium example node this contained exemplary herein file from maintained text data.  and the in continuously is an of forwarded memory」。
【００３０】
[0038]  ファイル名によってインデックス付けされたスクランブル済みデータだけが物理媒体に保存され、スクランブルされていないデータファイルはディスクドライブといった任意の物理媒体に記憶されない。コピーされたスクランブル済みデータを保存することは、セキュリティの維持、および、連続的に転送されているデータファイルを検索する際に役立つ。
【００３１】
[0039]  プロセス２００は、ネットワーク内の任意の物理ストレージデバイスに記憶することなく、ネットワーク内の第１のコンピュータメモリから別のコンピュータメモリへとデータファイルを連続的に転送する（２１２）。連続的に転送すること（２１２）には、ネットワークの特定のノードのメモリにおけるデータファイルの存在を検出することと、そのデータファイルを、任意の物理ストレージデバイスに記憶することなく相互接続されたコンピュータシステムノードのネットワーク内の1つのノードの別のコンピュータメモリに転送することが含まれる。
【００３２】
[0040]  1つの具体例では、ノードへの入力時、データファイル内の転送されたデータと、ノードまたは中央サーバ１４またはユーザとの、暗号化「ハンドシェイク」が行われる。これは、公開−秘密鍵を使用可能なカシミア（Cashmere）システムといった公開または秘密暗号化システムであってよい。カシミアは、暗号化された転送パスとメッセージペイロードとを切り離し、このことは、送信元が、送信先のユニークな公開鍵を使用して単一の公開鍵暗号化を各メッセージに行いさえすればよくなるので、性能を向上させる。このことは、真の送信先ノードのみがメッセージペイロードを復号化でき、対応する中継グループにおけるどのノードでも復号化できるわけではないという利点を有する。カシミアは、送信先が、送信元の素性を知ることなく、匿名の応答メッセージを送信することが可能である。これは同様に行われ、この場合、送信元は、転送パスと同様に応答パスを作成して暗号化する。
【００３３】
[0041]  別の例では、他のルーティング方式が用いられる。
【００３４】
[0042]  新しいノードおよびノードステートが、パフォーマンスに基づいてフレームワーク１０に追加および／またはフレームワーク１０から削除されうる。ユーザは、すべてのノードへのアクセスが可能であるか、または、１つまたは複数の中央サーバによって、若しくは、秘密ネットワーク、公開ネットワーク、あるいは秘密−公開ネットワークの特定のアーキテクチャによって、特定のノードまたは「ノードステート」にセグメント化されることが可能である。
【００３５】
[0043]  個々のノード、ノードステート、およびスーパーノードは、公開ネットワークまたは秘密ネットワークにおける、エクストラネットピア、無線ネットワークピア、衛星ピア接続ノード、Ｗｉ‐Ｆｉピア接続ノード、ブロードバンドネットワークなどであってもよい。ピア接続されたノードまたはユーザは、同じセキュリティシステムが採用され、かつ、特定の配備（無線ピア用無線暗号化方式など）の厳密さに好適なカスタムソリューションなどを有する、任意の有効ピアポイントからの、フレームワーク１０におけるルーティング参加者として使用されることが可能である。
【００３６】
[0044]  プロセス２００では、データファイルをリモートサーバ、ハードドライブ、または他の固定記憶媒体にキャッシュしたり保持したりするのではなく、ノードメモリからノードメモリへと、データファイルを渡したり、ルーティングしたり、転送したりしている。本システムのユーザが、２人以上のユーザにデータファイルへのアクセスを認可することが可能である。
【００３７】
[0045]  プロセス２００での主目的は、データファイルが、絶対に物理ストレージ内に固定されることなく、実際にはノードメモリからノードメモリに連続的にルーティング／転送されるデータストレージおよび管理システムを生成することである。データファイルの転送先のノードのパスは、中央サーバ１４によって変更される場合もある。これは、システム容量に応じて調節するため、ならびに、データファイルパスにこの機能がない確率が増えることによりネットワークセキュリティを弱体化させかねないデータファイルの冗長パスを、排除するためである。
【００３８】
[0046]  図６に示すように、検索プロセス３００には、クエリーを受信すること（３０２）が含まれる。例示的なクエリーには、ファイル名、ファイルタイプ、ユーザ名、および日付等が含まれる。一例では、クエリーは1つのキーワードまたは複数のキーワードである。検索プロセス３００は、1つのキーワードまたは複数のキーワードとのマッチを見つけるべく、ファイル名のインデックスによって示される、スクランブルされたファイルのデータベースを検索する（３０４）。1つのキーワードまたは複数のキーワードのマッチがスクランブルされたファイルの中から見つかった場合、プロセス３００は、1つのキーワードまたは複数のキーワードを含むファイル名のリストを生成する（３０６）。一例では、ファイル名のリストは、入力／出力デバイス上でユーザに表示されて、それにより、ユーザがファイル名のうちの1つを選択できるようになる。別の例では、表示されるファイル名のリストには、ファイルタイプ、ファイルサイズ、保存日および／または最終変更日等といったファイルに関する補足情報を含む。プロセス３００は、生成されたファイル名のリスト中に含まれていたファイル名のうちユーザが選択したファイル名を受け取る（３０８）。ユーザ選択には、選択したファイル名を示すマウスクリック、キーボード入力、およびオーディオ入力等が含まれうる。
【００３９】
[0047]  プロセス３００は、ファイル取り出しプロセス４００を開始する（３１０）。
【００４０】
[0048]  図７に示すように、ファイル取り出しプロセス４００は、暗号化ハンドシェイクを介してデータがノードに入ると、ノードによって「傍受（sniffed）」可能なハッシュマークまたは他のユニークコードを用いて、中央サーバにおいて、リクエストされたファイル名をマッチングする（４０２）。このことは、ネットワーク内のノードをピングすることによって生じうる。プロセス４００は、データが出現しそうであると中央サーバが考えるノードまたはノードステートに、そのデータをユーザに直接返すことを求めるメッセージを送信する（４０４）。中央サーバがピングするノードステートを狭くできるほど、取り出しの効率が高くなり、中央サーバと、そのデータを転送できるノードとの間のトランザクションに必要ではないノードへの不必要なメッセージングトラフィックによる負担が少なくなる。
【００４１】
[0049]  正しいノードが、ノードメモリ内データを要求者に転送することを求めるメッセージを受け取ると、プロセス４００は、ノードメモリ内データを要求者に転送し（４０６）、そのデータがユーザに送信されたことを伝える確認メッセージを転送する（４０８）。このルーティングメッセージは、中央サーバに直接送信することが可能であるか、フレームワーク１０内の他の１つまたは複数のノード、または１つまたは複数のスーパーノードを介して中央サーバまたは複数のサーバに渡すことが可能である。ユーザが、リクエストしたデータを受け取ると、ユーザのアプリケーションは、中央サーバに自動的にピングして、リクエストされたデータが受け取られたこと伝えるように機能する。このように、フレームワーク１０は、物理記憶媒体にデータをキャッシュ、ダウンロード、および／または保存しないデータ保存装置を作成する。データの保存および管理は、データをノードメモリからノードメモリへと連続的にルーティングすることによって達成されている。
【００４２】
[0050]  別の実施形態では、ストーレジプロセス１００は、ファイル名、また、一部の場合では、ファイルタイプ、ユーザ名、および／または日付スタンプと共に、スクランブルデータのみを記憶し、一方、非スクランブルデータファイルは自動的に削除する。
【００４３】
[0051]  中央サーバ１４へのリクエストが、データファイル削除リクエストである場合、中央サーバ１４は、ファイル削除プロセス５００を開始する。図８に示すように、プロセス５００は、暗号化ハンドシェイクを介してノードにデータが入ると、ノードによって「傍受」可能なハッシュマークまたは他のユニークコードを用いて、中央サーバにおいて、削除するファイル名をマッチングする（５０２）。このことは、ネットワーク内のノードをピングすることによって生じうる。プロセス５００は、データが出現しそうであると中央サーバが考えるノードまたはノードステートに、削除ノード２８にデータを直接転送することを求めるメッセージを送信する（５０４）。中央サーバがピングするノードステートを狭くできるほど、取り出しの効率は高くなり、中央サーバと、そのデータを転送可能できるノードとの間のトランザクションに必要ではないノードへの不必要なメッセージングトラフィックによる負担が少なくなる。
【００４４】
[0052]  プロセス５００は、ノードメモリ内データを削除ノードに転送する（５０６）。プロセス５００は、インデックスからデータファイル名を削除し（５０８）、データが削除されたことを伝える確認メッセージをユーザに転送する（５１０）。このルーティングメッセージは、中央サーバに直接送信することが可能であるか、または、フレームワーク１０内の他の１つまたは複数のノード、または１つまたは複数のスーパーノードを介して中央サーバまたは複数のサーバに渡すことが可能である。
【００４５】
[0053]  フレームワーク１０は、物理記憶媒体にデータをキャッシュ、ダウンロード、および／または保存しないデータ保存装置を作成する。データの保存および管理は、ノードメモリからノードメモリへのデータの連続的なルーティングを介して達成され、転送されたデータは、ユーザが、当該データをフレームワーク１０からユーザに戻すことをリクエストする場合にのみダウンロードされる。
【００４６】
[0054]  本発明の実施形態は、デジタル電子回路、または、コンピュータハードウェア、ファームウェア、ソフトウェア、若しくはそれらの組み合わせにおいて実施されてよい。本発明の実施形態は、コンピュータプログラム製品、すなわち、例えばプログラマブルプロセッサ、コンピュータ、または複数のコンピュータであるデータ処理装置による実行またはその動作の制御のために例えば機械可読ストレージデバイスまたは伝播信号内といった情報担体内に有形に具現化されたコンピュータプログラムとして実施されてよい。コンピュータプログラムは、コンパイラ型言語またはインタープリタ型言語を含む任意の形態のプログラミング言語で書くことができ、また、スタンドアロンプログラムもしくはモジュール、コンポーネント、サブルーチン、もしくはコンピュータ環境における使用に適した好適なユニットとして等を含む任意の形態に展開することができる。コンピュータプログラムは、1つのサイトにおいてまたは通信ネットワークによって相互接続された分散された複数のサイトに渡って、1つのコンピュータ上でまたは複数のコンピュータ上で、実行されるよう展開することができる。
【００４７】
[0055]  本発明の実施形態の方法ステップは、入力データを操作し出力を生成することによって本発明の機能を行うようコンピュータプログラムを実行する1以上のプログラマブルプロセッサによって行うことができる。方法ステップはまた、例えばフィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）または特殊用途向け集積回路（ＡＳＩＣ）である専用ロジック回路によって行うことができ、また、本発明の装置は、これらの専用ロジック回路として実施することができる。
【００４８】
[0056]  コンピュータプログラムの実行に適したプロセッサとしては、例示的に、汎用マイクロプロセッサおよび特殊用途向けマイクロプロセッサ、および、任意の種類のデジタルコンピュータの任意の1以上のプロセッサが含まれる。一般に、プロセッサは、読み出し専用メモリまたはランダムアクセスメモリ若しくはそれらの両方から、命令およびデータを受け取る。コンピュータの必須要素は、命令を実行するためのプロセッサと、命令およびデータを記憶するための1以上のメモリデバイスである。一般に、コンピュータにはさらに、例えば磁気、光磁気ディスク、または光ディスクである、データを記憶するための1以上のマスストレージデバイスを含むか、または、これらのマスストレージデバイスからデータを受け取る、マスストレージデバイスにデータを転送する、またはその両方のために動作上結合される。コンピュータプログラム命令およびデータを具現化するのに適した情報担体には、例示的に、例えばＥＰＲＯＭ、ＥＥＰＲＯＭ、およびフラッシュメモリデバイスである半導体メモリデバイスや、内蔵ハードディスクまたは取り外し可能なディスクである磁気ディスクや、光磁気ディスクや、ＣＤ  ＲＯＭおよびＤＶＤ−ＲＯＭディスクを含む、あらゆる形態の不揮発性メモリが含まれる。プロセッサおよびメモリは、専用ロジック回路によって補完されるかまたはその中に組み込まれてよい。
【００４９】
[0057]  上述の記載は、説明を意図し、発明の範囲を限定することを意図していないことは理解されるべきである。発明の範囲は、添付の特許請求の範囲によって定義される。他の実施形態も以下の特許請求の範囲内である。
【図１】
2011523120.tif 000003
【図２】
2011523120.tif 000004
【図３】
2011523120.tif 000005
【図４】
2011523120.tif 000006
【図５】
2011523120.tif 000007
【図６】
2011523120.tif 000008
【図７】
2011523120.tif 000009
【図８】
2011523120.tif 000010
【手続補正書】
【提出日】平成22年12月21日(2010.12.21)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
相互接続されたコンピュータシステムノードのネットワークにおける方法であって、前記ネットワークにおいて、前記ネットワーク内の固定ストレージ媒体に、転送される１以上のデータアイテムを記憶することなく、該１以上のデータアイテムが前記ノード間を連続的に転送され、前記転送されるデータアイテムは、前記データを取り出すリクエストが受信される場合に、取り出しのために利用可能であり、該方法が、
連続的に転送されている前記データファイルアイテムのうち少なくとも1つを削除するリクエストであって、削除される前記少なくとも1つのデータアイテムに関連付けられたファイル名を含む該リクエストを、前記ネットワークに結合されたソースシステムから受信することと、
前記ファイル名に対して、前記ネットワーク内の中央サーバに関連付けられたインデックスファイルを検索することと、
前記インデックスファイルから前記ファイル名を削除することと、
前記ネットワーク内の、前記ファイル名によって示される前記少なくとも1つのデータアイテムを見つけることと、
前記見つけた少なくとも1つのデータファイルアイテムを、前記ネットワーク内のデータアイテムを転送または記憶しないコンピュータシステムノードに案内することと、
を含む、方法。
【請求項２】
前記見つけることは、
ノードに入る前記少なくとも1つのデータアイテムを示すハッシュマークを用いて、前記中央サーバにおいて前記リクエストをマッチングすることと、
前記少なくとも1つのデータアイテムを有すると予測されるノードにメッセージを送ることと、
前記少なくとも1つのデータアイテムが削除されたことを伝える確認メッセージを前記中央サーバに送ることと、
を含む、請求項１に記載の方法。
【請求項３】
前記リクエストされた少なくとも1つのデータアイテムが削除されたことを伝えるアクナリッジメントを、前記ネットワーク内のデータアイテムを転送しない前記コンピュータシステムノードから受信することをさらに含む、請求項２に記載の方法。
【請求項４】
データアイテムを維持する方法をデータ処理装置に実行させるための命令を具現化した有形コンピュータ可読媒体であって、該方法は、
相互接続されたコンピュータシステムノードのネットワークであって、前記ネットワーク内の固定ストレージ媒体に、転送される１以上のデータアイテムを記憶することなく、該１以上のデータアイテムが前記ノード間を連続的に転送され、前記転送されるデータアイテムは、前記データを取り出すリクエストが受信される場合に、取り出すために利用可能である、該ネットワークにおいて、
連続的に転送されている前記データアイテムのうち少なくとも1つを削除するリクエストであって、削除される前記少なくとも1つのデータアイテムに関連付けられたファイル名を含む該リクエストを、前記ネットワークに結合されたソースシステムから受信することと、
前記ファイル名に対して、前記ネットワーク内の中央サーバに関連付けられたインデックスファイルを検索することと、
前記インデックスファイルから前記ファイル名を削除することと、
前記ネットワーク内の、前記ファイル名によって示される前記少なくとも1つのデータアイテムを見つけることと、
前記見つけた少なくとも1つのデータファイルアイテムを、前記ネットワーク内のデータアイテムを転送または記憶しないコンピュータシステムノードに案内することと、
を含む、有形コンピュータ可読媒体。
【請求項５】
前記見つけることは、
ノードに入る前記少なくとも1つのデータアイテムを示すハッシュマークを用いて、前記中央サーバにおいて前記リクエストをマッチングすることと、
前記少なくとも1つのデータアイテムを有すると予測されるノードにメッセージを送ることと、
前記少なくとも1つのデータアイテムが削除されたことを伝える確認メッセージを前記中央サーバに送ることと、
を含む、請求項４に記載のコンピュータ可読媒体。
【請求項６】
前記方法はさらに、
前記リクエストされた少なくとも1つのデータアイテムが削除されたことを伝えるアクナリッジメントを、前記ネットワーク内のデータアイテムを転送しない前記コンピュータシステムノードから受信することを含む、請求項５に記載のコンピュータ可読媒体。
【請求項７】
相互接続されたコンピュータシステムノードのネットワークであって、前記ネットワーク内の固定ストレージ媒体に、転送される１以上のデータアイテムを記憶することなく、該１以上のデータアイテムが前記ノード間を連続的に転送され、前記転送されるデータアイテムは、前記データを取り出すリクエストが受信される場合に、取り出すために利用可能である、該ネットワークと、
前記ネットワークに結合された中央サーバと、
前記ネットワークに結合された削除サーバと、
を含み、
前記中央サーバは、
前記ネットワーク内で連続的に転送されている前記データアイテムのうち少なくとも1つを削除するリクエストを受信し、
削除される前記少なくとも1つのデータアイテムを示すファイル名に対して、前記中央サーバに関連付けられたインデックスファイルを検索し、
前記インデックスファイルから前記ファイル名を削除し、
前記ネットワーク内の、前記ファイル名によって示される前記少なくとも1つのデータアイテムを見つけ、
前記見つけた少なくとも1つのデータアイテムを前記削除サーバに案内するように適応される、フレームワーク。
【請求項８】
前記見つけることは、
ノードに入る前記少なくとも1つのデータアイテムを示すハッシュマークを用いて、前記中央サーバにおいて前記リクエストをマッチングすることと、
前記少なくとも1つのデータアイテムを有すると予測されるノードにメッセージを送ることと、
前記少なくとも1つのデータアイテムが削除されたことを伝える確認メッセージを前記中央サーバに送ることと、
を含む、請求項７に記載のフレームワーク。
【請求項９】
相互接続されたコンピュータシステムノードのネットワークであって、前記ネットワーク内の固定ストレージ媒体に、転送される１以上のデータアイテムを記憶することなく、該１以上のデータアイテムが前記ノード間を連続的に転送され、前記転送されるデータアイテムは、前記データアイテムを取り出すリクエストに応答して、取り出すために利用可能である、該ネットワークと、
連続的に転送されている前記データファイルアイテムのうち少なくとも1つを削除するリクエストであって、削除される前記少なくとも1つのデータアイテムに関連付けられたファイル名を含む該リクエストを、前記ネットワークに結合されたソースシステムから受信する手段と、
前記ファイル名に対して、前記ネットワーク内の中央サーバに関連付けられたインデックスファイルを検索する手段と、
前記インデックスファイルから前記ファイル名を削除する手段と、
前記ネットワーク内の、前記ファイル名によって示される前記少なくとも1つのデータアイテムを見つける手段と、
前記見つけた少なくとも1つのデータファイルアイテムを、前記ネットワーク内のデータアイテムを転送または記憶しないコンピュータシステムノードに案内する手段と、
を含む、システム。
【請求項１０】
前記見つける手段は、
ノードに入る前記少なくとも1つのデータアイテムを示すハッシュマークを用いて、前記中央サーバにおいて前記リクエストをマッチングする手段と、
前記少なくとも1つのデータアイテムを有すると予測されるノードにメッセージを送る手段と、
前記少なくとも1つのデータアイテムが削除されたことを伝える確認メッセージを前記中央サーバに送る手段と、
を含む、請求項９に記載のシステム。
【国際調査報告】
2011523120.tif 000011