JP5284685B2 - ファイルの再配置装置、再配置方法、及び再配置プログラム - Google Patents

ファイルの再配置装置、再配置方法、及び再配置プログラム Download PDF

Info

Publication number
JP5284685B2
JP5284685B2 JP2008129981A JP2008129981A JP5284685B2 JP 5284685 B2 JP5284685 B2 JP 5284685B2 JP 2008129981 A JP2008129981 A JP 2008129981A JP 2008129981 A JP2008129981 A JP 2008129981A JP 5284685 B2 JP5284685 B2 JP 5284685B2
Authority
JP
Japan
Prior art keywords
file
files
access
vector
control device
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.)
Expired - Fee Related
Application number
JP2008129981A
Other languages
English (en)
Other versions
JP2009277147A (ja
Inventor
昌範 神谷
徹 長谷川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP2008129981A priority Critical patent/JP5284685B2/ja
Priority to US12/465,863 priority patent/US9256272B2/en
Publication of JP2009277147A publication Critical patent/JP2009277147A/ja
Application granted granted Critical
Publication of JP5284685B2 publication Critical patent/JP5284685B2/ja
Priority to US14/996,114 priority patent/US9710474B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/11File system administration, e.g. details of archiving or snapshots
    • G06F16/119Details of migration of file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3215Monitoring of peripheral devices
    • G06F1/3221Monitoring of peripheral devices of disk drive devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/102Programmed access in sequence to addressed parts of tracks of operating record carriers
    • G11B27/105Programmed access in sequence to addressed parts of tracks of operating record carriers of operating discs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/84Generation or processing of descriptive data, e.g. content descriptors
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

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)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、複数のストレージ・デバイスを含むシステムにおけるファイルの配置方法に関し、詳細には、省電力化の観点からファイルを最適に再配置する技術に関する。
従来より、各々異なる特性を有する複数の種類のストレージを組み合わせて論理的に1つのストレージ・デバイスを構成する階層ストレージ・システムが知られている。この階層ストレージ・システムでは、高速であるが小容量で高価なストレージ・デバイスを上位に位置付け、大容量で低価格であるが低速なストレージ・デバイスを下位に位置付ける。そして、時間と共に変化するファイルの価値に従って、ファイルを上位の階層のストレージ・デバイスから下位の階層のストレージ・デバイスへ移動させることにより、階層ストレージ・システムでは、コスト効率のよいデータ管理を実現させている。
またストレージ・システムの管理方法として、近年、MAID(Massive Arrays of Inactive Disk)と称される技術が注目されている。MAIDは、データのアクセス時に必要なストレージ・デバイスのみを稼動させることで、エネルギー消費の低減を図る技術である。階層ストレージ・システムにおいてMAIDを採用すれば、アクセス頻度の低いファイルが集められた下位階層のストレージ・デバイスがパワーオフされ、よりコスト効率のよいデータ管理を実現できる(非特許文献1参照)。
Ganesh Karche、 Murthy Mamidi、Paul Massiglia、"Dynamic Storage Tiering(DST)の活用方法"、Symantec Yellow Books、株式会社シマンテック
しかしながら、従来の階層ストレージ・システムでは、ファイルの配置は、アクセス頻度等の個々のファイルの特性に基づいて決定されていた。即ち、従来の階層ストレージ・システムでは、ファイルの配置を決定する際に、ファイル間の依存関係は全く考慮されていなかった。そのため、あるファイルに対し依存関係のあるファイルが存在し、これら複数のファイルが同時にアクセスされることが多い場合に、従来の階層ストレージ・システムでは、依存関係のある複数のファイルがそれぞれ異なるストレージ・デバイスに配置される可能性があり、MAIDを採用してもその効果を十分に発揮させることができないという問題があった。
また、ファイルを配置する際にファイル間の依存関係を考慮するとしても、ファイル間の依存関係を知るためには、予めファイルの所有者にその依存関係を登録させるか、ファイルの内容をコンピュータに解析させる必要があり、非常に手間がかかるという問題もあった。
そこで本発明は、上記の課題、即ち、複数のストレージ・デバイスを含むシステムにおいて、ファイル間の依存関係を考慮してファイルの配置を決定することにより、より多くのストレージ・デバイスを省エネルギー・モードに移行させることのできる、ファイルの再配置装置、再配置方法及び再配置プログラムを提供することを目的とする。また本発明は、人手を必要とせず、より簡単な方法でファイル間の依存関係を求めることのできるファイルの再配置装置、再配置方法及び再配置プログラムを提供することを目的とする。
上記の目的を達成するため、本発明は、ファイル間の依存関係の有無を、同時アクセスされるファイル群であるか否かにより判断し、依存関係のある複数ファイルを同じストレージ・デバイスに配置するようにした。即ち、本発明は、次のような複数のストレージ・デバイスの入出力を制御する制御装置において実行される、ファイルの再配置プログラムによって実現される。この再配置プログラムは、上記制御装置に、(a)制御装置の記憶装置から、複数のファイルの各々に対するアクセス要求の履歴情報を読み出すステップと、(b)履歴情報を参照して、各ファイルについて、該ファイルと同時にアクセス要求された回数を全ファイルの各々について求めるステップと、(c)ステップ(b)の結果に基づいて、同時にアクセス要求された回数の多いファイルどうしを1つのグループにまとめることにより、複数のファイルを複数のグループに分類するステップと、(d)同じグループに分類された複数のファイルを、同じストレージ・デバイスに再配置するステップと、(e)各ストレージ・デバイスへのアクセス要求を監視することにより、一定期間アクセスのないストレージ・デバイスを省エネルギー・モードに移行させるステップとを実行させる。なお、本発明において同時とは、完全に同時であるだけでなく、前後一定期間内のずれも含むものとする。
更に好適には、上記履歴情報は、制御装置において受信された順に並んだ、アクセス対象のファイルの識別情報を含むアクセス要求のリストを含み、上記ステップ(b)において、リストにおいて任意のアクセス要求の前後一定範囲に並ぶ各アクセス要求を、任意のアクセス要求と同時になされたアクセス要求とみなす。
また好適には、上ステップ(c)は次の(c−1)乃至(c−4)の各ステップを含む。(c−1)再配置対象の各ファイルについて、該ファイルに対して求められた全ファイルの各々の同時にアクセス要求された回数を成分とする同時出現ベクトルを算出するステップ。(c−2)各ファイルについて求めた複数の同時出現ベクトルのうち、各成分を足し合わせた値が最も大きい同時出現ベクトルを基準同時出現ベクトルとして決定するステップ。(c−3)各ファイルについて、該ファイルの同時出現ベクトルと基準同時出現ベクトルとの内積を求め、求めた内積が所定値以上のファイルを、基準同時出現ベクトルを有するファイルと同一のグループに分類するステップ。(c−4)ファイルの再配置を行う対象となる複数のストレージ・デバイスの個数Kを取得し、未分類の再配置対象の複数のファイルについて、ステップ(c−2)及び(c−3)を、ステップ(c−3)において内積が所定値以上のファイルが存在することを条件に、K−1回繰り返すステップ繰り返すステップ。
また好適には、上記再配置プログラムは、上記制御装置に、(f)複数のストレージ・デバイスに格納される複数のファイルから、アクセス頻度の低いファイルを除くステップを更に実行させる。そして、アクセス頻度の低いファイルを除く複数のファイルを、再配置対象の複数のファイルとする。
また好適には、上記再配置プログラムは、上記制御装置に、(g)複数のファイルに対するアクセス要求を観測する観測時間を、単位観測時間ずつ等分割して、複数の時間帯を定義するステップと、(h)各ファイルを、該ファイルへのアクセス要求が最も多くなされた時間帯に対応付けるステップとを更に実行させる。そして、上記再配置プログラムは、上記制御装置に、上記ステップ(b)、(c)及び(d)の一連のステップを、各時間帯に対応付けられた複数のファイルごとに実行させる。
なお、本発明において単位観測時間とは、複数のファイルに対するアクセス要求の分布に一定の傾向がみられる最小の観測時間である。また、観測時間とは、一定の傾向を示す複数種類のアクセス要求の分布が観測される場合に、全種類の分布を観測するのに必要な最小の観測時間である。例えば、朝、昼、晩と、それぞれ異なるファイルへのアクセス要求の分布が観測される場合、観測時間は24時間であり、単位観測時間は8時間である。また、曜日によって各ファイルへのアクセス要求の分布が異なる場合、観測時間は1週間であり、単位観測時間は1日である。
以上、複数のストレージ・デバイスの入出力を制御する制御装置において実行される、ファイルの再配置プログラムとして本発明を説明したが、本発明は、そのような制御装置において実行される、ファイルの再配置方法、又はコンピュータに上記再配置プログラムを実行させることにより実現されるファイルの再配置装置として把握することもできる。
本発明によれば、複数のストレージ・デバイスに格納される複数のファイルは、依存関係のある複数ファイルごとにグループ分けされ、グループ単位でストレージ・デバイスに再配置される。その結果、本発明に係るストレージ・システムでは、ストレージ・デバイスにおいて一定期間アクセスのない状態が生じやすくなり、より多くのストレージ・デバイスを省エネルギー・モードに移行させることが可能となった。また本発明は、ファイル間の依存関係の有無を、同時アクセスされるファイル群であるか否かにより判断するので、人手を必要とせず、より簡単な方法でファイル間の依存関係を求めることが可能となった。本発明のその他の効果については、各実施の形態の記載から理解される。
以下、本発明を実施するための最良の形態を図面に基づいて詳細に説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではなく、また実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。本発明は、背景技術として述べた階層ストレージ・システムだけでなく、任意のストレージ・システムに適用することができる。しかし、以下では一例として、階層ストレージ・システムに適用した場合を説明することにする。なお、実施の形態の説明の全体を通じて同じ要素には同じ番号を付している。
図1は、本発明の実施の形態において使用可能なストレージ・システム100の代表的なハードウェア構成の一例を示す。本実施形態に係るストレージ・システム100は、複数のストレージ・デバイス140a、140b、140c、140dと、複数のストレージ・デバイス140a、140b、140c、140dへのデータの入出力を制御する制御装置110とを含む。
本実施形態に係る複数のストレージ・デバイス140a、140b、140c、140dは階層構造をなし、第1階層ストレージ・デバイス140a及び第2階層ストレージ・デバイス140bは、一例として、半導体メモリや磁気ディスク等の高速なストレージ・デバイスにより構成される。第3階層ストレージ・デバイス140c及び第4ストレージ・デバイス140dは、一例として、光ディスクや磁気テープ等の低速なストレージ・デバイスにより構成される。
制御装置110は、通信インタフェース118を介して、図示しない1以上のホスト装置からデータ書き込み要求や読み出し要求を受けて、内部のメモリ114上に設けられたバッファにそのデータブロックを一時的に記憶する。そして、制御装置110は、そのプロセッサ112が、記憶装置116に格納されるプログラムに従って、複数のストレージ・デバイス140a、140b、140c、140dとの間のデータ書き込み及び読み出しをストレージ・デバイス・インタフェース120を介して行うことにより、複数の140a、140b、140c、140dへのデータの入出力を制御する。
本発明に係る制御装置110はまた、予め定義されたストレージ管理ポリシーに従って、複数の140a、140b、140c、140dに格納される複数のファイルの再配置を行う。ストレージ管理ポリシー又は再配置処理において参照される各種パラメータは、管理端末130を操作する管理者により、ユーザ・インタフェース122を介して記憶装置116に格納される。本実施形態に係る記憶装置116は更に本発明に係るファイルの再配置プログラムを記憶し、制御装置110内のプロセッサ112は該プログラムに従って、ファイル間の依存関係を考慮してファイルの再配置を行う。
(第一実施形態)図2(a)は、第一実施形態に係る制御装置110の機能構成の一例を示す。制御装置110は、同時出現ベクトル算出部150、基準同時出現ベクトル決定部152、判定部154、カウント部155、分類部156、再配置部158、及び移行部160を含む。また図2(b)は、第一実施形態に係る記憶装置116が格納するデータの一例を示す。
記憶装置116は、複数のファイルの各々に対する1以上のホスト装置からのアクセス要求の履歴情報170、同時出現ベクトル算出部150により算出された、各ファイルの同時出現ベクトル情報172、及び再配置部158により決定されたファイルの再配置情報174を格納する。各種情報の詳細は後述する。なお上述したように、記憶装置116は、図2(b)に図示する以外の情報を更に格納してもよい。
カウント部155は、記憶装置116に格納される履歴情報170を参照して、各ファイルについて、該ファイルと同時にアクセス要求された回数を全ファイルの各々について求める。
分類部156は、カウント部155により求められた各回数に基づいて、同時にアクセス要求された回数の多いファイルどうしを1つのグループにまとめることにより、複数のストレージ・デバイスに格納される再配置対象の複数のファイルを複数のグループに分類する。なお、上述したように、本明細書において同時とは、完全に同時であるだけでなく、前後一定期間内のずれも含む。また本実施例では、複数のストレージ・デバイスに格納される全ファイルを再配置対象のファイルとする。
履歴情報170は、好ましくは、制御装置110において受信された順に並んだアクセス対象のファイルの識別情報を含むアクセス要求のリストを含む。以下では、このリストをファイルリクエスト列Rと呼び、次のように定義する。R=r∧r∧r。ここでrは個々のファイルリクエストを示し、添え字はファイルリクエストが各ホスト装置から制御装置110に到着した順番を示す。また、各ファイルリクエストrは1つのファイルに対応するものとし、値域となるファイルの集合F={f、f、∧、f、∧、f}に対して、RからFへの関数eval()を定義する。すると、例えばファイルリクエストrがファイルfに対するアクセス要求であるとすると、f=eval(r)という等式が成り立つ。即ち、ファイルfはファイルリクエストrの関数とみることができ、本実施例では、rの定義域をr、ここでi=1、2、…、nとし、fの値域をf、ここでj=1、2、…、mとする。なお、ストレージ・システム100においてアクセス要求が途切れ、次のアクセス要求を受信するまでに一定期間要することもある。そのような場合、アクセス要求が途切れる直前に受信したアクセス要求をファイルリクエスト列Rの最後のアクセス要求とし、また新たにファイルリクエスト列Rを作成し、履歴情報170が複数のファイルリクエスト列Rを含むようにしてもよい。
カウント部155は、ファイルの識別情報のリストにおいて、任意のアクセス要求の前後一定範囲に並ぶ各アクセス要求を、上記任意のアクセス要求と同時になされたアクセス要求とみなす。ここで、上記一定範囲、即ち、ファイルリクエスト列Rにおいて、同時にファイルリクエストされたとみなすファイルリクエストの個数に関する閾値を、同時出現閾値Cthと定義する。また、ファイルリクエスト列Rから、ファイルリクエストrに対して同時なされたファイルリクエスト群RCthを抽出する関数co−occur()を定義する。すると、例えばファイルリクエストrに対し、ri―Cthi+1―Cth∧ri−1i+1i+2∧ri+Cth=co−occur(r)という等式が成り立つ。
なお、同時出現閾値Cthは、好ましくは、複数のホスト装置において試験用の複数のアプリケーションを実行させ、ストレージ・システム100における各アプリケーションからのファイルリクエストを観察することによって決定する。具体的には次のような方法により同時出現閾値Cthを決定する。まず、始めに次のようなテスト環境を用意する。
ベンチマークテストに用いられる複数のアプリケーションA、B、…、Zが存在し、各アプリケーションが使用するファイルの集合filesetが、アプリケーションAに対し{fa1、fa2、…、fam}、アプリケーションBに対し{fb1、fb2、…、fbn}、…、アプリケーションZに対し{fz1、fz2、…、fzu}のように、それぞれ存在するとする。ここで、同一のfilesetに属するファイル同士は、同一のアプリケーションによって使用されることから、互いに相関があると考えることができる。このとき、これら複数のアプリケーションを複数のホスト装置から同時に実行するテスト環境を用意する。次に、ストレージ・システムの通信インタフェース118に到着するファイルリクエスト列を観察する。
具体的には、各アプリケーションについて、対応するfilesetに属するファイルへのファイルリクエスト間の距離のヒストグラムを作成する。ここで、任意のアプリケーションXに対応するfilesetに属するファイルへのファイルリクエストrXiとrXi+1(ここで、添え字Xiは、ファイルリクエストrXiが、アプリケーションXに対応するfilesetに属するファイルへのi番目のファイルリクエストであることを示し、添え字Xi+1は、ファイルリクエストrXi+1が、rXiの次に現れる、アプリケーションXに対応するfilesetに属するファイルへファイルリクエストであることを示す)との間の距離とは、ファイルリクエストrXiとrXi+1との間に入る、アプリケーションXに対応するfilesetに属さないファイルへのファイルリクエストの個数に1を足したものである。例えば、ファイルリクエスト列R=rA1B1B2A2Z1C1...が観測された場合、アプリケーションAに対応するfilesetに属するファイルへのファイルリクエストrA1とrA2との間の距離は3となる。
ヒストグラムの作成が終わると、ヒストグラムの結果を利用して、各アプリケーションXに対して、偏差値Tを式T=10×(α―μ)/σ+50より求める。但し、μ=Σα/(N−1)、σ={Σ(α―μ)/(N−1)}1/2である。ここで、Nは、観測されたファイルリクエスト列Rにおいて、各アプリケーションXに対応するfilesetに属するファイルへのファイルリクエスト数である。また、上式においてΣは、添え字iについて1からN−1までの総和を求めることを示す。更にαは、rXiとrXi+1との間の距離である。従って、μはαの平均であり、σはαの標準偏差である。そして、偏差値T≧80が成り立つ距離αを、ファイルリクエスト列RにおけるアプリケーションXの出現頻度の距離と呼び、d(x)と記載する。
各アプリケーションについて、上式により出現頻度の距離を求める。最後に、各アプリケーションの出現頻度の距離の中から最大のもの、即ち、max{d(a)、d(b)、…、d(z)}を、同時出現閾値Cthとして決定する。各アプリケーションの出現頻度の距離の最大値よりも小さい値を同時出現閾値Cthとして決定する場合、相関のある複数のファイルリクエストが、同時になされたファイルリクエスト群として扱われない可能性がある。例えば、複数のホスト装置が接続されるストレージ・システムにおいて、ファイルリクエストに対しラウンドロビン等のスケジューリングが行われる場合などである。
また、各アプリケーションの出現頻度の距離の最大値よりも大きい値を同時出現閾値Cthとして決定する場合、例えば同日など比較的長い期間内になされたファイルリクエストは全て相関があるとみなされるため、分類部156による分類の精度が落ち、また計算量も増えてしまう。なお、分類部156による履歴情報170を参照したファイルの分類処理は、好ましくは、同時出現ベクトル算出部150、基準同時出現ベクトル決定部152、判定部154の一連の処理の結果に基づいて行われる。以下では、これら各構成要素について説明する。
同時出現ベクトル算出部150は、複数のストレージ・デバイス140a、140b、140c、140dに格納されている再配置対象の各ファイルについて、該ファイルに対してカウント部155により求められた全ファイルの各々の同時にアクセス要求された回数を成分とする同時出現ベクトルを算出する。同時出現ベクトルの具体的な算出方法を、図3に示す擬似コードを参照して説明する。まず、ファイルfへのファイルリクエストと同時になされたファイルfへのファイルリクエストの総数bpqを求めることを考える。
図3に示すように、初めにbpqに初期値0を設定する。次に、ファイルリクエスト列Rの各要素rについて、以下の処理を行う。即ちファイルリクエストrが、ファイルfへのファイルリクエストであるか否か判定する。ファイルリクエストrがファイルfへのファイルリクエストである場合、ファイルリクエストrに対して同時になされたファイルリクエスト群co−occur(r)の各要素rについて、更に以下の処理を行う。即ち、ファイルリクエストrが、ファイルfへのファイルリクエストであるか否か判定し、ファイルリクエストrがファイルfへのファイルリクエストである場合、bpqに1を加算する。
ファイルリクエスト列Rの全要素について上記処理を行うと、最終的に得られるbpqは、ファイルfへのファイルリクエストと同時になされたファイルfへのファイルリクエストの総数を示す。なお、ファイルリクエスト列Rが複数ある場合は、各ファイルリクエスト列Rについて上記処理を行い、最終的に各ファイルリクエスト列Rから得られた結果bpqを足し合わせる。従って、ファイルfの同時出現ベクトルaは、上記bpqを用いて、a=(bp1、bp2、∧、bpm)と表せる。同時出現ベクトル算出部150は、算出した各ファイルの同時出現ベクトルの集合Aを、2次元の配列情報b(i、j)として記憶装置116へ格納する。ここでiとjは、それぞれ1〜mの整数値をとり、集合A={a、a、∧、a、∧、a}である。そして、同時出現ベクトル算出部150は、処理の終了を、後述する基準同時出現ベクトル決定部152に通知する。
このように、ファイルfの同時出現ベクトルaは、その定義に基づき、ファイルfと同時になされた各ファイルのファイルリクエスト回数をその成分にもつベクトルである。従って、ファイルfの同時出現ベクトルaにおいて値の大きい成分に対応するファイルは、ファイルfと強い相関を持っているといえる。即ち、任意のa、a∈Aとなる2つの同時出現ベクトルの内積a・aは、ファイルfとfの相関を表し、内積a・aの値が大きいほどファイルfとfの相関が強いといえる。なお、同時出現ベクトルの内積は、m次元ベクトルの内積として求められる。
基準同時出現ベクトル決定部152は、同時出現ベクトル算出部150からの上記通知又は分類部156からの後述する通知に応答して、記憶装置116からいずれのグループにも分類されていないファイルの同時出現ベクトルを読み出す。そして、基準同時出現ベクトル決定部152は、いずれのグループにも未だ分類されていない未分類の各ファイルについて求められた複数の同時出現ベクトルのうち、各成分を足し合わせた値、即ち、総同時出現量が最も大きい同時出現ベクトルaを基準同時出現ベクトルとして決定する。なお、基準同時出現ベクトル間の内積a・aを、以下では、基準同時出現ベクトルの自己相関とよぶ。 基準同時出現ベクトル決定部152は、決定した基準同時出現ベクトルaを、後述する判定部154へ通知する。
判定部154は、基準同時出現ベクトル決定部152により基準同時出現ベクトルaが決定されたことに応答して、いずれのグループにも分類されていない未分類の各ファイルについて、該ファイルの同時出現ベクトルを記憶装置116から読み出し、読み出した各ファイルの同時出現ベクトルと基準同時出現ベクトルaとの内積を求める。そして、判定部154は、求めた内積が所定値、即ち同時出現相関の閾値tcor以上か否かを判定する。本実施形態に係る同時出現相関の閾値tcorは、基準同時出現ベクトルの自己相関値の1%とする。即ちtcor=0.01*(a・a)である。
後述するように、閾値tcorによって基準同時出現ベクトルaと同一のグループに分類されるファイルの個数が決まるため、管理者は、グループの希望するサイズに応じて閾値tcorを決定する。同時出現閾値Cthや同時出現相関の閾値tcor、更に後述するファイルの再配置を行う対象の複数のストレージ・デバイスの個数Kは、上述した、再配置処理において参照される各種パラメータであり、好ましくは、ユーザ・インタフェース122を介して管理者により記憶装置116に格納される。
分類部156は、判定部154による判定結果に基づき、基準同時出現ベクトルaとの内積が同時出現相関の閾値tcor以上の同時出現ベクトルを有するファイルを、基準同時出現ベクトルaと同一のグループに分類する。分類部156はまた、記憶装置116から、ファイルの再配置を行う対象の複数のストレージ・デバイスの個数Kを取得する。そして分類部156は、それまでに作成したグループの数がK−1未満の場合、基準同時出現ベクトル決定部152に処理を繰り返すよう通知する。
一方、作成したグループの数がK−1の場合、或いは基準同時出現ベクトルaとの内積が閾値tcor以上のファイルが存在しない場合、残りのファイル全てを同じ新しいグループに分類する。そして分類部156は、処理の終了を後述する再配置部158へ通知する。
再配置部158は、分類部156による分類結果に基づいて、同じグループに分類された複数のファイルを、同じストレージ・デバイスに再配置し、再配置情報174を記憶装置116に格納する。なお、グループのサイズがストレージ・デバイスに対して小さい場合は、複数のグループを同じストレージ・デバイスに再配置してもよい。
移行部160は、各ストレージ・デバイスへのアクセス要求を監視することにより、一定期間アクセスのないストレージ・デバイスを省エネルギー・モードに移行させる。一例として、移行部160は、ヘッドの退避、ヘッドの退避とディスク回転の停止、電源OFFのいずれかにより、ストレージ・デバイスを省エネルギー・モードに移行させてよい。
なお本実施例では、分類部156を含む各構成要素は、複数のストレージ・デバイスに格納される全ファイルを再配置対象のファイルとした。これに代えて、分類部156は、複数のストレージ・デバイスに格納される全ファイルからアクセス頻度の低いファイルを取り除き、アクセス頻度の低いファイルを取り除いた後の複数のファイルを再配置対象の複数のファイルとしてもよい。各ファイルのアクセス頻度は、一例として、上述したアクセス対象のファイルの識別情報を含むアクセス要求のリストに基づいて、ファイルごとアクセス回数を計算することにより求めてよい。また、アクセス頻度の低いファイルは、従来技術と同様、下位のストレージ・デバイスに格納する。係る代替法によれば、処理対象となるファイルの数が減るため、各構成要素による計算処理の時間が短くなる。
次に、図4及び図5のフローチャートを参照して、第一実施形態に係る制御装置110の動作を説明する。図4において処理はステップ100から開始し、制御装置110は、記憶装置116から履歴情報170を読み出し、該履歴情報170を参照して、各ファイルについて、該ファイルと同時にアクセス要求された回数を全ファイルの各々について求める(ステップ104)。そして、制御装置110は、求めた各回数に基づいて、同時にアクセス要求された回数の多いファイルどうしを1つのグループにまとめることにより、複数のファイルを複数のグループに分類する(ステップ108)。分類処理の詳細は図5を参照して後述する。次に、制御装置110は、同じグループに分類された複数のファイルを、同じストレージ・デバイスに再配置する(ステップ110)。
処理はステップ110からステップ120へ進み、制御装置110は、各ストレージ・デバイスへのアクセス要求を監視する。
そして制御装置110は、ステップ130において、一定期間アクセスのないストレージ・デバイスを省エネルギー・モードに移行させる。
次に図5を参照して、図4のステップ108のファイルの分類処理の詳細を説明する。図5において処理はステップ200から開始し、制御装置110は、各ファイルについて、該ファイルに対して図4のステップ104において求めた、全ファイルの各々の同時アクセス要求回数を成分とする同時出現ベクトルを算出する。次に制御装置110は、制御装置110が制御するストレージ・デバイスの個数Kと、再配置対象のファイルの総数mを取得する(ステップ205)。
制御装置110はまた、基準同時出現ベクトルとして決定された同時出現ベクトルの個数をカウントするための変数iと、いずれのグループにも分類されていない未分類のファイルの数をカウントするための変数Lと、i番目の基準同時出現ベクトルが分類されるグループに属するファイルの数をカウントするための変数sとを、それぞれ順に、1、m、0の値で初期化する(ステップ210)。
次に制御装置110は、未分類のファイルの数Lを、式L−sにより求める(ステップ215)。そして制御装置110は、未分類のファイルに対しその同時出現ベクトルの各成分を足し合わせ、合計値が最も大きい同時出現ベクトルをi番目の基準同時出現ベクトルとして決定する(ステップ220)。制御装置110はまた、i番目の基準同時出現ベクトルとの相関の有無を判定する閾値を、i番目の基準同時出現ベクトルの自己相関の0.01%として、算出する(ステップ225)。
更に制御装置110は、i番目の基準同時出現ベクトルとの内積を求めた同時出現ベクトル(ファイル)の個数をカウントするための変数jを値1で初期化し、また上記変数sにi番目の基準同時出現ベクトルの分として1を代入する(ステップ230)。
そして制御装置110は、未分類のj番目のファイルについて、その同時出現ベクトルと基準同時出現ベクトルとの内積を求め(ステップ235)、求めた内積が上記閾値以上であるか否か判定する(ステップ240)。閾値以上である場合(ステップ240:YES)、制御装置110は、j番目のファイルをi番目の基準同時出現ベクトルを有するファイルと同一のグループに分類し(ステップ245)、変数sを1増分する(ステップ250)。
ステップ240においてNOの場合又はステップ250から処理はステップ255へ進み、制御装置110は、変数jを1増分し、変数jの値が変数Lより大きいか否か、即ち未分類の全ファイルに対し、ステップ235乃至ステップ255の処理を行ったか否かを判定する(ステップ260)。変数jの値が変数Lより大きくない場合(ステップ260:NO)、処理はステップ235へ戻る。
一方、変数jの値が変数Lより大きい場合(ステップ260:YES)、制御装置110は、変数sの値が1より大きいか否か、即ちi番目の基準同時出現ベクトルと同じグループに分類されたファイルが存在するか否か判定する(ステップ265)。変数sの値が1より大きい場合(ステップ265:YES)、制御装置110は変数iを1増分した後、(ステップ270)、変数iの値がKに等しいか否か、即ち、ストレージ・デバイスの数Kより1少ない数のグループを作成したか否か判定する(ステップ275)。
変数iの値がKと等しくない場合(ステップ275:NO)、処理はステップ215に戻る。変数sの値が1より大きくない場合、即ち1である場合(ステップ265:NO)、又は変数iの値がKに等しい場合(ステップ275:YES)、処理はステップ280へ進み、制御装置110は、残りの未分類のファイル全てを同一の新しいグループに分類する。そして処理は終了する。
(第二実施形態)第二実施形態では、前処理として、再配置対象の各ファイルを、該ファイルへのアクセス要求がなされることが多い時間帯へ対応付ける。そして、同一の時間帯に対応付けられた複数のファイルごとに、第一実施形態に係る制御装置110の各構成要素による処理を行う。その結果、第二実施形態に係る制御装置110によれば、各構成要素による計算時間が短くなる可能性がある。
図6(a)は、第二実施形態に係る制御装置110の機能構成の一例を示す。制御装置110は、第一実施形態に係る制御装置110の各構成要素に加えて、新たに、時間帯定義部180及び対応付け部182を含む。そこで、繰り返しを避けるためここでは新たに追加される時間帯定義部180及び対応付け部182について説明する。また図6(b)は、第二実施形態に係る記憶装置116が格納するデータの一例を示す。
第二実施形態に係る記憶装置116が格納するデータは、基本的に第一実施形態に係る記憶装置116が格納するデータと同じである。但し、第二実施形態に係る記憶装置116が格納する履歴情報184は、制御装置110において受信された順に並んだ、アクセス対象のファイルの識別情報と該識別情報により識別されるファイルが制御装置110において受信された時刻とを含むアクセス要求のリストである。なお、第二実施形態に係る制御装置110の通信インタフェース118は、アクセス要求を受信すると、受信時の時刻を該アクセス要求に付加するものとする。
時間帯定義部180は、複数のファイルに対するアクセス要求を観測する観測時間Tを、単位観測時間Sずつ等分割して、複数の時間帯を定義する。なお、便宜上、定義される複数の時間帯に、観測開始の基準時刻に近い方から順に0からK−1の番号を振るものとする。
上述したように、本発明において単位観測時間Sとは、複数のファイルに対するアクセス要求の分布に一定の傾向がみられる最小の観測時間である。また、観測時間Tとは、一定の傾向を示す複数種類のアクセス要求の分布が観測される場合に、全種類の分布を観測するのに必要な最小の観測時間である。例えば、朝、昼、晩と、それぞれ異なるファイルへのアクセス要求の分布が観測される場合、観測時間Tは24時間であり、単位観測時間Sは8時間である。従って、基準時刻を0時とすると、24時間の観測時間に対し、0〜8時間(0番目の時間帯)、8時間〜16時間(1番目の時間帯)、16時間〜24時間(2番目の時間帯)の3つの時間帯を定義できる。なお、観測時間T、単位観測時間S及び基準時刻は、好ましくは、ユーザ・インタフェース122を介して管理者により記憶装置116に格納される。
対応付け部182は、各ファイルを、該ファイルへのアクセス要求が最も多くなされた上記いずれかの時間帯に対応付ける。対応付け部182によるファイルごとの対応付け処理は、具体的には次のようにして行う。まず、記憶装置116から履歴情報184を読み出し、任意のファイルfについて、該ファイルfへのアクセス要求を全て抽出する。そして、抽出した各アクセス要求に含まれる受信時刻を、観測開始の基準時刻からの経過時間tに変換する。更に、各アクセス要求について、経過時間tを式t=n×S+τで表したときのnを求める。但し、nは0以上の整数であり、τは0≦τ<Sを満たすものとする。
そうして、該ファイルfへの各アクセス要求を、nmod(T/S)の値、即ち求めたnをT/Sで割った余りに応じて、上記定義されたいずれかの時間帯に対応付ける。即ち、余りが0のアクセス要求は番号0の時間帯に、余りが1のアクセス要求は番号1の時間帯にというように、ファイルfへの各アクセス要求を、求めたnをT/Sで割った余りに等しい番号の時間帯に対応付ける。最後に、最も多くのアクセス要求が対応付けられた時間帯に、ファイルfを対応付ける。
対応付け部182の処理が終わると、上述したように、同一の時間帯に対応付けられた複数のファイルごとに、同時出現ベクトル算出部150、基準同時出現ベクトル決定部152、判定部154、分類部156、再配置部158及び移行部160による一連の処理を行う。各構成要素による処理は、第一実施形態に係る各部の処理と同一であるため、説明は省略する。
次に、図7及び図8のフローチャートを参照して、第二実施形態に係る制御装置110の動作を説明する。但し、第二実施形態に係る制御装置110において新規に追加された構成要素以外の各構成要素の動作については、図4及び図5を参照して説明したのと同じであるから、繰り返しをさけるため、ここでは説明を省略する。図7は、第二実施形態に係る制御装置110による前処理の流れの一例を示すフローチャートである。図7において処理はステップ300から開始し、制御装置110は、複数のファイルに対するアクセス要求を観測する観測時間Tを、単位観測時間Sずつ等分割して、複数の時間帯を定義する。なお、上述したように、定義される複数の時間帯には、観測開始の基準時刻に近い方から順に、0からK−1の番号を割り当てる。そして、制御装置110は、各ファイルを、該ファイルへのアクセス要求が最も多くなされた時間帯に対応付ける(ステップ310)。対応付け処理の詳細は図8を参照して詳述する。そして、処理は終了する。
図8は、第二実施形態に係る制御装置110による対応付け処理の流れの一例を示すフローチャートである。図8において処理はステップ350から開始し、制御装置110は、観測時間Tと単位観測時間Sを記憶装置116から読み出す。制御装置110はまた、再配置対象のファイル数mを取得する(ステップ355)。そして、制御装置110は、処理済のファイル数をカウントするための変数iを1で初期化する(ステップ360)。
次に制御装置110は、i番目のファイルfについて、記憶装置110に格納される履歴情報184からファイルfへのアクセス要求を全て読み出す(ステップ365)。次に制御装置110は、各アクセス要求に含まれる受信時刻を、観測開始の基準時刻からの経過時間tに変換し、変換後の受信時刻tを式t=n×S+τで表したときのnを求める(ステップ370)。そして制御装置110は、ファイルfへの各アクセス要求を、nmod(T/S)の値に等しい番号の時間帯に割り当てる(ステップ375)。ファイルfへの全アクセス要求の割り当てが終わると、制御装置110は、ファイルf最も多くのアクセス要求が対応付けられた時間帯に対応付ける(ステップ380)。
処理はステップ385へ進み、制御装置110はiを1増分し、iがmに等しいか否か判定する(ステップ390)。iがmに等しくない場合(ステップ390:NO)、制御装置110は次のファイルfについて、ステップ365乃至ステップ390の処理を繰り返す。iがmに等しい場合(ステップ390:YES)、処理は終了する。
次に図9に示すファイルリクエストのシミュレーションモデルを用いて、上述した第一実施形態に係るファイルの再配置方法により、同時アクセスされ、従って依存関係のある複数ファイルのグループが、同一のストレージ・デバイスに再配置されることを実証する。このシミュレーションでは、マルコフ連鎖モデルと正規乱数とを用いて、同時にアクセスされるファイルのグループが複数存在し、各グループの出現頻度がある確率で切り替わるモデルを実現した。
図9の(a)は、各グループの出現頻度の分布を切り替えるためのマルコフ連鎖モデルにおける状態遷移図を示す。図9の(a)において、S1、S2、S3はそれぞれ遷移する状態を示し、各枝に付けられた数値は状態遷移の確率を示す。本シミュレーションでは、図9の(a)に示す各状態(S1、S2、S3)において、ファイルリクエストを発生させるため正規乱数を1回生成し、また状態遷移のため一様乱数を1回生成し、これら2つの操作を交互に繰り返した。
なお、図9の(a)において、同一状態への遷移確率が0.99989などと高い確率になっているのは、同一状態での正規乱数の生成を約100000(状態S3では1000回)連続して行うことにより、それぞれの状態における乱数分布に、同時アクセスの相関を施すためである。
図9の(b)は、図9の(a)に示す各状態(S1、S2、S3)において、正規乱数を生成させる際に使用するパラメータを示す。即ち、各状態において正規乱数は、図9の(b)に示す対応するパラメータを用いて、0〜1999の範囲の整数を生成した。生成した整数は、アクセス要求されたファイルの番号とした。
図10の(a)は、乱数の生成回数を100万個としたときの、ファイル番号ごとのファイルリクエスト回数のヒストグラムを示す。ヒストグラムの山は右からS1、S2、S3の各状態で発生させたファイルリクエストの分布に対応する。このようにしてシミュレーションされた図10の(a)に示されるファイルリクエストの分布を持つファイルリクエストの列に対して、上述した第一実施例に係るファイルの再配置方法を適用して、複数のファイルをD、D、Dの3つのストレージ・デバイスに割り当てた。
図10の(b)乃至(d)は、それぞれ順に、D、D、Dに割り当てられた、複数のファイルに対応するファイル番号ごとのファイルリクエスト回数のヒストグラムを示す。なお、ここでは同時出現閾値Cth=3として処理をしている。
図10の(b)に示されるように、状態S2においてファイルリクエスト回数が350回以上なされた複数のファイルが、互いに相関ある複数のファイルとして同一のDに割り当てられている。また、図10の(c)に示されるように、状態S3においてファイルリクエスト回数が300回以上なされた複数のファイルが、互いに相関ある複数のファイルとして同一のDに割り当てられている。
更にまた、図10の(d)に示されるように、D、Dのいずれにも割り当てられなかった残りのファイル全部が、Dに割り当てられている。このように本発明によれば、複数のストレージ・デバイスに格納される複数のファイルは、依存関係のある複数ファイルごとにグループ分けされ、グループ単位でストレージ・デバイスに再配置される。その結果、本発明に係るストレージ・システムでは、ストレージ・デバイスにおいて一定期間アクセスのない状態が生じやすくなり、より多くのストレージ・デバイスを省エネルギー・モードに移行させることが可能となる。
なお、本発明は、コンピュータ、データ処理システム、コンピュータプログラムとして実現することができる。このコンピュータプログラムは、コンピュータにより読取り可能な媒体に記憶され、提供され得る。ここで、媒体としては、電子的、磁気的、光学的、電磁的、赤外線又は半導体システム(装置又は機器)、或いは、伝搬媒体が考えられる。また、コンピュータにより読取り可能な媒体としては、半導体、ソリッドステート記憶装置、磁気テープ、取り外し可能なコンピュータディスケット、ランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、リジッド磁気ディスク、及び光ディスクが例示される。現時点における光ディスクの例には、コンパクトディスク−リードオンリーメモリ(CD−ROM)、コンパクトディスク−リード/ライト(CD−R/W)及びDVDが含まれる。
以上、実施形態を用いて本発明の説明をしたが、本発明の技術範囲は上記実施形態に記載の範囲には限定されない。例えば上記実施例では、本発明を、ストレージ・システム100を構成する制御装置110に実装する場合について説明したが、本発明は、複数のストレージ・システムに接続される任意のコンピュータに実装することができる。このように上記の実施形態に、種々の変更又は改良を加えることが可能であることが当業者に明らかである。従って、そのような変更又は改良を加えた形態も当然に本発明の技術的範囲に含まれる。
本発明の実施形態に係るストレージ・システム100のハードウェア構成の一例を示す図である。 (a)は、本発明の第一実施形態に係る制御装置110の機能構成の一例を示す図である。(b)は、本発明の第一実施形態に係る記憶装置116の一例を示す図である。 本発明の実施形態に係る同時出現ベクトルの各成分を求める擬似コードの一例を示す図である。 第一実施形態に係る制御装置110による再配置処理の流れを示すフローチャートの一例を示す図である。 第一実施形態に係る制御装置110による分類処理の流れを示すフローチャートの一例を示す図である。 (a)は、本発明の第二実施形態に係る制御装置110の機能構成の一例を示す図である。(b)は、本発明の第二実施形態に係る記憶装置116の一例を示す図である。 第二実施形態に係る制御装置110による前処理の流れを示すフローチャートの一例を示す図である。 第二実施形態に係る制御装置110による対応付け処理の流れを示すフローチャートの一例を示す図である。 (a)は、ファイルリクエストのシミュレーションモデルの一例を示す図である。(b)は、(a)に示すシミュレーションモデルの各状態において、正規乱数を生成させる際に使用したパラメータの表を示す図である。 (a)は、図9に示すファイルリクエストのシミュレーションモデルによる、ファイル番号ごとのファイルリクエスト回数のヒストグラムを示す図である。(b)は、ディスクD2に割り当てられたファイルに対応する、ファイル番号ごとのファイルリクエスト回数のヒストグラムを示す図である。(c)は、ディスクD3に割り当てられたファイルに対応する、ファイル番号ごとのファイルリクエスト回数のヒストグラムを示す図である。(d)は、ディスクD1に割り当てられたファイルに対応する、ファイル番号ごとのファイルリクエスト回数のヒストグラムを示す図である。

