JP2008537258A - 分散型で非集中型のデータ格納および検索を行うシステムおよび方法 - Google Patents

分散型で非集中型のデータ格納および検索を行うシステムおよび方法 Download PDF

Info

Publication number
JP2008537258A
JP2008537258A JP2008507655A JP2008507655A JP2008537258A JP 2008537258 A JP2008537258 A JP 2008537258A JP 2008507655 A JP2008507655 A JP 2008507655A JP 2008507655 A JP2008507655 A JP 2008507655A JP 2008537258 A JP2008537258 A JP 2008537258A
Authority
JP
Japan
Prior art keywords
network
bitstream
store
node
message
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
JP2008507655A
Other languages
English (en)
Other versions
JP4913128B2 (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.)
Microsoft Corp
Original Assignee
Microsoft 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 Microsoft Corp filed Critical Microsoft Corp
Publication of JP2008537258A publication Critical patent/JP2008537258A/ja
Application granted granted Critical
Publication of JP4913128B2 publication Critical patent/JP4913128B2/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
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • 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/18File system types
    • G06F16/182Distributed file systems
    • G06F16/1834Distributed file systems implemented based on peer-to-peer networks, e.g. gnutella
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • H04L67/1078Resource delivery mechanisms
    • H04L67/108Resource delivery mechanisms characterised by resources being split in blocks or fragments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Abstract

拡張SOAP環境内での分散型で非集中型のデータの格納および検索のためのシステムおよび方法が開示されている。この種のシステムおよび方法は、データ格納および検索に必要な帯域幅だけでなく計算要求も分散化する。したがって、この種のシステムおよび方法は、1つのノードがすべての格納および検索処理を行う必要性を軽減し、単一のノードがすべてのデータを送信するまたは受信するように求められない。

Description

