JP2012517644A - 高速記憶装置をキャッシュとして使用するストレージシステム - Google Patents
高速記憶装置をキャッシュとして使用するストレージシステム Download PDFInfo
- Publication number
- JP2012517644A JP2012517644A JP2011550046A JP2011550046A JP2012517644A JP 2012517644 A JP2012517644 A JP 2012517644A JP 2011550046 A JP2011550046 A JP 2011550046A JP 2011550046 A JP2011550046 A JP 2011550046A JP 2012517644 A JP2012517644 A JP 2012517644A
- Authority
- JP
- Japan
- Prior art keywords
- block
- storage device
- super
- blocks
- target block
- 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
- 239000004065 semiconductor Substances 0.000 claims abstract description 9
- 238000000034 method Methods 0.000 claims description 30
- 238000013507 mapping Methods 0.000 claims description 26
- 238000012217 deletion Methods 0.000 claims description 11
- 230000037430 deletion Effects 0.000 claims description 11
- 238000012545 processing Methods 0.000 claims description 2
- 230000004044 response Effects 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 3
- 239000007787 solid Substances 0.000 description 2
- 238000013523 data management Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/32—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60Q—ARRANGEMENT OF SIGNALLING OR LIGHTING DEVICES, THE MOUNTING OR SUPPORTING THEREOF OR CIRCUITS THEREFOR, FOR VEHICLES IN GENERAL
- B60Q9/00—Arrangement or adaptation of signal devices not provided for in one of main groups B60Q1/00 - B60Q7/00, e.g. haptic signalling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/40—Business processes related to the transportation industry
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Strategic Management (AREA)
- General Engineering & Computer Science (AREA)
- General Business, Economics & Management (AREA)
- Human Computer Interaction (AREA)
- Accounting & Taxation (AREA)
- Computer Networks & Wireless Communication (AREA)
- Mechanical Engineering (AREA)
- Health & Medical Sciences (AREA)
- Economics (AREA)
- General Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Tourism & Hospitality (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
【課題】高速記憶装置をキャッシュとして使用するストレージシステムを提供する。
【解決手段】ストレージシステムは、大容量の第1記憶装置と、高速の第2記憶装置と、RAMとを含む。ここで、大容量の第1記憶装置はハードディスクドライブで、高速の第2記憶装置は半導体ドライブであってもよい。また、高速の第2記憶装置は、キャッシュとして使用される。そして、第1記憶装置は、スーパブロック単位でコンテンツファイルを管理し、第2記憶装置はブロック単位でキャッシュファイルを管理する。
【解決手段】ストレージシステムは、大容量の第1記憶装置と、高速の第2記憶装置と、RAMとを含む。ここで、大容量の第1記憶装置はハードディスクドライブで、高速の第2記憶装置は半導体ドライブであってもよい。また、高速の第2記憶装置は、キャッシュとして使用される。そして、第1記憶装置は、スーパブロック単位でコンテンツファイルを管理し、第2記憶装置はブロック単位でキャッシュファイルを管理する。
Description
本発明の実施形態は、ストレージシステムに適用することのできる技術に関し、特にマルチメディアコンテンツを複数のユーザでストリーミングするサーバのためのストレージシステムに関する。
マルチメディアコンテンツをリアルタイムで送信するストリーミング技術に対する関心が高まっている。ストリーミングサーバは、ストレージシステムに記憶されたコンテンツファイルを複数のユーザにリアルタイムで送信することによって、ユーザが要求する記憶空間の大きさを最小化することができる。
ストリーミングサーバのストレージシステムは、書き込み動作よりも読み出し動作を頻繁に行うため、読み出し動作の速度を高める必要がある。それだけでなく、ストレージシステムは、大容量のマルチメディアコンテンツを記憶するため、大容量の記憶空間を要求する。したがって、読み出し動作の速度を高めながらも大容量の記憶空間を確保できるストレージシステムを開発することが重要である。
一方、高いアクセス速度(または、入/出力速度)をサポートできる半導体ドライブ(Solid State Drive、SSD)に対する関心も大変高まっている。ストレージシステムに速いアクセス速度をサポートする半導体ドライブを使用する場合、ストリーミングサーバは、優れた品質のストリーミングサービスを提供することができる。ただ、半導体ドライブは比較的小さな記憶容量を有するため、半導体ドライブをストリーミングサーバにそのまま設置することは問題になり得る。
したがって、高いアクセス速度をサポートする記憶装置を使用しながらも大容量の記憶空間を有することのできるストレージシステムに対する技術が必要となる。
イ・サンウォン(LEE, SANG-WON)他著、「企業のデータベースアプリケーションにおけるフラッシュメモリSSDの実例(A case for flash memory ssd in enterprise data base applications)」、エーシーエム(ACM)、ACM SIGMODによるデータ管理に関する国際会議(ACM SIGMOD international conference on Management of data)、2008年6月、P.1087-1098
本発明の一実施形態に係るストレージシステムは、高いアクセス速度を有する記憶装置をキャッシュとして使用し、同時に大容量の記憶空間を有する記憶装置を使用することによって十分な記憶空間を提供しながらもアクセス速度を向上させることができる技術を提供する。
また、本発明の一実施形態に係るストレージシステムにおいて、大容量の記憶空間を有する記憶装置はスーパブロック単位でコンテンツファイルを管理し、高いアクセス速度を有する記憶装置はブロック単位でキャッシュファイルを管理することによって、読み出し動作の速度を向上させることができる技術を提供する。
また、本発明の一実施形態に係るストレージシステムは、キャッシングされるブロックまたはスーパブロックを適切に選択したり、キャッシングされたブロックまたはスーパブロックを適切に削除するなどの最適化されたメカニズムを提供する。
本発明の一実施形態に係る、高速記憶装置をキャッシュとして使用するストレージシステムは、複数のブロックを含む複数のコンテンツファイルを記憶し、前記複数のブロックを予め設定された大きさを有する複数のスーパブロックで管理する第1記憶装置と、前記複数のスーパブロックのうち少なくとも1つのスーパブロックをキャッシュ(cache)し、ブロック単位で前記少なくとも1つのスーパブロックを管理する第2記憶装置と、前記複数のブロックのうち少なくとも1つのブロックを記憶するRAM(Random Access Memory)とを含む。
この時、ストレージシステムは、対象ブロックに対するアプリケーションの読み出し要求に応答して前記対象ブロックが前記第2記憶装置または前記RAMに記憶されたか否かをチェックし、前記チェック結果に応じて前記第1記憶装置、前記第2記憶装置、または前記RAMのうち少なくとも1つから抽出された前記対象ブロックを返還する入/出力スケジューラをさらに含んでもよい。特に、ストレージシステムは、前記第2記憶装置にキャッシュされた少なくとも1つのスーパブロックに含まれる複数のブロックに対する位置情報が記録されたキャッシュファイルブロックマッピングテーブルを用いて前記第2記憶装置から前記対象ブロックを読み出すキャッシュファイルコントローラをさらに含んでもよい。
また、本発明の一実施形態に係る、高速記憶装置をキャッシュとして使用するストレージシステムの読み出し方法は、対象ブロックに対するアプリケーションの読み出し要求を受信するステップと、前記対象ブロックが第2記憶装置または前記RAMに記憶されたか否かをチェックするステップと、前記チェック結果に応じて第1記憶装置、前記第2記憶装置、または前記RAMのうち少なくとも1つから抽出された前記対象ブロックを返還するステップとを含む。
また、本発明の一実施形態に係る、高速記憶装置をキャッシュとして使用するストレージシステムのキャッシング方法は、RAMに記憶された少なくとも1つのブロックのうち対象ブロックを含むスーパブロックのアクセス回数、または前記スーパブロックを含むコンテンツファイルのアクセス回数によって、第2記憶装置に前記対象ブロックまたは前記対象ブロックを含むスーパブロックを記憶するステップと、複数のユーザセッションが存在する場合、特定ユーザセッションで使用された前記対象ブロックを含むスーパブロックと隣接する少なくとも1つのスーパブロックが少なくとも1つの残りのユーザセッションで使用されるか否かによって、前記第2記憶装置に前記対象ブロックまたは前記対象ブロックを含むスーパブロックを記憶するステップとを含む。
本発明の一実施形態に係るストレージシステムは、高いアクセス速度を有する記憶装置をキャッシュとして使用し、同時に大容量の記憶空間を有する記憶装置を使用することによって十分な記憶空間を提供しながらもアクセス速度を向上させることができる技術を提供することができる。
また、本発明の一実施形態に係るストレージシステムにおいて、大容量の記憶空間を有する記憶装置はスーパブロック単位でコンテンツファイルを管理し、速いアクセス速度を有する記憶装置はブロック単位でキャッシュファイルを管理することによって、読み出し動作の速度を向上させることができる技術を提供することができる。
また、本発明の一実施形態に係るストレージシステムはキャッシングされるブロックまたはスーパブロックを適切に選択したり、キャッシングされたブロックまたはスーパブロックを適切に削除したりするなどの最適化されたメカニズムを提供してもよい。
以下、本発明に係る実施形態を添付する図面を参照しながら詳細に説明する。
図1は、本発明の一実施形態に係るストレージシステムを示す図である。
図1に示すように、ストレージシステムは、アプリケーション110から入出力要求(I/O Request)を受信可能であり、入/出力スケジューラ120、キャッシュファイルコントローラ130、第1記憶装置150および第2記憶装置140を含む。この時、ストレージシステムは、マルチメディアコンテンツを複数のユーザでストリーミングするサーバのために使用するなどのさまざまな用途に使用することができる。
ここで、第1記憶装置150の容量は第2記憶装置140の容量より大きく、第2記憶装置140のアクセス速度は第1記憶装置150のアクセス速度より速い。例えば、第1記憶装置150はハードディスクドライブとしてもよく、第2記憶装置140は半導体ドライブとしてもよい。
また、第1記憶装置150は、複数のブロックを含む複数のコンテンツファイルを記憶し、複数のコンテンツファイルをスーパブロック単位で管理する。一方、第2記憶装置140は、第1記憶装置150に記憶された複数のスーパブロックのうち少なくとも1つのスーパブロックまたはブロックをキャッシュして、キャッシュファイルを生成する。そして、第2記憶装置140は、キャッシュファイルをブロック単位で管理する。
第2記憶装置140がスーパブロックまたはブロックをキャッシュするアルゴリズム、キャッシュされたスーパブロックまたはブロックを管理するアルゴリズムについては後に詳細に説明する。
一般に、ハードディスクドライブのような大容量記憶装置は、一度に読み出し要求をするデータの大きさが大きいほど全体的に高い性能を示す特性を有する一方、半導体ドライブのような高速の記憶装置は、一度に読み出し要求をするデータの大きさが特定水準(例えば、256Kbytes)以上であれば、性能が略向上しない特性を有する。
このような点を考慮して、本発明に係る第2記憶装置140は複数のブロックを含むキャッシュファイルをブロック単位で管理し、第1記憶装置150はn(nは自然数)個のブロックの集合のスーパブロック単位でコンテンツファイルを管理する。
入/出力スケジューラ120は、アプリケーション110の読み出し要求と関連する処理を行う。この時、入/出力スケジューラ120は、アプリケーション110が第1記憶装置150および第2記憶装置140を1つの論理的記憶装置として認識するように第1記憶装置150および第2記憶装置140を管理する。
アプリケーション110から特定ブロックに対する読み出し要求を受信した場合、入/出力スケジューラ120は、RAM(図1に示さず)に特定ブロックが記憶されているか否か、および第2記憶装置140に特定ブロックが記憶されているか否かを検査する。特に、入/出力スケジューラ120は、コンテンツスーパブロックマッピングテーブル170を用いて特定ブロック(または、特定ブロックを含むスーパブロック)がRAMまたは第2記憶装置140に存在するかを判断してもよい。
もし、特定ブロックがRAMに存在すれば、入/出力スケジューラ120はRAMから特定ブロックを読み出す。また、第2記憶装置140に特定ブロックがキャッシュされていれば、入/出力スケジューラ120はキャッシュファイルコントローラ130を用いて特定ブロックを読み出す。この時、キャッシュファイルコントローラ130は、特定ブロックの位置情報が記録されたキャッシュファイルブロックマッピングテーブル160を参照する。また、特定ブロックが第1記憶装置150にだけ存在する場合、入/出力スケジューラ120は、特定ブロックを含むスーパブロックを第1記憶装置150から読み出した後に、スーパブロックを返還する。
図2は、本発明の一実施形態に係るハードディスクドライブ、半導体ドライブおよびRAMを示す図である。
図2に示すように、大容量の第1記憶装置210(例えば、ハードディスクドライブ)は、複数のコンテンツファイルを記憶する。この時、第1記憶装置210は、スーパブロック単位で複数のコンテンツファイルを管理し、特定ブロックに対する読み出し要求がある場合、特定ブロックを含むスーパブロックを返還する。
第2記憶装置220(例えば、半導体ドライブ)は、複数のキャッシュファイルを記憶する。キャッシュファイルは少なくとも1つのブロックで構成され、第2記憶装置220はブロック単位でキャッシュファイルを管理する。第2記憶装置220は、第1記憶装置210に記憶された複数のコンテンツファイルに属する少なくとも1つのスーパブロックまたは少なくとも1つのブロックをキャッシュすることにより、ストレージシステムの入/出力速度を向上させる。
また、RAM230は、現在のアプリケーションによって使用されているブロックがロードされる。結局、本発明は、キャッシングのために第2記憶装置220およびRAM230を使用する構造を有することによって、ストリーミングサーバを用いるアプリケーション環境で頻繁に使用されるデータを効率的にキャッシングできる技術を提供する。特に、本発明は、キャッシングのために高速の第2記憶装置220を使用することによって、RAM230空間を効率的に使用することができる。
図3は、本発明の一実施形態に係るマッピングテーブルなどを示す図である。
図3を参照すれば、コンテンツスーパブロックマッピングテーブル(Contents Super Block Mapping Table、CSBMT、310)は大容量の第1記憶装置に記憶されたコンテンツファイルのうち現在使用されているコンテンツファイルを管理するためのテーブルである。
図面符号320に示すように、コンテンツスーパブロックマッピングテーブル310の各項目は、該当スーパブロックに関する情報であるスーパブロック情報を含む。この時、スーパブロック情報は、該当スーパブロックが第2記憶装置によってキャッシュされたか否かに関する情報であるcache flag、該当スーパブロックを含むキャッシュファイルに関する情報であるcache file number、該当スーパブロックがキャッシュファイルの何回目のブロックに記憶されたかに関する情報であるblock numberを含む。また、スーパブロック情報は、該当スーパブロックが使用される間にRAMから割り当てられるメモリバッファのスーパブロックバッファに関する情報であるsuper block buffer、スーパブロックバッファの状態に関する情報であるbuffer status、該当スーパブロックのアクセス時間に関する情報であるAccess time、該当スーパブロックのアクセス回数に関する情報であるAccess count、該当スーパブロックがすべてのユーザセッションで使われているか否かに関する情報であるReference countをさらに含む。
ここで、該当スーパブロックが使用される間にRAMから割り当てられるメモリバッファはスーパブロックのサイズを有し、「super block buffer」は前記メモリバッファに対するポインタである。「super block buffer」は、最初にNULLに初期化され、該当スーパブロックに対する読み出し要求がある場合に割り当てられる。「super block buffer」は、該当スーパブロックが使用中の間、割り当てられたまま存在し、該当スーパブロックの使用が完了すれば、該当スーパブロックの内容は第2記憶装置によってキャッシュされ、メモリバッファのスーパブロックバッファは回収される。また、スーパブロックがキャッシングされた場合、第2記憶装置でスーパブロックの位置情報はcache file numberおよびblock numberに基づいて計算される。
図面符号330に示すように、キャッシュファイルブロックマッピングテーブル330(Cache File Block Mapping Table、CFBMT)は、高速の第2記憶装置に存在するキャッシュファイルを管理するためのテーブルとして、キャッシュファイルコントローラによって管理される。キャッシュファイルブロックマッピングテーブル330の行の各インデックスは、各キャッシュファイルを示すポインタであり、キャッシュファイルブロックマッピングテーブル330内の各項目は、該当ブロックが現在のキャッシングされているか否かを示すフラグとして活用される。特に、本発明は、キャッシュファイルブロックマッピングテーブル330内の各項目をビット(bit)単位で処理して要求されるメモリの容量を最小化してもよい。
この時、キャッシュファイルブロックマッピングテーブル330内の各項目は、第2記憶装置にキャッシュされた複数のブロックがどこに存在するかに対する位置情報として使用してもよい。もし、対象ブロックが第2記憶装置によってキャッシュされ、アプリケーションが対象ブロックを読み出し要求した場合、キャッシュファイルブロックマッピングテーブル330内の項目のうち対象ブロックに対応する項目はセッティングされた状態を示す。この時、キャッシュファイルコントローラは、キャッシュファイルブロックマッピングテーブル330を用いて対象ブロックの位置情報を把握し、対象ブロックを第2記憶装置から読み出してもよい。
また、図面符号340は、コンテンツスーパブロック参照テーブル(Content Super Block Reference Table、CSBRT)を示す。複数のユーザセッションがストレージシステムからストリーミングサービスを提供される場合、コンテンツスーパブロック参照テーブルは、すべてのユーザセッションで現在使用されているコンテンツファイルに属するスーパブロックが使用されているか否かに関する情報を示し、コンテンツスーパブロック参照テーブル内の各項目は、各スーパブロックのスーパブロック情報に含まれるReference countに基づいて生成され、ビット単位の構造を有する。
図4は、本発明の一実施形態に係る読み出し方法を示す動作フローチャートである。
図4を参照すれば、本発明の一実施形態に係るストレージシステムは、アプリケーションから対象ブロックに対する読み出し要求を受信する(S410)。
また、本発明の一実施形態に係るストレージシステムは、対象ブロックがRAMに存在するか否かを判断する(S420)。もし、対象ブロックがRAMに存在しなければ、本発明の一実施形態に係るストレージシステムは、対象ブロックが第2記憶装置にキャッシュされているか否かを判断する(S430)。
ストレージシステムは、コンテンツスーパブロックマッピングテーブルから対象ブロックを含むスーパブロックのスーパブロック情報を用いて対象ブロックがRAMに存在するか否かおよび第2記憶装置に存在するか否かを判断してもよい。より具体的に、ストレージシステムは、対象ブロックを含むスーパブロックのスーパブロック情報にあるsuper block bufferが割り当てられたか否か、またはReference countの値に基づいて対象ブロックがメモリに存在するか否かを判断してもよく、cache flagの値に基づいて対象ブロックが第2記憶装置にキャッシングされているか否かを判断してもよい。
対象ブロックが第1記憶装置のハードディスクドライブにのみ存在する場合、本発明の一実施形態に係るストレージシステムは、対象ブロックを含むスーパブロックに対する読み出し要求をハードディスクドライブに伝達する(S440)。この時、RAMからスーパブロックのサイズほどのメモリバッファが割り当てられ、メモリバッファに対するreference countが増加した後、アプリケーションが再度対象ブロックを要求できるように「call again」をリターンする。再度アプリケーションから読み出し要求を受信した場合、対象ブロックを含むスーパブロックがRAMに存在するため、RAMから対象ブロックを含むスーパブロックがリターンされる。
対象ブロックが第2記憶装置に存在する場合、本発明の一実施形態に係るストレージシステムは、キャッシュファイルブロックマッピングテーブルまたは対象ブロックを含むスーパブロックのスーパブロック情報を用いて、第2記憶装置に対象ブロックに対する読み出し要求を送信する(S450)。すなわち、キャッシュファイルブロックマッピングテーブル、またはスーパブロック情報のcache file number及びblock numberから対象ブロックの位置情報が把握され、これによって、ストレージシステムは対象ブロックを第2記憶装置から読み出すことができる。
より具体的に、対象ブロックが第2記憶装置に存在する場合、RAMから対象ブロックを含むスーパブロックのサイズほどのメモリバッファが割り当てられ、第2記憶装置の該当キャッシュファイルにある対象ブロックに対する読み出し要求が第2記憶装置に伝えられる。この時、reference count及びaccess countが増加して、access timeが記録される。そして、「call again」がリターンされる。
対象ブロックがRAMに存在する場合、本発明の一実施形態に係るストレージシステムは、RAMから対象ブロックを読み出す(S460)。
そして、本発明の一実施形態に係るストレージシステムは、対象ブロックが第2記憶装置によってキャッシングされたものであるか否かを判断する(S470)。対象ブロックが第2記憶装置によってキャッシングされた場合、読み出し動作のプロセスは終了する。ただし、対象ブロックが第2記憶装置によってキャッシングされない場合、本発明の一実施形態に係るストレージシステムは、対象ブロックを第2記憶装置にキャッシングした後、プロセスを終了する。
この時、対象ブロックを第2記憶装置にキャッシングするか否かに対するアルゴリズムについては後述する。
図5は、本発明の一実施形態に係るキャッシング方法を示す動作フローチャートである。
図5に示すように、本発明の一実施形態に係るストレージシステムは、対象ブロックまたは対象ブロックを含むスーパブロックをキャッシングするか否かを判断するために、対象ブロックおよびスーパブロックを含むコンテンツファイルのアクセス回数(access count)が閾値以上であるか否かを判断する(S510)。コンテンツファイルのアクセス回数が高いというのは、再度読み出し要求される確率が高いことを意味するため、本発明は、コンテンツファイルのアクセス回数に基づいて対象ブロックをキャッシングするか否かを決定することができる。
コンテンツのファイルのアクセス回数が閾値以上である場合、本発明の一実施形態に係るストレージシステムは、対象ブロックまたはスーパブロックを第2記憶装置にキャッシングする(S520)。
また、本発明の一実施形態に係るストレージシステムは、他のユーザセッションで対象ブロックの前のスーパブロックが使用されているか否かを判断することにより、対象ブロックまたはスーパブロックをキャッシングするか否かを決定する(S530)。
例えば、ユーザA、Bがあり、キャッシュファイル1、2が存在し、キャッシュファイル1は、a、b、c、キャッシュファイル2は、d、e、fのスーパブロックを含むと仮定する。ユーザAが使用しているbをキャッシングするか否かを決定するために、ユーザBがいかなるスーパブロックを使用しているか否かを考慮してもよい。すなわち、ユーザBがスーパブロックaを使用しているのであれば、ユーザBは今後スーパブロックbを使用する確率が高いということを予測することができる。このような場合、本発明は、ユーザBが今後スーパブロックbを使用する確率が高いという点に着眼してユーザAによって使用されたスーパブロックbをキャッシングしてもよい。ただし、ユーザBがキャッシュファイル2のスーパブロックeを使用しているのであれば、スーパブロックbを使用する確率が高くないため、本発明は、ユーザAによって使用されたスーパブロックbをキャッシングしなくてもよい。
この時、本発明は、他のユーザセッションで対象ブロックを含むスーパブロックの前のスーパブロックが使用されているか否かをCSBRTを介して把握してもよい。CSBRTの項目のうち前のスーパブロックに対応する項目がセッティングされた状態の場合、前のスーパブロックが異なるユーザセッションによって使用されるものとして意味するため、本発明は、対象ブロックを含むスーパブロックをキャッシングすることによって決定してもよい。
また、CSBRTに基づいて判断した結果、対象ブロックを含むスーパブロックの前のスーパブロックが異なるユーザセッションによって使用されているものと明らかになれば、本発明の一実施形態に係るストレージシステムは、第2記憶装置に対象ブロックまたは対象ブロックを含むスーパブロックをキャッシングする(S540)。
また、本発明の一実施形態に係るストレージシステムは、対象ブロックまたは対象ブロックを含むスーパブロックをキャッシングしない場合、メモリから対象ブロックまたは対象ブロックを含むスーパブロックを回収する(S550)。
図6は、本発明の一実施形態により、使用が完了した対象コンテンツファイルに属するブロックを削除しようとする場合、キャッシュファイルブロックマッピングテーブルをアップデートする過程を示す動作フローチャートである。
図6に示すように、本発明の一実施形態に係るストレージシステムは使用が完了した対象コンテンツファイルに属するブロックが第2記憶装置に存在するか否かを判断する(S610)。すなわち、ストレージシステムはCSBMTを用いて使用が完了した対象コンテンツファイルに属するブロックまたはスーパブロックのうちキャッシュされたブロックまたはスーパブロックが存在するか否かを判断する。
また、本発明の一実施形態に係るストレージシステムは、キャッシュされたブロック(以下、削除対象ブロック)、またはキャッシュされたスーパブロック(削除対象スーパブロック)を第2記憶装置から削除する代りに、CFBMTをアップデートする(S620)。すなわち、本発明は、CFBMTで削除対象ブロックまたは削除対象スーパブロックに対応する項目をリセットすることによって、CFBMTをアップデートする。
また、本発明の一実施形態に係るストレージシステムは、削除対象ブロックまたは削除対象スーパブロックのスーパブロックバッファがRAMに存在するか否かを判断する(S630)。もし、削除対象ブロックまたは削除対象スーパブロックのスーパブロックバッファがRAMに存在すれば、スーパブロックバッファを回収する(S640)。
図7は、本発明の一実施形態により、現在使用されている対象コンテンツファイルに属するブロックを削除しようとする場合、キャッシュファイルブロックマッピングテーブルをアップデートする過程を示す動作フローチャートである。
図7に示すように、本発明の一実施形態に係るストレージシステムは、CSBMTに基づいて削除対象スーパブロック(または、該当スーパブロック)に対応するスーパブロックバッファが現在使用されているか否かを判断する(S710)。もし、該当スーパブロックに対応するスーパブロックバッファが使用されていれば、プロセスは終了する。
また、本発明の一実施形態に係るストレージシステムは、該当スーパブロックのブロックのうちキャッシュされたブロックが存在するか否かを判断する(S720)。この時、ストレージシステムは、CSBMTを用いて判断してもよい。
また、また、本発明の一実施形態に係るストレージシステムは、該当スーパブロックのブロックのうちキャッシュされたブロックを削除できるか否かを判断する(S730)。削除可能な場合、キャッシュされたブロックを削除する代りにCFBMTをアップデートする(S740)。
本発明に係る方法は、多様なコンピュータ手段によって実現することのできるプログラム命令形態によって具現され、コンピュータ読み出し可能媒体に記録することができる。前記コンピュータ読み出し可能媒体は、プログラム命令、データファイル、データ構造などを単独でまたは組み合わせて含むことができる。前記媒体に記録されるプログラム命令は、本発明のために特別に設計して構成されたものであってもよいし、コンピュータソフトウェアの当業者に公知なものとして使用可能なものであってもよい。コンピュータ読み出し可能な記録媒体の例としては、ハードディスク、フロッピーディスク、および磁気テープのような磁気媒体、CD−ROM、DVDのような光記録媒体、フロプティカルディスクのような磁気媒体、およびROM、RAM、フラッシュメモリなどのようなプログラム命令を格納して実行するように特別に構成されたハードウェア装置が含まれる。プログラム命令の例しては、コンパイラによって生成されるような機械語コードだけでなくインタープリタなどを用いてコンピュータによって実行され得る高級言語コードを含む。上記のハードウェア装置は、本発明の一実施形態の動作を行うために1つ以上のソフトウェアモジュールとして作動するように構成することができ、その逆も同様である。
上述したように、本発明は、限定的な実施形態および図面によって説明されたが、本発明は、前記の実施形態に限定されるものではなく、本発明が属する分野で通常の知識を有する者であれば、このような記載から多様な修正および変形が可能である。
したがって、本発明の範囲は説明した実施形態に限定して特定されてはならず、後述する特許請求の範囲だけでなくこの特許請求の範囲と均等なものなどによって特定されなければならない。
Claims (20)
- 複数のブロックを含む複数のコンテンツファイルを記憶し、前記複数のブロックを予め設定された大きさを有する複数のスーパブロックで管理する第1記憶装置と、
前記複数のスーパブロックのうち少なくとも1つのスーパブロックをキャッシュし、ブロック単位で前記少なくとも1つのスーパブロックを管理する第2記憶装置と、
前記複数のブロックのうち少なくとも1つのブロックを記憶するRAM(Random Access Memory)と、
を具備し、
前記第1記憶装置の容量が前記第2記憶装置の容量より大きいか、または、前記第2記憶装置のアクセス速度が前記第1記憶装置のアクセス速度より速い
ストレージシステム。 - 対象ブロックに対するアプリケーションの読み出し要求に応答して前記対象ブロックが前記第2記憶装置または前記RAMに記憶されたか否かをチェックし、前記チェック結果に応じて前記第1記憶装置、前記第2記憶装置、または前記RAMのうち少なくとも1つから抽出された前記対象ブロックを返還する入/出力スケジューラをさらに具備する請求項1に記載のストレージシステム。
- 前記入/出力スケジューラは、
前記アプリケーションが前記第1記憶装置および前記第2記憶装置を1つの論理的記憶装置として認識するように前記第1記憶装置および前記第2記憶装置を管理する、請求項2に記載のストレージシステム。 - 前記第2記憶装置にキャッシュされた少なくとも1つのスーパブロックに含まれる複数のブロックに対する位置情報が記録されたキャッシュファイルブロックマッピングテーブルを用いて前記第2記憶装置から前記対象ブロックを読み出すキャッシュファイルコントローラをさらに具備する、請求項2に記載のストレージシステム。
- 前記入/出力スケジューラは、
前記複数のスーパブロックが前記第2記憶装置によってキャッシュされたか否かに関する情報、前記第2記憶装置によってキャッシュされた少なくとも1つのスーパブロックの位置情報、前記複数のスーパブロックが前記RAMに記憶されたか否かに関する情報、前記複数のスーパブロックのアクセス時間、またはアクセス回数に関する情報、または前記複数のスーパブロックが現在使用されているか否かに関する情報のうち少なくとも1つを含むコンテンツスーパブロックマッピングテーブルを用いる、請求項2に記載のストレージシステム。 - 前記第2記憶装置は、
前記複数のスーパブロックのアクセス回数、または前記複数のコンテンツファイルのアクセス回数に基づいて前記少なくとも1つのスーパブロックをキャッシュする、請求項1に記載のストレージシステム。 - 複数のユーザセッションが存在する場合、
前記第2記憶装置は、
少なくとも1つの残りのユーザセッションで使用されるスーパブロックを考慮して特定ユーザセッションで使用されたスーパブロックをキャッシュする、請求項1に記載のストレージシステム。 - 前記第2記憶装置は、
前記特定ユーザセッションで使用されたスーパブロックと隣接する少なくとも1つのスーパブロックが前記少なくとも1つの残りのユーザセッションで使用されるか否かによって前記特定ユーザセッションで使用されたスーパブロックをキャッシュする、請求項7に記載のストレージシステム。 - 前記第1記憶装置は、
対象ブロックに対するアプリケーションの読み出し要求がある場合、前記少なくとも1つのスーパブロックのうち前記対象ブロックを含むスーパブロックを返還する、請求項1に記載のストレージシステム。 - 前記第1記憶装置はハードディスクドライブであり、前記第2記憶装置は半導体ドライブである、請求項1に記載のストレージシステム。
- 前記ストレージシステムは、
マルチメディアコンテンツを複数のユーザでストリーミングするサーバのために使用される、請求項1に記載のストレージシステム。 - 前記入/出力スケジューラは、
前記第2記憶装置にキャッシュされた少なくとも1つのスーパブロックのうち削除対象スーパブロック、または削除対象ブロックが存在する場合、前記第2記憶装置から前記削除対象スーパブロック、または前記削除対象ブロックを削除する代りに前記キャッシュファイルブロックマッピングテーブルをアップデートする、請求項4に記載のストレージシステム。 - 複数のブロックを含む複数のコンテンツファイルが第1記憶装置に記憶され、前記第1記憶装置は前記複数のブロックを予め設定された大きさを有する複数のスーパブロックで管理して、第2記憶装置は前記複数のスーパブロックのうち少なくとも1つのスーパブロックをキャッシュし、RAM(Random Access Memory)が前記複数のブロックのうち少なくとも1つのブロックを記憶する場合、
対象ブロックに対するアプリケーションの読み出し要求を受信するステップと、
前記対象ブロックが前記第2記憶装置または前記RAMに記憶されたか否かをチェックするステップと、
前記チェック結果に応じて前記第1記憶装置、前記第2記憶装置、または前記RAMのうち少なくとも1つから抽出された前記対象ブロックを返還するステップと、
を含むストレージシステムの読み出し方法。 - 前記対象ブロックを返還するステップは、
前記第2記憶装置にキャッシュされた少なくとも1つのスーパブロックに含まれる複数のブロックに対する位置情報が記録されたキャッシュファイルブロックマッピングテーブルを用いて前記第2記憶装置から前記対象ブロックを読み出すステップをさらに含む、請求項13に記載のストレージシステムの読み出し方法。 - 前記対象ブロックが前記第2記憶装置または前記RAMに記憶されたか否かをチェックするステップは、
前記複数のスーパブロックが前記第2記憶装置によってキャッシュされたか否かに関する情報および前記複数のスーパブロックが前記RAMに記憶されたか否かに関する情報を含むコンテンツスーパブロックマッピングテーブルを用いて前記対象ブロックが前記第2記憶装置または前記RAMに記憶されたか否かをチェックするステップである、請求項13に記載のストレージシステムの読み出し方法。 - 前記対象ブロックが前記RAMに記憶された場合、前記第2記憶装置に前記対象ブロックまたは前記対象ブロックを含むスーパブロックがキャッシングされるように処理するステップをさらに含む、請求項13に記載のストレージシステムの読み出し方法。
- 複数のブロックを含む複数のコンテンツファイルが第1記憶装置に記憶され、前記第1記憶装置は前記複数のブロックを予め設定された大きさを有する複数のスーパブロックで管理して、第2記憶装置は前記複数のスーパブロックのうち少なくとも1つのスーパブロックをキャッシュし、RAM(Random Access Memory)が前記複数のブロックのうち少なくとも1つのブロックを記憶する場合、
前記RAMに記憶された前記少なくとも1つのブロックのうち対象ブロックを含むスーパブロックのアクセス回数、または前記スーパブロックを含むコンテンツファイルのアクセス回数によって、前記第2記憶装置に前記対象ブロックまたは前記対象ブロックを含むスーパブロックを記憶するステップと、
複数のユーザセッションが存在する場合、特定ユーザセッションで使用された前記対象ブロックを含むスーパブロックと隣接する少なくとも1つのスーパブロックが少なくとも1つの残りのユーザセッションで使用されるか否かによって、前記第2記憶装置に前記対象ブロックまたは前記対象ブロックを含むスーパブロックを記憶するステップと、
を含むストレージシステムのキャッシング方法。 - 前記第2記憶装置に前記対象ブロックまたは前記対象ブロックを含むスーパブロックを記憶しない場合、前記対象ブロックまたは前記対象ブロックを含むスーパブロックを前記RAMから回収するステップをさらに含む、請求項17に記載のストレージシステムのキャッシング方法。
- 前記RAMに記憶された前記少なくとも1つのブロックのうち対象ブロックを含むスーパブロックのアクセス回数、または前記スーパブロックを含むコンテンツファイルのアクセス回数によって、前記第2記憶装置に前記対象ブロックまたは前記対象ブロックを含むスーパブロックを記憶するステップは、
予め設定された閾値と前記対象ブロックを含むスーパブロックのアクセス回数、または前記スーパブロックを含むコンテンツファイルのアクセス回数を比較するステップを含む、請求項18に記載のストレージシステムのキャッシング方法。 - コンピュータに、請求項13〜請求項16に記載のストレージシステムの読み出し方法、または、請求項17〜請求項19に記載のストレージシステムのキャッシング方法のうちいずれか1項の方法における各ステップを実行させるためのプログラムが記録されたコンピュータで読み出し可能な記録媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2009-0011781 | 2009-02-13 | ||
KR1020090011781A KR101023883B1 (ko) | 2009-02-13 | 2009-02-13 | 고속 저장 장치를 캐쉬로 사용하는 스토리지 시스템 |
PCT/KR2009/006339 WO2010093108A1 (ko) | 2009-02-13 | 2009-10-30 | 고속 저장 장치를 캐쉬로 사용하는 스토리지 시스템 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2012517644A true JP2012517644A (ja) | 2012-08-02 |
Family
ID=42561933
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011550046A Pending JP2012517644A (ja) | 2009-02-13 | 2009-10-30 | 高速記憶装置をキャッシュとして使用するストレージシステム |
Country Status (6)
Country | Link |
---|---|
US (1) | US20110302365A1 (ja) |
EP (1) | EP2397946A4 (ja) |
JP (1) | JP2012517644A (ja) |
KR (1) | KR101023883B1 (ja) |
CN (1) | CN102317926A (ja) |
WO (1) | WO2010093108A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013536515A (ja) * | 2010-08-25 | 2013-09-19 | ネヴェックス ヴァーチャル テクノロジーズ インコーポレイテッド | キャッシュ階層化のための方法およびシステム |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9098423B2 (en) | 2011-10-05 | 2015-08-04 | Taejin Info Tech Co., Ltd. | Cross-boundary hybrid and dynamic storage and memory context-aware cache system |
US20130267312A1 (en) * | 2012-04-06 | 2013-10-10 | Wms Gaming, Inc. | Ordered loading of wagering game assets into memory |
CN102662459A (zh) * | 2012-04-22 | 2012-09-12 | 复旦大学 | 利用固态硬盘与机械硬盘混合存储减少服务器能源消耗的方法 |
KR101709118B1 (ko) * | 2012-05-04 | 2017-02-22 | 한국전자통신연구원 | 하이브리드 스토리지 시스템의 파일 관리 방법 및 장치 |
CN103150136B (zh) * | 2013-03-25 | 2014-07-23 | 中国人民解放军国防科学技术大学 | 基于ssd的大容量缓存中的lru策略实现方法 |
JP6160240B2 (ja) * | 2013-05-23 | 2017-07-12 | 富士通株式会社 | 情報処理装置、情報処理システム、情報処理装置の制御方法および情報処理装置の制御プログラム |
CN104375961A (zh) * | 2013-08-16 | 2015-02-25 | 国际商业机器公司 | 用于在数据存储子系统中进行数据访问的方法和装置 |
CN103678166A (zh) * | 2013-08-16 | 2014-03-26 | 记忆科技(深圳)有限公司 | 一种采用固态硬盘作为计算机高速缓存的实现方法及系统 |
CN103677670A (zh) * | 2013-12-11 | 2014-03-26 | 华为技术有限公司 | 读数据的方法及装置 |
CN104951239B (zh) * | 2014-03-26 | 2018-04-10 | 国际商业机器公司 | 高速缓存驱动器、主机总线适配器及其使用的方法 |
CN105224475B (zh) | 2014-05-30 | 2018-03-09 | 国际商业机器公司 | 用于调整存储装置的分配的方法和装置 |
KR101507093B1 (ko) | 2014-06-03 | 2015-03-30 | 중원대학교 산학협력단 | 정전에서 지속 가능한 읽기 및 쓰기 캐시 장치 및 방법 |
CN103997656B (zh) * | 2014-06-12 | 2017-06-20 | 上海众源网络有限公司 | 高清视频文件处理方法及装置 |
KR102506135B1 (ko) | 2015-03-16 | 2023-03-07 | 삼성전자주식회사 | 데이터 저장 장치와 이를 포함하는 데이터 처리 시스템 |
US10180805B2 (en) * | 2015-03-25 | 2019-01-15 | SK Hynix Inc. | Memory system and operating method thereof |
US10108344B1 (en) * | 2015-05-06 | 2018-10-23 | American Megatrends, Inc. | Systems, devices and methods using a solid state device as a caching medium with an SSD filtering or SSD pre-fetch algorithm |
TWI522805B (zh) * | 2015-06-18 | 2016-02-21 | 群暉科技股份有限公司 | 用來於一儲存系統中進行快取管理之方法與裝置 |
KR102259868B1 (ko) * | 2015-12-17 | 2021-06-01 | 에스케이텔레콤 주식회사 | 메모리제어장치 및 메모리제어장치의 동작 방법 |
KR102610846B1 (ko) * | 2016-05-13 | 2023-12-07 | 한국전자통신연구원 | 고속 분산 저장 장치 및 방법 |
US10416887B1 (en) | 2016-05-18 | 2019-09-17 | Marvell International Ltd. | Hybrid storage device and system |
US10056147B1 (en) | 2016-06-02 | 2018-08-21 | Marvell International Ltd. | Two-level storage device with faster front end |
CN106502921A (zh) * | 2016-10-25 | 2017-03-15 | 电子科技大学 | 一种基于用户活跃度的社交网络新动态队列缓存方法 |
US10990282B1 (en) | 2017-11-28 | 2021-04-27 | Pure Storage, Inc. | Hybrid data tiering with cloud storage |
US11392553B1 (en) * | 2018-04-24 | 2022-07-19 | Pure Storage, Inc. | Remote data management |
US11796594B2 (en) | 2020-11-05 | 2023-10-24 | Schneider Electric It Corporation | PWM capture function for event analysis |
CN112684981B (zh) * | 2020-12-23 | 2023-12-22 | 北京浪潮数据技术有限公司 | 固态硬盘读操作记录方法、系统、装置及可读存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02210561A (ja) * | 1989-02-10 | 1990-08-21 | Oki Electric Ind Co Ltd | ディスクキャッシュの管理方式 |
JPH0683708A (ja) * | 1992-04-10 | 1994-03-25 | Fujitsu Ltd | データ記憶方法及び装置 |
JPH07334425A (ja) * | 1994-06-14 | 1995-12-22 | Mitsubishi Electric Corp | ディスクキャッシュ制御方式 |
JPH1040170A (ja) * | 1996-07-26 | 1998-02-13 | Toshiba Corp | ディスクキャッシュシステム |
JP2000047941A (ja) * | 1998-07-28 | 2000-02-18 | Nec Ibaraki Ltd | ディスクキャッシュ制御装置 |
JP2001051901A (ja) * | 1999-08-05 | 2001-02-23 | Toshiba Corp | キャッシュ記憶装置 |
JP2008507771A (ja) * | 2004-07-21 | 2008-03-13 | ビーチ・アンリミテッド・エルエルシー | ブロックマップキャッシングおよびvfsスタック可能なファイルシステムモジュールに基づく分散型のストレージアーキテクチャ |
WO2008070173A1 (en) * | 2006-12-06 | 2008-06-12 | Fusion Multisystems, Inc. (Dba Fusion-Io) | Apparatus, system, and method for solid-state storage as cache for high-capacity, non-volatile storage |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7610438B2 (en) * | 2000-01-06 | 2009-10-27 | Super Talent Electronics, Inc. | Flash-memory card for caching a hard disk drive with data-area toggling of pointers stored in a RAM lookup table |
WO2002001365A2 (en) | 2000-06-23 | 2002-01-03 | Intel Corporation | Non-volatile cache |
US8549226B2 (en) * | 2004-05-14 | 2013-10-01 | Hewlett-Packard Development Company, L.P. | Providing an alternative caching scheme at the storage area network level |
KR100675010B1 (ko) * | 2006-02-03 | 2007-01-29 | 삼성전자주식회사 | 하이브리드 하드디스크 드라이브의 캐시 제어 방법, 이에적합한 기록 매체 그리고 이에 적합한 장치 |
US7613876B2 (en) * | 2006-06-08 | 2009-11-03 | Bitmicro Networks, Inc. | Hybrid multi-tiered caching storage system |
CN100501702C (zh) * | 2007-01-17 | 2009-06-17 | 晶天电子(深圳)有限公司 | 一种闪存卡及其缓存、恢复数据的方法 |
JP4727705B2 (ja) * | 2008-10-31 | 2011-07-20 | 株式会社日立製作所 | 階層型ストレージシステム |
US20100125696A1 (en) * | 2008-11-17 | 2010-05-20 | Prasanth Kumar | Memory Controller For Controlling The Wear In A Non-volatile Memory Device And A Method Of Operation Therefor |
US8195878B2 (en) * | 2009-02-19 | 2012-06-05 | Pmc-Sierra, Inc. | Hard disk drive with attached solid state drive cache |
-
2009
- 2009-02-13 KR KR1020090011781A patent/KR101023883B1/ko not_active IP Right Cessation
- 2009-10-30 CN CN2009801567030A patent/CN102317926A/zh active Pending
- 2009-10-30 EP EP09840098A patent/EP2397946A4/en not_active Withdrawn
- 2009-10-30 US US13/201,362 patent/US20110302365A1/en not_active Abandoned
- 2009-10-30 WO PCT/KR2009/006339 patent/WO2010093108A1/ko active Application Filing
- 2009-10-30 JP JP2011550046A patent/JP2012517644A/ja active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02210561A (ja) * | 1989-02-10 | 1990-08-21 | Oki Electric Ind Co Ltd | ディスクキャッシュの管理方式 |
JPH0683708A (ja) * | 1992-04-10 | 1994-03-25 | Fujitsu Ltd | データ記憶方法及び装置 |
JPH07334425A (ja) * | 1994-06-14 | 1995-12-22 | Mitsubishi Electric Corp | ディスクキャッシュ制御方式 |
JPH1040170A (ja) * | 1996-07-26 | 1998-02-13 | Toshiba Corp | ディスクキャッシュシステム |
JP2000047941A (ja) * | 1998-07-28 | 2000-02-18 | Nec Ibaraki Ltd | ディスクキャッシュ制御装置 |
JP2001051901A (ja) * | 1999-08-05 | 2001-02-23 | Toshiba Corp | キャッシュ記憶装置 |
JP2008507771A (ja) * | 2004-07-21 | 2008-03-13 | ビーチ・アンリミテッド・エルエルシー | ブロックマップキャッシングおよびvfsスタック可能なファイルシステムモジュールに基づく分散型のストレージアーキテクチャ |
WO2008070173A1 (en) * | 2006-12-06 | 2008-06-12 | Fusion Multisystems, Inc. (Dba Fusion-Io) | Apparatus, system, and method for solid-state storage as cache for high-capacity, non-volatile storage |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013536515A (ja) * | 2010-08-25 | 2013-09-19 | ネヴェックス ヴァーチャル テクノロジーズ インコーポレイテッド | キャッシュ階層化のための方法およびシステム |
Also Published As
Publication number | Publication date |
---|---|
KR101023883B1 (ko) | 2011-03-22 |
KR20100092590A (ko) | 2010-08-23 |
EP2397946A4 (en) | 2012-08-29 |
CN102317926A (zh) | 2012-01-11 |
US20110302365A1 (en) | 2011-12-08 |
EP2397946A1 (en) | 2011-12-21 |
WO2010093108A1 (ko) | 2010-08-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2012517644A (ja) | 高速記憶装置をキャッシュとして使用するストレージシステム | |
US9513817B2 (en) | Free space collection in log structured storage systems | |
JP5651238B2 (ja) | ハイブリッド・メモリ・サーバにおけるデータ・アクセス管理 | |
US8996799B2 (en) | Content storage system with modified cache write policies | |
US9465554B2 (en) | Tiered caching and migration in differing granularities | |
US8595451B2 (en) | Managing a storage cache utilizing externally assigned cache priority tags | |
US9411742B2 (en) | Use of differing granularity heat maps for caching and migration | |
US9052826B2 (en) | Selecting storage locations for storing data based on storage location attributes and data usage statistics | |
CN106547476B (zh) | 用于数据存储系统的方法和装置 | |
US10558395B2 (en) | Memory system including a nonvolatile memory and a volatile memory, and processing method using the memory system | |
CN108647151A (zh) | 一种全闪系统元数据落盘方法、装置、设备及存储介质 | |
CN104317736B (zh) | 一种分布式文件系统多级缓存实现方法 | |
TW200939051A (en) | Selecting storage location for file storage based on storage longevity and speed | |
US20090265519A1 (en) | Method and system for power aware i/o scheduling | |
JP2018520420A (ja) | ハイブリッドオブジェクトストレージデバイスのためのキャッシュアーキテクチャおよびアルゴリズム | |
US20240160603A1 (en) | Data input/output method using storage node-based key-value store | |
CN104158863A (zh) | 基于事务级别全程高速缓冲的云存储机制 | |
US20120047330A1 (en) | I/o efficiency of persistent caches in a storage system | |
KR20190018730A (ko) | 캐시 엔트리 전송을 위한 캐시 위치 정보를 저장하기 위한 시스템 및 방법 | |
CN116069752A (zh) | 一种面向分布式文件系统的混合预取方法 | |
CN108984432B (zh) | 一种处理io请求的方法及装置 | |
KR101677372B1 (ko) | 디스크 블록 요청 예측 장치 및 방법 | |
KR101661418B1 (ko) | 컴퓨팅 장치의 데이터 출력방법 및 이를 위한 컴퓨팅 장치 | |
CN117785034A (zh) | 一种分级缓存系统、方法及服务器 | |
Tao et al. | A Head Record Cache Structure to Improve the Operations on Big Files in Cloud Storage Servers |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130206 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130219 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20130709 |