Claims (8)

  1. 複数のストレージ・デバイスの入出力を制御する制御装置において実行される、ファイルの再配置プログラムであって、前記再配置プログラムは、前記制御装置に、
    (a)前記制御装置の記憶装置から、複数のファイルの各々に対するアクセス要求の履歴情報を読み出すステップと、
    (b)前記履歴情報を参照して、各ファイルについて、該ファイルと同時にアクセス要求された回数を全ファイルの各々について求めるステップと、
    (c)ステップ(b)の結果に基づいて、同時にアクセス要求された回数の多いファイルどうしを1つのグループにまとめることにより、前記複数のファイルを複数のグループに分類するステップと、
    (d)同じグループに分類された複数のファイルを、同じストレージ・デバイスに再配置するステップと、
    (e)各ストレージ・デバイスへのアクセス要求を監視することにより、一定期間アクセスのないストレージ・デバイスを省エネルギー・モードに移行させるステップとを実行させ、
    前記履歴情報は、前記制御装置において受信された順に並んだ、アクセス対象のファイルの識別情報を含むアクセス要求のリストを含み
    前記ステップ(b)において、前記リストにおいて任意の前記アクセス要求の前後一定範囲に並ぶ各アクセス要求は、前記任意の前記アクセス要求と同時になされた前記アクセス要求とみなされ
    前記一定範囲は、複数のホスト装置において試験用の複数のアプリケーションを実行させ、前記制御装置において、一のアプリケーションからのファイルリクエストと該一のアプリケーションからの次のファイルリクエストとの間にあった他のアプリケーションからのリクエスト数の偏差値のうち所定の値以上の偏差値を求めた場合において、各アプリケーションについて求めた前記所定の値以上の偏差値のうち最大の値とされる
    再配置プログラム。
  2. 前記ステップ(c)は、(c−1)前記再配置対象の各ファイルについて、該ファイルに対して求められた全ファイルの各々の同時にアクセス要求された回数を成分とする同時出現ベクトルを算出するステップと、(c−2)前記各ファイルについて求めた複数の前記同時出現ベクトルのうち、各成分を足し合わせた値が最も大きい前記同時出現ベクトルを基準同時出現ベクトルとして決定するステップと、(c−3)前記各ファイルについて、該ファイルの前記同時出現ベクトルと前記基準同時出現ベクトルとの内積を求め、求めた内積が所定値以上のファイルを、前記基準同時出現ベクトルを有するファイルと同一のグループに分類するステップと、(c−4)ファイルを再配置する対象となる複数のストレージ・デバイスの個数Kを取得し、未分類の前記再配置対象の複数のファイルについて、ステップ(c−2)及び(c−3)を、ステップ(c−3)において前記内積が前記所定値以上のファイルが存在することを条件に、K−1回繰り返すステップとを含む、請求項1記載の再配置プログラム。
  3. 前記再配置プログラムは、前記制御装置に、(f)前記複数のストレージ・デバイスに格納されている前記複数のファイルから、アクセス頻度の低いファイルを除くステップを更に実行させ、前記アクセス頻度の低いファイルを除いた前記複数のファイルを、再配置対象のファイルとする、請求項1に記載の再配置プログラム。
  4. 前記再配置プログラムは、前記制御装置に、(g)前記複数のファイルの各々に対するアクセス要求を観測する観測時間を、単位観測時間ずつ等分割して、複数の時間帯を定義するステップと、(h)各ファイルを、該ファイルへのアクセス要求が最も多くなされた前記時間帯に対応付けるステップとを更に実行させ、前記ステップ(b)、(c)及び(d)の一連のステップは、各時間帯に対応付けられた複数のファイルごとに実行される、請求項1に記載の再配置プログラム。
  5. 複数のストレージ・デバイスの入出力を制御する制御装置において実行される、ファイルの再配置方法であって、
    (a)前記制御装置の記憶装置から、複数のファイルの各々に対するアクセス要求の
    履歴情報を読み出すステップと、
    (b)前記履歴情報を参照して、各ファイルについて、該ファイルと同時にアクセス要求された回数を全ファイルの各々について求めるステップと、
    (c)ステップ(b)の結果に基づいて、同時にアクセス要求された回数の多いファイルどうしを1つのグループにまとめることにより、前記複数のファイルを複数のグループに分類するステップと、
    (d)同じグループに分類された複数のファイルを、同じストレージ・デバイスに再配置するステップと、
    (e)各ストレージ・デバイスへのアクセス要求を監視することにより、一定期間アクセスのないストレージ・デバイスを省エネルギー・モードに移行させるステップとを含み、
    前記履歴情報は、前記制御装置において受信された順に並んだ、アクセス対象のファイルの識別情報を含むアクセス要求のリストを含み
    前記ステップ(b)において、前記リストにおいて任意の前記アクセス要求の前後一定範囲に並ぶ各アクセス要求は、前記任意の前記アクセス要求と同時になされた前記アクセス要求とみなされ
    前記一定範囲は、複数のホスト装置において試験用の複数のアプリケーションを実行させ、前記制御装置において、一のアプリケーションからのファイルリクエストと該一のアプリケーションからの次のファイルリクエストとの間にあった他のアプリケーションからのリクエスト数の偏差値のうち所定の値以上の偏差値を求めた場合において、各アプリケーションについて求めた前記所定の値以上の偏差値のうち最大の値とされる
    再配置方法。
  6. 前記ステップ(c)は、(c−1)前記再配置対象の各ファイルについて、該ファイルに対して求められた全ファイルの各々の同時にアクセス要求された回数を成分とする同時出現ベクトルを算出するステップと、(c−2)前記各ファイルについて求めた複数の前記同時出現ベクトルのうち、各成分を足し合わせた値が最も大きい前記同時出現ベクトルを基準同時出現ベクトルとして決定するステップと、(c−3)前記各ファイルについて、該ファイルの前記同時出現ベクトルと前記基準同時出現ベクトルとの内積を求め、求めた内積が所定値以上のファイルを、前記基準同時出現ベクトルを有するファイルと同一のグループに分類するステップと、(c−4)ファイルを再配置する対象となる複数のストレージ・デバイスの個数Kを取得し、未分類の前記再配置対象の複数のファイルについて、ステップ(c−2)及び(c−3)を、ステップ(c−3)において前記内積が前記所定値以上のファイルが存在することを条件に、K−1回繰り返すステップとを含む、請求項に記載の再配置方法。
  7. 複数のストレージ・デバイスに接続し、前記複数のストレージ・デバイスに格納されている複数のファイルの再配置を行う再配置装置であって、
    前記複数のファイルの各々に対するアクセス要求の履歴情報を格納する履歴情報格納部と、
    前記履歴情報を参照して、各ファイルについて、該ファイルと同時にアクセス要求された回数を全ファイルの各々について求めるカウント部と、
    前記カウント部により求められた各回数に基づいて、同時にアクセス要求された回数の多いファイルどうしを1つのグループにまとめることにより、前記複数のファイルを複数のグループに分類する分類部と、
    同じグループに分類された複数のファイルを、同じストレージ・デバイスに再配置する再配置部と、
    各ストレージ・デバイスへのアクセス要求を監視することにより、一定期間アクセスのないストレージ・デバイスを省エネルギー・モードに移行させる移行部とを含み
    前記履歴情報は、前記再配置装置において受信された順に並んだ、アクセス対象のファイルの識別情報を含むアクセス要求のリストを含み
    前記カウント部は、前記リストにおイルの識別情報を含むアクセス要求のリストを含み、前記カウント部は、前記リストにおいて任意の前記アクセス要求の前後一定範囲に並ぶ各前記アクセス要求を、前記任意の前記アクセス要求と同時になされた前記アクセス要求とみなし
    前記一定範囲は、複数のホスト装置において試験用の複数のアプリケーションを実行させ、前記制御装置において、一のアプリケーションからのファイルリクエストと該一のアプリケーションからの次のファイルリクエストとの間にあった他のアプリケーションからのリクエスト数の偏差値のうち所定の値以上の偏差値を求めた場合において、各アプリケーションについて求めた前記所定の値以上の偏差値のうち最大の値とされる
    再配置装置。
  8. 前記再配置対象の各ファイルについて、該ファイルに対して求められた全ファイルの各々の同時にアクセス要求された回数を成分とする同時出現ベクトルを算出する同時出現ベクトル算出部と、
    前記分類部による分類が未だなされていない未分類の各ファイルについて求めた複数の前記同時出現ベクトルのうち、各成分を足し合わせた合計値が最も大きい前記同時出現ベクトルを基準同時出現ベクトルとして決定する基準同時出現ベクトル決定部と、
    前記未分類の各ファイルについて、該ファイルの前記同時出現ベクトルと前記基準同時出現ベクトルとの内積を求め、求めた前記内積が所定値以上か否かを判定する判定部とを更に含み、
    前記分類部は、前記判定部により前記内積が前記所定値以上と判定された前記同時出現ベクトルを有するファイルを前記基準同時出現ベクトルと同一のグループに分類する、請求項に記載の再配置装置。