概して、本発明は分散型で非集中型のデータ格納および検索を行うシステムおよび方法に関する。より詳細には、本発明は、例えば、リッチメディア広告、写真およびビデオの共有および格納、ならびにビデオ電子メールなどのピアベースサービスを可能にするために費用効果の高い機構を提供する分散型の格納モデルおよび検索モデルに関する。
いくつかのシナリオがピアベースの分散型格納システムを介して可能とされる。この種のシナリオの例は、ピアベースのテキストおよびリッチメディア広告の格納/キャッシング(caching)/レプリケーション(replication)、ピアベースのデジタル写真およびビデオの格納および共有、ならびにピアベースのビデオ電子メールを含む。しかし、これらのシナリオは、格納費用がデータセンタでは抑制されなくなる可能性があるのでサービスを集中されると法外な費用がかかる傾向がある。
多くのウェブサイトは、ユーザから以前に学んだ情報に基づいて掲載される高度のターゲット広告を有する純然たる広告ベースモデルに移行している。例えば、大量の人口統計学的データが人々について収集され、たくさんの情報が、ウェブサイトのクリックストリーム(clickstream)で収集されたデータだけに基づいて推論されることができることはよく知られている。例えば、高度のターゲット広告は、検索キーワードに基づいていてもよい。典型的には、この種のシナリオは多くの記憶装置を要する。
集中型の方法でのこの種の広告の格納は以前に行われていた。しかし、異なる費用構造がローカル装置に対して広告を効率的に格納し、転送し、キャッシュに入れることができるために必要とされうるので、問題が新生市場などのある種の市場に存在する。多くの場合には、概して広告が様々な世界的市場にローカライズされているので、これらの広告を集中化し、データセンタで格納費用を支払うことは法外な費用である。世界中に広告を発送するために帯域幅の費用を支払うことは通常、効率的なまたは安価なモデルではない。
写真共有に関する既存の解決策は、2つの主要なグループに分類される、すなわち集中格納(例えば、photos.msn.com)または二地点間(「P2P」)写真共有(例えば、Googleの「Picasa」の現バージョン)。集中格納は明確な制限を有する、すなわちそれが無料で提供される場合、写真格納に利用できる総スペースは厳しく制限されうる。一方、典型的な利用者手数料は、ユーザ自身のディスクを単に購入するためにユーザにかかる費用をはるかに超過する傾向がある。しかし、ユーザがユーザ自身のディスクを購入する場合、ユーザは写真をバックアップすることに関与し、ほとんどのブロードバンド接続がアップロードの速度を落とすので写真を見ることができる人数で厳しく制限されうる。
GrooveまたはGoogleのPicasaの現バージョンなどのP2P写真共有の解決策は、ピアグループに関与するすべての装置にわたって写真を全コピーする。これは、上述の格納費用および帯域幅の問題を回避するが、それは異なる問題をもたらす。例えば、多くの人々がグループに関与していない場合、参加者の写真が、それらのローカルコピーが失われた場合に利用できない可能性がある機会がかなりある(様々なピアの使用可能時間に応じて)。さらに、この力づく的解決策はすべてのピアの100%がすべての写真の100%を格納する必要がある。これは、全ピアグループにわたって使用される多くの予備の記憶装置をもたらす結果となり、よく評価されない。
電子メールを介して配信されるビデオメッセージは、写真共有に関連して上述の同一の問題の多くを被るが、それらはサイズがさらに大規模である(格納を高価にする)。また配信が、中央のデータセンタからサービスされない限り信頼性のない結果となる。生放送のP2Pビデオ電話会議は格納問題を有しないが(ビデオが送信されると同時にビデオは取り込まれる)、それは話し手側の同時性と共に品質(帯域幅によって制限される)を中心にしてさらなる制限を有する。
したがって、当技術分野では、例えば、リッチメディア広告、写真/ビデオの共有/格納、およびビデオ電子メールなどのピアベースサービスを可能にするために費用効果の高い機構を提供する分散型の格納モデルの必要性がある。
本発明は、非集中型で分散型のデータ格納および検索のためのシステムおよび方法を提供する。この種のシステムは相互接続されたノードのネットワークを含むことができる。各ノードは、「ローカルキャッシュおよびトランスポート層」、「ストリーム・ストア層」、「チャンク・ストア層」および「フラグメント・ストア層」を形成する1つまたは複数のプロセスの集合体をその上で実行することができる。プロセスの集合体は「ブロック」格納のために提供されてもよい。
ローカルキャッシュおよびトランスポート層は、ストレージサービスと、ルーティングサービスとを含むことができる。ストレージサービスは、任意長のあるビットストリームを格納するための格納要求を受信することができる。ルーティングサービスは、ビットストリームをストリーム・ストア・サービスのうちのいずれかに伝達することができる。ストリーム・ストア・サービスは、その後の検索のためにローカル固定記憶装置(persistent storage)にビットストリームを格納し、ビットストリームを1つまたは複数の「チャンク」に分割することもできる。次いでストリーム・ストア・サービスは、チャンクを各チャンク・ストア・サービスに伝達することができる。チャンク・ストア・サービスは、その後の検索のためにローカル固定記憶装置にチャンクを格納し、チャンクを1つまたは複数の「フラグメント」に分割することもできる。次いでチャンク・ストア・サービスは、フラグメントをチェックブロック(check block)に符号化し、それらを各フラグメント・ストア・サービスに伝達することができる。フラグメント・ストア・サービスはその後の検索のためにローカル固定記憶装置にフラグメントを格納することができる。したがって、ビットストリームは複数のチェックブロックに分割され、概して各チェックブロックは、この種のノードの広大なネットワーク上で分散された、異なるネットワークノード上に格納されることができる。
この種の非集中型でピアツーピアの分散型格納システムは、例えば広告が見られるべきである実際の地方または都市に存在するクライアントPC内など、デジタル広告をローカルに格納しキャッシュに入れるために使用されることができる。デジタル写真およびビデオの格納および共有に関しては基本的な分散型格納機構が、大量の冗長度を必要とすることなく写真の非常に高い信頼性および可用性を実現するために利用されることができる。ビデオ電子メールに関しては分散型格納モデルが、大規模なビデオメッセージのために調整される信頼性のある電子メール配信システムを構築するために利用されることができる。
〈コンピューティング環境の例〉
図1および下記の説明は、本発明の一例の実施形態が実現される適切なコンピューティング環境の簡単な一般的説明を行うものである。しかし、すべての種類のハンドヘルド機器、携帯機器、および他のコンピューティング機器が、本発明に関連して使用するために企図されることは理解されよう。汎用コンピュータが下記で説明されているが、これは単に一例である。本発明は、ネットワークサーバの相互運用性および対話を有するシンクライアント(thin client)上で動作可能であってもよい。したがって、本発明の一例の実施形態は、ほとんどないクライアントリソースまたは最小のクライアントリソースが含まれているネットワークのホストサービスの環境で実現されることができる(例えば、クライアント機器がワールドワイドウェブに対するブラウザまたはインターフェースとしてだけ働くネットワーク環境)。
要求されていないが、本発明は開発者またはテスタによって使用されるためにアプリケーション・プログラミング・インタフェース(API)を介して実現される、および/または1つまたは複数のコンピュータ(例えば、クライアントワークステーション、サーバ、または他の装置)によって実行されるプログラムモジュールなどのコンピュータの実行可能な命令の一般的なコンテキストで説明されるネットワーク・ブラウザ・ソフトウェア内に含まれることができる。概して、プログラムモジュールは、特定のタスクを実行するまたは特定の抽象データ型を実行するルーチン、プログラム、オブジェクト、構成要素、データ構造などを含む。典型的には、プログラムモジュールの機能は、様々な実施形態で望まれるように結合されるまたは分散されることができる。さらに、当業者は、本発明が他のコンピュータシステム構成を用いて実施されることができることを理解することになる。本発明を用いて使用に適しうる他のよく知られたコンピューティングシステム、環境、および/または構成は、パーソナルコンピュータ(PC)、現金自動預け払い機、サーバコンピュータ、ハンドヘルドまたはラップトップ機器、マルチプロセッサシステム、マイクロプロセッサベースシステム、プログラマブル家庭用電子機器、ネットワークPC、ミニコンピュータ、メインフレームコンピュータ、などを含むが限定されるものではない。本発明の一実施形態は、タスクが、通信ネットワークまたは他のデータ伝送メディアを介して接続される遠隔処理装置によって実行される分散型コンピューティング環境で実施されることもできる。分散型コンピューティング環境ではプログラムモジュールは、メモリ記憶装置を含むローカルコンピューティング格納メディアおよび遠隔コンピュータ格納メディアの両方に配置されることができる。
したがって、図1は、本発明が実現されることができる適切なコンピューティングシステム環境100の一例を示すが、上記で明確にしたようにコンピューティングシステム環境100は、適切なコンピューティング環境の一例だけであって、本発明の使用または機能の範囲に関していかなる限定も示唆するものではない。コンピューティング環境100は、例示の動作環境100で示される構成要素のうちのいずれか1つまたは組合せに関係するいかなる依存性または要求を有するものとして解釈されるべきでもない。
図1を参照して、本発明を実現する一例のシステムは、コンピュータ110の形で汎用コンピューティング装置を含む。コンピュータ110の構成要素は、処理ユニット120、システムメモリ130、およびシステムメモリを含む様々なシステム構成要素を処理ユニット120に結合するシステムバス121を含むことができるが限定されるものではない。システムバス121は、メモリバスまたはメモリコントローラ、周辺バス、および様々なバスアーキテクチャのうちのいずれかを使用するローカルバスを含むいくつかの種類のバス構造のうちのいずれかであってよい。例として(限定されない)、この種のアーキテクチャは、業界標準アーキテクチャ(ISA)バス、マイクロチャネルアーキテクチャ(MCA)バス、拡張ISA(EISA)バス、ビデオ電子標準協会(VESA)ローカルバス、周辺装置相互接続(PCI)バス(メザニンバス(Mezzanine bus)としても知られている)などを含む。
典型的には、コンピュータ110は様々なコンピュータ可読メディアを含む。コンピュータ可読メディアは、コンピュータ110によってアクセスされることができる任意の利用可能メディアであってよく、揮発性および不揮発性、着脱式および固定式メディアの両方を含む。例として(限定されない)、コンピュータ可読メディアは、コンピュータ格納メディアと、通信メディアとを備えることができる。コンピュータ格納メディアは、コンピュータ可読命令、データ構造、プログラムモジュールまたは他のデータなどの情報を格納するための任意の方法または技術で実現される揮発性および不揮発性、着脱式および固定式のメディアの両方を含む。コンピュータ格納メディアは、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、電気的消去可能プログラマブルリードオンリメモリ(EEPROM)、フラッシュメモリもしくは他のメモリ技術、コンパクトディスクリードオンリメモリ(CDROM)、デジタルバーサタイルディスク(DVD)もしくは他の光ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置もしくは他の磁気記憶装置、または所望の情報を格納するために使用されることができ、コンピュータ110によってアクセスされることができる任意の他のメディアを含むが限定されるものではない。典型的には通信メディアは、コンピュータ可読命令、データ構造、プログラムモジュールまたは搬送波または他の搬送機構などの変調されたデータ信号内での他のデータを具現化し、任意の情報配信メディアを含む。用語「変調されたデータ信号」は、信号内で情報を符号化するような方法で設定されるまたは変更されるその特性のうちの1つまたは複数を有する信号を意味する。例として(限定されない)、通信メディアは、有線ネットワークまたは直接配線接続などの有線メディア、ならびに音響、無線周波数(RF)、赤外線、および他の無線メディアなどの無線メディアを含む。上記のいずれかの組合せもコンピュータ可読メディアの範囲内に含まれるべきである。
システムメモリ130は、ROM131およびRAM132などの揮発性メモリおよび/または不揮発性メモリの形でコンピュータ格納メディアを含む。起動中など、コンピュータ110内の要素間で情報を転送するのを助ける基本ルーチンを含む基本入出力システム133(BIOS)は、典型的にはROM131に格納される。典型的にはRAM132は、すぐにアクセス可能でありおよび/または処理ユニット120によって現在動作されているデータおよび/またはプログラムモジュールを含む。例として(限定されない)、図1は、オペレーティングシステム134、アプリケーションプログラム135、他のプログラムモジュール136、およびプログラムデータ137を示す。RAM132は他のデータおよび/またはプログラムモジュールを含むことができる。
コンピュータ110は、他の着脱式/固定式、揮発性/不揮発性のコンピュータ格納メディアも含むことができる。単に例として、図1は、固定式で不揮発性の磁気メディアから読み取るまたは固定式で不揮発性の磁気メディアに書き込むハードディスクドライブ141、着脱式で不揮発性の磁気ディスク152から読み取るまたは着脱式で不揮発性の磁気ディスク152に書き込む磁気ディスクドライブ151、およびCD ROMまたは他の光メディアなどの着脱式で不揮発性の光ディスク156から読み取るまたは着脱式で不揮発性の光ディスク156に書き込む光ディスクドライブ155を示す。例の動作環境で使用されることができる他の着脱式/固定式、揮発性/不揮発性のコンピュータ格納メディアは、磁気テープカセット、フラッシュメモリカード、デジタルバーサタイルディスク、デジタルビデオテープ、半導体RAM、半導体ROMなどを含むが限定されることはない。典型的にはハードディスクドライブ141は、インターフェース140などの固定式バブルメモリインターフェースを介してシステムバス121に接続されており、典型的には磁気ディスクドライブ151および光ディスクドライブ155は、インターフェース150などの着脱式メモリインターフェースによってシステムバス121に接続されている。
上述の図1に示されるドライブおよびそれらの関連したコンピュータ格納メディアは、コンピュータ110に関するコンピュータ可読命令、データ構造、プログラムモジュールおよび他のデータの格納を行う。例えば、図1ではハードディスクドライブ141は、オペレーティングシステム144、アプリケーションプログラム145、他のプログラムモジュール146、およびプログラムデータ147を格納することとして示されている。これらの構成要素は、オペレーティングシステム134、アプリケーションプログラム135、他のプログラムモジュール136、およびプログラムデータ137と同一であるまたは異なるもののいずれかであってよいことは留意されたい。オペレーティングシステム144、アプリケーションプログラム145、他のプログラムモジュール146、およびプログラムデータ147は、少なくともそれらが異なるコピーであることを示すために本明細書では異なる番号を与えられている。ユーザは、キーボード162およびマウス、トラックボールまたはタッチパッドと一般に呼ばれるポインティングデバイス161などの入力機器を介してコンピュータ110に命令および情報を入力することができる。他の入力機器(図示せず)は、マイクロホン、ジョイスティック、ゲームパッド、衛星放送受信アンテナ、スキャナなどを含むことができる。これらの入力機器および他の入力機器は、システムバス121に結合されているユーザ入力インターフェース160を介して処理ユニット120a〜120fにしばしば接続されているが、パラレルポート、ゲームポートまたはユニバーサルシリアルバス(USB)など、他のインターフェースおよびバス構造によって接続されていてよい。
モニタ191または他の種類の表示装置はまた、ビデオインターフェース190などのインターフェースを介してシステムバス121に接続されている。モニタ191に加えてコンピュータは、出力周辺インターフェース195を介して接続されることができるスピーカ197およびプリンタ196などの他の周辺出力機器も含むことができる。
コンピュータ110は、リモートコンピュータ180などの1つまたは複数のリモートコンピュータへの論理接続を使用してネットワーク環境で動作することができる。リモートコンピュータ180は、パーソナルコンピュータ、サーバ、ルータ、ネットワークPC、ピア装置または他の一般のネットワークノードであってよく、典型的には、メモリ記憶装置181だけが図1に示されているがコンピュータ110に対する上述の要素の多くまたはすべてを含む。図1に示される論理接続は、ローカルエリアネットワーク(LAN)171および広域ネットワーク(WAN)173を含むが他のネットワークも含むことができる。この種のネットワーキング環境は、オフィス、企業規模のコンピュータネットワーク、イントラネットおよびインターネットで一般的である。
LANネットワーキング環境で使用されるとき、コンピュータ110は、ネットワークインターフェースまたはアダプタ170を介してLAN171に接続されている。WANネットワーキング環境で使用されるとき、典型的にはコンピュータ110は、モデム172またはインターネットなどのWAN173上で通信を確立する他の手段を含む。内蔵または外付けであってよいモデム172は、ユーザ入力インターフェース160または他の適切な機構を介してシステムバス121に接続されてよい。ネットワーク環境では、コンピュータ110に対して説明されるプログラムモジュールまたはその一部は、遠隔メモリ記憶装置に格納されることができる。例として(限定されない)、図1は、メモリ装置181上に存在することとしてリモートアプリケーションプログラム185を示す。図示されたネットワーク接続は例示であり、コンピュータ間の通信リンクを確立する他の手段が使用されてよい。
当業者は、コンピュータ110または他のクライアント装置がコンピュータネットワークの一部として配置されることができることは理解できる。これに関連して本発明は、任意の数のメモリまたは格納ユニットを有するいかなるコンピュータシステムならびに任意の数の格納ユニットまたは容量にわたって生じる任意の数のアプリケーションおよびプロセスに関する。本発明の一実施形態は、遠隔記憶装置またはローカル記憶装置を有してネットワーク環境に配置されるサーバコンピュータおよびクライアントコンピュータを備える環境に適用することができる。本発明は、プログラミング言語機能、変換処理および実行能力を有する独立型のコンピューティング装置に適用されることもできる。
〈分散ネットワーク〉
図2は、複数のネットワークノード10A〜10Hを備える分散ネットワークの一例を示す。例えば、この種のノードは、パーソナルコンピュータまたは例えばサーバ、ルータ、ネットワークPC、ピア装置など、処理およびデータ格納能力を含む他の任意のネットワーク装置であってよい。例えば、ノード10A〜10Hは、イントラネットまたはインターネットなどのローカルネットワークまたは広域ネットワーク上で互いに相互接続されているピアであってよい。
各ノード10A〜10Hは固有のアドレスを割り当てられることができる。アドレスの長さは、各ノードが固有のアドレスを有することを保証するために選択されることができる。ネットワークが数千万個のノードを含むことが予想される一例のインタネットベースシステムでは、160ビットのアドレスが使用されることができる。この種のアドレス方式は、TCPの上部にルーティング・オーバーレイ(routing overlay)を形成することができる。
いくつかのノード10A〜10Hの中に分散されるプロセスは、シンプル・オブジェクト・アクセス・プロトコル(「SOAP」)メッセージを介してネットワーク上で互いに通信することができる。SOAPは、よく知られた軽量のXMLベースの分散コンピューティングプロトコルである。SOAPメッセージは、SOAPエンベロープを含むXML文書である。エンベロープは、任意選択のSOAPヘッダおよび必須のSOAPボディを含む。SOAPメッセージヘッダは、メッセージのメタデータ(metadata)を表し、SOAPを拡張するための方法を提供する。SOAPメッセージボディは、実際のメッセージのペイロード(payload)である。分散プロセスは、SOAPパケットをネットワーク上で動かすことによって互いに通信することができる。
プロセスは、メッセージ発信元(例えば、図示のノード10A上)、所期のメッセージ受信先(例えば、図示のノード10G上)、または中継先(例えば、図示のノード10C上)であってよい。メッセージ発信元は、初めからSOAPメッセージをネットワーク上で動かすプロセスである。所期のメッセージ受信先は、メッセージが最終的に定められたプロセスである。したがって、メッセージ発信元から創出するSOAPメッセージは、所期のメッセージ受信先に関連したアドレスを含むことができる。
しかし、メッセージ発信元が所期のメッセージ受信先のアドレスを知らないことが、特に大規模ネットワークで可能である。実際にはメッセージ発信元は、所期のメッセージ受信先が存在することすら知らない。したがって、所期の受信先(10G上)へメッセージを伝えるために中継先ノード(10C)上でのプロセスは、メッセージ(12C)を受信し、メッセージを変更および/またはコピーし、メッセージの1つまたは複数のコピー(12D〜12F)をネットワーク上に戻すことができる。したがって、メッセージは、メッセージ(12G)が所期のメッセージ受信先(10G上)に結局、ホップ(hop)するまでネットワークの中を「ホップ」することができる。約1千万個のノードを有するネットワークの場合、平均ホップカウントは約3回であり、最大ホップカウントは約5.8回である。
発信元から所期のメッセージ受信先へメッセージを伝えるためにかかるホップ回数を最適化するために、ノードは「ゴシップする(gossip)」ことができる。つまり、時々、ノードはネットワーク上にそれら自体についての情報を伝達することができる。例えば、ノードは、その使用可能時間または帯域幅およびその隣接ノードの状態についてゴシップすることができる。ノードはまた、それらの隣接ノードによって伝達されているこの種の情報をリッスン(listen)する。その結果、各ノードは、そのピアのうちのいくつかについて知り、情報を保持する。
この種のゴシッピングによりメッセージ発信元が、所期のメッセージ受信先のアドレスの特定の情報なしに所期のメッセージ受信先へメッセージを伝えることができる。例えば、メッセージ発信元がある装置へメッセージを伝えたい場合、メッセージ発信元はできるだけその装置に近いメッセージ(例えば、所期のメッセージ受信先について何かを知りうる他のノードへのメッセージ、または所期のメッセージ受信先について何かを知りうる他のノードについての何かを対処するなど)を伝えることだけが必要である。所期のメッセージ受信先の隣接ノードは所期のメッセージ受信先の情報を有することになるので、メッセージは結局、所期のメッセージ受信先にホップすることになる。したがって、例えば、メッセージ発信元は所期のメッセージ受信者に直接到達する方法を知らない、または例えば、ファイアウォールなどのために所期のメッセージ受信者に直接到達することができない場所にさえメッセージを配信することができる弾力性のあるネットワークが構築されることができる。
各ノード10A〜10H上のサービスは、1つまたは複数の隣接ノードに代わりにローカル・ルーティング・テーブル14A〜14Hを維持することもできる。ローカル・ルーティング・テーブルは、下記でより詳細に説明される。
〈分散型データ格納のためのシステムおよび方法〉
図3Aおよび図3Bは、分散型データ格納のための一例のシステムを示す。図示されるようにこの種のシステムは、上述などの相互接続されたノードのネットワーク(例えば、30A、30B〜30N)を含むことができる。各ノード30A〜30Nは、その上で実行する任意の数のプロセスを有することができる。例えば、各ノード30A〜30Nは、「ローカルキャッシュおよびトランスポート層」20を形成する1つまたは複数のプロセスの集合体と、「ストリーム・ストア層」32を形成するプロセスの集合体と、「チャンク・ストア層」34を形成するプロセスの集合体と、「フラグメント・ストア層」36を形成するプロセスの集合体とを有することができる。プロセスの集合体(図示せず)が、チェックブロック格納のために含まれていてもよい。
ローカルキャッシュおよびトランスポート層20は、ストレージサービス22とルーティングサービス24とを含むことができる。ストレージサービス22およびルーティングサービス24は、同一のノードまたは異なるノード上に存在することができる。ストレージサービス22は、ネットワークを介して同一のノードからまたは異なるノードから格納要求(ビットストリーム)を受信することができる。格納要求は、あるビットストリームを格納するための要求を含むことができる。概して、この種のビットストリームはいかなる任意長Mを有することができる。ルーティングサービス24は、ビットストリームを1つまたは複数のストリーム・ストレージサービス32A〜32Nのうちのいずれかに伝達することができる。ビットストリームを受信するストリーム・ストレージサービスは、ルーティングサービスと同一のノード上または異なるノード上に存在することができる。
受信者ノード(図示の32A)でのストリーム・ストア・サービスは、ビットストリームを含む1つまたは複数のパケットを受信することができる(例えば、ビットストリームが非常に長いので2つ以上のパケットがビットストリームをストリーム・ストア・サービスに伝達するために必要とされる)。ストリーム・ストア・サービス32Aは、その後の検索のためにローカル固定記憶装置内にビットストリームを格納することができる。ストリーム・ストア・サービス32Aは、ビットストリームを1つまたは複数の「チャンク」に分割することもできる。各チャンクは長さm≦Mビットであってよい。一例の実施形態では、各チャンクは約64Kビットの長さを有することができる。次いで、ストリーム・ストア・サービス32Aは、1つまたは複数のチャンクのそれぞれを各チャンク・ストア・サービス34A〜34Nに伝達することができる。チャンクを受信するチャンク・ストア・サービスは、ストリーム・ストア・サービス32Aと同一のノード上または異なるノード上に存在することができる。
受信者ノード(図示の34A)でのチャンク・ストア・サービスは、チャンクを含む1つまたは複数のパケットを受信し、その後の検索のためにローカルの永続性記憶装置内にチャンクを格納することができる。チャンク・ストア・サービス34Aは、チャンクを1つまたは複数の「フラグメント」に分割することもできる。各フラグメントは長さl≦mビットであってよい。一例の実施形態では各フラグメントは、約2Kビットの長さを有することができる。次いで、チャンク・ストア・サービス34Aは、フラグメントをチェックブロックに符号化し、1つまたは複数のチェックブロックのそれぞれを各フラグメント・ストア・サービス36A〜36Nに伝達することができる。フラグメントを受信するフラグメント・ストア・サービスは、チャンク・ストア・サービス34Aと同一のノード上または異なるノード上に存在することができる。
受信者ノード(図示の36A)でのフラグメント・ストア・サービスは、フラグメントを含む1つまたは複数のパケットを受信し、その後の検索のためにローカル固定記憶装置内にフラグメントを格納することができる。受信者ノードでのフラグメント・ストア・サービス36A〜36Nは、各チェックブロックを含む1つまたは複数のパケットを受信することができ、それぞれは、その後の検索のためにローカル固定記憶装置内に各チェックブロックを格納することができる。したがって、Mビットのビットストリームは、複数のkビットのチェックブロックに分割され、概して各ブロックは、この種のノードの広大なネットワーク上に分散された異なるネットワークノード上に格納される。
各チャンクが分割されるチェックブロック数は、多大な自信を持って信頼性のある検索を保証するために十二分であることが好ましい。いくつかの知られたアルゴリズムのいずれかは、元のビットストリームがチェックブロックから再構築されることができることを一定の自信レベルを持って保証するために格納されるべきチェックブロック数を決定するために使用されることができる。この種のアルゴリズムは当業者には知られており、したがって本明細書で詳細に説明される必要はない。
データ検索システム(下記で説明される)がその後、格納されたデータを見いだすことができることを保証するためにアドレス方式が、データを格納すべき場所(すなわち、どのノード上)を決定するために使用されることができる。例えば、ルーティングサービスは、ビットストリームをルーティングすべきノードのアドレスをビットストリーム自体に基づいて計算することができる。例えば、各ノードが固有のアドレスによって識別されることができる上述などのシナリオではハッシュ(hash)が、ビットストリームに基づいて計算されることができ、ハッシュテーブルは、ハッシュ値に対応するノードアドレスを決定するために調べられることができる。
ビットストリームはビットストリーム識別子を有することができる。例えば、ビットストリームはファイルであってよく、すなわちファイルはファイル名を有する。したがって、ファイル名がビットストリーム識別子と見なされてよい。ユーザ(すなわち、ビットストリームを格納するように求める人)はユーザ識別子を有することができる。例えば、ユーザに関連する公開鍵があってよい。一例の実施形態では、ビットストリーム識別子およびユーザ識別子が連結され、連結されたストリング(string)のハッシュが計算されることができる。上述のように計算されたハッシュ値は、ビットストリームが格納および後続の格納処理のために送信されるべきノードのアドレスを決定するために使用されることができる。同様に、各ハッシュ値は、ビットストリームが分解されるチャンクごと、フラグメントごとおよびチェックブロックごとに計算されることができる。次いで、チャンク、フラグメント、およびチェックブロックは、計算されたハッシュ値に対応するアドレスを有するノードに送信されることができる。
数百万個のノードを有するネットワーク環境では、各ノードがあらゆるノードに関連する各アドレスを含むハッシュテーブルを格納し維持することは実際的ではない(および望ましくない)。したがって、一例の実施形態では、各ノード10A〜10H上のサービスは、1つまたは複数の隣接ノードの代わりにローカル・ルーティング・テーブル14A〜14Hを維持することができる(図2参照)。あらゆるノードがアドレス空間(すなわち、いくつかのノードを一意的に識別するために使用されるアドレス方式)について知っているが、各ノードはその隣接ノードのいくつかのためだけにルーティングテーブルを維持することが好ましい。したがって、ハッシュテーブルはいくつかのノードの間に分散されることができる。
分散されたハッシュテーブルを使用することによって各ノードは、全アドレス空間のほんの一部だけを洞察する。しかし、上述のように、メッセージ発信元が所期の受信先のアドレスを知る必要がないことが基本的ファブリック(fabric)の性質である。メッセージ発信元は格納されるべきビットストリーム(またはチャンクまたはフラグメントまたはブロック)に基づいてハッシュを計算し、そのローカルハッシュテーブルを調べることができる。アドレスが見いだされた場合、メッセージ発信元は所期の受信先にメッセージを直接送信することができる。そうでない場合、メッセージ発信元はメッセージをファブリック上で動かし、メッセージは、それが所期の受信先に達するまで1つまたは複数の中継先を介してホップする。
結局は、上述のようにデータ(例えば、チェックブロック、フラグメント、チャンク、またはビットストリーム)は送信先ノードで永続的である(すなわち、記憶装置に永久的に格納される)。データが永続的であるとき、送信先ノードは、データが永続的であることを発信元ノードに通知するためにファブリック上でメッセージを動かすことができる。発信元ノードが情報メッセージを受信するとき、発信元ノードはデータが永続的であることを受諾する。
例えば、チェックブロックが送信先ノード上で永続的であるとき、フラグメント・ストア・サービスは、チェックブロックが永続的であることをチェックブロックの格納を要求したチャンク・ストア・サービスに通知することができる。同様に、所与のチャンクに関連するすべてのチェックブロックが永続的であるとき、チャンク・ストア・サービスは、チャンクが永続的であることをチャンクの格納を要求したストリーム・ストア・サービスに通知することができる、など。結局は、ローカルキャッシュおよびトランスポート層でのルーティングサービスは、ビットストリームが格納されていることを通知される。
格納が適切に行われたことを確認するために格納を要求するサービスは、データが格納のために送信されるときにタイマを開始することができる。例えば、チャンク・ストア・サービスが格納のためにそのフラグメントを送出するとき、チャンク・ストア・サービスはフラグメント格納確認のタイマを開始することができる。チャンク・ストア・サービスは、特定のフラグメントが、タイマが終了する前に格納されたという確認を受信しない場合、チャンク・ストア・サービスは、フラグメントが格納されなかったと結論を出し、フラグメントを他の場所に格納しようとする。
しかし、上述の分散システムが時間を「変える」能力を有することができることは理解されよう。つまり、各ノードは、絶対システム時間に対してそのノードのために計時するタイムマネジャを有することができる。したがって、時間は、絶対システム時間におよび他のノードのタイムフレームに対して特定ノード上で遅くされる、停止される、または逆行さえされてよい。したがって、格納を要求するノードでの時間が、データが格納されるべきノード(または中継ノード)での時間より速く進みうるので格納を要求するノードでのタイマは、たとえ格納プロセスに何か不具合がなくても(時間が単に遅く進んでいる)データが永続的である前に終了することができる。これに対して対応するために、格納ノードは、たとえ格納がまだ完了されていなくても格納を要求するノードがタイムアウトになるべきでないことを、格納を要求するノードに通知するために格納を要求するノードにメッセージを定期的に送信することができる。
ビットストリーム(または下記に説明されるようにビットストリームの一部)を検索するためにローカルキャッシュおよびトランスポート層20でのルーティングサービス24は、データが、それが格納されるノードから検索されるべきことを要求するネットワーク上にメッセージを動かすことができる。データを検索するためにルーティングサービス24は、データに関連するキーを計算することができる。例えば、上述のように、ルーティングサービスはビットストリーム識別子およびユーザ識別子のハッシュを計算することができる。計算されたハッシュ値は、ビットストリームが格納および後続の格納処理のために送信されるノードのアドレスを決定するために使用されることができる。
次いでルーティングサービスは、ハッシュに関連するアドレス(または最も近い隣接アドレス)を決定するためにローカル・ルーティング・テーブルを調べ、そのアドレスにビットストリームを要求することができる。ビットストリームがそのストリーム・ストア・サービスに関連するローカルキャッシュ内に依然として格納されている場合、ストリーム・ストア・サービスは、1つまたは複数のパケット内のビットストリームを、それを要求したノードに戻す。ビットストリームが、そのストリーム・ストア・サービスに関連するローカルキャッシュ内にまだ格納されていない場合、ストリーム・ストア・サービスは、ビットストリームが分解されたチャンクに関連するハッシュを計算し、それらのチャンクが格納プロセス中に送信されたチャンク・ストア・サービスにそれらのチャンクを要求する。
チャンクが、そのチャンク・ストア・サービスに関連するローカルキャッシュ内に残存する場合、そのチャンクはそれを要求したノードに戻される。そうでない場合、チャンク・ストア・サービスは、そのチャンクに関連するフラグメントに関連するハッシュを計算し、それらのフラグメントが格納されたノードにそれらのフラグメントを要求する。
ビットストリームが再構成され、それを要求したノードビットストリームに戻されるまでこのプロセスが続けられる(フラグメントを再構成するためにチェックブロックを検索すること、チャンクを再構成するためにフラグメントを検索すること、ビットストリームを再構成するためにチャンクを検索すること)。上述のように、基本的なファブリックの性質は、キーにルーティングすることによりメッセージが、データが格納されているノードに送られることである。
上述のように、ビットストリームが複数の連続的なチェックブロック(フラグメント、チャンク)に分割されることができる。したがって、検索プロセスは全ビットストリームを検索する必要がなく、チェックブロック(フラグメント、チャンク)のサブセットだけを検索することができる。概して、検索プロセスはビットストリーム内の任意のチェックブロック(フラグメント、チャンク)で開始し、他の任意のチェックブロック(フラグメント、チャンク)で終了することができる。ビットストリームの一部だけを検索するために検索サービスは、ビットストリームのその一部を構成するチェックブロック(フラグメント、チャンク)に関連するアドレスを決定し、それらのチェックブロック(フラグメント、チャンク)にビットストリームのその一部の再構成を要求することだけを必要とする。ハッシュプロセスは、以前の層の識別子およびチャンクの序数(すなわち、オフセット)、つまりより低い層内でのチェックブロックをハッシュすることによって動作するのでその部分のいずれかのハッシュ値を見いだすことが可能である。
チェックブロックが永続的であるノードが、データが検索されたときに、もはやネットワーク上にない可能性がある(例えば、データが上書きされた、削除された、または破損された可能性がある、ノードが、データが必要とされるときに利用できない可能性がある、ノードがネットワークから永久に除去されてしまう可能性がある、など)ことが予想される。上述のように各チャンクが分割されるチェックブロック数は、いくつかのチェックブロックが修復できないときでさえ、多大な自信を持って信頼性のある検索を保証するために十二分であることが好ましい。1つまたは複数のノードが、データが格納される時点とデータが検索される時点との間でネットワークに追加されることができることも予想される。キーにより近い新しいノードが導入された場合、基本的ファブリックの性質により以前の既存のノード(データが格納された時点で存在したノード)は新しいノードが導入されたことおよび新しいノードが検索されるように求められるデータにより近いことを理解することになる。したがって、新しいノードは、データが格納されるノードにメッセージをホップするプロセスを続けるために新しいノードへの適切なメッセージを「強いる」ことができる。
本発明の1つの態様により、非集中型でピアツーピアの分散型格納機構は、例えば、広告が見られるべきである実際の地方または都市に存在するクライアントPC内など、ローカルに広告を格納しキャッシュに入れるために使用されることができる。このようにして、テキスト広告およびバナー広告が格納されるだけでなく、特定の地域、近所、または個人に局部化されたリッチメディア(例えば、ステレオ音声に加えてフルモーションビデオ)のテレビ型広告も格納されることができる。
デジタル写真およびビデオの格納および共有に関しては基本的な分散型格納機構は、GoogleのPicasaの現バージョンでなど、この種の多大な量の冗長度を必要とすることなく写真の非常に高い信頼性および可用性を実現するために利用されることができる。具体的にはこのシナリオは、市場に現れる電話ベースカメラの数の増大を考慮すると重要でありうる。それ自体のローカル大容量記憶装置を有する電話ベースカメラの場合でさえ、ユーザは、写真をバックアップしそれらを電子的に共有する問題を依然として有する可能性がある。これは、携帯電話の利用がより迅速な無線インフラストラクチャの増設により急増している新生市場で特に興味がありうる。
ビデオ電子メールに関して、分散型格納モデルは、大規模のビデオメッセージのために調整される信頼性のあるメール配信システムを構築するために利用されることができる。この種のシステムでは品質問題は、システムが送信者または受信者のいずれかの帯域幅制限によってもはや拘束されないので解決されることができる。それによって受信側が、同時に同一の場所で自由にされることもできる。このシナリオは、複雑なスクリプトがキーボード上でテキストメッセージをタイプすることを困難にし、高い率の誤字が任意の種類のテキストメッセージを送信することを困難にする新生市場で重要でありうる。
したがって、拡張SOAP環境でのデータの分散型で非集中型の格納および検索のためのシステムおよび方法が説明されている。この種のシステムおよび方法は、データ格納および検索に必要な帯域幅だけでなく計算要求も分散化することは理解されよう。つまり、この種のシステムおよび方法は、1つのノードがすべての格納および検索処理を行う必要性を軽減し、単一のノードがすべてのデータを送信するまたは受信するように求められない。
本発明は様々な図で示されるある種の好ましい実施形態に関連して説明されているが、他の同様の実施形態が使用されることができ、変更または追加が、それから逸脱することなく本発明を実施するために説明された実施形態になされることができることがさらに理解されよう。例えば、データが格納されているとき、データは暗号化され符合化されるなどができ、それによって検索処理は、実際に検索されたデータが予想されたデータであることを検証することができるようになる。したがって、本発明は任意の単一の実施形態に限定されるべきでなく、特許請求の範囲による幅および範囲で解釈されるべきである。
本発明の態様が実行されるコンピューティング環境の一例を示す構成図である。 分散ネットワークの一例を示す図である。 分散型格納システムの一例を示す図である。 分散型格納システムの一例を示す図である。

