JP2016526717A - ハイブリッドガベージコレクション - Google Patents
ハイブリッドガベージコレクション Download PDFInfo
- Publication number
- JP2016526717A JP2016526717A JP2016519652A JP2016519652A JP2016526717A JP 2016526717 A JP2016526717 A JP 2016526717A JP 2016519652 A JP2016519652 A JP 2016519652A JP 2016519652 A JP2016519652 A JP 2016519652A JP 2016526717 A JP2016526717 A JP 2016526717A
- Authority
- JP
- Japan
- Prior art keywords
- file system
- new
- expiration time
- version
- chain
- 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.)
- Pending
Links
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
-
- 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/1724—Details of de-fragmentation performed by the file system
-
- 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/18—File system types
- G06F16/1873—Versioning file systems, temporal file systems, e.g. file system supporting different historic versions of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/215—Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/289—Object oriented databases
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
ファイルシステムにおけるオブジェクトのハイブリッドガベージコレクションのための方法が開示される。方法の実施例は、ファイルシステムにおけるそれぞれのオブジェクトを、参照カウンタ、失効時間、およびバージョン識別子に割り当てるステップを含む。オブジェクトの参照カウンタがゼロでない間、オブジェクトはファイルシステムの中に保持され得る。オブジェクトの参照カウンタがゼロであるとの決定後に、オブジェクトは、オブジェクトに関連付けされた失効時間までファイルシステムの中に保持され得る。オブジェクトを参照しているリファレンスが検出された場合、オブジェクトの失効時間は、オブジェクトとリファレンスの失効時間のうち最新のものに更新される。さらに、オブジェクトのバージョン識別子が既定のバージョン番号より大きい間、オブジェクトはファイルシステムの中に保持され得る。
Description
本発明開示は、一般的には、データ処理に関し、より特定的には、ハイブリッドガベージコレクション方法に関する。
本特許出願は、米国特許仮出願第61/834097号(2013年6月12日提出)について優先権の利益を主張する。前出の発明開示は、全ての目的のために、ここにおいて参照として包含されている。
このセクションにおいて記述されるアプローチは遂行され得るものであるが、以前に考えられ、または、遂行されたアプローチである必要はない。従って、そうでないものと示されていなければ、このセクションにおいて記述されるあらゆるアプローチは、それらが単にこのセクションに包含されているせいで、従来技術であるとしてみなされることを決めてかかるべきではない。
コンピュータシステムにおいては、ハードディスク(HDD)、半導体ディスク(SSD)、または他のいくつかのストレージ上のファイルシステムにおけるデータは、たいてい、オブジェクト(object)およびオブジェクトを指し示すリファレンス(reference)として編成されている。一つのオブジェクトは、そのオブジェクトを指し示す多くのリファレンスを有してよく、加えて、オブジェクト自身が、他のオブジェクトを指し示すリファレンスを保持することができる。従って、典型的には、データが、データブロックのツリー(tree)として編成されている。
種々のストレージデバイスのリソースを効率的に操作するためには、もはや必要とされないオブジェクトを除去するためのプロシージャを設定することが重要である。
従来のファイルシステムは、データオブジェクトの最後のバージョンだけを保持する。従来のファイルシステムにおけるガベージコレクション(garbage collection)は、もはや他のオブジェクトによって参照されないオブジェクトを見つけ出し、かつ、除去するために、全てのオブジェクトのデータベースを分析する特別なプロセスを実行すること、を含んでいる。
従来のガベージコレクション技術のいくつかは、参照カウント(reference counting)を使用する。参照カウントは、オンザフライ(on the fly)で所与のオブジェクトを指し示しているリファレンスの数量を追跡する。オブジェクトを指し示すリファレンスが存在しない場合、そのオブジェクトはもはや使用されていないものであって、オブジェクトデータベースから除去され得るものである。そして、このオブジェクトによって使用されているストレージデバイス上のスペースは、占有されていないものとしてラベル付けされ、そして、他のオブジェクトのために使用され得る。
この概要は、以下の詳細な説明において、さらに詳しく記述されるコンセプトについて、簡素化された形式において選定されたコンセプトを紹介するために提供されるものである。この概要は、特許請求される技術的事項の主要な機能または本質的な機能を特定するように意図されたものではない。また、特許請求される技術的事項の範囲を決定するための補助として使用されるように意図されたものでもない。
ここにおいて開示される技術は、ファイルシステムにおけるガベージコレクションに関する。ファイルシステムは、システムにおける全部のオブジェクトの全てのバージョンを初期的に保持するように設定され得る。どんなに変更が小さくてもである。このアプローチによって、全ファイルシステムに係るファイルおよびスナップショットの多くのバックアップバージョンを生成することができる。しかしながら、ファイルシステムにおいて全部のオブジェクトの以前のバージョンを保持することは、巨大な数のデータオブジェクトを生じるだろうし、ついには、ストレージスペースを使い果たしてしまう。従って、この問題を克服するためには、特別なガベージコレクション技術が必要とされる。それは、定期的に以前のバージョンを間引き、保持するのに十分重要であると考えられるスナップショットだけを保持するものである。
いくつかの実施例においては、オブジェクトの以前のバージョンが保持されるべき時間インターバルが定められ得る。例えば、一つのガベージコレクションルールは、最後の5分間以内で捉えられた全てのスナップショットを保持するように設定されてよい。最後の24時間以内で捉えられたそれぞれのスナップショットに対しては1時間毎に一つのバージョンを保持し、かつ、より古い時間期間に関連するスナップショットに対して1日毎に一つのバージョンを保持するものである。
いくつかの実施例において、データオブジェクトは、データブロックのツリーとして編成され得る。ストレージデバイスのクラスタにわたって広がるデータブロックを用いるものである。従って、規定のスナップショットの失効時間をデータツリーにおけるルートリファレンスから全てのリファレンスブロックへ伝播する(propagate)技術が提供される。
いくつかの実施例において、ファイルシステムにおけるオブジェクトのハイブリッドガベージコレクションのための方法は、関連する参照カウンタ、失効時間、および、ファイルシステムにおけるオブジェクトのバージョン識別子を含んでよい。本方法により、オブジェクトの参照カウンタがゼロでない間、オブジェクトをファイルシステムの中に保持することができる。本方法は、さらに、オブジェクトに関連付けされた失効時間になるまでオブジェクトをファイルシステムの中に保持することを含んでよい。その時点でオブジェクトの参照カウンタはゼロになっている。加えて、本方法により、オブジェクトに関連付けされたバージョン識別子が、既定の最大バージョンより大きい間、オブジェクトをファイルシステムの中に保持することができる。
いくつかの実施例において、本方法は、オブジェクトを参照している既存のリファレンスに関連付けされた参照カウンタがゼロであると決定することを含んでよい。決定に応じて、オブジェクトの参照カウンタが1だけ減らされ、かつ、オブジェクトに関連付けされた失効時間が、オブジェクトの失効時間およびリファレンスの失効時間のうち最新のものに設定されてよい。
いくつかの実施例において、本方法は、さらに、オブジェクトに関連付けされた参照カウンタがゼロであり、かつ、オブジェクトを参照している新たなリファレンスがまさに追加されることを決定することを含んでよい。決定に応じて、参照カウンタが1だけ増やされてよく、かつ、このオブジェクトによって参照される全てのオブジェクトが、同様に、1だけ増やされた参照カウンタを有する。オブジェクトに関連付けされた失効時間が、オブジェクトの失効時間および新たなリファレンスの失効時間のうち最新のものに同時に更新されてよい。さらなる実施例においては、ファイルシステムにおけるオブジェクトの初期の失効時間が、オブジェクトの現在および新たなバージョンの追加の間の経過時間期間を使用して計算され得る。
本発明開示のさらなる実施例において、本方法のステップは、インストラクションを含んでいるマシンで読取り可能な媒体上に保管されており、一つまたはそれ以上のプロセッサによって実行されると、上記のステップを実施する。なおも、さらなる実施例においては、ハードウェアシステム、またはデバイスが上記のステップを実施するように適合され得る。他の機能、実施例、および具現化が以下に説明される。
実施例が、例示として、かつ、限定するものとしてではなく、添付の図面における図において説明される。ここで、類似の参照番号は、類似のエレメントを示している。
図1は、自身について指し示しているいくつかのリファレンスを伴い、かつ、関連する属性を有するデータオブジェクトに係る一つの実施例を示している。
図2は、2つの他のオブジェクトを指し示しているリファレンスの除去、および、削除されているリファレンスからオブジェクトへの参照カウンタと失効時間(expiration time)の伝播に係る一つの実施例を示している。
図3は、親(parent)オブジェクトの参照カウンタがゼロになるか、又は、ゼロに設定されたときの、親オブジェクトから子(child)オブジェクトへの参照カウンタと失効時間の伝播のための方法を示すフローチャートである。
図4は、アーカイブオブジェクトに対する新たなリファレンスの追加に係る一つの実施例を示している。
図5は、ライブオブジェクトからアーカイブオブジェクトへの参照カウンタと失効時間の伝播のための方法を示すフローチャートである。
図6は、ルートディレクトリ、サブディレクトリ、およびサブディレクトリにおけるファイルを含んでいるファイルシステムのスナップショットの履歴に係る一つの実施例を示している。
図7は、コンピュータシステムの電子的形態の例におけるマシンのためのコンピューティングデバイスの図式表現を示している。その中では、ここにおいて説明されるあらゆる一つまたはそれ以上の方法をマシンに実施させるための一式のインストラクションが実行され得る。
以降の詳細な説明は、添付の図面に対する参照を含んでいる。図面は、詳細な説明の一部を形成している。図面は、実施例に従った説明を示している。これらの実施例は、ここにおいて「例(”example”)」としても参照されるが、当業者が本発明の技術的事項を実施することができるよう、十分に詳細に記述される。実施例は組み合わせられ、他の実施例が利用され得る。もしくは、構造的、論理的、および電気的な変更が、特許請求される範囲から逸脱することなく行われ得る。以降の詳細な説明は、従って、限定的な意味に理解されるべきではなく、請求の範囲は、添付の請求項およびその均等物によって定められるものである。この文書において、用語「一つの(”a”と”an”)」は、特許関連文書において一般的であるように、一つ、または、一つ以上を含むように使用されている。この文書において、用語「または”or”」は、排他的でない”or”を参照するように使用されている。そうでないものと示されていなければ、「AまたはB(”A or B”)」は、「AであるがBでない(”A” but not B”)」、「BであるがAでない(”B” but not A”)」、および「AおよびB(”A and B”)」を含むようにである。
ここにおいて開示される実施例に係る技術は、種々の技術を使用して実施されてよい。例えば、ここにおいて説明される方法は、コンピュータシステム上で実行されるソフトウェアにおいて実施されてよく、もしくは、マイクロプロセッサまたは他の特別にデザインされた特定用途向け集積回路(ASIC)の組合せ、プログラム可能な論理デバイス、または種々のこれらの組合せ、のいずれかを利用しているハードウェアにおいて実施されてよい。特に、ここにおいて説明される方法は、ディスクドライブ、またはコンピュータで読取り可能な媒体といった、ストレージ媒体上に存する一連のコンピュータで実行可能なインストラクションによって実施されてよい。ここにおいて開示される方法は、コンピュータ(例えば、デスクトップコンピュータ、タブレットコンピュータ、ラップトップコンピュータ)、ゲームコンソール、ハンドヘルドゲームマシン、携帯電話、スマートフォン、スマートテレビシステム、等によって実施され得ることに注意すべきである。
所定の実施例において、ファイルシステムにおけるデータは、データオブジェクトのグラフとして表される。いくつかのオブジェクトは、他のデータオブジェクトに対するポインタ、リファレンスとしても知られているもの、を保持することができる。同時に、データオブジェクトは、それを指し示しているいくつかの他のオブジェクトによって参照され得る。これらのポインタまたはリファレンスは、これらに限定されるわけではないが、参照されるオブジェクトに対するキー識別子(key identifier)を保管することを含む、多くの方法で保管され得る。ここで、キー識別子は、いくつかの実施例においては、オブジェクトのコンテンツのハッシュ(hash)として表されてよい。
いくつかの実施例においては、少なくとも3つの属性が、ファイルシステムにおけるそれぞれのデータオブジェクトと関連付けされ得る。これらの属性は、参照カウンタ(RC)、失効時間(ExpTime)、およびスナップショット(またはバージョン)識別番号(SnapID)を含んでよい。
参照カウンタRCは、どれだけ多くの他のオブジェクトが、このオブジェクトを指し示しているかを示している。参照カウンタは、そのオブジェクトを指し示す新たなリファレンスが追加されたときに、1だけ増やされる。そして、そのオブジェクトを指し示す既存のリファレンスが除去されたときに、1だけ減らされる。
失効時間ExpTimeは、オブジェクトに対する参照カウンタがゼロになるか、ゼロに設定された後で、オブジェクトがオブジェクトストア(object store)の中に保持されるべき時間期間である。この時間は、絶対値または相対値を使用して保管されてよく、かつ、リニアタイム(linear time)または番号付けされた一連の顕著なイベントのいずれかとして表されてよい。ゼロである参照カウンタを伴う非失効(non−expired)オブジェクトは、アーカイブオブジェクトとして参照され得る。アーカイブオブジェクトは、オブジェクトがリファレンスを有さず、かつ、失効するまで除去されない。しかしながら、単にオブジェクトが未だ除去されていないからといって、それがアーカイブオブジェクトであることを意味するものではない。ライブ(live)リファレンスを有さず、かつ、失効しており、しかし、未だに除去されていない、といったオブジェクトは、「ゾンビ(”Zombie”)」オブジェクトとして参照され得る。1に等しいか、それ以上である参照カウンタを伴うオブジェクトは、ライブオブジェクトとして参照され得る。スナップ識別番号は、ファイルシステムのどのスナップショットバージョンが所与のオブジェクトと関連するかを示している。
スナップショット識別番号SnapIDは、単調に増加し、かつ、ルートオブジェクトにおいて記録されたSnapIDから計算される。新たなルートオブジェクトを結果として生じるものである。
図1は、データオブジェクトCに係る一つの実施例を示している。2つの他のオブジェクトAおよびBが、オブジェクトCを参照しており、そのため、オブジェクトCの参照カウンタは2に等しい。
オブジェクトの参照カウンタがゼロになり、かつ、そのオブジェクトが少なくとも一つの子オブジェクトを指し示している場合には、子オブジェクトの失効時間は、親の失効時間および子オブジェクトの失効時間のうち最新のものに再設定(reset)される。このルールは、子オブジェクトが、少なくとも親オブジェクトと同じだけ長くファイルシステムの中に保持されることを保証するものである。
図2に示される一つの実施例において、オブジェクトAは、オブジェクトBとCを参照している。オブジェクトAの参照カウンタがゼロになるので、オブジェクトAは、ライブオブジェクトからアーカイブオブジェクトへ移される。オブジェクトBとCの参照カウンタは、1だけ減らされる。オブジェクトAの失効時間は、オブジェクトBとCの失効時間を設定するために使用される。
図3は、親オブジェクトの参照カウンタがゼロになるか、又は、ゼロに設定されたときの、親オブジェクトから子オブジェクトへの参照カウンタと失効時間の伝播(propagation)のための方法300を示すフローチャートである。ステップ302において、方法300は、手始めに、親オブジェクトの参照カウンタがゼロになるか、又は、ゼロに設定されることを決定する。ステップ304において、方法300は、全ての子オブジェクトに対して、参照カウンタを1だけ減らして、方法300を継続する。ステップ306において、方法300は、全ての子オブジェクトに対して、失効時間を子オブジェクトおよび親オブジェクトの失効時間のうち最新のものに再設定して、方法300を進行する。
アーカイブオブジェクトは、他のいくつかのオブジェクトが、そのオブジェクトを指し示すこと開始する場合に、再びライブ(live)になり得る。図4は、2つのアーカイブオブジェクトAとBを示している。両方がライブであるときに、オブジェクトAはオブジェクトBを参照する。オブジェクトAに対するリファレンスとしてオブジェクトCが追加されている。従って、オブジェクトAの参照カウンタは、1に戻るように再設定され、かつ、失効時間が、オブジェクトAおよびその親オブジェクトCの失効時間のうち最新のものに再設定される。オブジェクトAの参照カウンタがゼロではないので、オブジェクトAはライブになり、そして、今ではアーカイブオブジェクトBを指し示している。従って、参照カウンタと失効時間は、オブジェクトB、および、存在する場合には子オブジェクトへと伝播される。
図5は、ライブ親オブジェクトからアーカイブ子オブジェクトへの参照カウンタと照明時間の伝播のための方法500を示すフローチャートである。ステップ502において、方法500は、手始めに、アーカイブオブジェクトに対して新たなライブオブジェクトが追加されることを決定する。ステップ504において、方法500は、アーカイブオブジェクトの参照カウンタを1に再設定して進行する。ステップ506において、方法500は、アーカイブオブジェクトの失効時間を、新たなライブリファレンスおよびアーカイブオブジェクトの失効時間のうち最新のものに設定すること、を含み得る。方法500のオペレーションの結果として、アーカイブオブジェクトはライブオブジェクトになる。
いくつかの実施例において、ファイルシステムは、アイノード(Inode)として参照される特別なタイプのリファレンスオブジェクトを含み得る。アイノードは、ファイルシステムのスナップショット履歴を編成するために使用される。ファイルシステムにおけるそれぞれのデータエンティティは、リンクされたアイノードのチェイン(chain)と関連付けられる。チェインにおけるアイノードは、データエンティティの異なるバージョンを参照する。データエンティティが変更される毎に、新たなアイノードがチェインの最後に追加される。データエンティティの最後のバージョンを指し示している最後のアイノードを用いるものである。
データにおける変更は、その親エンティティへ伝播される。親エンティティは、つまり、このデータエンティティが在るディレクトリである。システムの一つの変更の中に含まれる全てのエンティティは、それらのチェインのトップにおいて新たなアイノードを受け取る。一つのファイルシステム変更において作成された全てのアイノードには、同一のスナップID(SnapID)属性が割り当てられる。スナップIDは、ファイルシステムにおいて変更が生じたときに、いつでも、ある値により増やされる。
アイノードオブジェクトは、参照カウンタに対する特別なルールを有している。ライブディレクトリによって直接的に参照されるチェインにおける最初のアイノードの参照カウンタは、決して1より小さくはない。チェインにおける最後のアイノードは、追加のリファレンスを獲得する。単に、それがアイノードの最新のライブバージョンであるからである。このことが、ライブディレクトリによって参照されるアイノードバージョンにも生じる場合には、2であるカウントを有することになる。チェインにおける他の全てのアイノードの参照カウンタは、ゼロに設定される。新たなアイノードがチェインのトップに追加される毎に、その参照カウンタは1に設定され、そして、チェインにおいて前にあるものの参照カウンタは、1だけ減らされる。このアイノード及びこのアイノードによって参照されるデータエンティティは、アーカイブオブジェクトになり、そして、それらの失効時間の後で両方が除去され得る。そのアイノードの失効時間は、また、アイノードが発生するときに計算される。失効ポリシに従ったものであり、かつ、以前のアイノードバージョンの開始および終了時間の知識を使用するものである。
ファイルシステムの一つの実施例が、図6に示されている。この典型的なシステムは、一つのディレクトリD、および、このディレクトリの中に存在しているFと名付けられた一つのファイルを伴うシステムに対応している。リンクされたアイノードI12、I13、およびI14のチェインは、ファイルFと関連付けされている。アイノードI113とアイノードI14は、ファイルFの一つのバージョンをそれぞれ指し示している。アイノードI12は、ファイルFの作成によって生じたファイルシステムにおける変更に対応している。アイノードI12は、ファイルの一つのバージョンを指し示していない。ファイルFは、それが作成されたときに中身が空だったからである。アイノードI12、I13、およびI14に対応する変更は、ファイルFの親であるディレクトリDへ伝播される。この伝播のおかげで、ディレクトリDと関連付けされたアイノードのチェインは、アイノードI2、I3、およびI4を受け取る。オブジェクトのスナップIDが左上のコーナーに示されており、そして、アイノードと一つの変更において作成されたオブジェクトは、同一の値のスナップIDを有している。
いくつかの実施例において、アイノードとアイノードによって参照されるデータオブジェクトに対する失効時間は、このアイノードの寿命(lifetime)に基づいて決定され得る。寿命は、チェインのトップにおいてアイノードが作成された瞬間から、別のアイノードがそのアイノードをクローズする瞬間までに経過した時間である。図6に示されている実施例において、アイノードI12の寿命はT2であり、アイノードI13の寿命はT3である。
このように、所定の実施例においては、より大きいポリシインターバルをその寿命がクロス(cross)するアイノードは、失効がより遅いものであり、そして、その逆も同様であり、より小さなポリシインターバルだけをその寿命がクロスするか、またはポリシインターバルをクロスしないアイノードは、失効がより早いものである。
いくつかの実施例において、スナップIDの範囲は、その範囲に属するオブジェクトを、ガベージコレクションプロセスによる除去から保護するように定められ得る。フラックススナップ(Fluxsnap)と呼ばれる特別な境界パラメータが、スナップIDの範囲を確立するために使用され得る。ガベージコレクションは、フラックススナップより大きいか等しいスナップIDを伴うオブジェクトを除去することが禁じられる。ファイルシステムの寿命の最中に、フラックススナップは、ガベージコレクションからの保護のために、狭い範囲へと移動され得る。新たに作成されたオブジェクトは、フラックススナップより大きいか等しいスナップIDを割り当てることによって一時的に保護され得る。そして、次に、これらのオブジェクトがライブオブジェクトになり、かつ、より長く保持されることが意味される場合には、フラックススナップが先に進むことを許可される前に、ゼロでない(non−zero)参照カウンタが割り当てられる。一旦、フラックススナップが先に進むと、参照カウンタによって保護されてきていないあらゆるオブジェクトが、除去について適格となる。
いくつかの実施例において、一つのアイノードのファイルシステムコンセプトのバージョンは、それぞれのアイノードの種々のバージョンに対するリファレンスを含んでいるイミュータブル(immutable)オブジェクトのツリーを使用して表わされてよい。ここで、アイノード自身は、以前のアイノードバージョンに対するリファレンスを含む必要はない。オブジェクトのツリーとしてのアイノードのこの表現は、それぞれのアイノードのバージョンのチェインとしてのアイノードの表現について、追加であっても、または、代わりであってもよい。アイノードがイミュータブルオブジェクトのツリーとして表される、そうした実施例においては、上述された、アイノードのための特別なルールが適用される必要はない。そして、この表現に対するオブジェクトは、参照カウントおよび失効時間のための一般的なルールに従ってよい。
図7は、コンピュータシステム700の電子的形態の例におけるマシンのためのコンピューティングデバイスの図式表現を示している。その中では、ここにおいて説明されるあらゆる一つまたはそれ以上の方法をマシンに実施させるための一式のインストラクションが実行され得る。種々の実施例において、マシンは、スタンドアロン機器として動作し、または、他のマシンに接続されてよい(例えば、ネットワーク)。ネットワークされた展開において、マシンは、サーバ−クライアント環境におけるサーバまたはクライアントマシンの能力において動作し、または、ピアツーピア(peer−to−peer)(または分散)ネットワーク環境におけるピアマシンとして動作し得る。マシンは、パーソナルコンピュータ(PC)、タブレットPC,セットトップボックス(STB)、パーソナルデジタルアシスタント、携帯電話、ポータブル音楽プレーヤ(例えば、ムービングピクチャーエキスパーツグループ・オーディオレイヤ3(MP3)プレーヤといった、ポータブルハードドライブオーディオデバイス)、ゲームパッド、ポータブルゲームコンソール、車載コンピュータ、スマートホームコンピュータ、または、マシンによって行われるべきアクションを特定する一式のインストラクションを(シーケンシャルに、または、そうではなく)実行することができるあらゆるマシン、であってよい。さらに、一つのマシンだけが図示されているが、用語「マシン(”machine”)」は、また、ここにおいて説明されるあらゆる一つまたはそれ以上の方法をマシンに実施させるための一式(または複数セット)のインストラクションを個別又は協同して実施するマシンのあらゆるコレクション(collection)を含むものと理解されるものである。
コンピュータシステム700の実施例は、一つのプロセッサまたは複数のプロセッサ705(例えば、中央処理装置(CPU)、グラフィクス処理装置(GPU)、もしくは両方)、および、メインメモリ710とスタティックメモリ715、を含んでいる。メインメモリとスタティックメモリは、バス720を介して相互に通信する。コンピュータシステム700は、さらに、ビデオディスプレイ装置725(例えば、液晶ディスプレイ)を含んでよい。コンピュータシステム700は、また、少なくとも一つの入力デバイス730を含んでよい。英数字入力デバイス(例えば、キーボード)、カーソルコントロールデバイス(例えば、マウス)、マイクロフォン、デジタルカメラ、ビデオカメラ、等といったものである。コンピュータシステム700は、また、ディスクドライブ装置735、信号生成デバイス740(例えば、スピーカ)、およびネットワークインターフェイスデバイス745、を含んでいる。
ディスクドライブ装置735は、コンピュータで読取り可能な媒体750を含んでおり、ここにおいて説明されるあらゆる一つまたはそれ以上の方法または機能を具現し又は利用される、一つまたはそれ以上のインストラクションおよびデータ構造(例えば、インストラクション755)を保管する。インストラクション755は、また、コンピュータシステム700による実行の最中に、メインメモリ710の中、及び/又は、プロセッサ705の中に、完全に又は少なくとも部分的に、存在してもよい。メインメモリ710とプロセッサ705は、また、マシンで読取り可能な媒体も構成する。
インストラクション755は、さらに、ネットワークインターフェイスデバイス745を介してネットワーク760にわたり、送信または受信され得る。ネットワークインターフェイスデバイスは、数多くのよく知られた転送プロトコル(例えば、ハイパーテキストトランスファープロトコル(HTTP)、CAN、シリアル(Serial)、およびModbus)のうちのどれでも一つを利用している。例えば、ネットワーク760は、以下のうち一つまたはそれ以上を含んでよい。インターネット、ローカルイントラネット、PAN(Personal Area Network)、LAN(Local Area Network)、WAN(Wide Area Network)、MAN(Metropolitan Area Network)、仮想プライベートネットワーク(VPN)、ストレージエリアネットワーク(SAN)、フレームリレー接続、高度インテリジェントネットワーク(AIN)接続、同期型光ネットワーク(SONET)接続、デジタルT1、T3、E1、またはE3ライン、デジタルデータサービス(DDS)接続、DSL(Digital Subscriber Line)接続、イーサネット接続、ISDN(Inegrated Services Digital Network)ライン、ケーブルモデム、ATM(Asynchronous Transfer Mode)接続、もしくは、FDDI(Fiber Distributed Data Interface)又はCDDI(Copper Distributed Data Interface)接続、である。さらに、通信は、また、種々の無線ネットワークのうちあらゆるものに対するリンクも含んでよい。無線ネットワークは、GPRS(Global Packet Radio Service)、GSM(Global System for Mobile Communication)、CDMA(Code Divison Multiple Access)又はTDMA(Time Divison Multiple Access)、携帯電話ネットワーク、GPS、CDPD(cellular digital packet data)、RIM(Research in Motion社)のデュ―プレックスページングネットワーク、ブルートゥース(登録商標)ラジオ、もしくは、IEEE802.11ベースのラジオ周波数ネットワーク、を含んでいる。
実施例においては、一つの媒体であるようにコンピュータで読取り可能な媒体750が示されているが、用語「コンピュータで読取り可能な媒体(”computer−readable medium”)」は、インストラクションの一つまたはそれ以上のセットを保管する一つの媒体または複数の媒体(例えば、集中または分散データベース、及び/又は、関連するキャッシュおよびサーバ)を含むものと捉えられるべきである。用語「コンピュータで読取り可能な媒体」は、また、マシンによる実行のための一式のインストラクションを保管し、エンコードし、または運搬することができるあらゆる媒体を含むものと捉えられるべきであり、本アプリケーションに係るあらゆる一つまたはそれ以上の方法をマシンに実行させる。もしくは、そうした一式のインストラクションによって使用され、又は関連付けされるデータ構造を保管し、エンコードし、または運搬することができるあらゆる媒体を含むものと捉えられるべきである。用語「コンピュータで読取り可能な媒体」は、従って、これらに限定されるわけではないが、半導体メモリ、光および磁気媒体を含むものと捉えられるべきである。そうした媒体は、また、限定するものではないが、ハードディスク、フロッピー(登録商標)ディスク、フラッシュメモリカード、デジタルビデオディスク(DVD)、ランダムアクセスメモリ(RAM)、読出し専用メモリ(ROM)、等も含み得る。
ここにおいて説明される実施例は、ハードウェア、又はソフトウェアとハードウェアの組合せにおいてコンピュータ上にインストールされたコンピュータで実行可能なインストラクション(例えば、ソフトウェア)を含むオペレーティング環境において実施され得る。コンピュータで実行可能なインストラクションは、コンピュータプログラミング言語で記述され、もしくは、ファームウェアロジックにおいて具現化され得る。認定された規格に準拠してプログラミング言語で記述された場合、そうしたインストラクションは、種々のハードウェアプラットフォーム上で実行され、そして、種々のオペレーティングシステムに対するインターフェイスのために実行され得る。これらに限定されるわけではないが、本方法を実施するためのコンピュータソフトウェアプログラムは、あらゆる数の適切なプログラミング言語において記述され得る。例えば、ハイパーテキストマークアップ言語(HTML)、ダイナミックHTML、拡張可能マークアップ言語(XML)、拡張可能スタイルシート言語(XSL)、文章スタイル意味指定言語(DSSSL)、カスケーディングスタイルシート(CSS)、同期マルチメディア統合言語(SMIL)、無線マークアップ言語(WML)、JavaTM、JiniTM、C、C++、Perl、UNIXシェル、ビジュアルベーシックスクリプト、仮想現実マークアップ言語(VRML)、ColdFusionTMまたは他のコンパイラ、アセンブラ、インタープリタまたは他のコンピュータ言語もしくはプラットフォーム、といったものである。
このように、ファイルシステムにおけるオブジェクトのガベージコレクションのための方法が開示される。この方法は、参照カウント技術と失効時間の伝播のハイブリッド(hybrid)に基づくものである。
所定の実施例に関して具体化が説明されてきたが、本アプリケーションのより広い精神と範囲から逸脱することなく、これらの実施例に対して種々の変更および変形がなされ得ることは明白であろう。従って、明細書と図面は、限定的な意味より、むしろ説明的なものとして考慮されるべきである。
Claims (20)
- ファイルシステムにおけるオブジェクトのハイブリッドガベージコレクションのためのコンピュータで実行可能な方法であって、
参照カウンタを前記ファイルシステムにおけるオブジェクトと関連付けるステップと、
失効時間を前記オブジェクトと関連付けるステップと、
バージョン識別子を前記オブジェクトと関連付けるステップと、
前記オブジェクトの前記参照カウンタがゼロでない間、前記オブジェクトを前記ファイルシステムの中に保持するステップと、
を含み、
前記オブジェクトの前記参照カウンタがゼロであることの決定に応じて、前記オブジェクトに関連付けされた前記失効時間まで、前記オブジェクトを前記ファイルシステムの中に保持する、
方法。 - 前記オブジェクトを参照している新たなリファレンスが追加されたことに応じて、前記オブジェクトに関連付けされた前記参照カウンタを1だけ増やす、
請求項1に記載の方法。 - 前記方法は、さらに、
前記オブジェクトを参照している既存のリファレンスに関連付けされた第2の参照カウンタがゼロであると決定するステップ、を含み、
前記決定に応じて、
前記オブジェクトの前記参照カウンタを1だけ減らし、かつ、
前記オブジェクトに関連付けされた前記失効時間を、前記オブジェクトの失効時間および前記リファレンスの失効時間のうち最新のものに設定する、
請求項1に記載の方法。 - 前記方法は、さらに、
前記オブジェクトに関連付けされた前記参照カウンタがゼロであり、かつ、前記オブジェクトを参照している新たなリファレンスが追加されて、前記新たなリファレンスに関連付けされた新たな参照カウンタがゼロでない、と決定するステップ、を含み、
前記決定に応じて、
前記オブジェクトに関連付けされた前記参照カウンタを1だけ増やし、かつ、
前記オブジェクトに関連付けされた前記失効時間を、前記オブジェクトの失効時間および前記新たなリファレンスの失効時間のうち最新のものに設定する、
請求項1に記載の方法。 - 前記バージョン識別子は、前記ファイルシステムの変化と共に単調に増加され、かつ、
前記ファイルシステムの前記変化は、前記ファイルシステムに少なくとも一つの新たなオブジェクトを追加することに対応している、
請求項1に記載の方法。 - 前記方法は、さらに、
前記少なくとも一つの新たなオブジェクト、および、前記少なくとも一つの新たなオブジェクトの追加により前記ファイルシステムに追加された全てのオブジェクトに対して、同一のバージョン識別子を割り当てるステップ、
を含む、請求項5に記載の方法。 - 前記方法は、さらに、
前記オブジェクトに関連付けされた前記バージョン識別子が、既定の最大バージョンより大きい間、前記オブジェクトを前記ファイルシステムの中に保持するステップ、
を含む、請求項1に記載の方法。 - 前記方法は、さらに、
オブジェクトのバージョンを続けて参照するように、リファレンスオブジェクトのチェインを提供するステップ、を含み、
前記チェインにおける2番目のリファレンスオブジェクトは、前記オブジェクトの1番目のバージョンを参照し、
前記チェインにおける最後のリファレンスオブジェクトは、前記オブジェクトの最後から2番目のバージョンを参照し、
前記チェインにおける1番目のリファレンスオブジェクトに関連付けされた参照カウンタが1に設定され、
前記チェインにおける最後のリファレンスオブジェクトに関連付けされた参照カウンタが1に設定され、かつ、
前記チェインにおける前記1番目のリファレンスオブジェクトと前記最後のリファレンスオブジェクトの間にあるリファレンスオブジェクトに関連付けされた参照カウンタがゼロに設定される、
請求項1に記載の方法。 - 前記方法は、さらに、
前記オブジェクトの新たなバージョンが前記ファイルシステムに追加されたことに応じて、
前記チェインにおける前記最後のリファレンスオブジェクトに関連付けされた失効時間を決定し、
前記チェインにおける前記最後のリファレンスオブジェクトに関連付けされた前記参照カウンタをゼロに設定し、かつ、
前記チェインの最後に新たなリファレンスオブジェクトを追加し、前記新たなリファレンスオブジェクトは前記オブジェクトの前記新たなバージョンを参照している、
請求項8に記載の方法。 - 前記チェインにおける前記最後のリファレンスオブジェクトに関連付けされた前記失効時間は、前記オブジェクトの前記最後のバージョンおよび前記オブジェクトの前記新たなバージョンの追加の間の時間期間に基づいて計算される、
請求項9に記載の方法。 - 一つまたはそれ以上のプロセッサによって実行されると、ファイルシステムにおけるオブジェクトのハイブリッドガベージコレクションのための方法を前記一つまたはそれ以上のプロセッサに実施させるインストラクション、が保管された有形のコンピュータで読取り可能な媒体であって、
前記方法は、
参照カウンタを前記ファイルシステムにおけるオブジェクトと関連付けるステップと、
失効時間を前記オブジェクトと関連付けるステップと、
バージョン識別子を前記オブジェクトと関連付けるステップと、
前記オブジェクトの前記参照カウンタがゼロでない間、前記オブジェクトを前記ファイルシステムの中に保持するステップと、
前記オブジェクトの前記参照カウンタがゼロであることの決定に応じて、前記オブジェクトに関連付けされた前記失効時間まで、前記オブジェクトを前記ファイルシステムの中に保持するステップと、
を含む、有形のコンピュータで読取り可能な媒体。 - 前記方法は、さらに、
前記オブジェクトを参照している新たなリファレンスが追加されたことに応じて、前記オブジェクトに関連付けされた前記参照カウンタを1だけ増やすステップ、
を含む、請求項11に記載の有形のコンピュータで読取り可能な媒体。 - 前記方法は、さらに、
前記オブジェクトを参照している既存のリファレンスに関連付けされた第2の参照カウンタがゼロであると決定するステップ、を含み、
前記決定に応じて、
前記オブジェクトの前記参照カウンタを1だけ減らし、かつ、
前記オブジェクトに関連付けされた前記失効時間を、前記オブジェクトの失効時間および前記リファレンスの失効時間のうち最新のものに設定する、
請求項11に記載の有形のコンピュータで読取り可能な媒体。 - 前記方法は、さらに、
前記オブジェクトに関連付けされた前記参照カウンタがゼロであり、かつ、前記オブジェクトを参照している新たなリファレンスが追加されて、前記新たなリファレンスに関連付けされた新たな参照カウンタがゼロでない、と決定するステップ、を含み、
前記決定に応じて、
前記オブジェクトに関連付けされた前記参照カウンタを1だけ増やし、かつ、
前記オブジェクトに関連付けされた前記失効時間を、前記オブジェクトの失効時間および前記新たなリファレンスの失効時間のうち最新のものに設定する、
請求項11に記載の有形のコンピュータで読取り可能な媒体。 - 前記バージョン識別子は、前記ファイルシステムの変化と共に単調に増加され、かつ、
前記ファイルシステムの前記変化は、前記ファイルシステムに少なくとも一つの新たなオブジェクトを追加することに対応している、
請求項11に記載の有形のコンピュータで読取り可能な媒体。 - 前記方法は、さらに、
前記少なくとも一つの新たなオブジェクト、および、前記少なくとも一つの新たなオブジェクトの追加により前記ファイルシステムに追加された全てのオブジェクトに対して、同一のバージョン識別子を割り当てるステップ、
請求項15に記載の有形のコンピュータで読取り可能な媒体。 - 前記方法は、さらに、
前記オブジェクトに関連付けされた前記バージョン識別子が、既定の最大バージョンより大きい間、前記オブジェクトを前記ファイルシステムの中に保持するステップ、
を含む、請求項11に記載の有形のコンピュータで読取り可能な媒体。 - 前記方法は、さらに、
オブジェクトのバージョンを続けて参照するように、リファレンスオブジェクトのチェインを提供するステップ、を含み、
前記チェインにおける2番目のリファレンスオブジェクトは、前記オブジェクトの1番目のバージョンを参照し、
前記チェインにおける最後のリファレンスオブジェクトは、前記オブジェクトの最後から2番目のバージョンを参照し、
前記チェインにおける1番目のリファレンスオブジェクトに関連付けされた参照カウンタが1に設定され、
前記チェインにおける最後のリファレンスオブジェクトに関連付けされた参照カウンタが1に設定され、かつ、
前記チェインにおける前記1番目のリファレンスオブジェクトと前記最後のリファレンスオブジェクトの間にあるリファレンスオブジェクトに関連付けされた参照カウンタがゼロに設定される、
請求項11に記載の有形のコンピュータで読取り可能な媒体。 - 前記方法は、さらに、
前記オブジェクトの新たなバージョンが前記ファイルシステムに追加されたことに応じて、
前記チェインにおける前記最後のリファレンスオブジェクトに関連付けされた失効時間を決定し、
前記チェインにおける前記最後のリファレンスオブジェクトに関連付けされた前記参照カウンタをゼロに設定し、かつ、
前記チェインの最後に新たなリファレンスオブジェクトを追加し、前記新たなリファレンスオブジェクトは前記オブジェクトの前記新たなバージョンを参照している、
請求項18に記載の有形のコンピュータで読取り可能な媒体。 - 前記チェインにおける前記最後のリファレンスオブジェクトに関連付けされた前記失効時間は、前記オブジェクトの前記最後のバージョンおよび前記オブジェクトの前記新たなバージョンの追加の間の時間期間に基づいて計算される、
請求項19に記載の有形のコンピュータで読取り可能な媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361834097P | 2013-06-12 | 2013-06-12 | |
US61/834,097 | 2013-06-12 | ||
PCT/US2014/042155 WO2014201270A1 (en) | 2013-06-12 | 2014-06-12 | Hybrid garbage collection |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2016526717A true JP2016526717A (ja) | 2016-09-05 |
Family
ID=52020181
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016519652A Pending JP2016526717A (ja) | 2013-06-12 | 2014-06-12 | ハイブリッドガベージコレクション |
Country Status (4)
Country | Link |
---|---|
US (1) | US9514137B2 (ja) |
EP (1) | EP3008647A4 (ja) |
JP (1) | JP2016526717A (ja) |
WO (1) | WO2014201270A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10866759B2 (en) | 2017-12-20 | 2020-12-15 | Fujitsu Limited | Deduplication storage system having garbage collection control method |
KR102453983B1 (ko) * | 2021-12-14 | 2022-10-31 | 인터와이즈 주식회사 | 생존 경로 정보 기반 가비지 컬렉션 방법 |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9628438B2 (en) | 2012-04-06 | 2017-04-18 | Exablox | Consistent ring namespaces facilitating data storage and organization in network infrastructures |
US9552382B2 (en) | 2013-04-23 | 2017-01-24 | Exablox Corporation | Reference counter integrity checking |
US9514137B2 (en) | 2013-06-12 | 2016-12-06 | Exablox Corporation | Hybrid garbage collection |
JP2016526720A (ja) | 2013-06-19 | 2016-09-05 | エグザブロックス・コーポレーション | クラスタベースの記憶システムにおけるデータスクラビング |
US9934242B2 (en) | 2013-07-10 | 2018-04-03 | Exablox Corporation | Replication of data between mirrored data sites |
US10248556B2 (en) | 2013-10-16 | 2019-04-02 | Exablox Corporation | Forward-only paged data storage management where virtual cursor moves in only one direction from header of a session to data field of the session |
US9985829B2 (en) | 2013-12-12 | 2018-05-29 | Exablox Corporation | Management and provisioning of cloud connected devices |
US9774582B2 (en) | 2014-02-03 | 2017-09-26 | Exablox Corporation | Private cloud connected device cluster architecture |
EP3103025B1 (en) | 2014-02-04 | 2019-07-10 | Exablox Corporation | Content based organization of file systems |
US9940234B2 (en) * | 2015-03-26 | 2018-04-10 | Pure Storage, Inc. | Aggressive data deduplication using lazy garbage collection |
US10379779B2 (en) * | 2015-08-24 | 2019-08-13 | Exablox Corporation | Concurrent, incremental, and generational mark and sweep garbage collection |
US20170060924A1 (en) | 2015-08-26 | 2017-03-02 | Exablox Corporation | B-Tree Based Data Model for File Systems |
TWI546728B (zh) * | 2015-09-09 | 2016-08-21 | 群暉科技股份有限公司 | 用來對一儲存系統進行版本管理之方法與裝置 |
US9846553B2 (en) | 2016-05-04 | 2017-12-19 | Exablox Corporation | Organization and management of key-value stores |
US10558622B2 (en) * | 2016-05-10 | 2020-02-11 | Nasuni Corporation | Network accessible file server |
US11074173B1 (en) | 2018-04-26 | 2021-07-27 | Lightbits Labs Ltd. | Method and system to determine an optimal over-provisioning ratio |
US11093408B1 (en) * | 2018-04-26 | 2021-08-17 | Lightbits Labs Ltd. | System and method for optimizing write amplification of non-volatile memory storage media |
US11640371B2 (en) * | 2020-03-12 | 2023-05-02 | Western Digital Technologies, Inc. | Snapshot management in partitioned storage |
US11385798B1 (en) | 2020-12-28 | 2022-07-12 | Lightbits Labs Ltd. | Method and system for application aware, management of write operations on non-volatile storage |
US11461050B2 (en) * | 2021-01-20 | 2022-10-04 | Vmware, Inc. | Managing data lifecycles through decay |
US11914615B2 (en) * | 2021-08-19 | 2024-02-27 | Sap Se | Managing shared objects in hybrid distributed database systems |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07168744A (ja) * | 1993-12-16 | 1995-07-04 | Canon Inc | 情報管理装置及びその制御方法 |
US20120030260A1 (en) * | 2010-07-30 | 2012-02-02 | Maohua Lu | Scalable and parallel garbage collection method and system for incremental backups with data de-duplication |
Family Cites Families (179)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NL8303167A (nl) | 1983-09-14 | 1985-04-01 | Philips Nv | Alleenstaande dienstverlenende inrichting met micro-computer, die beschermd is tegen storingen. |
US4660130A (en) | 1984-07-24 | 1987-04-21 | Texas Instruments Incorporated | Method for managing virtual memory to separate active and stable memory blocks |
CA2285096C (en) | 1991-11-12 | 2000-05-09 | Ibm Canada Limited-Ibm Canada Limitee | Logical mapping of data objects using data spaces |
GB2265734A (en) | 1992-03-27 | 1993-10-06 | Ibm | Free memory cell management system |
US6237009B1 (en) * | 1996-10-11 | 2001-05-22 | Sun Microsystems, Inc. | Lease renewal service |
US5832529A (en) | 1996-10-11 | 1998-11-03 | Sun Microsystems, Inc. | Methods, apparatus, and product for distributed garbage collection |
US6167437A (en) | 1997-09-02 | 2000-12-26 | Silicon Graphics, Inc. | Method, system, and computer program product for page replication in a non-uniform memory access system |
US5950205A (en) | 1997-09-25 | 1999-09-07 | Cisco Technology, Inc. | Data transmission over the internet using a cache memory file system |
US6098079A (en) | 1998-04-02 | 2000-08-01 | Mitsubishi Electric Information Technology Center America, Inc. (Ita) | File version reconciliation using hash codes |
US6226728B1 (en) | 1998-04-21 | 2001-05-01 | Intel Corporation | Dynamic allocation for efficient management of variable sized data within a nonvolatile memory |
US6154747A (en) | 1998-08-26 | 2000-11-28 | Hunt; Rolf G. | Hash table implementation of an object repository |
GB9825102D0 (en) | 1998-11-16 | 1999-01-13 | Insignia Solutions Plc | Computer system |
JP2000207266A (ja) | 1999-01-13 | 2000-07-28 | Mitsubishi Electric Corp | レプリカシステムおよびレプリカ方法 |
US6480950B1 (en) | 2000-01-24 | 2002-11-12 | Oracle International Corporation | Software paging system |
US7266555B1 (en) | 2000-03-03 | 2007-09-04 | Intel Corporation | Methods and apparatus for accessing remote storage through use of a local device |
ATE261145T1 (de) | 2000-05-09 | 2004-03-15 | Sun Microsystems Inc | Verfahren und vorrichtung zur ermittlung von benachbarten diensten |
US8219662B2 (en) | 2000-12-06 | 2012-07-10 | International Business Machines Corporation | Redirecting data generated by network devices |
US7216136B2 (en) | 2000-12-11 | 2007-05-08 | International Business Machines Corporation | Concurrent collection of cyclic garbage in reference counting systems |
SE0004736D0 (sv) | 2000-12-20 | 2000-12-20 | Ericsson Telefon Ab L M | Mapping system and method |
US20030028514A1 (en) | 2001-06-05 | 2003-02-06 | Lord Stephen Philip | Extended attribute caching in clustered filesystem |
US7222187B2 (en) | 2001-07-31 | 2007-05-22 | Sun Microsystems, Inc. | Distributed trust mechanism for decentralized networks |
US7134041B2 (en) | 2001-09-20 | 2006-11-07 | Evault, Inc. | Systems and methods for data backup over a network |
US6973049B2 (en) | 2001-10-16 | 2005-12-06 | Corrigent Systems Ltd. | Auto-configuration of network interfaces in a bidirectional ring network |
US7117505B2 (en) | 2001-11-29 | 2006-10-03 | Veritas Operating Corporation | Methods, systems, and apparatus to interface with storage objects |
US7177980B2 (en) | 2001-12-18 | 2007-02-13 | Storage Technology Corporation | Cache storage system and method |
US7392421B1 (en) | 2002-03-18 | 2008-06-24 | Symantec Operating Corporation | Framework for managing clustering and replication |
US6968439B2 (en) | 2002-08-29 | 2005-11-22 | Micron Technology, Inc. | Single segment data object management |
JP2005538469A (ja) | 2002-09-10 | 2005-12-15 | イグザグリッド システムズ, インコーポレイテッド | 階層型格納管理を用いるサーバシェア移送およびサーバ回復のための方法および装置 |
US20040111610A1 (en) | 2002-12-05 | 2004-06-10 | Canon Kabushiki Kaisha | Secure file format |
GB0301726D0 (en) | 2003-01-24 | 2003-02-26 | Ecebs Ltd | Improved smartcard |
US7043494B1 (en) | 2003-01-28 | 2006-05-09 | Pmc-Sierra, Inc. | Fast, deterministic exact match look-ups in large tables |
US7177886B2 (en) | 2003-02-07 | 2007-02-13 | International Business Machines Corporation | Apparatus and method for coordinating logical data replication with highly available data replication |
JP4068473B2 (ja) | 2003-02-19 | 2008-03-26 | 株式会社東芝 | ストレージ装置、分担範囲決定方法及びプログラム |
US7478096B2 (en) * | 2003-02-26 | 2009-01-13 | Burnside Acquisition, Llc | History preservation in a computer storage system |
US7403961B1 (en) | 2003-03-14 | 2008-07-22 | Xilinx, Inc. | Dangling reference detection and garbage collection during hardware simulation |
US7379954B2 (en) | 2003-07-08 | 2008-05-27 | Pillar Data Systems, Inc. | Management of file system snapshots |
US6988180B2 (en) | 2003-09-29 | 2006-01-17 | Microsoft Corporation | Method and apparatus for lock-free, non-blocking hash table |
US7496690B2 (en) | 2003-10-09 | 2009-02-24 | Intel Corporation | Method, system, and program for managing memory for data transmission through a network |
US7596704B2 (en) | 2003-10-10 | 2009-09-29 | Jing-Jang Hwang | Partition and recovery of a verifiable digital secret |
US7480760B2 (en) | 2003-12-17 | 2009-01-20 | Wegener Communications, Inc. | Rotational use of memory to minimize write cycles |
US8103772B2 (en) | 2003-12-24 | 2012-01-24 | Sap Aktiengesellschaft | Cluster extension in distributed systems using tree method |
EP1870814B1 (en) | 2006-06-19 | 2014-08-13 | Texas Instruments France | Method and apparatus for secure demand paging for processor devices |
US8185663B2 (en) | 2004-05-11 | 2012-05-22 | Hewlett-Packard Development Company, L.P. | Mirroring storage interface |
US7065611B2 (en) | 2004-06-29 | 2006-06-20 | Hitachi, Ltd. | Method for controlling storage policy according to volume activity |
US7715396B2 (en) | 2004-08-19 | 2010-05-11 | Microsoft Corporation | Network routing |
US7613703B2 (en) | 2004-09-30 | 2009-11-03 | Microsoft Corporation | Organizing resources into collections to facilitate more efficient and reliable resource access |
CN1761219B (zh) | 2004-10-12 | 2010-04-28 | 华为技术有限公司 | 在mpls环网中实现拓扑结构自动发现的方法 |
US20060083247A1 (en) | 2004-10-14 | 2006-04-20 | Sun Microsystems, Inc. | Prefix lookup using address-directed hash tables |
US7694167B2 (en) | 2004-10-22 | 2010-04-06 | Microsoft Corporation | Maintaining routing consistency within a rendezvous federation |
US20120310892A1 (en) | 2004-12-21 | 2012-12-06 | Dam Tru Q | System and method for virtual cluster file server |
CN101138207B (zh) | 2005-03-10 | 2011-08-17 | 汤姆森许可贸易公司 | 混合网格路由选择的方法和接入点 |
US8356021B2 (en) | 2005-03-11 | 2013-01-15 | Ross Neil Williams | Method and apparatus for indexing in a reduced-redundancy storage system |
WO2006108865A2 (fr) | 2005-04-12 | 2006-10-19 | Enrico Maim | Procedes pour permettre l'acces a des ressources modifiables par des utilisateurs dans un environnement informatique, et ressources structurees a cet effet |
US7539836B1 (en) | 2005-04-18 | 2009-05-26 | Netapp, Inc. | Method and system for configuring a data storage object |
US20070005746A1 (en) | 2005-06-30 | 2007-01-04 | Roe Bryan Y | Enhanced network discovery service |
US8296550B2 (en) | 2005-08-29 | 2012-10-23 | The Invention Science Fund I, Llc | Hierarchical register file with operand capture ports |
US20070130232A1 (en) | 2005-11-22 | 2007-06-07 | Therrien David G | Method and apparatus for efficiently storing and managing historical versions and replicas of computer data files |
US8392400B1 (en) | 2005-12-29 | 2013-03-05 | Amazon Technologies, Inc. | Method and apparatus for stress management in a searchable data service |
US7454592B1 (en) | 2006-02-16 | 2008-11-18 | Symantec Operating Corporation | Block-level and hash-based single-instance storage |
CN101046755B (zh) | 2006-03-28 | 2011-06-15 | 郭明南 | 一种计算机自动内存管理的系统及方法 |
US7801128B2 (en) | 2006-03-31 | 2010-09-21 | Amazon Technologies, Inc. | Managing communications between computing nodes |
US20070233828A1 (en) | 2006-03-31 | 2007-10-04 | Jeremy Gilbert | Methods and systems for providing data storage and retrieval |
US9195665B2 (en) | 2006-04-28 | 2015-11-24 | Hewlett-Packard Development Company, L.P. | Method and system for data retention |
US20070271303A1 (en) | 2006-05-18 | 2007-11-22 | Manuel Emilio Menendez | Personal file version archival management and retrieval |
US8255420B2 (en) | 2006-05-23 | 2012-08-28 | Noryan Holding Corporation | Distributed storage |
US8099605B1 (en) | 2006-06-05 | 2012-01-17 | InventSec AB | Intelligent storage device for backup system |
US8990270B2 (en) | 2006-08-03 | 2015-03-24 | Hewlett-Packard Development Company, L. P. | Protocol virtualization for a network file system |
CN101507191A (zh) | 2006-08-25 | 2009-08-12 | 佛罗里达大学研究基金公司 | 被递归地分割的静态ip路由表 |
US20080052446A1 (en) | 2006-08-28 | 2008-02-28 | Sandisk Il Ltd. | Logical super block mapping for NAND flash memory |
US7895666B1 (en) | 2006-09-01 | 2011-02-22 | Hewlett-Packard Development Company, L.P. | Data structure representation using hash-based directed acyclic graphs and related method |
US7539783B2 (en) | 2006-09-22 | 2009-05-26 | Commvault Systems, Inc. | Systems and methods of media management, such as management of media to and from a media storage library, including removable media |
WO2008043197A1 (en) * | 2006-09-26 | 2008-04-17 | Intel Corporation | Dynamically changing a garbage collector in a managed runtime system |
US7827218B1 (en) | 2006-11-18 | 2010-11-02 | X-Engines, Inc. | Deterministic lookup using hashed key in a multi-stride compressed trie structure |
US8161353B2 (en) | 2007-12-06 | 2012-04-17 | Fusion-Io, Inc. | Apparatus, system, and method for validating that a correct data segment is read from a data storage device |
US7987278B2 (en) | 2006-12-18 | 2011-07-26 | Ricoh Company, Ltd. | Web services device profile on a multi-service device: dynamic addition of services |
US7840537B2 (en) | 2006-12-22 | 2010-11-23 | Commvault Systems, Inc. | System and method for storing redundant information |
US8935206B2 (en) | 2007-01-31 | 2015-01-13 | Hewlett-Packard Development Company, L.P. | Snapshots in distributed storage systems |
JP5020673B2 (ja) | 2007-03-27 | 2012-09-05 | 株式会社日立製作所 | 重複したファイルの記憶を防ぐコンピュータシステム |
WO2008125336A2 (de) | 2007-04-15 | 2008-10-23 | Phoenix Contact Gmbh & Co. Kg | Verfahren und steuergerät zur steuerung eines automatisierungssystems |
EP2015587B1 (fr) | 2007-05-14 | 2012-01-25 | Apple Inc. | Procédé de mémorisation d'un objet multimédia, structure de donnée et terminal associé |
US7725437B2 (en) | 2007-07-31 | 2010-05-25 | Hewlett-Packard Development Company, L.P. | Providing an index for a data store |
JP4386932B2 (ja) | 2007-08-17 | 2009-12-16 | 富士通株式会社 | ストレージ管理プログラム、ストレージ管理装置およびストレージ管理方法 |
US8069317B2 (en) | 2007-10-12 | 2011-11-29 | International Business Machines Corporation | Providing and utilizing high performance block storage metadata |
US8447733B2 (en) | 2007-12-03 | 2013-05-21 | Apple Inc. | Techniques for versioning file systems |
US8140599B1 (en) * | 2007-12-07 | 2012-03-20 | Emc Corporation | Garbage collection for merged collections |
US8244846B2 (en) | 2007-12-26 | 2012-08-14 | Symantec Corporation | Balanced consistent hashing for distributed resource management |
US8171244B2 (en) | 2008-02-01 | 2012-05-01 | Imation Corp. | Methods for implementation of worm mode on a removable disk drive storage system |
JP5091704B2 (ja) | 2008-02-06 | 2012-12-05 | 株式会社日立製作所 | ストレージ構成回復方法及びストレージ管理システム |
US8019882B2 (en) | 2008-06-27 | 2011-09-13 | Microsoft Corporation | Content identification for peer-to-peer content retrieval |
JP5146174B2 (ja) | 2008-07-28 | 2013-02-20 | 富士通株式会社 | 仮想マシンモニタ装置およびプログラム,ならびに仮想マシン間メモリ共有管理方法 |
US8078646B2 (en) | 2008-08-08 | 2011-12-13 | Oracle International Corporation | Representing and manipulating RDF data in a relational database management system |
WO2010061260A1 (en) | 2008-11-03 | 2010-06-03 | Elvin Slavik | Method, system, and product for managing spatial data in a database |
US8353018B2 (en) | 2008-11-13 | 2013-01-08 | Yahoo! Inc. | Automatic local listing owner authentication system |
JP5396848B2 (ja) | 2008-12-16 | 2014-01-22 | 富士通株式会社 | データ処理プログラム、サーバ装置およびデータ処理方法 |
US9344438B2 (en) | 2008-12-22 | 2016-05-17 | Qualcomm Incorporated | Secure node identifier assignment in a distributed hash table for peer-to-peer networks |
US8886714B2 (en) | 2011-08-08 | 2014-11-11 | Ctera Networks Ltd. | Remote access service for cloud-enabled network devices |
US8132168B2 (en) | 2008-12-23 | 2012-03-06 | Citrix Systems, Inc. | Systems and methods for optimizing a process of determining a location of data identified by a virtual hard drive address |
US8094500B2 (en) | 2009-01-05 | 2012-01-10 | Sandisk Technologies Inc. | Non-volatile memory and method with write cache partitioning |
US8566362B2 (en) | 2009-01-23 | 2013-10-22 | Nasuni Corporation | Method and system for versioned file system using structured data representations |
US8397051B2 (en) | 2009-02-23 | 2013-03-12 | Autonomy, Inc. | Hybrid hash tables |
US8301654B2 (en) | 2009-02-24 | 2012-10-30 | Hitachi, Ltd. | Geographical distributed storage system based on hierarchical peer to peer architecture |
US8135748B2 (en) | 2009-04-10 | 2012-03-13 | PHD Virtual Technologies | Virtual machine data replication |
US8886206B2 (en) | 2009-05-01 | 2014-11-11 | Digimarc Corporation | Methods and systems for content processing |
US8285681B2 (en) | 2009-06-30 | 2012-10-09 | Commvault Systems, Inc. | Data object store and server for a cloud storage environment, including data deduplication and data management across multiple cloud storage sites |
US8706980B2 (en) | 2009-07-30 | 2014-04-22 | Cleversafe, Inc. | Method and apparatus for slice partial rebuilding in a dispersed storage network |
US8320282B2 (en) | 2009-07-30 | 2012-11-27 | Calix, Inc. | Automatic control node selection in ring networks |
US8285925B1 (en) | 2009-07-31 | 2012-10-09 | Amazon Technologies, Inc. | Management of object mapping information corresponding to a distributed storage system |
US8843762B2 (en) | 2009-09-04 | 2014-09-23 | Gradiant, Centro Tecnolóxico de Telecomunicacións de Galicia | Cryptographic system for performing secure iterative computations and signal processing directly on encrypted data in untrusted environments |
CN102577318B (zh) | 2009-10-01 | 2015-07-15 | 瑞典爱立信有限公司 | 用于应用范围管理的方法和装置 |
JP2011095976A (ja) | 2009-10-29 | 2011-05-12 | Nippon Telegr & Teleph Corp <Ntt> | 分散データ管理装置及び方法及びプログラム |
US8868510B2 (en) | 2009-12-03 | 2014-10-21 | Sybase, Inc. | Managing data storage as an in-memory database in a database management system |
US8458131B2 (en) | 2010-02-26 | 2013-06-04 | Microsoft Corporation | Opportunistic asynchronous de-duplication in block level backups |
WO2011116087A2 (en) | 2010-03-16 | 2011-09-22 | Copiun, Inc. | Highly scalable and distributed data de-duplication |
US8458299B2 (en) | 2010-03-17 | 2013-06-04 | Hitachi, Ltd. | Metadata management method for NAS global namespace design |
FR2959089B1 (fr) | 2010-04-16 | 2012-08-03 | Inst Nat Rech Inf Automat | Outil de gestion de ressources et d'infrastructures informatiques et reseaux |
US20110264880A1 (en) * | 2010-04-23 | 2011-10-27 | Tatu Ylonen Oy Ltd | Object copying with re-copying concurrently written objects |
US9047218B2 (en) | 2010-04-26 | 2015-06-02 | Cleversafe, Inc. | Dispersed storage network slice name verification |
US8504718B2 (en) | 2010-04-28 | 2013-08-06 | Futurewei Technologies, Inc. | System and method for a context layer switch |
US8984241B2 (en) | 2010-07-07 | 2015-03-17 | Nexenta Systems, Inc. | Heterogeneous redundant storage array |
EP2591423A4 (en) | 2010-07-09 | 2017-05-24 | State Street Corporation | Systems and methods for private cloud computing |
EP2598996B1 (en) | 2010-07-28 | 2019-07-10 | SanDisk Technologies LLC | Apparatus, system, and method for conditional and atomic storage operations |
US8407438B1 (en) | 2010-08-16 | 2013-03-26 | Symantec Corporation | Systems and methods for managing virtual storage disk data |
US8495093B2 (en) | 2010-08-18 | 2013-07-23 | International Business Machines Corporation | Multiway trie data structure that dynamically adjusts node sizes in a manner that reduces memory footprint and improves access speed |
JP5514041B2 (ja) | 2010-08-25 | 2014-06-04 | 日本電信電話株式会社 | 識別子割当て方法及びプログラム |
US8473778B2 (en) | 2010-09-08 | 2013-06-25 | Microsoft Corporation | Erasure coding immutable data |
US8972366B2 (en) | 2010-09-29 | 2015-03-03 | Red Hat, Inc. | Cloud-based directory system based on hashed values of parent and child storage locations |
WO2012051600A2 (en) | 2010-10-15 | 2012-04-19 | Kyquang Son | File system-aware solid-state storage management system |
US8484408B2 (en) | 2010-12-29 | 2013-07-09 | International Business Machines Corporation | Storage system cache with flash memory in a raid configuration that commits writes as full stripes |
US9201667B2 (en) | 2010-12-31 | 2015-12-01 | Vmware, Inc. | Providing virtual desktops using resources accessed on public computer networks |
US9311135B2 (en) | 2011-01-18 | 2016-04-12 | Scality, S.A. | Method for generating universal objects identifiers in distributed multi-purpose storage systems |
WO2012109679A2 (en) | 2011-02-11 | 2012-08-16 | Fusion-Io, Inc. | Apparatus, system, and method for application direct virtual memory management |
US8510267B2 (en) | 2011-03-08 | 2013-08-13 | Rackspace Us, Inc. | Synchronization of structured information repositories |
US8966191B2 (en) | 2011-03-18 | 2015-02-24 | Fusion-Io, Inc. | Logical interface for contextual storage |
US8612541B2 (en) * | 2011-04-29 | 2013-12-17 | Blue Coat Systems, Inc. | Method and apparatus for multi-tenant policy management in a network device |
US8341312B2 (en) | 2011-04-29 | 2012-12-25 | International Business Machines Corporation | System, method and program product to manage transfer of data to resolve overload of a storage system |
US8572290B1 (en) | 2011-05-02 | 2013-10-29 | Board Of Supervisors Of Louisiana State University And Agricultural And Mechanical College | System and architecture for robust management of resources in a wide-area network |
US8433681B2 (en) | 2011-05-12 | 2013-04-30 | Dell Products L.P. | System and method for managing replication in an object storage system |
US8346810B2 (en) | 2011-05-13 | 2013-01-01 | Simplivity Corporation | Reference count propagation |
US8949182B2 (en) | 2011-06-17 | 2015-02-03 | International Business Machines Corporation | Continuous and asynchronous replication of a consistent dataset |
US8843998B2 (en) | 2011-06-27 | 2014-09-23 | Cliqr Technologies, Inc. | Apparatus, systems and methods for secure and selective access to services in hybrid public-private infrastructures |
US8880837B2 (en) | 2011-08-24 | 2014-11-04 | International Business Machines Corporation | Preemptively allocating extents to a data set |
EP2756399B1 (en) | 2011-09-12 | 2021-01-20 | Microsoft Technology Licensing, LLC | Querying and repairing data |
EP2575379A1 (en) | 2011-09-29 | 2013-04-03 | Alcatel Lucent | Apparatuses and computer program products for discovering and accessing local services via WiFi hotspots |
US9372827B2 (en) | 2011-09-30 | 2016-06-21 | Commvault Systems, Inc. | Migration of an existing computing system to new hardware |
US8775393B2 (en) | 2011-10-03 | 2014-07-08 | Polytechniq Institute of New York University | Updating a perfect hash data structure, such as a multi-dimensional perfect hash data structure, used for high-speed string matching |
EP2789209A1 (en) | 2011-12-05 | 2014-10-15 | Qualcomm Incorporated | Telehealth wireless communication hub device and service platform system |
US8762627B2 (en) | 2011-12-21 | 2014-06-24 | Sandisk Technologies Inc. | Memory logical defragmentation during garbage collection |
CN104126182B (zh) | 2011-12-30 | 2018-02-09 | 施耐德电气It公司 | 远程通信的系统和方法 |
US8782344B2 (en) | 2012-01-12 | 2014-07-15 | Fusion-Io, Inc. | Systems and methods for managing cache admission |
US9489827B2 (en) | 2012-03-12 | 2016-11-08 | Cisco Technology, Inc. | System and method for distributing content in a video surveillance network |
US9213581B2 (en) | 2012-03-14 | 2015-12-15 | Sap Se | Method and system for a cloud frame architecture |
US9043567B1 (en) | 2012-03-28 | 2015-05-26 | Netapp, Inc. | Methods and systems for replicating an expandable storage volume |
US20130263151A1 (en) | 2012-04-03 | 2013-10-03 | Microsoft Corporation | Consistent Hashing Table for Workload Distribution |
US8868926B2 (en) | 2012-04-06 | 2014-10-21 | Exablox Corporation | Cryptographic hash database |
US9628438B2 (en) | 2012-04-06 | 2017-04-18 | Exablox | Consistent ring namespaces facilitating data storage and organization in network infrastructures |
EP2842296A2 (en) | 2012-04-27 | 2015-03-04 | Interdigital Patent Holdings, Inc. | Method and apparatuses for supporting proximity discovery procedures |
US20150081964A1 (en) | 2012-05-01 | 2015-03-19 | Hitachi, Ltd. | Management apparatus and management method of computing system |
US9323589B2 (en) | 2012-05-15 | 2016-04-26 | Oracle International Corporation | Self registration of event—consumers/producers and auto discovery |
US20130346839A1 (en) | 2012-06-20 | 2013-12-26 | Francis Dinha | Private tunnel network portal |
US20130346591A1 (en) | 2012-06-21 | 2013-12-26 | Alcatel-Lucent Usa Inc. | Clientless Cloud Computing |
US9003477B2 (en) | 2012-06-27 | 2015-04-07 | Microsoft Technology Licensing, Llc | Model for managing hosted resources using logical scopes |
US9348652B2 (en) | 2012-07-02 | 2016-05-24 | Vmware, Inc. | Multi-tenant-cloud-aggregation and application-support system |
US8966343B2 (en) | 2012-08-21 | 2015-02-24 | Western Digital Technologies, Inc. | Solid-state drive retention monitor using reference blocks |
US9002792B2 (en) | 2012-11-19 | 2015-04-07 | Compellent Technologies | Confirming data consistency in a data storage environment |
US9715507B2 (en) | 2013-03-28 | 2017-07-25 | Ctera Networks, Ltd. | Techniques for reconciling metadata and data in a cloud storage system without service interruption |
US9552382B2 (en) | 2013-04-23 | 2017-01-24 | Exablox Corporation | Reference counter integrity checking |
US9786197B2 (en) | 2013-05-09 | 2017-10-10 | Rockwell Automation Technologies, Inc. | Using cloud-based data to facilitate enhancing performance in connection with an industrial automation system |
EP3000205A4 (en) | 2013-05-21 | 2016-11-09 | Exablox Corp | AUTOMATIC DATA RING RECOGNITION AND CONFIGURATION |
US9389651B2 (en) | 2013-05-22 | 2016-07-12 | Exablox Corporation | Modular electronics chassis |
US9514137B2 (en) | 2013-06-12 | 2016-12-06 | Exablox Corporation | Hybrid garbage collection |
JP2016526720A (ja) | 2013-06-19 | 2016-09-05 | エグザブロックス・コーポレーション | クラスタベースの記憶システムにおけるデータスクラビング |
US9934242B2 (en) | 2013-07-10 | 2018-04-03 | Exablox Corporation | Replication of data between mirrored data sites |
US8991950B2 (en) | 2013-07-10 | 2015-03-31 | Exablox Corporation | Modular electronics chassis |
US20150066524A1 (en) | 2013-09-05 | 2015-03-05 | Dorsata, Inc. | Methods and systems for the implementation of web based collaborative clinical pathways |
EP3055794A4 (en) | 2013-10-11 | 2017-04-05 | Exablox Corporation | Hierarchical data archiving |
US10248556B2 (en) | 2013-10-16 | 2019-04-02 | Exablox Corporation | Forward-only paged data storage management where virtual cursor moves in only one direction from header of a session to data field of the session |
US9985829B2 (en) | 2013-12-12 | 2018-05-29 | Exablox Corporation | Management and provisioning of cloud connected devices |
US9774582B2 (en) | 2014-02-03 | 2017-09-26 | Exablox Corporation | Private cloud connected device cluster architecture |
EP3103025B1 (en) | 2014-02-04 | 2019-07-10 | Exablox Corporation | Content based organization of file systems |
-
2014
- 2014-06-12 US US14/303,329 patent/US9514137B2/en active Active
- 2014-06-12 WO PCT/US2014/042155 patent/WO2014201270A1/en active Application Filing
- 2014-06-12 JP JP2016519652A patent/JP2016526717A/ja active Pending
- 2014-06-12 EP EP14810437.5A patent/EP3008647A4/en not_active Withdrawn
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07168744A (ja) * | 1993-12-16 | 1995-07-04 | Canon Inc | 情報管理装置及びその制御方法 |
US20120030260A1 (en) * | 2010-07-30 | 2012-02-02 | Maohua Lu | Scalable and parallel garbage collection method and system for incremental backups with data de-duplication |
Non-Patent Citations (1)
Title |
---|
J.ベーコン著 藤田昭平ほか訳, 並行分散システム, vol. 第1版, JPN6017008170, 25 March 1996 (1996-03-25), JP, pages 116−117ページ * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10866759B2 (en) | 2017-12-20 | 2020-12-15 | Fujitsu Limited | Deduplication storage system having garbage collection control method |
KR102453983B1 (ko) * | 2021-12-14 | 2022-10-31 | 인터와이즈 주식회사 | 생존 경로 정보 기반 가비지 컬렉션 방법 |
WO2023113267A1 (ko) * | 2021-12-14 | 2023-06-22 | 인터와이즈(주) | 생존 경로 정보 기반 가비지 컬렉션 방법 |
Also Published As
Publication number | Publication date |
---|---|
EP3008647A4 (en) | 2017-01-25 |
EP3008647A1 (en) | 2016-04-20 |
US20140372490A1 (en) | 2014-12-18 |
US9514137B2 (en) | 2016-12-06 |
WO2014201270A1 (en) | 2014-12-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2016526717A (ja) | ハイブリッドガベージコレクション | |
CN107077483B (zh) | 共享文件夹和文件的同步 | |
JP7053847B2 (ja) | コンテンツ管理システムにおけるメタデータ再同期 | |
JP6110020B2 (ja) | 参照カウンタ完全性チェック | |
JP6629697B2 (ja) | 仮想マシンイメージファイルを抽出する方法および装置 | |
US9336227B2 (en) | Selective synchronization in a hierarchical folder structure | |
JP4977801B2 (ja) | ステートレスなプロトコルを介したドキュメントの同期 | |
CN109344348B (zh) | 一种资源更新方法及装置 | |
US20150106335A1 (en) | Hierarchical data archiving | |
CN110402441B (zh) | 引用访问控制列表 | |
US10379779B2 (en) | Concurrent, incremental, and generational mark and sweep garbage collection | |
US9990378B2 (en) | Opportunistic clearing of sync states associated with a database | |
US9253244B1 (en) | Subscription based polling for resource updates | |
US9866619B2 (en) | Transmission of hierarchical data files based on content selection | |
JP2007004476A (ja) | ファイル共有プログラムおよびファイル共有装置 | |
US20170061032A1 (en) | Systems and Methods for Organizing Data | |
JP2004013867A (ja) | 複製データベースシステム、データベース装置及びそれに用いるデータベース更新方法並びにそのプログラム | |
CN113127164B (zh) | 管理应用节点中的任务的方法、设备和计算机程序产品 | |
WO2021036989A1 (zh) | 一种数据访问的方法、装置及系统 | |
CN118540319A (zh) | 一种通过浏览器下载文件的方法、装置及电子设备 | |
JP2009301204A (ja) | 文書管理システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160225 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170220 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170314 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20171010 |