JP2008129981A 2008-05-16 2008-05-16 ファイルの再配置装置、再配置方法、及び再配置プログラム Expired - Fee Related JP5284685B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2008129981A JP5284685B2 (ja) 2008-05-16 2008-05-16 ファイルの再配置装置、再配置方法、及び再配置プログラム
US12/465,863 US9256272B2 (en) 2008-05-16 2009-05-14 Method and system for file relocation
US14/996,114 US9710474B2 (en) 2008-05-16 2016-01-14 Method and system for file relocation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008129981A JP5284685B2 (ja) 2008-05-16 2008-05-16 ファイルの再配置装置、再配置方法、及び再配置プログラム

Publications (2)

Publication Number Publication Date
JP2009277147A JP2009277147A (ja) 2009-11-26
JP5284685B2 true JP5284685B2 (ja) 2013-09-11

Family

ID=41317169

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008129981A Expired - Fee Related JP5284685B2 (ja) 2008-05-16 2008-05-16 ファイルの再配置装置、再配置方法、及び再配置プログラム

Country Status (2)

Country Link
US (2) US9256272B2 (ja)
JP (1) JP5284685B2 (ja)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5284685B2 (ja) 2008-05-16 2013-09-11 インターナショナル・ビジネス・マシーンズ・コーポレーション ファイルの再配置装置、再配置方法、及び再配置プログラム
DE112010005249T5 (de) * 2010-02-10 2013-05-02 Hitachi, Ltd. Vorrichtung zur Unterstützung von Produktlinientypen-Entwicklung
US8983910B1 (en) * 2010-04-01 2015-03-17 Symantec Corporation Systems and methods for adaptively selecting file-recall modes
JP5733684B2 (ja) * 2011-05-02 2015-06-10 日本電気株式会社 データ配置装置、データ配置方法およびデータ配置プログラム
WO2013114538A1 (ja) * 2012-01-30 2013-08-08 富士通株式会社 データ管理装置、データ管理方法、データ管理プログラム、及び情報処理装置
CN104516678B (zh) 2013-09-29 2017-09-26 国际商业机器公司 用于数据存储的方法和设备
JP6291937B2 (ja) * 2014-03-19 2018-03-14 日本電気株式会社 ブロックストレージ、ストレージシステム、コンピュータシステム、ブロックストレージ制御方法、ストレージシステム制御方法およびプログラム
JP6394231B2 (ja) 2014-09-25 2018-09-26 富士通株式会社 データ配置制御プログラム、データ配置制御装置およびデータ配置制御方法
JP2016162247A (ja) * 2015-03-02 2016-09-05 富士通株式会社 データ管理プログラム、データ管理装置、及びデータ管理方法
US20160285918A1 (en) * 2015-03-29 2016-09-29 Whitebox Security Ltd. System and method for classifying documents based on access
US10019362B1 (en) 2015-05-06 2018-07-10 American Megatrends, Inc. Systems, devices and methods using solid state devices as a caching medium with adaptive striping and mirroring regions
US10089227B1 (en) 2015-05-06 2018-10-02 American Megatrends, Inc. Systems, devices and methods using a solid state device as a caching medium with a write cache flushing algorithm
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
US10055354B1 (en) 2015-05-07 2018-08-21 American Megatrends, Inc. Systems, devices and methods using a solid state device as a caching medium with a hashing algorithm to maintain sibling proximity
US10176103B1 (en) 2015-05-07 2019-01-08 American Megatrends, Inc. Systems, devices and methods using a solid state device as a caching medium with a cache replacement algorithm
US10114566B1 (en) 2015-05-07 2018-10-30 American Megatrends, Inc. Systems, devices and methods using a solid state device as a caching medium with a read-modify-write offload algorithm to assist snapshots
JP6646338B2 (ja) * 2016-09-01 2020-02-14 日本電信電話株式会社 分散装置および分散方法
US10649665B2 (en) 2016-11-08 2020-05-12 Micron Technology, Inc. Data relocation in hybrid memory
US10628435B2 (en) * 2017-11-06 2020-04-21 Adobe Inc. Extracting seasonal, level, and spike components from a time series of metrics data
US10860730B1 (en) * 2018-02-15 2020-12-08 EMC IP Holding Company LLC Backend data classifier for facilitating data loss prevention in storage devices of a computer network
US11175845B2 (en) * 2018-04-05 2021-11-16 International Business Machines Corporation Adding a migration file group to a hierarchical storage management (HSM) system for data co-location
US11175846B2 (en) 2019-04-11 2021-11-16 International Business Machines Corporation Data co-location in a hierarchical storage management (HSM) system
CN117076387B (zh) * 2023-08-22 2024-03-01 北京天华星航科技有限公司 基于磁带的海量小文件的快速归档恢复系统

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58203558A (ja) * 1982-05-21 1983-11-28 Hitachi Ltd 計算機・記憶装置へのフアイル割り当て方式
JP3086773B2 (ja) 1994-03-16 2000-09-11 株式会社東芝 光ディスク装置
JPH08263335A (ja) * 1995-03-20 1996-10-11 Toshiba Corp データ記憶装置
JP4215286B2 (ja) * 1995-05-18 2009-01-28 セイコーエプソン株式会社 記憶装置内容整理システムおよび記憶装置内容整理方法
JP3531344B2 (ja) * 1996-03-11 2004-05-31 富士ゼロックス株式会社 情報検索装置
US5778392A (en) * 1996-04-01 1998-07-07 Symantec Corporation Opportunistic tile-pulling, vacancy-filling method and apparatus for file-structure reorganization
US5802593A (en) * 1996-09-06 1998-09-01 Intel Corporation Method and apparatus for improving disk drive performance
JP4325817B2 (ja) 1999-04-05 2009-09-02 株式会社日立製作所 ディスクアレイ装置
US6766430B2 (en) * 2000-07-06 2004-07-20 Hitachi, Ltd. Data reallocation among storage systems
US6674598B2 (en) * 2001-05-14 2004-01-06 Hitachi Global Technologies Radial positioning of data to improve hard disk drive reliability
JP2003216460A (ja) * 2002-01-21 2003-07-31 Hitachi Ltd 階層ストレージ装置及びその制御装置
EP1369773A2 (en) * 2002-05-27 2003-12-10 Hitachi, Ltd. A storage system and storage subsystem
US7124272B1 (en) * 2003-04-18 2006-10-17 Symantec Corporation File usage history log for improved placement of files in differential rate memory according to frequency of utilizations and volatility of allocation space
US8473532B1 (en) * 2003-08-12 2013-06-25 Louisiana Tech University Research Foundation Method and apparatus for automatic organization for computer files
EP1723564A2 (en) * 2004-02-11 2006-11-22 Storage Technology Corporation Clustered hierarchical file services
US7383382B2 (en) * 2004-04-14 2008-06-03 Microsoft Corporation System and method for storage power, thermal and acoustic management in server systems
US7698517B2 (en) * 2004-12-02 2010-04-13 Storagedna, Inc. Managing disk storage media
JP2006260420A (ja) * 2005-03-18 2006-09-28 Fujitsu Ltd ウェブサイト分析システム
CN1855094A (zh) * 2005-04-28 2006-11-01 国际商业机器公司 对用户电子文件进行处理的方法和装置
JP2006350599A (ja) * 2005-06-15 2006-12-28 Hitachi Ltd ストレージシステム及びストレージシステムのデータマイグレーション方法
US8249871B2 (en) * 2005-11-18 2012-08-21 Microsoft Corporation Word clustering for input data
US7783956B2 (en) * 2006-07-12 2010-08-24 Cronera Systems Incorporated Data recorder
US7870128B2 (en) * 2006-07-28 2011-01-11 Diskeeper Corporation Assigning data for storage based on speed with which data may be retrieved
JP4859595B2 (ja) * 2006-09-01 2012-01-25 株式会社日立製作所 記憶システム、そのデータ再配置方法、データ再配置プログラム
US8880478B2 (en) * 2006-12-28 2014-11-04 International Business Machines Corporation Scan-free archiving
US7904651B2 (en) * 2007-02-28 2011-03-08 Hitachi, Ltd. Storage device with disk power control based on logical storage area
US7899987B2 (en) * 2007-05-15 2011-03-01 Sandisk Il Ltd. File storage in a computer system with diverse storage media
US8112603B2 (en) * 2007-10-19 2012-02-07 International Business Machines Corporation Methods, systems, and computer program products for file relocation on a data storage device
JP2009187376A (ja) * 2008-02-07 2009-08-20 Canon Inc ファイル管理装置、ファイル管理方法、及びプログラム
JP5284685B2 (ja) 2008-05-16 2013-09-11 インターナショナル・ビジネス・マシーンズ・コーポレーション ファイルの再配置装置、再配置方法、及び再配置プログラム
US20100082697A1 (en) * 2008-10-01 2010-04-01 Narain Gupta Data model enrichment and classification using multi-model approach
US8019765B2 (en) * 2008-10-29 2011-09-13 Hewlett-Packard Development Company, L.P. Identifying files associated with a workflow
US8176105B2 (en) * 2008-12-08 2012-05-08 International Business Machines Corporation Automated file relocation
JP5215898B2 (ja) * 2009-02-10 2013-06-19 株式会社日立製作所 ファイルサーバ、ファイル管理システムおよびファイル再配置方法