Claims (19)

  1. ビットストリームを格納するための要求を受信し、前記ビットストリームを含むストリーム・ストア・メッセージをネットワーク上にルーティングするローカルキャッシュおよびトランスポート層と、
    前記ストリーム・ストア・メッセージを受信し、前記ビットストリームを複数のチャンクに分割し、複数のチャンク・ストア・メッセージをネットワーク上に送信するストリーム・ストア層と
    を備え、
    各前記チャンク・ストア・メッセージは、前記複数のチャンクのそれぞれ1つを含み、
    前記チャンクのそれぞれは、第1の複数のネットワークノードのうちのそれぞれ1つ上に格納されることを特徴とする非集中型で分散型のデータ格納のためのネットワークベースシステム。
  2. 前記チャンク・ストア・メッセージを受信し、各チャンクを各複数のフラグメントに分割し、前記フラグメントをチェックブロックに符号化し、複数のフラグメントストア・メッセージをネットワーク上に送信するチャンク・ストア層をさらに備え、各前記フラグメントストア・メッセージは前記複数のフラグメントのうちのそれぞれ1つを含み、
    前記フラグメントのそれぞれは、第2の複数のネットワークノードのうちのそれぞれ1つ上に格納されることを特徴とする請求項1に記載のネットワークベースシステム。
  3. 前記フラグメントストア・メッセージを受信し、前記チェックブロックのそれぞれを第3の複数のネットワークノードにわたって格納されるようにするフラグメント・ストア層
    をさらに備えることを特徴とする請求項2に記載のネットワークベースシステム。
  4. 前記ビットストリームは、前記ストリーム・ストア層に関連するネットワークノード上に格納されることを特徴とする請求項3に記載のネットワークベースシステム。
  5. 各フラグメントは、所定の程度の自信の範囲内で前記フラグメントの検索を保証するために十分なチェックブロック数に符号化されることを特徴とする請求項2に記載のネットワークベースシステム。
  6. 前記ローカルキャッシュおよびトランスポート層は、前記ビットストリームに基づいてハッシュ値を計算し、前記ハッシュ値は、前記ストリーム・ストア・メッセージが送信される予定であるノードに関連するアドレスを決定するために使用されることを特徴とする請求項1に記載のネットワークベースシステム。
  7. 前記ローカルキャッシュおよびトランスポート層は、前記ビットストリームが格納されている前記ストリーム・ストア層から確認を受信することを特徴とする請求項1に記載のネットワークベースシステム。
  8. 前記ローカルキャッシュおよびトランスポート層は、前記ビットストリームが格納のために送出されるときにタイマを開始し、前記ローカルキャッシュおよびトランスポート層が、前記タイマが終了する前に前記ビットストリームが格納されているという確認を前記ストリーム・ストア層から受信しない場合、前記ローカルキャッシュおよびトランスポート層は前記ビットストリームを異なるノード上に格納しようとすることを特徴とする請求項7に記載のネットワークベースシステム。
  9. 各ノードは、絶対システム時間に対してそのノードのために計時するタイムマネジャを有し、前記ストリーム・ストア層は、前記ビットストリームが依然として格納されるプロセス中であるのでタイムアウトしないことを前記ローカルキャッシュおよびトランスポート層に通知することを特徴とする請求項8に記載のネットワークベースシステム。
  10. 各ノードは、1つまたは複数の隣接ノードの代わりにローカル・ルーティング・テーブルを維持し、前記ハッシュ値を含む前記ローカル・ルーティング・テーブルのうちの少なくとも1つは、前記ストリーム・ストア・メッセージが送信される予定である前記ノードに関連する前記アドレスを決定するために使用されることを特徴とする請求項6に記載のネットワークベースシステム。
  11. 前記チャンク・ストア・メッセージのうちの少なくとも1つは、1つまたは複数の中継ネットワークノードを介してネットワークの中をホップすることによって所期のメッセージ受信先に配信されることを特徴とする請求項1に記載のネットワークベースシステム。
  12. デジタル広告の格納のための要求を受信し、前記デジタル広告に関連するビットストリームを含むストリーム・ストア・メッセージをネットワーク上にルーティングするように動作する第1のサービス集合体と、
    前記ストリーム・ストア・メッセージを受信し、前記ビットストリームを複数のチェックブロックに分割し、複数のネットワークノードのうちのそれぞれ1つ上に格納するために前記チェックブロックを配信するように動作する第2のサービス集合体と
    を備えることを特徴とする非集中型でピアツーピアの分散型格納システム。
  13. 前記ネットワークノードのうちの少なくとも1つは、前記広告が見られる地理的な位置に存在する記憶装置を含むことを特徴とする請求項12に記載の分散格納システム。
  14. 前記広告は、テキスト広告、バナー広告、ならびにフルモーションビデオおよびステレオ音声を含むリッチメディア広告のうちの少なくとも1つであることを特徴とする請求項12に記載の分散格納システム。
  15. 前記広告は、特定の地理的地域にローカライズされるまたは特定の個人にパーソナライズされることを特徴とする請求項12に記載の分散格納システム。
  16. デジタル写真およびデジタルビデオのうちの少なくとも1つを格納するための要求を受信し、前記デジタル写真またはデジタルビデオに関連するビットストリームを含むストリーム・ストア・メッセージをネットワーク上にルーティングするように動作する第1のサービス集合体と、
    前記ストリーム・ストア・メッセージを受信し、前記ビットストリームを複数のチェックブロックに分割し、複数のネットワークノードのうちのそれぞれ1つ上に格納するために前記チェックブロックを配信するように動作する第2のサービス集合体と
    を備えることを特徴とする非集中型でピアツーピアの分散型格納システム。
  17. 前記デジタル写真またはデジタルビデオは電話ベースカメラから創出されたことを特徴とする請求項16に記載の分散格納システム。
  18. 前記電話ベースカメラが無線の電話ベースカメラであることを特徴とする請求項17に記載の分散格納システム。
  19. ビデオ電子メールメッセージを格納するための要求を受信し、前記ビデオ電子メールメッセージに関連するビットストリームを含むストリーム・ストア・メッセージをネットワーク上にルーティングするように動作する第1のサービス集合体と、
    前記ストリーム・ストア・メッセージを受信し、前記ビットストリームを複数のチェックブロックに分割し、複数のネットワークノードのうちのそれぞれ1つ上に格納するために前記チェックブロックを配信するように動作する第2のサービス集合体と
    を備えることを特徴とする非集中型でピアツーピアの分散型格納システム。
JP2008507655A 2005-04-20 2006-03-09 分散型で非集中型のデータ格納および検索を行うシステムおよび方法 Expired - Fee Related JP4913128B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/110,128 2005-04-20
US11/110,128 US8266237B2 (en) 2005-04-20 2005-04-20 Systems and methods for providing distributed, decentralized data storage and retrieval
PCT/US2006/008647 WO2006115594A2 (en) 2005-04-20 2006-03-09 Systems and methods for providing distributed, decentralized data storage and retrieval

Publications (2)

Publication Number Publication Date
JP2008537258A true JP2008537258A (ja) 2008-09-11
JP4913128B2 JP4913128B2 (ja) 2012-04-11

Family

ID=37188296

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008507655A Expired - Fee Related JP4913128B2 (ja) 2005-04-20 2006-03-09 分散型で非集中型のデータ格納および検索を行うシステムおよび方法

Country Status (6)

Country Link
US (2) US8266237B2 (ja)
EP (1) EP1872282B1 (ja)
JP (1) JP4913128B2 (ja)
KR (1) KR101312856B1 (ja)
CN (1) CN101427246B (ja)
WO (1) WO2006115594A2 (ja)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011528141A (ja) * 2008-07-10 2011-11-10 タジツ トランスファー リミテッド ライアビリティ カンパニー 広告転送用記憶および検索ネットワーク
JP2012504284A (ja) * 2008-09-29 2012-02-16 タジツ トランスファー リミテッド ライアビリティ カンパニー データ転送記憶における分解/再構築
JP2012504372A (ja) * 2008-09-29 2012-02-16 タジツ トランスファー リミテッド ライアビリティ カンパニー データ転送ストレージにおける暗号化の回転
US8452844B2 (en) 2008-05-07 2013-05-28 Tajitshu Transfer Limited Liability Company Deletion in data file forwarding framework
US8554866B2 (en) 2008-09-29 2013-10-08 Tajitshu Transfer Limited Liability Company Measurement in data forwarding storage
US8599678B2 (en) 2008-07-10 2013-12-03 Tajitshu Transfer Limited Liability Company Media delivery in data forwarding storage network
US8909738B2 (en) 2008-03-20 2014-12-09 Tajitshu Transfer Limited Liability Company Redundant data forwarding storage
KR20150040501A (ko) * 2013-10-07 2015-04-15 에스케이텔레콤 주식회사 콘텐츠 동기화 방법 및 이를 위한 장치
US9203928B2 (en) 2008-03-20 2015-12-01 Callahan Cellular L.L.C. Data storage and retrieval
WO2016021584A1 (ja) * 2014-08-05 2016-02-11 株式会社未来少年 端末装置及び管理サーバ

Families Citing this family (131)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6701528B1 (en) * 2000-01-26 2004-03-02 Hughes Electronics Corporation Virtual video on demand using multiple encrypted video segments
JP2006126894A (ja) * 2004-10-26 2006-05-18 Sony Corp コンテンツ配信方法、プログラムおよび情報処理装置
US11340988B2 (en) * 2005-09-30 2022-05-24 Pure Storage, Inc. Generating integrity information in a vast storage system
US20070101019A1 (en) * 2005-11-03 2007-05-03 Cromer Daryl C Apparatus, system, and method for managing response latency
US7970835B2 (en) * 2006-04-04 2011-06-28 Xerox Corporation Peer-to-peer file sharing system and method using downloadable data segments
US7908389B2 (en) * 2006-06-20 2011-03-15 Patentvc Ltd. Methods and systems for retrieving fragments from peer clients and servers
US9178693B2 (en) * 2006-08-04 2015-11-03 The Directv Group, Inc. Distributed media-protection systems and methods to operate the same
US9225761B2 (en) * 2006-08-04 2015-12-29 The Directv Group, Inc. Distributed media-aggregation systems and methods to operate the same
GB2444344A (en) * 2006-12-01 2008-06-04 David Irvine File storage and recovery in a Peer to Peer network
US7903652B2 (en) * 2006-12-14 2011-03-08 At&T Intellectual Property I, L.P. System and method for peer to peer video streaming
WO2008110460A2 (en) * 2007-03-09 2008-09-18 Telefonaktiebolaget Lm Ericsson (Publ) Dissemination of network management tasks in a distributed communication network
WO2008117295A2 (en) * 2007-03-28 2008-10-02 Unison Play Ltd. Distributed storage management
GB2450473A (en) * 2007-06-04 2008-12-31 Sony Comp Entertainment Europe A Server in a Peer to Peer system selecting and notifying a device that it is to become a member of a peer group
KR100916244B1 (ko) * 2007-09-03 2009-09-10 전자부품연구원 Soap 오퍼레이션을 이용한 질의된 컨텐츠 서비스방법
US8156117B2 (en) * 2007-09-03 2012-04-10 Obschestvo S Ogranichennoi Otvetstvennostiyu “Meralabs” Method and system for storing, searching and retrieving information based on semistructured and de-centralized data sets
US8386630B1 (en) * 2007-09-09 2013-02-26 Arris Solutions, Inc. Video-aware P2P streaming and download with support for real-time content alteration
CN101217564B (zh) * 2008-01-16 2012-08-22 上海理工大学 简单对象存取协议的并行通信系统及其实现方法
US7631051B1 (en) 2008-09-29 2009-12-08 Gene Fein Geolocation assisted data forwarding storage
US7636760B1 (en) * 2008-09-29 2009-12-22 Gene Fein Selective data forwarding storage
US7668926B2 (en) * 2008-04-25 2010-02-23 Gene Fein Real-time communications over data forwarding framework
US9456054B2 (en) 2008-05-16 2016-09-27 Palo Alto Research Center Incorporated Controlling the spread of interests and content in a content centric network
US9098519B2 (en) * 2008-09-16 2015-08-04 File System Labs Llc Methods and apparatus for distributed data storage
US8935366B2 (en) * 2009-04-24 2015-01-13 Microsoft Corporation Hybrid distributed and cloud backup architecture
US8769049B2 (en) * 2009-04-24 2014-07-01 Microsoft Corporation Intelligent tiers of backup data
US8560639B2 (en) * 2009-04-24 2013-10-15 Microsoft Corporation Dynamic placement of replica data
US8769055B2 (en) * 2009-04-24 2014-07-01 Microsoft Corporation Distributed backup and versioning
US20100312749A1 (en) * 2009-06-04 2010-12-09 Microsoft Corporation Scalable lookup service for distributed database
IT1398195B1 (it) * 2009-06-25 2013-02-14 St Microelectronics Srl "procedimento e sistema per la distribuzione di contenuti informativi, relativo prodotto informatico"
WO2011022405A2 (en) 2009-08-17 2011-02-24 Akamai Technologies, Inc. Method and system for http-based stream delivery
US9542408B2 (en) 2010-08-27 2017-01-10 Pneuron Corp. Method and process for enabling distributing cache data sources for query processing and distributed disk caching of large data and analysis requests
JP2013503398A (ja) * 2009-08-28 2013-01-31 ニューロン コーポレーション リアルタイム・ビジネスインテリジェンスおよび自動化制御用に、ニューラルネットワークの使用を採用するシステムおよび方法
US8868746B2 (en) * 2009-10-15 2014-10-21 International Business Machines Corporation Allocation of central application resources based on social agreements
US8923293B2 (en) 2009-10-21 2014-12-30 Palo Alto Research Center Incorporated Adaptive multi-interface use for content networking
US8589637B2 (en) * 2009-10-30 2013-11-19 Cleversafe, Inc. Concurrent set storage in distributed storage network
US10009396B2 (en) 2009-12-11 2018-06-26 Thomson Licensing Queue-based adaptive chunk scheduling for peer-to-peer live streaming
US9532092B1 (en) * 2009-12-30 2016-12-27 Akamai Technologies, Inc. Multiple bitrate format-agnostic streaming architecture
JP2012018487A (ja) * 2010-07-06 2012-01-26 Fujitsu Ltd ノード決定プログラム、ノード決定装置およびノード決定方法
GB2484268A (en) 2010-09-16 2012-04-11 Uniloc Usa Inc Psychographic profiling of users of computing devices
CN101944124B (zh) * 2010-09-21 2012-07-04 卓望数码技术(深圳)有限公司 分布式文件系统管理方法、装置以及对应的文件系统
US8589732B2 (en) 2010-10-25 2013-11-19 Microsoft Corporation Consistent messaging with replication
US8667126B2 (en) * 2010-12-03 2014-03-04 International Business Machines Corporation Dynamic rate heartbeating for inter-node status updating
US8880633B2 (en) 2010-12-17 2014-11-04 Akamai Technologies, Inc. Proxy server with byte-based include interpreter
US20120265853A1 (en) * 2010-12-17 2012-10-18 Akamai Technologies, Inc. Format-agnostic streaming architecture using an http network for streaming
US20140019754A1 (en) * 2011-03-21 2014-01-16 Thomson Licensing Anonymous and unlinkable distributed communication and data sharing system
EP2695050A4 (en) 2011-04-07 2016-03-23 Pneuron Corp MIGRATION OF EXISTING APPLICATION ON A PARALLEL PERFORMANCE CLOUD OF PERFORMANCE IN REAL-TIME
US8825985B2 (en) * 2011-07-14 2014-09-02 Dell Products L.P. Data transfer reduction in scale out architectures
US10630559B2 (en) 2011-09-27 2020-04-21 UST Global (Singapore) Pte. Ltd. Virtual machine (VM) realm integration and management
WO2013090555A1 (en) 2011-12-13 2013-06-20 Pneuron Corp. Pneuron distributed analytics
WO2014014906A2 (en) * 2012-07-16 2014-01-23 Pneuron Corp. A method and process for enabling distributing cache data sources for query processing and distributed disk caching of large data and analysis requests
CN105103486B (zh) * 2013-01-19 2018-06-12 特龙德尔公司 数控制造系统中的安全流化方法及安全数控制造系统
US10410244B2 (en) 2013-11-13 2019-09-10 Bi Science (2009) Ltd Behavioral content discovery
US9367562B2 (en) 2013-12-05 2016-06-14 Google Inc. Distributing data on distributed storage systems
US10098051B2 (en) 2014-01-22 2018-10-09 Cisco Technology, Inc. Gateways and routing in software-defined manets
US9954678B2 (en) 2014-02-06 2018-04-24 Cisco Technology, Inc. Content-based transport security
US9836540B2 (en) 2014-03-04 2017-12-05 Cisco Technology, Inc. System and method for direct storage access in a content-centric network
US9626413B2 (en) 2014-03-10 2017-04-18 Cisco Systems, Inc. System and method for ranking content popularity in a content-centric network
KR102127116B1 (ko) * 2014-03-12 2020-06-26 삼성전자 주식회사 분산 데이터 저장 장치 및 분산 데이터 저장 방법
US9716622B2 (en) 2014-04-01 2017-07-25 Cisco Technology, Inc. System and method for dynamic name configuration in content-centric networks
US9992281B2 (en) 2014-05-01 2018-06-05 Cisco Technology, Inc. Accountable content stores for information centric networks
US9609014B2 (en) 2014-05-22 2017-03-28 Cisco Systems, Inc. Method and apparatus for preventing insertion of malicious content at a named data network router
US9699198B2 (en) 2014-07-07 2017-07-04 Cisco Technology, Inc. System and method for parallel secure content bootstrapping in content-centric networks
US9621354B2 (en) 2014-07-17 2017-04-11 Cisco Systems, Inc. Reconstructable content objects
US9590887B2 (en) 2014-07-18 2017-03-07 Cisco Systems, Inc. Method and system for keeping interest alive in a content centric network
US9729616B2 (en) 2014-07-18 2017-08-08 Cisco Technology, Inc. Reputation-based strategy for forwarding and responding to interests over a content centric network
US9882964B2 (en) 2014-08-08 2018-01-30 Cisco Technology, Inc. Explicit strategy feedback in name-based forwarding
US9729662B2 (en) 2014-08-11 2017-08-08 Cisco Technology, Inc. Probabilistic lazy-forwarding technique without validation in a content centric network
US9800637B2 (en) 2014-08-19 2017-10-24 Cisco Technology, Inc. System and method for all-in-one content stream in content-centric networks
US9467492B2 (en) * 2014-08-19 2016-10-11 Palo Alto Research Center Incorporated System and method for reconstructable all-in-one content stream
US10108672B2 (en) * 2014-10-03 2018-10-23 Netscout Systems Texas, Llc Stream-based object storage solution for real-time applications
US10069933B2 (en) 2014-10-23 2018-09-04 Cisco Technology, Inc. System and method for creating virtual interfaces based on network characteristics
US9590948B2 (en) 2014-12-15 2017-03-07 Cisco Systems, Inc. CCN routing using hardware-assisted hash tables
US10237189B2 (en) 2014-12-16 2019-03-19 Cisco Technology, Inc. System and method for distance-based interest forwarding
US10003520B2 (en) 2014-12-22 2018-06-19 Cisco Technology, Inc. System and method for efficient name-based content routing using link-state information in information-centric networks
US9660825B2 (en) 2014-12-24 2017-05-23 Cisco Technology, Inc. System and method for multi-source multicasting in content-centric networks
US9916457B2 (en) 2015-01-12 2018-03-13 Cisco Technology, Inc. Decoupled name security binding for CCN objects
US9832291B2 (en) 2015-01-12 2017-11-28 Cisco Technology, Inc. Auto-configurable transport stack
US9954795B2 (en) 2015-01-12 2018-04-24 Cisco Technology, Inc. Resource allocation using CCN manifests
US9946743B2 (en) 2015-01-12 2018-04-17 Cisco Technology, Inc. Order encoded manifests in a content centric network
US10333840B2 (en) 2015-02-06 2019-06-25 Cisco Technology, Inc. System and method for on-demand content exchange with adaptive naming in information-centric networks
US10075401B2 (en) 2015-03-18 2018-09-11 Cisco Technology, Inc. Pending interest table behavior
CN104750858A (zh) * 2015-04-16 2015-07-01 成都影泰科技有限公司 一种基于网络的数据存储方法
US10075402B2 (en) 2015-06-24 2018-09-11 Cisco Technology, Inc. Flexible command and control in content centric networks
US10701038B2 (en) 2015-07-27 2020-06-30 Cisco Technology, Inc. Content negotiation in a content centric network
US9986034B2 (en) 2015-08-03 2018-05-29 Cisco Technology, Inc. Transferring state in content centric network stacks
US9832123B2 (en) 2015-09-11 2017-11-28 Cisco Technology, Inc. Network named fragments in a content centric network
US10355999B2 (en) 2015-09-23 2019-07-16 Cisco Technology, Inc. Flow control with network named fragments
US9977809B2 (en) 2015-09-24 2018-05-22 Cisco Technology, Inc. Information and data framework in a content centric network
US10313227B2 (en) 2015-09-24 2019-06-04 Cisco Technology, Inc. System and method for eliminating undetected interest looping in information-centric networks
US10454820B2 (en) 2015-09-29 2019-10-22 Cisco Technology, Inc. System and method for stateless information-centric networking
US10263965B2 (en) 2015-10-16 2019-04-16 Cisco Technology, Inc. Encrypted CCNx
US9912776B2 (en) 2015-12-02 2018-03-06 Cisco Technology, Inc. Explicit content deletion commands in a content centric network
US10097346B2 (en) 2015-12-09 2018-10-09 Cisco Technology, Inc. Key catalogs in a content centric network
CN105608159B (zh) * 2015-12-18 2019-04-19 北京奇虎科技有限公司 数据缓存的方法和装置
US10257271B2 (en) 2016-01-11 2019-04-09 Cisco Technology, Inc. Chandra-Toueg consensus in a content centric network
US10305864B2 (en) 2016-01-25 2019-05-28 Cisco Technology, Inc. Method and system for interest encryption in a content centric network
US10043016B2 (en) 2016-02-29 2018-08-07 Cisco Technology, Inc. Method and system for name encryption agreement in a content centric network
US10051071B2 (en) 2016-03-04 2018-08-14 Cisco Technology, Inc. Method and system for collecting historical network information in a content centric network
US10742596B2 (en) 2016-03-04 2020-08-11 Cisco Technology, Inc. Method and system for reducing a collision probability of hash-based names using a publisher identifier
US10003507B2 (en) 2016-03-04 2018-06-19 Cisco Technology, Inc. Transport session state protocol
US10264099B2 (en) 2016-03-07 2019-04-16 Cisco Technology, Inc. Method and system for content closures in a content centric network
US10067948B2 (en) 2016-03-18 2018-09-04 Cisco Technology, Inc. Data deduping in content centric networking manifests
US10091330B2 (en) 2016-03-23 2018-10-02 Cisco Technology, Inc. Interest scheduling by an information and data framework in a content centric network
US10320760B2 (en) 2016-04-01 2019-06-11 Cisco Technology, Inc. Method and system for mutating and caching content in a content centric network
US9930146B2 (en) 2016-04-04 2018-03-27 Cisco Technology, Inc. System and method for compressing content centric networking messages
US10425503B2 (en) 2016-04-07 2019-09-24 Cisco Technology, Inc. Shared pending interest table in a content centric network
US10063414B2 (en) 2016-05-13 2018-08-28 Cisco Technology, Inc. Updating a transport stack in a content centric network
US10103989B2 (en) 2016-06-13 2018-10-16 Cisco Technology, Inc. Content object return messages in a content centric network
US10305865B2 (en) 2016-06-21 2019-05-28 Cisco Technology, Inc. Permutation-based content encryption with manifests in a content centric network
US10148572B2 (en) 2016-06-27 2018-12-04 Cisco Technology, Inc. Method and system for interest groups in a content centric network
US10009266B2 (en) 2016-07-05 2018-06-26 Cisco Technology, Inc. Method and system for reference counted pending interest tables in a content centric network
US9992097B2 (en) 2016-07-11 2018-06-05 Cisco Technology, Inc. System and method for piggybacking routing information in interests in a content centric network
US10122624B2 (en) 2016-07-25 2018-11-06 Cisco Technology, Inc. System and method for ephemeral entries in a forwarding information base in a content centric network
US10069729B2 (en) 2016-08-08 2018-09-04 Cisco Technology, Inc. System and method for throttling traffic based on a forwarding information base in a content centric network
US10956412B2 (en) 2016-08-09 2021-03-23 Cisco Technology, Inc. Method and system for conjunctive normal form attribute matching in a content centric network
US10033642B2 (en) 2016-09-19 2018-07-24 Cisco Technology, Inc. System and method for making optimal routing decisions based on device-specific parameters in a content centric network
US10212248B2 (en) 2016-10-03 2019-02-19 Cisco Technology, Inc. Cache management on high availability routers in a content centric network
US10447805B2 (en) 2016-10-10 2019-10-15 Cisco Technology, Inc. Distributed consensus in a content centric network
US10135948B2 (en) 2016-10-31 2018-11-20 Cisco Technology, Inc. System and method for process migration in a content centric network
US10243851B2 (en) 2016-11-21 2019-03-26 Cisco Technology, Inc. System and method for forwarder connection information in a content centric network
US10209901B2 (en) 2017-01-04 2019-02-19 Walmart Apollo, Llc Systems and methods for distributive data storage
WO2019199288A1 (en) * 2018-04-10 2019-10-17 Black Gold Coin, Inc. System and method for secure storage of electronic material
US10956229B2 (en) 2018-10-04 2021-03-23 International Business Machines Corporation Managing resource sharing and task bidding on the internet of things (IoT)
CN109542900B (zh) * 2018-11-08 2021-07-13 中国银联股份有限公司 一种数据处理方法及装置
CN109756561B (zh) * 2018-12-12 2022-10-14 北京世纪互联宽带数据中心有限公司 数据存储方法及其装置、电子设备、计算机可读介质
US11126659B2 (en) * 2018-12-24 2021-09-21 Graphen, Inc. System and method for providing a graph protocol for forming a decentralized and distributed graph database
CN111565168B (zh) * 2020-03-02 2023-05-23 杭州云毅网络科技有限公司 一种对象存储方法、系统、存储介质及电子设备
US11641392B2 (en) 2020-06-04 2023-05-02 Nec Corporation Methods and systems for de-centralized data sharing with enforced data usage control for cross-party data analytics
RU2768615C1 (ru) * 2020-12-28 2022-03-24 Общество С Ограниченной Ответственностью "Дельта Солюшнс" Система хранения данных в соответствии с профилем хранения данных
US20220397889A1 (en) * 2021-06-14 2022-12-15 Transportation Ip Holdings, Llc Facility control and communication system
US11611615B1 (en) * 2021-12-07 2023-03-21 Theta Labs, Inc. Decentralized edge storage network with flexible file sharding
WO2023158780A1 (en) * 2022-02-17 2023-08-24 Theta Labs, Inc. Decentralized edge storage network with flexible file sharding

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5966120A (en) * 1995-11-21 1999-10-12 Imedia Corporation Method and apparatus for combining and distributing data with pre-formatted real-time video
US20030177435A1 (en) * 2002-03-18 2003-09-18 Robin Budd End-to-end checksumming for read operations
US20030233609A1 (en) * 2002-06-18 2003-12-18 Ikonomopoulos Gus P. Parallel error checking for multiple packets
JP2004126716A (ja) * 2002-09-30 2004-04-22 Fujitsu Ltd 広域分散ストレージシステムを利用したデータ格納方法、その方法をコンピュータに実現させるプログラム、記録媒体、及び広域分散ストレージシステムにおける制御装置
JP2004221756A (ja) * 2003-01-10 2004-08-05 Sony Corp 情報処理装置および情報処理方法、並びにコンピュータ・プログラム
JP2005070987A (ja) * 2003-08-22 2005-03-17 Nippon Telegr & Teleph Corp <Ntt> ファイル共有システムで用いられるノード、ファイル共有システムで用いられるファイル保存方法及びファイル保存プログラム。

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5717535A (en) * 1995-01-25 1998-02-10 Seagate Technology, Inc. Block address integrity check for storage medium
US5948062A (en) * 1995-10-27 1999-09-07 Emc Corporation Network file server using a cached disk array storing a network file directory including file locking information and data mover computers each having file system software for shared read-write file access
US6052751A (en) * 1997-02-14 2000-04-18 Advanced Micro Devices, I Nc. Method and apparatus for changing the number of access slots into a memory
US6792454B2 (en) * 1998-02-04 2004-09-14 Interwoven, Inc. System and method for website development
EP0975123A1 (en) * 1998-07-15 2000-01-26 Telefonaktiebolaget L M Ericsson (Publ) Communication device and method for reliable and low-delay packet transmission
KR20020035571A (ko) 1999-08-02 2002-05-11 란돌 엠. 청 서버 또는 유저로부터 다른 유저로의 vod
US6941338B1 (en) * 1999-09-01 2005-09-06 Nextwave Telecom Inc. Distributed cache for a wireless communication system
US6732162B1 (en) * 1999-11-15 2004-05-04 Internet Pictures Corporation Method of providing preprocessed images for a plurality of internet web sites
US20020080888A1 (en) * 2000-12-22 2002-06-27 Li Shu Message splitting and spatially diversified message routing for increasing transmission assurance and data security over distributed networks
WO2002065329A1 (en) * 2001-02-14 2002-08-22 The Escher Group, Ltd. Peer-to peer enterprise storage
US7209973B2 (en) * 2001-04-09 2007-04-24 Swsoft Holdings, Ltd. Distributed network data storage system and method
US6565392B2 (en) * 2001-10-01 2003-05-20 Litton Systems, Inc. Compliant section for an electrical contact
US6757684B2 (en) * 2001-10-01 2004-06-29 Ipac Acquisition Subsidiary I, Llc Network-based photosharing architecture
US6849589B2 (en) * 2001-10-10 2005-02-01 3M Innovative Properties Company Cleaning composition
US20030105831A1 (en) * 2001-12-04 2003-06-05 O'kane Robert Peer-to-peer (P2P) and internet content delivery based user based digital acknowledgement trigger used for file transfer
US7243103B2 (en) * 2002-02-14 2007-07-10 The Escher Group, Ltd. Peer to peer enterprise storage system with lexical recovery sub-system
US20030158958A1 (en) * 2002-02-20 2003-08-21 Koninklijke Philips Electronics N.V. Distributed storage network architecture using user devices
JP2004192483A (ja) * 2002-12-13 2004-07-08 Hitachi Ltd 分散ストレージシステムの管理方法
US20050050292A1 (en) * 2003-05-23 2005-03-03 Oh Jae C. Method and apparatus for per-process based virtual memory hierarchy and disk storage for distributed systems enabled as middleware for main memory and disk blocks on demand
US8001187B2 (en) * 2003-07-01 2011-08-16 Apple Inc. Peer-to-peer active content sharing
US7366092B2 (en) * 2003-10-14 2008-04-29 Broadcom Corporation Hash and route hardware with parallel routing scheme
US7555527B1 (en) * 2003-11-07 2009-06-30 Symantec Operating Corporation Efficiently linking storage object replicas in a computer network
US7328303B1 (en) * 2004-06-30 2008-02-05 Sun Microsystems, Inc. Method and system for remote execution of code on a distributed data storage system
JP4598494B2 (ja) * 2004-11-26 2010-12-15 富士通株式会社 利用者仮識別子を用いるネットワークサービスシステム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5966120A (en) * 1995-11-21 1999-10-12 Imedia Corporation Method and apparatus for combining and distributing data with pre-formatted real-time video
US20030177435A1 (en) * 2002-03-18 2003-09-18 Robin Budd End-to-end checksumming for read operations
US20030233609A1 (en) * 2002-06-18 2003-12-18 Ikonomopoulos Gus P. Parallel error checking for multiple packets
JP2004126716A (ja) * 2002-09-30 2004-04-22 Fujitsu Ltd 広域分散ストレージシステムを利用したデータ格納方法、その方法をコンピュータに実現させるプログラム、記録媒体、及び広域分散ストレージシステムにおける制御装置
JP2004221756A (ja) * 2003-01-10 2004-08-05 Sony Corp 情報処理装置および情報処理方法、並びにコンピュータ・プログラム
JP2005070987A (ja) * 2003-08-22 2005-03-17 Nippon Telegr & Teleph Corp <Ntt> ファイル共有システムで用いられるノード、ファイル共有システムで用いられるファイル保存方法及びファイル保存プログラム。

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8909738B2 (en) 2008-03-20 2014-12-09 Tajitshu Transfer Limited Liability Company Redundant data forwarding storage
US9203928B2 (en) 2008-03-20 2015-12-01 Callahan Cellular L.L.C. Data storage and retrieval
US9961144B2 (en) 2008-03-20 2018-05-01 Callahan Cellular L.L.C. Data storage and retrieval
US8452844B2 (en) 2008-05-07 2013-05-28 Tajitshu Transfer Limited Liability Company Deletion in data file forwarding framework
JP2011528141A (ja) * 2008-07-10 2011-11-10 タジツ トランスファー リミテッド ライアビリティ カンパニー 広告転送用記憶および検索ネットワーク
US8599678B2 (en) 2008-07-10 2013-12-03 Tajitshu Transfer Limited Liability Company Media delivery in data forwarding storage network
JP2012504284A (ja) * 2008-09-29 2012-02-16 タジツ トランスファー リミテッド ライアビリティ カンパニー データ転送記憶における分解/再構築
JP2012504372A (ja) * 2008-09-29 2012-02-16 タジツ トランスファー リミテッド ライアビリティ カンパニー データ転送ストレージにおける暗号化の回転
US8554866B2 (en) 2008-09-29 2013-10-08 Tajitshu Transfer Limited Liability Company Measurement in data forwarding storage
KR20150040501A (ko) * 2013-10-07 2015-04-15 에스케이텔레콤 주식회사 콘텐츠 동기화 방법 및 이를 위한 장치
KR102111573B1 (ko) 2013-10-07 2020-05-15 에스케이텔레콤 주식회사 콘텐츠 동기화 방법 및 이를 위한 장치
WO2016021584A1 (ja) * 2014-08-05 2016-02-11 株式会社未来少年 端末装置及び管理サーバ

Also Published As

Publication number Publication date
US8266237B2 (en) 2012-09-11
KR101312856B1 (ko) 2013-09-30
CN101427246B (zh) 2011-07-27
EP1872282A2 (en) 2008-01-02
KR20080008338A (ko) 2008-01-23
CN101427246A (zh) 2009-05-06
EP1872282A4 (en) 2010-09-29
WO2006115594A3 (en) 2008-02-07
US8549095B2 (en) 2013-10-01
WO2006115594A2 (en) 2006-11-02
JP4913128B2 (ja) 2012-04-11
EP1872282B1 (en) 2018-04-25
US20120096127A1 (en) 2012-04-19
US20060242155A1 (en) 2006-10-26

Similar Documents

Publication Publication Date Title
JP4913128B2 (ja) 分散型で非集中型のデータ格納および検索を行うシステムおよび方法
US7978631B1 (en) Method and apparatus for encoding and mapping of virtual addresses for clusters
Hefeeda et al. A hybrid architecture for cost-effective on-demand media streaming
KR101432314B1 (ko) 분산형 네트워크에 저장될 파일들을 인코딩하기 위한 컴퓨터 구현 프로세스 및 이를 실행하기 위한 컴퓨터 판독 가능 매체, 피어 투 피어 네트워크의 저장 신뢰도 및 효율성을 향상시키기 위한 시스템, 및 분산형 네트워크에 저장된 인코딩된 파일을 디코딩하기 위한 컴퓨터 구현 프로세스
JP5526137B2 (ja) 選択的データ転送ストレージ
US20200137164A1 (en) Data storage and retrieval
US20060224687A1 (en) Method and apparatus for offline cooperative file distribution using cache nodes
JP2012504284A (ja) データ転送記憶における分解/再構築
TW201405324A (zh) 雲端資料儲存系統及基於該系統的資料儲存與共用方法
JP2011528141A (ja) 広告転送用記憶および検索ネットワーク
Ip et al. COPACC: An architecture of cooperative proxy-client caching system for on-demand media streaming
WO2008017502A1 (en) Content distribution network
KR20170016281A (ko) 콘텐트 중심 네트워크 스택들에서의 상태 전달
WO2007008567A1 (en) Secure peer to peer messaging service
WO2007116630A1 (ja) ノード装置、記憶制御プログラムを記録した記録媒体及び情報記憶方法
JP2010113573A (ja) コンテンツ分散保存システム、コンテンツ保存方法、サーバ装置、ノード装置、サーバ処理プログラム、及びノード処理プログラム
JP5803924B2 (ja) データ転送システム
JP5157770B2 (ja) ノード装置、プログラム及び保存指示方法
Firooz et al. A multi-sender multicast algorithm for media streaming on peer-to-peer networks
JP2016005271A (ja) コンテンツ中心ネットワークにおけるインタレストによる消費者状態の割り当て
KR100592667B1 (ko) 컨텐츠 분배 관리 시스템에서의 컨텐츠 복제 방법
CN116962391A (zh) 一种基于纠删码的临近传输方法及装置
JP2009020669A (ja) コンテンツ分散保存システム、コンテンツデータ保存方法、稼働率管理装置、及びノード装置等
Adeyeye et al. Content hosting and distribution framework for wireless mesh networks
Vemulapalli et al. Efficient Data Distribution and Sharing in Mobile Cloud Computing.

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090209

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110215

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110516

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110523

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110707

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110809

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111109

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 4913128

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20150127

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees