JP4961126B2 - リモート差分圧縮のための候補オブジェクトを見つける効率のよいアルゴリズム - Google Patents
リモート差分圧縮のための候補オブジェクトを見つける効率のよいアルゴリズム Download PDFInfo
- Publication number
- JP4961126B2 JP4961126B2 JP2005277831A JP2005277831A JP4961126B2 JP 4961126 B2 JP4961126 B2 JP 4961126B2 JP 2005277831 A JP2005277831 A JP 2005277831A JP 2005277831 A JP2005277831 A JP 2005277831A JP 4961126 B2 JP4961126 B2 JP 4961126B2
- Authority
- JP
- Japan
- Prior art keywords
- characteristic
- signature
- chunk
- objects
- chunks
- 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.)
- Active
Links
- 238000007906 compression Methods 0.000 title claims description 29
- 230000006835 compression Effects 0.000 title claims description 29
- 238000004422 calculation algorithm Methods 0.000 title description 38
- 238000000034 method Methods 0.000 claims description 93
- 230000006870 function Effects 0.000 claims description 39
- 238000003860 storage Methods 0.000 claims description 18
- 238000007620 mathematical function Methods 0.000 claims description 9
- 238000013507 mapping Methods 0.000 claims description 5
- 101150060512 SPATA6 gene Proteins 0.000 description 79
- 238000012546 transfer Methods 0.000 description 21
- 230000008569 process Effects 0.000 description 14
- 238000004364 calculation method Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 9
- 230000002829 reductive effect Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 6
- 238000000638 solvent extraction Methods 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 4
- 230000001419 dependent effect Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000005096 rolling process Methods 0.000 description 4
- 230000001174 ascending effect Effects 0.000 description 3
- 230000006837 decompression Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 101100311460 Schizosaccharomyces pombe (strain 972 / ATCC 24843) sum2 gene Proteins 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 2
- 238000013144 data compression Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000009191 jumping Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000036961 partial effect Effects 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 230000010076 replication Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000002411 adverse Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000035755 proliferation Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/174—Redundancy elimination performed by the file system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
図1に、本発明の動作環境例を示す。図に例示されているように、装置はネットワーク上で通信を行うように構成されている。これらの装置は、汎用コンピューティング装置、専用コンピューティング装置、またはネットワークに接続される他の適切な装置とすることができる。ネットワーク102は、限定はしないが、直接配線接続(例えば、パラレルポート、シリアルポート、USB、IEEE 1394など)、無線接続(例えば、IRポート、Bluetoothポートなど)、有線ネットワーク、無線ネットワーク、ローカルエリアネットワーク、ワイドエリアネットワーク、ウルトラワイドエリアネットワーク、インターネット、イントラネット、およびエクストラネットを含む、接続トポロジに対応しうる。
図2に、本発明により用意されるコンピューティング装置の一実施例を示す。基本的な構成では、コンピューティング装置200は、通常、少なくとも1つの演算処理装置(202)およびシステムメモリ(204)を備える。コンピューティング装置の正確な構成と種類に応じて、システムメモリ204は、揮発性(RAMなど)、不揮発性(ROM、フラッシュメモリなど)、またはこれら2つの何らかの組合せとすることができる。システムメモリ204は、通常、オペレーティングシステム(205)、1つまたは複数のプログラムモジュール(206)を格納し、プログラムデータ(207)を含む場合もある。この基本構成は、図2において点線208内のコンポーネントにより示されている。
図3Aおよび3Bは、本発明の少なくとも1つの態様によるRDC手順例を示す図である。チャンクの個数は、特に、実際のオブジェクトOAおよびOBに応じてインスタンス毎に異なることがある。
図4Aおよび4Bに、本発明の少なくとも一態様により用意されるRDC手順の実施例実行時にローカル装置(例えば、装置A)とリモート装置(例えば、装置B)との間のやり取りのプロセスの流れを例示する。図4Aの左側は、ローカル装置Aに作用するステップ400〜413を示し、図4Aの右側は、リモート装置Bに作用するステップ450〜456を示している。
図5Aおよび5Bに、本発明の少なくとも一態様に従って用意されるRDC手順例でシグネチャおよびチャンク長リストの再帰的転送を行うプロセスの流れを例示する。後述の手順は、通常関連付けられているオブジェクトを更新することを試みるローカル装置とリモート装置の両方に適用することができる。
図7は、本発明の少なくとも一態様により用意されるRDC手順例を使用してクライアントおよびサーバアプリケーションのやり取りを例示する図である。サーバおよびクライアントの両方にあるオリジナルのファイルは、「The quick fox jumped over the lazy brown dog. The dog was so lazy that he didn't notice the fox jumping over him.」という文を含んでいた。
上述の基本的なRDC手順の有効性は、オブジェクトデータをチャンクに分ける、および/またはシグネチャおよびチャンク長リストをチャンクに分けるために使用されるチャンキング手順を最適化することにより高められる。
およびsignature
2.平均チャンクサイズC:
オブジェクトOAおよびOBが平均サイズKと共通のS個のセグメントを持つ場合、ローカルのクライアント上で得られるチャンクの個数は以下の式で与えられ、
すべてのチャンキングアルゴリズムは、小さなウィンドウ、つまり、バイトの制限されたシーケンスに依存するフィンガープリント関数、またはハッシュを使用する。チャンキングに使用されるハッシュアルゴリズムの実行時間は、それらのアルゴリズムが有限差分(強度削減)最適化の影響を受けやすいとき、ハッシュウィンドウサイズと無関係である。したがって、サイズkのハッシュウィンドウについては、b0、bk、および#[b0,b1,...,bk-1]のみを使用してハッシュ#[b1,...,bk-1,bk]を計算するのは容易であろう(一定数のステップのみを必要とする)。ラビン多項式を使用するハッシュ関数とともに事前計算された乱数の表に基づく計算効率の高いと思われる他のハッシュ関数などの様々なハッシュ関数を採用することができる。
sum2+=sum1−k*table[b0]
他の実施例では、循環シフトを使用する64ビットランダムハッシュは、フィンガープリントのためのハッシュ関数として使用することができる。循環シフトの周期は、ハッシュ値のサイズにより制限される。そのため、64ビットハッシュ値を使用すると、ハッシュの周期は64に設定される。ハッシュを更新する手順は以下のとおりである。
hash=(hash<<1)|(hash>>63);
ただし、1=k%64およびu=64−1
さらに他の実施例では、他のシフト方法を使用して、フィンガープリントを実現できる。直接的な循環シフトは、制限された長さの周期を生成し、ハッシュ値のサイズにより制限される。他の順列は周期がそれよりも長い。例えば、循環(1 2 3 0)(5 6 7 8 9 10 11 12 13 14 4)(16 17 18 19 20 21 15)(23 24 25 26 22)(28 29 27)(31 30)により与えられる順列は、長さ4*3*5*7*11=4620の周期を有する。右へのシフトの後に各区間の始めの位置を修正する演算を使用して、この順列の例の単一の適用を計算することができる。
以前のチャンキング方法は、所定のウィンドウサイズk(=48)のフィンガープリントハッシュを計算し、ハッシュビットの部分集合が所定のパターンと一致するか否かに基づいて切点を識別することにより決定される。ランダムハッシュ値を使用すると、このパターンは0とすることもでき、関連する部分集合も、ハッシュの接頭辞とすることができる。基本命令では、これは、以下の形式の述部に翻訳される。
ただし、cは、照合されるべきビットの個数である。
予想されるスラックの概算は、ストリームs1s3およびs2s3を考慮することにより得られる。s1およびs2における切点は、任意の桁に出現できる。平均チャンク長はC=m+2cなので、s1およびs2の最後の切点の約(2c/C)2は、距離mを超える。これらは、約2cのところでスラックに寄与する。残りの1−(2c/C)2は、長さ約Cのスラックとともに関わる。その後、予想されるスラックは、(2c/C)3+(1−(2c/C)2)*(C/C)=(2c/C)3+1−(2c/C)2程度となり、m=2c-1に対し大域的な最小値を持ち、値は約23/27=0.85である。より正確な分析により、残り1−(2c/C)2の端数に対しいくらか低い推定値が得られるが、s3の内側の距離mの範囲内の切断を補正する必要もあり、より高い推定値の一因となる。
フィルタでのチャンキングは、フィルタを固定することに基づいており、これは、長さmのパターン列であり、フィンガープリントハッシュのシーケンスをフィルタと照合する。このフィルタで、ハッシュのシーケンスをフィルタの接頭辞と接尾辞の両方に一致させることができない場合、2つの一致の間の最小距離は少なくともmでなければならないと推論することができる。フィルタ例は、最初のm−1個のパターンを
0!=(hash&((1<<c)−1))
に設定し、最後のパターンを
0==(hash&((1<<c)−1))
に設定することにより、従来技術で使用されるCutPoint述部から得られる。
局所最大値でのチャンキングは、有界な水平軸の範囲内にある切点として選択することに基づく。以下では、水平軸の値に対しhを使用することにする。オフセットoffset−h、...、offset−1とともにoffset+1、...、offset+hでのハッシュ値がすべてoffsetでのハッシュ値よりも小さい場合に、位置offsetのハッシュはh局所最大であるという。つまり、左にhステップ、および右にhステップのすべての位置は、より小さなハッシュ値を持つ。当業者であれば、局所最大値は、局所最小値または他の測定基準ベースの比較(「ハッシュ値の中央値に最も近い」など)で置き換えられることを理解するであろう。
nバイトのオブジェクトは、与えられたオブジェクトについて高々n個のエントリが挿入されるように、CutPointをn回呼び出すことにより処理される。削除されるエントリがn個以下となるように、ステップ805で開始するループが繰り返される毎に1つのエントリが削除される。そのため、この処理ループには、エントリ毎に1回入ることができ、繰り返しの組み合わせた回数は高々nとすることができる、これは、CutPointの各呼び出しでのループ内のステップの平均数は、2よりも少し小さく、切点を計算するステップの数は、hと無関係であることを意味する。
積分∫0≦x<m1/m(x/m)2hdx=1/(2h+1)を使用して近似を行うと、mが十分に大きい場合の確率が示される。
(1/m)2h+1Σ0≦k<mk2h,
に簡略化し、これは、ベルヌーイ数Bkの展開を使用して、
(1/m)2h+11/(2h+1)Σ0≦k<2h(2h+1)!/k!(2h+1−k)!Bkm2h+1-k
にすることにより、より正確に計算することができる。
左辺は、無限和1+(1/2)2n+(1/3)2n+...を表し、これは、nが控えめな値であっても、1に非常に近い。
最小チャンクサイズは、局所最大値および上述のフィルタ方法の両方の中に組み込まれている。従来の実装では、最小チャンクサイズを付加的パラメータと別に供給する必要がある。
上述のチャンキングの手順では、局所最大値計算を使用して切点を特定する手段を説明しているが、本発明はそれに限定されるわけではない。潜在的切点を調べられるように数学関数を用意することができる。それぞれの潜在的切点は、考察される切点を中心とする水平ウィンドウ内に置かれているハッシュ値を評価することにより評価される。ハッシュ値の評価は、これは、水平内の最大値を特定すること、水平内の最小値を特定すること、ハッシュ値間の差を評価すること、ハッシュ値の差異を評価すること、任意の定数と突き合わせてその結果を比較することのうちの少なくとも1つを含むことができる数学関数だけでなく、他の何らかの数学または統計関数により実行される。
上述の基本的なRDC手順の有効性は、RDCアルゴリズムのステップ4および8でシグネチャおよびチャンク再利用についてそれぞれレシーバ上の候補オブジェクトを見つけることにより高めることができる。このアルゴリズムは、装置Aが、RDCアルゴリズムを使用して装置Bから転送される必要のあるオブジェクトOBに類似のOA1、OA2、...、OAnにより表されるオブジェクトの小さな部分集合を識別するのを助ける。OA1、OA2、...、OAnは、装置A上にすでに格納されているオブジェクトの一部である。
オブジェクトOA1、OA2、...、OAnの集合は、最も良いnの一致をとることによりSimilar(OB,ObjectsA,s)の部分集合として計算される。
オブジェクトOの特性の集合Traits(O)は、それぞれ、RDCアルゴリズムのステップ2または3について説明されているように、Oについて計算されたチャンクシグネチャに基づき計算される。
b:特性毎のビット数
t:オブジェクト毎の特性数
x:一致する特性の最小個数
以下のステップは、オブジェクトOの特性Traits(O)を計算するために使用される。
...
ISt={Ht(Shingle1),Ht(Shingle2),...,Ht(Shinglen)
4.ブロック1340では、事前特性PT1...PTtは、それぞれのイメージ集合の最小要素をとることにより計算される。
...
PTt=min(ISt)
他の決定論的数学関数も、事前特性を計算するのに使用できる。例えば、事前特性PT1...PTtは、それぞれのイメージ集合の最大要素をとることにより計算される。
...
PTt=max(ISt)
数学的には、値を適切に順序付けられた集合に移すマッピングは、2つの単純な実現(realization)となる有界整数上の最大値および最小値を満たす。
...
Tt=select(t-1)b..tb-1(PTt)
事前特性よりもサイズの小さい特性を作成するために、いかなる決定論的関数でも使用できる。例えば、ハッシュ関数は、結果のサイズが事前特性よりも小さい限り事前特性のそれぞれに適用することが可能であり、必要なビット総数(tb)が事前特性を超える場合、いくつかのハッシュ関数は、部分集合を選択する前にビットの数を拡大するために使用されるべきである。
事前特性PT1...PTtを効率よく選択するために、以下の方式を使用し、シングルの部分評価を行って、事前特性を選択するための計算要件を低減することができる。論理的には、各Hiは、2つの部分HighiとLowiに分割される。それぞれのイメージ集合の最小要素のみが選択されるので、Highiは、すべてのチャンクシグネチャについて計算され、Lowiは、Highiについてこれまでに得られた最小値を与えるチャンクシグネチャについてのみ計算される。High値が比較的小さな空間から引き出される場合、これは計算を節約できる。さらに、いくつかのHigh値が1つにまとめられれば、かなりの計算を節約できる。例えば、それぞれのHigh値が8ビット長であると仮定する。これらのうち8つを長整数にパックすることができ、シグネチャから単一の8バイトハッシュを計算するのと引き換えに、その値を8つの独立の1バイトスライスに刻むことができる。High値しか必要なかった場合には、計算コストは1/8に低減される。しかし、平均256回に1回、対応するLow値を計算し、等しいHigh値に対応する他のLow値と比較する必要がある。
このアルゴリズムは、OBと類似の特性を持つオブジェクトの集合を計算することにより与えられたオブジェクトOBに類似のオブジェクトの集合を近似する。
SimilarTraits(OB,ObjectsA,x)={OA|OA∈ObjectsA∧TraitSimiiarity(OB,OA)≧t}
これらの値を導き出せる他の計算もうまくゆく。
装置Aおよび装置Bの両方で格納されているオブジェクトのすべてに対する特性の集合をキャッシュし、修正されたRDCアルゴリズムのステップ1.6および1.5をそれぞれ実行するときに毎回その特性を再計算しなくて済むようにすると都合がよい(図12および関連する説明を参照)。RDC計算をスピードアップするために、特性情報を装置Aおよび装置Bのメモリにそれぞれ格納することができる。
図18に、本発明の様々な態様による類似の特性を持つオブジェクトを見つけるプロセスを例示する。一実施形態によれば、SimilarTraits(OB,ObjectsA,x)を計算する場合、これらのステップはマージソートアルゴリズムに似ている。このアルゴリズムでは、OBの少なくともxおよびt個までの特性にそれぞれ一致するObjectsAに属しているオブジェクトを格納するために使用される(t−x+1)個のオブジェクトバケット、OBx...OBtを使用する。
Claims (11)
- リモート差分圧縮で用いるオブジェクトをコンピュータが識別する方法であって、
前記方法は、
オブジェクトの特性を計算するステップであって、該特性を計算するステップは、
前記オブジェクトを複数のチャンクに分割することと、
前記オブジェクトのチャンクのそれぞれについてのシグネチャを計算することと、
前記シグネチャを複数のシングルにグループ化することと、
前記シングルのそれぞれについての少なくとも一つのシングルシグネチャを計算することと、
前記シングルシグネチャをイメージ集合にマッピングすることと、
前記イメージ集合から所定の条件に基づいて前記シングルシグネチャを選択することによって事前特性を計算することと、
前記事前特性の一部のビットを選択して前記特性を計算することであって、該特性は、該事前特性に比べて小さいサイズである、ことと
を含む、ステップと、
前記計算された特性と類似の特性を持つ、前記オブジェクトに類似する候補オブジェクトを識別するステップと、
前記識別された候補オブジェクトを使用して前記オブジェクトを再構成することによって最終オブジェクトを選択するステップと
を含むことを特徴とする方法。 - 前記オブジェクトの特性を計算するステップは、
それぞれの位置を中心とする小さなウィンドウ内のバイトの値を使用することによって前記オブジェクトのそれぞれのバイト位置でフィンガープリントを生成するステップをさらに含むことを特徴とする請求項1に記載の方法。 - 前記オブジェクトの特性を計算するステップは、
それぞれの位置を中心とする小さなウィンドウ内のバイトの値を使用することによって前記オブジェクトのそれぞれのバイト位置でフィンガープリントを生成するステップをさらに含み、
前記オブジェクトをチャンクに分割することは、前記フィンガープリントに基づいて前記オブジェクトをチャンクすることを含むことを特徴とする請求項1に記載の方法。 - 前記候補オブジェクトを使用することは、
前記候補オブジェクトのうちk個の最も良く一致するオブジェクトを複数のローカルチャンクに分割することと、
それぞれのローカルチャンクについてのローカルシグネチャを計算することと、
リモート装置から受信されたリモートシグネチャと前記ローカルシグネチャとを比較することと、
前記シグネチャ比較により前記ローカルチャンクが再利用可能であることが示される場合に、ローカルチャンクを再利用して、前記リモートオブジェクトを再構成することと
を含むことを特徴とする請求項1に記載の方法。 - 前記特性をコンパクトに符号化することによって装置の揮発性メモリ内に前記特性を格納するステップと、
オブジェクトIDをコンパクトに表すオブジェクトマップを装置上に生成するステップであって、それぞれのコンパクトな表現が所定のサイズを使用して表される、ステップと、
特性番号および特性値から特性集合にマッピングする少なくとも2レベルインデックスを形成する特性テーブルを生成するステップと
をさらに含むことを特徴とする請求項1に記載の方法。 - 類似の特性を持つオブジェクトを検出するステップをさらに含み、該検出するステップは、
バケット(OBx....OBt)を生成して、リモートオブジェクトOBの少なくともx個の特性と一致するローカルオブジェクトを格納することと、
オブジェクトOBのt個の特性に対応するt個のTraitSets(TS1...TSt)を選択することと、
インデックス(P1...Pt)を初期化して、それぞれ、TS1...TStの第1の要素を指すことであって、TSk[Pk]がPkによって指される前記オブジェクトIDの表記である、ことと、
P1...PtのそれぞれがそのTraitSet配列TS1...TStの最後の要素をそれぞれ指すと判定される場合に所望の数の類似のオブジェクトを選択することと、
最小オブジェクトIDを指すインデックスの集合である、MinP集合を選択することと、
MinIDをMinP内のすべてのインデックスによって指される最小オブジェクトIDとして設定することと、
一致する特性の数に対応する、k=|MinP|の場合に、k≧xおよびObjectMap(MinP)はデッドエントリでないと判定される場合にMinIDをOBkに付加することと、
MinP内のそれぞれのインデックスPkをそれぞれのTraitSet配列TSk内の次のオブジェクトIDに進めることと
を含むことを特徴とする請求項5に記載の方法。 - リモート差分圧縮のためオブジェクトを識別するコンピュータ実行可能命令を格納するコンピュータ読み取り可能な記憶媒体であって、前記コンピュータ実行可能命令は、実行される時に、コンピュータに、
オブジェクトを複数のチャンクに分割するステップと、
前記オブジェクトチャンクのそれぞれについてのシグネチャを計算するステップと、
前記シグネチャを複数のシングルにグループ化するステップと、
前記シングルのそれぞれについての少なくとも1つのシングルシグネチャを計算するステップと、
前記シングルシグネチャを複数のイメージ集合にマッピングするステップと、
前記イメージ集合から所定の条件に基づいて前記シングルシグネチャを選択することによって事前特性を計算するステップであって、該ステップは、それぞれのイメージ集合から計算されたハッシュ値の1つを選択する決定論的数学関数を適用することを含み、該決定論的数学関数は、最大値関数および最小値関数から選択される、ステップと、
前記事前特性の一部のビットを選択して特性を計算するステップであって、前記特性は、前記オブジェクトに類似する最終オブジェクトを識別する該特性を使用する前記事前特性と比較して小さいサイズであり、前記特性を計算するステップは、それぞれが前記特性よりも小さい所定のビット数を有する特性を生成する前記事前特性のそれぞれに決定論的数学関数を適用することを含む、ステップと
を含む方法を実行させることを特徴とするコンピュータ読み取り可能な記憶媒体。 - 前記オブジェクトを複数のチャンクに分割するステップは、
それぞれの位置を中心とする小さなウィンドウ内のバイトの値を使用することにより前記オブジェクトのそれぞれのバイト位置でフィンガープリントを生成することと、
前記フィンガープリントに基づいて前記オブジェクトをチャンクすることと
を含むことを特徴とする請求項7に記載のコンピュータ読み取り可能な記憶媒体。 - 前記シグネチャを複数のシングルにグループ化するステップは、シグネチャを連結して1つのシングルを形成することから成ることを特徴とする請求項7に記載のコンピュータ読み取り可能な記憶媒体。
- オブジェクトIDをコンパクトに表すオブジェクトマップを装置上に生成するステップであって、各コンパクトな表現が所定のサイズを使用して表される、ステップと、
特性番号および特性値から特性集合にマッピングする少なくとも2レベルインデックスを形成する特性テーブルを生成するステップと
をさらに含むことを特徴とする請求項7に記載のコンピュータ読み取り可能な記憶媒体。 - 類似の特性を持つオブジェクトを検出するステップをさらに含み、該検出するステップは、
バケット(OBx....OBt)を生成して、リモートオブジェクトOBの少なくともx個の特性と一致するローカルオブジェクトを格納することと、
オブジェクトOBのt個の特性に対応するt個のTraitSets(TS1...TSt)を選択することと、
インデックス(P1...Pt)を初期化して、それぞれ、TS1...TStの第1の要素を指すことであって、TSk[Pk]がPkによって指される前記オブジェクトIDの表記である、ことと、
P1...PtのそれぞれがそのTraitSet配列TS1...TStの最後の要素をそれぞれ指すと判定される場合に所望の数の類似のオブジェクトを選択することと、
最小オブジェクトIDを指すインデックスの集合である、MinP集合を選択することと、
MinIDをMinP内のすべてのインデックスによって指される最小オブジェクトIDとして設定することと、
一致する特性の数に対応する、k=|MinP|の場合に、k≧xおよびObjectMap(MinP)はデッドエントリでないと判定される場合にMinIDをOBkに付加することと、
MinP内のそれぞれのインデックスPkをそれぞれのTraitSet配列TSk内の次のオブジェクトIDに進めることと
を含むことを特徴とする請求項10に記載のコンピュータ読み取り可能な記憶媒体。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/948,980 US7613787B2 (en) | 2004-09-24 | 2004-09-24 | Efficient algorithm for finding candidate objects for remote differential compression |
US10/948,980 | 2004-09-24 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2006092558A JP2006092558A (ja) | 2006-04-06 |
JP4961126B2 true JP4961126B2 (ja) | 2012-06-27 |
Family
ID=35149055
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005277831A Active JP4961126B2 (ja) | 2004-09-24 | 2005-09-26 | リモート差分圧縮のための候補オブジェクトを見つける効率のよいアルゴリズム |
Country Status (5)
Country | Link |
---|---|
US (2) | US7613787B2 (ja) |
EP (1) | EP1641219A3 (ja) |
JP (1) | JP4961126B2 (ja) |
KR (1) | KR101201031B1 (ja) |
CN (1) | CN1753368B (ja) |
Families Citing this family (66)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7590643B2 (en) | 2003-08-21 | 2009-09-15 | Microsoft Corporation | Systems and methods for extensions and inheritance for units of information manageable by a hardware/software interface system |
US8238696B2 (en) | 2003-08-21 | 2012-08-07 | Microsoft Corporation | Systems and methods for the implementation of a digital images schema for organizing units of information manageable by a hardware/software interface system |
US7529811B2 (en) * | 2003-08-21 | 2009-05-05 | Microsoft Corporation | Systems and methods for the implementation of a core schema for providing a top-level structure for organizing units of information manageable by a hardware/software interface system |
US7401104B2 (en) | 2003-08-21 | 2008-07-15 | Microsoft Corporation | Systems and methods for synchronizing computer systems through an intermediary file system share or device |
US8166101B2 (en) | 2003-08-21 | 2012-04-24 | Microsoft Corporation | Systems and methods for the implementation of a synchronization schemas for units of information manageable by a hardware/software interface system |
US20060047855A1 (en) * | 2004-05-13 | 2006-03-02 | Microsoft Corporation | Efficient chunking algorithm |
US7555531B2 (en) * | 2004-04-15 | 2009-06-30 | Microsoft Corporation | Efficient algorithm and protocol for remote differential compression |
US20050262167A1 (en) * | 2004-05-13 | 2005-11-24 | Microsoft Corporation | Efficient algorithm and protocol for remote differential compression on a local device |
US20050256974A1 (en) * | 2004-05-13 | 2005-11-17 | Microsoft Corporation | Efficient algorithm and protocol for remote differential compression on a remote device |
US7613787B2 (en) | 2004-09-24 | 2009-11-03 | Microsoft Corporation | Efficient algorithm for finding candidate objects for remote differential compression |
US7711856B1 (en) * | 2004-09-30 | 2010-05-04 | Avaya Inc. | Method and apparatus for providing an interface for a messaging mailbox |
US7680798B2 (en) * | 2004-11-20 | 2010-03-16 | International Business Machines Corporation | Method, device and system for automatic retrieval of similar objects in a network of devices |
US20070094348A1 (en) * | 2005-01-07 | 2007-04-26 | Microsoft Corporation | BITS/RDC integration and BITS enhancements |
US8073926B2 (en) * | 2005-01-07 | 2011-12-06 | Microsoft Corporation | Virtual machine image server |
US7849462B2 (en) * | 2005-01-07 | 2010-12-07 | Microsoft Corporation | Image server |
US7788223B2 (en) * | 2005-12-05 | 2010-08-31 | Microsoft Corporation | Resource freshness and replication |
US7882084B1 (en) * | 2005-12-30 | 2011-02-01 | F5 Networks, Inc. | Compression of data transmitted over a network |
JP5204099B2 (ja) | 2006-05-05 | 2013-06-05 | ハイバー インコーポレイテッド | グループ・ベースの完全および増分コンピュータ・ファイル・バックアップ・システム、処理および装置 |
US8892761B1 (en) | 2008-04-04 | 2014-11-18 | Quickplay Media Inc. | Progressive download playback |
EP2177010B1 (en) | 2006-12-13 | 2015-10-28 | Quickplay Media Inc. | Mobile media platform |
US9571902B2 (en) | 2006-12-13 | 2017-02-14 | Quickplay Media Inc. | Time synchronizing of distinct video and data feeds that are delivered in a single mobile IP data network compatible stream |
US20080154986A1 (en) * | 2006-12-22 | 2008-06-26 | Storage Technology Corporation | System and Method for Compression of Data Objects in a Data Storage System |
US20080219495A1 (en) * | 2007-03-09 | 2008-09-11 | Microsoft Corporation | Image Comparison |
US20080288527A1 (en) * | 2007-05-16 | 2008-11-20 | Yahoo! Inc. | User interface for graphically representing groups of data |
US8122056B2 (en) | 2007-05-17 | 2012-02-21 | Yahoo! Inc. | Interactive aggregation of data on a scatter plot |
US7756900B2 (en) * | 2007-05-22 | 2010-07-13 | Yahoo!, Inc. | Visual interface to indicate custom binning of items |
US7739229B2 (en) | 2007-05-22 | 2010-06-15 | Yahoo! Inc. | Exporting aggregated and un-aggregated data |
US8819288B2 (en) * | 2007-09-14 | 2014-08-26 | Microsoft Corporation | Optimized data stream compression using data-dependent chunking |
US7836053B2 (en) * | 2007-12-28 | 2010-11-16 | Group Logic, Inc. | Apparatus and methods of identifying potentially similar content for data reduction |
US9690668B2 (en) * | 2008-03-05 | 2017-06-27 | Ca, Inc. | Data boundary identification |
US8769236B2 (en) * | 2008-04-15 | 2014-07-01 | Microsoft Corporation | Remote differential compression applied to storage |
US8078957B2 (en) | 2008-05-02 | 2011-12-13 | Microsoft Corporation | Document synchronization over stateless protocols |
US8645333B2 (en) * | 2008-05-29 | 2014-02-04 | International Business Machines Corporation | Method and apparatus to minimize metadata in de-duplication |
JP5220483B2 (ja) * | 2008-06-06 | 2013-06-26 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 木構造のデータに対する集約計算を行うコンピュータ・システム、並びにその方法及びコンピュータ・プログラム |
US8447740B1 (en) * | 2008-11-14 | 2013-05-21 | Emc Corporation | Stream locality delta compression |
US8751462B2 (en) | 2008-11-14 | 2014-06-10 | Emc Corporation | Delta compression after identity deduplication |
US8849772B1 (en) | 2008-11-14 | 2014-09-30 | Emc Corporation | Data replication with delta compression |
US20100198829A1 (en) * | 2009-01-30 | 2010-08-05 | Elzinga D Blair | Method and computer-program product for ranged indexing |
WO2010125230A1 (en) * | 2009-04-30 | 2010-11-04 | Nokia Corporation | Data transmission optimization |
US8412848B2 (en) * | 2009-05-29 | 2013-04-02 | Exagrid Systems, Inc. | Method and apparatus for content-aware and adaptive deduplication |
US8219526B2 (en) * | 2009-06-05 | 2012-07-10 | Microsoft Corporation | Synchronizing file partitions utilizing a server storage model |
US20100318759A1 (en) * | 2009-06-15 | 2010-12-16 | Microsoft Corporation | Distributed rdc chunk store |
JP4852135B2 (ja) * | 2009-09-30 | 2012-01-11 | 株式会社東芝 | データ分割方法及び装置 |
US9736286B2 (en) * | 2009-12-22 | 2017-08-15 | Here Global B.V. | Method and apparatus for quick selection from ordered list |
US20130179413A1 (en) * | 2010-09-21 | 2013-07-11 | Georgia Tech Research Corporation | Compressed Distributed Storage Systems And Methods For Providing Same |
US9928091B2 (en) * | 2010-09-30 | 2018-03-27 | Microsoft Technology Licensing, Llc | Techniques for streaming virtual machines from a server to a host |
JP2012164130A (ja) * | 2011-02-07 | 2012-08-30 | Hitachi Solutions Ltd | データ分割プログラム |
WO2012140686A1 (en) * | 2011-04-11 | 2012-10-18 | Hitachi, Ltd. | Data management method and data management system |
WO2013040708A1 (en) * | 2011-09-19 | 2013-03-28 | Quickplay Media Inc. | Media processor |
US8667032B1 (en) | 2011-12-22 | 2014-03-04 | Emc Corporation | Efficient content meta-data collection and trace generation from deduplicated storage |
US8914338B1 (en) | 2011-12-22 | 2014-12-16 | Emc Corporation | Out-of-core similarity matching |
US8631052B1 (en) | 2011-12-22 | 2014-01-14 | Emc Corporation | Efficient content meta-data collection and trace generation from deduplicated storage |
US20130262704A1 (en) * | 2012-04-03 | 2013-10-03 | Google Inc. | System and method for improving delivery of content over a network |
US9471591B2 (en) * | 2012-05-02 | 2016-10-18 | Microsoft Technology Licensing, Llc | Iterative disk upload based on differencing disk format |
US20140143553A1 (en) * | 2012-11-20 | 2014-05-22 | Cloudioh Inc. | Method and Apparatus for Encapsulating and Encrypting Files in Computer Device |
US20140215094A1 (en) * | 2013-01-29 | 2014-07-31 | Anders Nordin | Method and system for data compression |
US20150213103A1 (en) * | 2013-04-18 | 2015-07-30 | Hitachi, Ltd. | Computer system and asynchronous replication management method |
US9424061B2 (en) | 2013-04-30 | 2016-08-23 | International Business Machines Corporation | Bandwidth-efficient virtual machine image delivery |
US10372695B2 (en) * | 2014-12-27 | 2019-08-06 | Intel Corporation | Technologies for computing rolling hashes |
US10146752B2 (en) | 2014-12-31 | 2018-12-04 | Quantum Metric, LLC | Accurate and efficient recording of user experience, GUI changes and user interaction events on a remote web document |
US10339124B2 (en) * | 2015-05-27 | 2019-07-02 | Quest Software Inc. | Data fingerprint strengthening |
ES2900999T3 (es) * | 2015-07-16 | 2022-03-21 | Quantum Metric Inc | Captura de documentos utilizando codificación delta basada en el cliente con un servidor |
CN106685429B (zh) * | 2016-12-29 | 2020-07-10 | 广州华多网络科技有限公司 | 整数压缩方法及装置 |
CN109495525B (zh) * | 2017-09-12 | 2020-09-18 | 华为技术有限公司 | 网络组件、解析内容标识的方法和计算机可读存储介质 |
US11240039B2 (en) * | 2019-06-28 | 2022-02-01 | Intel Corporation | Message index aware multi-hash accelerator for post quantum cryptography secure hash-based signing and verification |
US11681659B2 (en) * | 2021-05-21 | 2023-06-20 | Red Hat, Inc. | Hybrid file compression model |
Family Cites Families (174)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4853842A (en) | 1985-09-11 | 1989-08-01 | Texas Instruments Incorporated | Computer memory system having persistent objects |
EP0498472B1 (en) | 1986-08-12 | 1994-10-12 | Hitachi, Ltd. | Microprocessor for retrying data transfer |
US5544347A (en) * | 1990-09-24 | 1996-08-06 | Emc Corporation | Data storage system controlled remote data mirroring with respectively maintained data indices |
US5592661A (en) | 1992-07-16 | 1997-01-07 | International Business Machines Corporation | Detection of independent changes via change identifiers in a versioned database management system |
US5446888A (en) | 1994-01-14 | 1995-08-29 | Pyne; Charles F. | Remote file transfer method and apparatus |
US5488364A (en) | 1994-02-28 | 1996-01-30 | Sam H. Eulmi | Recursive data compression |
DE69527623T2 (de) | 1994-05-19 | 2003-03-13 | British Telecomm | Dateiübertragungsmechanismus |
US5486826A (en) | 1994-05-19 | 1996-01-23 | Ps Venture 1 Llc | Method and apparatus for iterative compression of digital data |
US5987432A (en) | 1994-06-29 | 1999-11-16 | Reuters, Ltd. | Fault-tolerant central ticker plant system for distributing financial market data |
US5592618A (en) | 1994-10-03 | 1997-01-07 | International Business Machines Corporation | Remote copy secondary data copy validation-audit function |
US5596710A (en) | 1994-10-25 | 1997-01-21 | Hewlett-Packard Company | Method for managing roll forward and roll back logs of a transaction object |
US6006016A (en) | 1994-11-10 | 1999-12-21 | Bay Networks, Inc. | Network fault correlation |
US5724323A (en) | 1995-01-30 | 1998-03-03 | Sanyo Electric Co., Ltd. | Recording and reproducing apparatus for recording media |
US5990810A (en) | 1995-02-17 | 1999-11-23 | Williams; Ross Neil | Method for partitioning a block of data into subblocks and for storing and communcating such subblocks |
US6453325B1 (en) | 1995-05-24 | 2002-09-17 | International Business Machines Corporation | Method and means for backup and restoration of a database system linked to a system for filing data |
US6044475A (en) | 1995-06-16 | 2000-03-28 | Lucent Technologies, Inc. | Checkpoint and restoration systems for execution control |
US5778395A (en) * | 1995-10-23 | 1998-07-07 | Stac, Inc. | System for backing up files from disk volumes on multiple nodes of a computer network |
US5933104A (en) | 1995-11-22 | 1999-08-03 | Microsoft Corporation | Method and system for compression and decompression using variable-sized offset and length fields |
KR100328416B1 (ko) | 1996-01-22 | 2002-05-09 | 모리시타 요이찌 | 디지털화상부호화,복호화방법및그것을사용한디지털화상부호화,복호화장치 |
US5673382A (en) | 1996-05-30 | 1997-09-30 | International Business Machines Corporation | Automated management of off-site storage volumes for disaster recovery |
US5758359A (en) | 1996-10-24 | 1998-05-26 | Digital Equipment Corporation | Method and apparatus for performing retroactive backups in a computer system |
US5797016A (en) | 1996-10-29 | 1998-08-18 | Cheyenne Software Inc. | Regeneration agent for back-up software |
US5794254A (en) | 1996-12-03 | 1998-08-11 | Fairbanks Systems Group | Incremental computer file backup using a two-step comparison of first two characters in the block and a signature with pre-stored character and signature sets |
US5987022A (en) | 1996-12-27 | 1999-11-16 | Motorola, Inc. | Method for transmitting multiple-protocol packetized data |
US6374250B2 (en) | 1997-02-03 | 2002-04-16 | International Business Machines Corporation | System and method for differential compression of data from a plurality of binary sources |
US6963923B1 (en) | 1997-02-10 | 2005-11-08 | International Business Machines Corporation | Method for file transfer restarts using standard internet protocol |
US6157931A (en) | 1997-02-11 | 2000-12-05 | Connected Corporation | Database/template driven file selection for backup programs |
WO1998035306A1 (en) | 1997-02-11 | 1998-08-13 | Connected Corporation | File comparison for data backup and file synchronization |
US6049892C1 (en) | 1997-02-24 | 2002-06-04 | Ethos Software Corp | Process and apparatus for downloading data from a server computer to a client computer |
US6226629B1 (en) | 1997-02-28 | 2001-05-01 | Compaq Computer Corporation | Method and apparatus determining and using hash functions and hash values |
US6014669A (en) | 1997-10-01 | 2000-01-11 | Sun Microsystems, Inc. | Highly-available distributed cluster configuration database |
US6061733A (en) | 1997-10-16 | 2000-05-09 | International Business Machines Corp. | Method and apparatus for improving internet download integrity via client/server dynamic file sizes |
US6166735A (en) | 1997-12-03 | 2000-12-26 | International Business Machines Corporation | Video story board user interface for selective downloading and displaying of desired portions of remote-stored video data objects |
US6269362B1 (en) * | 1997-12-19 | 2001-07-31 | Alta Vista Company | System and method for monitoring web pages by comparing generated abstracts |
US6205527B1 (en) | 1998-02-24 | 2001-03-20 | Adaptec, Inc. | Intelligent backup and restoring system and method for implementing the same |
US6449612B1 (en) | 1998-03-17 | 2002-09-10 | Microsoft Corporation | Varying cluster number in a scalable clustering system for use with large databases |
US6205449B1 (en) | 1998-03-20 | 2001-03-20 | Lucent Technologies, Inc. | System and method for providing hot spare redundancy and recovery for a very large database management system |
US6052531A (en) * | 1998-03-25 | 2000-04-18 | Symantec Corporation | Multi-tiered incremental software updating |
US6799206B1 (en) | 1998-03-31 | 2004-09-28 | Qualcomm, Incorporated | System and method for the intelligent management of archival data in a computer network |
US6604236B1 (en) | 1998-06-30 | 2003-08-05 | Iora, Ltd. | System and method for generating file updates for files stored on read-only media |
US6317754B1 (en) | 1998-07-03 | 2001-11-13 | Mitsubishi Electric Research Laboratories, Inc | System for user control of version /Synchronization in mobile computing |
US6505228B1 (en) | 1998-07-22 | 2003-01-07 | Cisco Technology, Inc. | Dynamic determination of execution sequence |
US6574618B2 (en) | 1998-07-22 | 2003-06-03 | Appstream, Inc. | Method and system for executing network streamed application |
US6952823B2 (en) | 1998-09-01 | 2005-10-04 | Pkware, Inc. | Software patch generator using compression techniques |
JP3724959B2 (ja) * | 1998-11-02 | 2005-12-07 | 三菱電機株式会社 | ネットワークプリントシステム |
US6240511B1 (en) | 1998-12-14 | 2001-05-29 | Emc Corporation | Method and apparatus for detecting system configuration changes |
US6654801B2 (en) * | 1999-01-04 | 2003-11-25 | Cisco Technology, Inc. | Remote system administration and seamless service integration of a data communication network management system |
US6819271B2 (en) | 1999-01-29 | 2004-11-16 | Quickshift, Inc. | Parallel compression and decompression system and method having multiple parallel compression and decompression engines |
US6574657B1 (en) | 1999-05-03 | 2003-06-03 | Symantec Corporation | Methods and apparatuses for file synchronization and updating using a signature list |
US6681034B1 (en) * | 1999-07-15 | 2004-01-20 | Precise Biometrics | Method and system for fingerprint template matching |
JP3312335B2 (ja) | 1999-07-30 | 2002-08-05 | 株式会社コムスクエア | 利用者認証方法、利用者認証システムおよび記録媒体 |
US6571282B1 (en) | 1999-08-31 | 2003-05-27 | Accenture Llp | Block-based communication in a communication services patterns environment |
US6640244B1 (en) | 1999-08-31 | 2003-10-28 | Accenture Llp | Request batcher in a transaction services patterns environment |
US6434568B1 (en) | 1999-08-31 | 2002-08-13 | Accenture Llp | Information services patterns in a netcentric environment |
US6496901B1 (en) * | 1999-09-22 | 2002-12-17 | Storage Technology Corporation | Mapping variable size data blocks into a fixed block structure |
US6791982B2 (en) | 1999-09-29 | 2004-09-14 | Telefonaktiebolaget Lm Ericsson | Segmentation protocol that supports compressed segmentation headers |
TW510107B (en) | 1999-10-19 | 2002-11-11 | Geneticware Co Ltd | A coding system and method of secure data transmission |
US6772302B1 (en) | 1999-11-12 | 2004-08-03 | International Business Machines Corporation | Virtual copy method for data spanning storage boundaries |
US6651074B1 (en) * | 1999-12-20 | 2003-11-18 | Emc Corporation | Method and apparatus for storage and retrieval of very large databases using a direct pipe |
US6377974B1 (en) | 2000-01-19 | 2002-04-23 | Speedbit Ltd. | Methods and apparatus for downloading a file from a server |
US6618758B1 (en) | 2000-02-18 | 2003-09-09 | Lucent Technologies Inc. | System for downloading only a portion of a file from a server through a computer network utilizing a client menu downloaded periodically from the server |
AU2001247213A1 (en) | 2000-02-22 | 2001-09-03 | Visualgold.Com, Inc. | Secure distributing services network system and method thereof |
US20010047273A1 (en) | 2000-03-17 | 2001-11-29 | Greer Edward Cooper | Electronic transaction clearing system |
US7003554B1 (en) | 2000-03-20 | 2006-02-21 | Netscape Communications Corp. | System and method for downloading portions of a remotely located network object to produce a completely downloaded local copy of the network object |
US6522708B1 (en) * | 2000-04-03 | 2003-02-18 | Westinghouse Electric Company Llc | Seal arrangement for in-core instrument housing |
US6671802B1 (en) | 2000-04-13 | 2003-12-30 | Hewlett-Packard Development Company, L.P. | Performance optimization of computer system by dynamically and immediately updating a configuration setting based on detected change in preferred use |
DE60036539T2 (de) | 2000-06-09 | 2008-05-08 | Hewlett-Packard Development Co., L.P., Houston | Verwendung von ungenutzter Speicherkapazität bei vernetzten Computern |
EP1168174A1 (en) | 2000-06-19 | 2002-01-02 | Hewlett-Packard Company, A Delaware Corporation | Automatic backup/recovery process |
JP2002025139A (ja) | 2000-07-06 | 2002-01-25 | Fujitsu Ltd | 情報記憶装置及び情報記憶方法 |
US6842777B1 (en) | 2000-10-03 | 2005-01-11 | Raja Singh Tuli | Methods and apparatuses for simultaneous access by multiple remote devices |
US6665780B1 (en) | 2000-10-06 | 2003-12-16 | Radiant Data Corporation | N-way data mirroring systems and methods for using the same |
US7058941B1 (en) | 2000-11-14 | 2006-06-06 | Microsoft Corporation | Minimum delta generator for program binaries |
US6594677B2 (en) | 2000-12-22 | 2003-07-15 | Simdesk Technologies, Inc. | Virtual tape storage system and method |
JP2004514214A (ja) | 2000-11-17 | 2004-05-13 | ビットフォン コーポレイション | 情報をアップデートおよび配布するシステムおよび方法 |
US6965916B1 (en) | 2000-12-14 | 2005-11-15 | Bellsouth Intellectual Property Corp. | System and method for data distribution and recovery |
US20020083182A1 (en) * | 2000-12-18 | 2002-06-27 | Alvarado Juan C. | Real-time streamed data download system and method |
US20040133606A1 (en) * | 2003-01-02 | 2004-07-08 | Z-Force Communications, Inc. | Directory aggregation for files distributed over a plurality of servers in a switched file system |
US7383288B2 (en) * | 2001-01-11 | 2008-06-03 | Attune Systems, Inc. | Metadata based file switch and switched file system |
US6751753B2 (en) | 2001-02-27 | 2004-06-15 | Sun Microsystems, Inc. | Method, system, and program for monitoring system components |
US7054912B2 (en) | 2001-03-12 | 2006-05-30 | Kabushiki Kaisha Toshiba | Data transfer scheme using caching technique for reducing network load |
US6910071B2 (en) | 2001-04-02 | 2005-06-21 | The Aerospace Corporation | Surveillance monitoring and automated reporting method for detecting data changes |
US6766314B2 (en) | 2001-04-05 | 2004-07-20 | International Business Machines Corporation | Method for attachment and recognition of external authorization policy on file system resources |
US20020147733A1 (en) * | 2001-04-06 | 2002-10-10 | Hewlett-Packard Company | Quota management in client side data storage back-up |
US20030167287A1 (en) * | 2001-04-11 | 2003-09-04 | Karl Forster | Information protection system |
US20020152219A1 (en) | 2001-04-16 | 2002-10-17 | Singh Monmohan L. | Data interexchange protocol |
TW514810B (en) | 2001-05-18 | 2002-12-21 | Mitac Int Corp | On-line authorization method providing quality assurance |
US20040012808A1 (en) * | 2001-06-04 | 2004-01-22 | Payne David M. | Network-based technical support and diagnostics |
US20020199040A1 (en) * | 2001-06-26 | 2002-12-26 | Irwin David S. | High speed communications device/system |
US7743126B2 (en) * | 2001-06-28 | 2010-06-22 | Hewlett-Packard Development Company, L.P. | Migrating recovery modules in a distributed computing environment |
IL159381A0 (en) * | 2001-07-06 | 2004-06-01 | Computer Ass Think Inc | Systems and methods of information backup |
TW550490B (en) | 2001-07-13 | 2003-09-01 | Shacom Com Inc | On-line finance management method combined with existent banking mechanism |
US20030018657A1 (en) * | 2001-07-18 | 2003-01-23 | Imation Corp. | Backup of data on a network |
US6948038B2 (en) * | 2001-07-24 | 2005-09-20 | Microsoft Corporation | System and method for backing up and restoring data |
GB2378535A (en) * | 2001-08-06 | 2003-02-12 | Ibm | Method and apparatus for suspending a software virtual machine |
JP4860070B2 (ja) * | 2001-08-30 | 2012-01-25 | 株式会社日立製作所 | ファイル伝送方法及びファイル伝送システム |
US8041803B2 (en) | 2001-09-26 | 2011-10-18 | Qurio Holdings, Inc. | Method and system for delivering files in digital file marketplace |
JP2003121547A (ja) | 2001-10-18 | 2003-04-23 | Fuji Heavy Ind Ltd | 車外監視装置 |
US7318095B2 (en) * | 2001-11-21 | 2008-01-08 | Clearcube Technology, Inc. | Data fail-over for a multi-computer system |
WO2003046721A1 (en) * | 2001-11-23 | 2003-06-05 | Commvault Systems, Inc. | Selective data replication system and method |
US7370120B2 (en) | 2001-12-07 | 2008-05-06 | Propel Software Corporation | Method and system for reducing network latency in data communication |
US7158972B2 (en) | 2001-12-11 | 2007-01-02 | Sun Microsystems, Inc. | Methods and apparatus for managing multiple user systems |
US20030120920A1 (en) * | 2001-12-20 | 2003-06-26 | Svensson Sven Anders Borje | Remote device authentication |
US6947604B2 (en) | 2002-01-17 | 2005-09-20 | Intel Corporation | Method and hardware to implement two-dimensional compression |
US6938045B2 (en) * | 2002-01-18 | 2005-08-30 | Seiko Epson Corporation | Image server synchronization |
US6941328B2 (en) * | 2002-01-22 | 2005-09-06 | International Business Machines Corporation | Copy process substituting compressible bit pattern for any unqualified data objects |
US7310654B2 (en) * | 2002-01-31 | 2007-12-18 | Mirapoint, Inc. | Method and system for providing image incremental and disaster recovery |
US20030147564A1 (en) | 2002-02-01 | 2003-08-07 | Chulhee Lee | Fast hybrid interpolation methods |
US6826666B2 (en) * | 2002-02-07 | 2004-11-30 | Microsoft Corporation | Method and system for transporting data content on a storage area network |
US7178140B2 (en) * | 2002-02-28 | 2007-02-13 | Sun Microsystems, Inc. | Speeding up application downloading from a remote server |
JP4020676B2 (ja) | 2002-03-26 | 2007-12-12 | 株式会社東芝 | Webシステム及びWebシステムの制御方法 |
US6993686B1 (en) | 2002-04-30 | 2006-01-31 | Cisco Technology, Inc. | System health monitoring and recovery |
US6925540B2 (en) | 2002-05-02 | 2005-08-02 | Intel Corporation | Systems and methods for chassis identification |
US7249118B2 (en) * | 2002-05-17 | 2007-07-24 | Aleri, Inc. | Database system and methods |
US7363538B1 (en) * | 2002-05-31 | 2008-04-22 | Oracle International Corporation | Cost/benefit based checkpointing while maintaining a logical standby database |
US7318073B2 (en) * | 2002-05-31 | 2008-01-08 | Microsoft Corporation | System and method for downloading information to a mobile device |
US7360093B2 (en) | 2002-07-22 | 2008-04-15 | Xerox Corporation | System and method for authentication of JPEG image data |
US20040039716A1 (en) * | 2002-08-23 | 2004-02-26 | Thompson Dean S. | System and method for optimizing a computer program |
JP2004094617A (ja) | 2002-08-30 | 2004-03-25 | Fujitsu Ltd | 差分圧縮によるバックアップ方法、システム及び差分圧縮方法 |
CA2497306A1 (en) * | 2002-09-10 | 2004-03-25 | Exagrid Systems, Inc. | Method and apparatus for integrating primary data storage with local and remote data protection |
JP4130615B2 (ja) * | 2003-07-02 | 2008-08-06 | 株式会社日立製作所 | ストレージ装置を有するネットワークにおける障害情報管理方法及び管理サーバ |
US6667700B1 (en) * | 2002-10-30 | 2003-12-23 | Nbt Technology, Inc. | Content-based segmentation scheme for data compression in storage and transmission including hierarchical segment representation |
US7424514B2 (en) * | 2002-11-08 | 2008-09-09 | The Regents Of The University Of Michigan | Peer-to-peer method and system for performing and managing backups in a network of nodes |
US7107483B2 (en) * | 2002-11-15 | 2006-09-12 | Lsi Logic Corporation | Apparatus and method for enhancing data availability by leveraging primary/backup data storage volumes |
US7099884B2 (en) | 2002-12-06 | 2006-08-29 | Innopath Software | System and method for data compression and decompression |
US7526800B2 (en) * | 2003-02-28 | 2009-04-28 | Novell, Inc. | Administration of protection of data accessible by a mobile device |
TW580656B (en) | 2002-12-20 | 2004-03-21 | Inst Information Industry | Protection and verification method for digital image copyright |
JP3974538B2 (ja) * | 2003-02-20 | 2007-09-12 | 株式会社日立製作所 | 情報処理システム |
US7178065B2 (en) * | 2003-04-02 | 2007-02-13 | Sun Microsystems, Inc. | System and method for measuring performance with distributed agents |
US7461319B2 (en) * | 2003-04-04 | 2008-12-02 | Sun Microsystems, Inc. | System and method for downloading files over a network with real time verification |
US8209680B1 (en) * | 2003-04-11 | 2012-06-26 | Vmware, Inc. | System and method for disk imaging on diverse computers |
US7107293B2 (en) * | 2003-04-30 | 2006-09-12 | International Business Machines Corporation | Nested recovery scope management for stateless recovery agents |
US6925385B2 (en) * | 2003-05-16 | 2005-08-02 | Seawest Holdings, Inc. | Wind power management system and method |
US7328366B2 (en) * | 2003-06-06 | 2008-02-05 | Cascade Basic Research Corp. | Method and system for reciprocal data backup |
US7567991B2 (en) * | 2003-06-25 | 2009-07-28 | Emc Corporation | Replication of snapshot using a file system copy differential |
US20050010593A1 (en) * | 2003-07-10 | 2005-01-13 | International Business Machines Corporation | System and method for performing predictive file storage management |
US7174479B2 (en) | 2003-09-10 | 2007-02-06 | Microsoft Corporation | Method and system for rollback-free failure recovery of multi-step procedures |
US7225208B2 (en) * | 2003-09-30 | 2007-05-29 | Iron Mountain Incorporated | Systems and methods for backing up data files |
US7054960B1 (en) | 2003-11-18 | 2006-05-30 | Veritas Operating Corporation | System and method for identifying block-level write operations to be transferred to a secondary site during replication |
US7328217B2 (en) * | 2003-11-26 | 2008-02-05 | Symantec Operating Corporation | System and method for detecting and storing file identity change information within a file system |
US8135683B2 (en) * | 2003-12-16 | 2012-03-13 | International Business Machines Corporation | Method and apparatus for data redundancy elimination at the block level |
US20050198303A1 (en) * | 2004-01-02 | 2005-09-08 | Robert Knauerhase | Dynamic virtual machine service provider allocation |
US7917910B2 (en) * | 2004-03-26 | 2011-03-29 | Intel Corporation | Techniques to manage critical region interrupts |
US20050228836A1 (en) * | 2004-04-08 | 2005-10-13 | Bacastow Steven V | Apparatus and method for backing up computer files |
US20060047855A1 (en) * | 2004-05-13 | 2006-03-02 | Microsoft Corporation | Efficient chunking algorithm |
US7555531B2 (en) | 2004-04-15 | 2009-06-30 | Microsoft Corporation | Efficient algorithm and protocol for remote differential compression |
US7096392B2 (en) | 2004-05-07 | 2006-08-22 | Asempra Technologies, Inc. | Method and system for automated, no downtime, real-time, continuous data protection |
US8230095B2 (en) * | 2004-05-07 | 2012-07-24 | Wyse Technology, Inc. | System and method for integrated on-demand delivery of operating system and applications |
US8024733B2 (en) * | 2004-05-13 | 2011-09-20 | International Business Machines Corporation | Component model for batch computing in a distributed object environment |
US20050262167A1 (en) | 2004-05-13 | 2005-11-24 | Microsoft Corporation | Efficient algorithm and protocol for remote differential compression on a local device |
US20050256974A1 (en) | 2004-05-13 | 2005-11-17 | Microsoft Corporation | Efficient algorithm and protocol for remote differential compression on a remote device |
US20070180490A1 (en) * | 2004-05-20 | 2007-08-02 | Renzi Silvio J | System and method for policy management |
US7908339B2 (en) * | 2004-06-03 | 2011-03-15 | Maxsp Corporation | Transaction based virtual file system optimized for high-latency network connections |
US7281124B2 (en) * | 2004-06-17 | 2007-10-09 | Intel Corporation | Establishing a virtual drive accessible to pre-boot and operating system runtime phases |
US7444341B2 (en) * | 2004-06-29 | 2008-10-28 | International Business Machines Corporation | Method and system of detecting a change in a server in a server system |
US7428754B2 (en) * | 2004-08-17 | 2008-09-23 | The Mitre Corporation | System for secure computing using defense-in-depth architecture |
US7299376B2 (en) * | 2004-08-25 | 2007-11-20 | International Business Machines Corporation | Apparatus, system, and method for verifying backup data |
US7389314B2 (en) * | 2004-08-30 | 2008-06-17 | Corio, Inc. | Database backup, refresh and cloning system and method |
US7769709B2 (en) * | 2004-09-09 | 2010-08-03 | Microsoft Corporation | Method, system, and apparatus for creating an archive routine for protecting data in a data protection system |
US7567974B2 (en) * | 2004-09-09 | 2009-07-28 | Microsoft Corporation | Method, system, and apparatus for configuring a data protection system |
US7502961B2 (en) * | 2004-09-09 | 2009-03-10 | Microsoft Corporation | Method, system, and apparatus for providing alert synthesis in a data protection system |
US7523098B2 (en) * | 2004-09-15 | 2009-04-21 | International Business Machines Corporation | Systems and methods for efficient data searching, storage and reduction |
US7756833B2 (en) * | 2004-09-22 | 2010-07-13 | Microsoft Corporation | Method and system for synthetic backup and restore |
US7613787B2 (en) | 2004-09-24 | 2009-11-03 | Microsoft Corporation | Efficient algorithm for finding candidate objects for remote differential compression |
JP2008522254A (ja) | 2004-11-08 | 2008-06-26 | イノパス・ソフトウェアー・インコーポレーテッド | スタティック・ファイル・システムの差異検出および更新 |
US7487169B2 (en) * | 2004-11-24 | 2009-02-03 | International Business Machines Corporation | Method for finding the longest common subsequences between files with applications to differential compression |
US7353355B1 (en) * | 2004-12-28 | 2008-04-01 | Acronis Inc. | System and method for rapid restoration of server from backup |
US8073926B2 (en) * | 2005-01-07 | 2011-12-06 | Microsoft Corporation | Virtual machine image server |
US7849462B2 (en) * | 2005-01-07 | 2010-12-07 | Microsoft Corporation | Image server |
US20070094348A1 (en) * | 2005-01-07 | 2007-04-26 | Microsoft Corporation | BITS/RDC integration and BITS enhancements |
US7362758B2 (en) * | 2005-01-14 | 2008-04-22 | 1E Limited | Data distribution apparatus and method |
US7640363B2 (en) * | 2005-02-16 | 2009-12-29 | Microsoft Corporation | Applications for remote differential compression |
US20060218435A1 (en) * | 2005-03-24 | 2006-09-28 | Microsoft Corporation | Method and system for a consumer oriented backup |
US7496613B2 (en) * | 2006-01-09 | 2009-02-24 | International Business Machines Corporation | Sharing files among different virtual machine images |
US7519635B1 (en) * | 2008-03-31 | 2009-04-14 | International Business Machines Corporation | Method of and system for adaptive selection of a deduplication chunking technique |
-
2004
- 2004-09-24 US US10/948,980 patent/US7613787B2/en active Active
-
2005
- 2005-09-06 KR KR1020050082644A patent/KR101201031B1/ko active IP Right Grant
- 2005-09-09 EP EP05108288A patent/EP1641219A3/en not_active Withdrawn
- 2005-09-23 CN CN2005101089583A patent/CN1753368B/zh not_active Expired - Fee Related
- 2005-09-26 JP JP2005277831A patent/JP4961126B2/ja active Active
-
2009
- 2009-07-31 US US12/533,437 patent/US8112496B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US7613787B2 (en) | 2009-11-03 |
EP1641219A3 (en) | 2006-12-20 |
EP1641219A2 (en) | 2006-03-29 |
KR20060051041A (ko) | 2006-05-19 |
CN1753368B (zh) | 2010-05-05 |
KR101201031B1 (ko) | 2012-11-14 |
US8112496B2 (en) | 2012-02-07 |
JP2006092558A (ja) | 2006-04-06 |
CN1753368A (zh) | 2006-03-29 |
US20060085561A1 (en) | 2006-04-20 |
US20100064141A1 (en) | 2010-03-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4961126B2 (ja) | リモート差分圧縮のための候補オブジェクトを見つける効率のよいアルゴリズム | |
US8117173B2 (en) | Efficient chunking algorithm | |
JP4796315B2 (ja) | 遠隔差分圧縮用の効率的アルゴリズムとプロトコル | |
US20050262167A1 (en) | Efficient algorithm and protocol for remote differential compression on a local device | |
US7640363B2 (en) | Applications for remote differential compression | |
US11627207B2 (en) | Systems and methods for data deduplication by generating similarity metrics using sketch computation | |
US9823975B2 (en) | Efficient computation of sketches | |
CN109586896B (zh) | 一种基于哈希前缀树的数据完整性验证方法 | |
US20050256974A1 (en) | Efficient algorithm and protocol for remote differential compression on a remote device | |
US11995050B2 (en) | Systems and methods for sketch computation | |
US20210191640A1 (en) | Systems and methods for data segment processing | |
WO2023000915A1 (en) | Method and apparatus for replicating a target file between devices | |
US20170048303A1 (en) | On the fly statistical delta differencing engine | |
US20170048302A1 (en) | Static statistical delta differencing engine | |
CN117421481A (zh) | 人群查找方法、系统、电子设备和计算机可读存储介质 | |
JP2013190891A (ja) | データ転送システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080926 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110415 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110708 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20110922 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120118 |
|
RD13 | Notification of appointment of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7433 Effective date: 20120119 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20120119 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20120208 |
|
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: 20120319 |
|
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: 20120326 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150330 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4961126 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
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 |
|
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 |