Also Published As

Publication number Publication date
US20160162498A1 (en) 2016-06-09
US20090287751A1 (en) 2009-11-19
US9710474B2 (en) 2017-07-18
US9256272B2 (en) 2016-02-09
JP2009277147A (ja) 2009-11-26

Similar Documents

Publication Publication Date Title
JP5284685B2 (ja) ファイルの再配置装置、再配置方法、及び再配置プログラム
US8140491B2 (en) Storage management through adaptive deduplication
Saboji A scalable solution for heart disease prediction using classification mining technique
US9235500B2 (en) Dynamic memory allocation and relocation to create low power regions
CN104272244B (zh) 用于对处理进行调度以实现空间节省的系统、方法
US8117613B2 (en) Optimized virtual machine migration mechanism
US20150106582A1 (en) Apparatus and method for managing data in hybrid memory
CN102385554B (zh) 重复数据删除系统的优化方法
CN107122126B (zh) 数据的迁移方法、装置和系统
KR20160148703A (ko) 클러스터링 저장 방법 및 장치
CN104516475A (zh) 用于管理多核片上系统上的全局芯片功率的方法和装置
CN107734052A (zh) 面向组件依赖的负载均衡容器调度方法
US11030172B2 (en) Database archiving method and device for creating index information and method and device of retrieving archived database including index information
JPWO2010024027A1 (ja) 仮想サーバシステム及び物理サーバ選択方法
KR102465391B1 (ko) 실시간으로 데이터의 증가 속도에 따라 데이터 처리 주기를 설정하는 시스템의 분석 방법
US7792966B2 (en) Zone control weights
Liu et al. An improved random forest method based on RELIEFF for medical diagnosis
CN108021484B (zh) 云端服务系统中磁盘预期寿命值的延长方法及其系统
Cherubini et al. Cognitive storage for big data
US9460749B2 (en) I/O balance processing method and device
US8938479B1 (en) Systems and methods for dynamically selecting a logical location for an index
WO2020136790A1 (ja) エッジシステム、情報処理方法及び情報処理プログラム
JP2020107185A (ja) 画像認識装置、画像認識方法及びプログラム
JP6393411B2 (ja) データ分析支援システム及びデータ分析支援方法
CN114266302A (zh) 面向异构内存设备的深度学习Embedding数据高效处理系统及方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110222

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20121221

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130108

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130405

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130530

R150 Certificate of patent or registration of utility model

Ref document number: 5284685

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees