JP7269780B2 - 情報処理装置および情報処理装置のデータ管理方法 - Google Patents

情報処理装置および情報処理装置のデータ管理方法 Download PDF

Info

Publication number
JP7269780B2
JP7269780B2 JP2019073622A JP2019073622A JP7269780B2 JP 7269780 B2 JP7269780 B2 JP 7269780B2 JP 2019073622 A JP2019073622 A JP 2019073622A JP 2019073622 A JP2019073622 A JP 2019073622A JP 7269780 B2 JP7269780 B2 JP 7269780B2
Authority
JP
Japan
Prior art keywords
data
file
access
storage device
prefetch
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019073622A
Other languages
English (en)
Other versions
JP2020173508A (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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2019073622A priority Critical patent/JP7269780B2/ja
Priority to US16/842,387 priority patent/US11194504B2/en
Publication of JP2020173508A publication Critical patent/JP2020173508A/ja
Application granted granted Critical
Publication of JP7269780B2 publication Critical patent/JP7269780B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0653Monitoring storage devices or systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Description

本発明は、データ仮想化技術を用いたEdge/Core連携によるストレージシステムの運用において、クライアントによるデータ要求に対する応答を高速化する技術に関する。
現在、IoTデータの爆発的な増加により、Edgeコンピューティングの需要が高まっている。一般的にEdge側のデータストアのストレージ容量は、小さいことが多い。このとき、爆発するデータ量に対応するためには、データ仮想化技術を用いたEdge/Core連携によるストレージ運用が必要となる。
近年、アクセス対象ファイルに関連するファイルを先読みし、データの読み取りを高速化する技術が用いられている。Edge/Core連携において、Edgeに存在しないデータを読み出すには、CoreからEdgeに読み出す必要がある。このとき、読み出したデータに関連するデータを先読みすることにより、クライアントからの要求に即座に応答可能となる。しかし、Edgeの容量は有限であり、全てのファイルをEdgeで管理できないため、Edgeのデータを選定する必要がある。そこで、先読みするデータを選定したり、所定時間でデータを削除する技術を用いている。
例えば、特許文献1では、先読みゲーム・アセットまたはストリーム・ゲーム・アセットとして分類されたゲーム・アセットに先読み命令が関連付けられることから、エッジ・コンピューティング・インフラストラクチャが、インテリジェント・ストリーミングを容易にすることが開示されている。
また、特許文献2では、ストリーム情報に基づいてメモリに先読みされた、データブロックへのアクセスを監視し、データブロックの何れかが最後にアクセスされてからの経過時間に基づいてストリームの停止を判定し、ストリームが停止したと判定した場合、データブロックの少なくとも一部をメモリから削除する技術が開示されている。
特表2017-536143号公報 特開2017-072982号公報
Edgeノードに記憶できるデータの容量は有限であるため、クライアントが必要としないデータは削除して空き容量を確保する必要がある。
Edgeノードに先読みしたデータを削除する場合、例えば特許文献2の技術では、先読みしたページに所定時間アクセスがないと削除される。このため、将来的にクライアントが要求する可能性のあるデータであっても削除される場合がある。このようなデータが削除されると、データ削除後にクライアントがデータを要求したときに、再度Coreノードからデータを読み出す必要が生じる。
このため、Edge/Core間のデータ送受信で効率の良い先読みをすることができない。
本発明の一側面は、記憶装置を備え、クライアントの要求に基づいてクライアント要求データを出力するとともに、クライアントの要求の前に所定の先読みデータを前記記憶装置に記憶する、情報処理装置である。この装置では、データのアクセス履歴に基づいてデータ相互の関連度を計算する、関連度計算モジュールと、クライアント要求データと所定の関連度を有するデータを先読みデータとして記憶装置に記憶し、また、クライアント要求データおよび先読みデータの少なくとも一つを記憶装置に記憶しようとするときに、記憶装置の記憶容量が不足する場合には、関連度を用いて記憶装置から削除するデータを決定する先読み・削除モジュールと、を備える。
本発明の他の一側面は、クライアントの要求に基づいてクライアント要求データをクライアントに提供する情報処理装置のデータ管理方法である。この方法では、データのアクセス履歴に基づいて計算されるデータ相互の関連度を用いる。そして、クライアントの要求を契機に、クライアント要求データが第1の記憶装置に存在するかどうかを確認する第1のステップと、クライアント要求データが第1の記憶装置に存在しない場合、クライアント要求データを第2の記憶装置から第1の記憶装置に取得する第2のステップと、クライアントの要求を契機に、クライアント要求データと所定の関連度を有する先読みデータを抽出する第3のステップと、先読みデータを第2の記憶装置から第1の記憶装置に取得する第4のステップと、クライアント要求データおよび先読みデータの少なくとも一つを第1の記憶装置に取得しようとするときに、第1の記憶装置の記憶容量が不足する場合には、関連度を用いて第1の記憶装置から削除するデータを決定する第5のステップと、を備える。
Edge/Core間のデータ送受信で効率の良い先読みをすることができる。本発明のさらに具体的な課題、構成、効果は、実施例の記載において明らかにされるであろう。
実施形態の構成例を示すブロック図である。 実施形態における、ファイル/オブジェクト情報を示す表図である。 実施形態における、先読み設定情報を示す表図である。 実施形態における、関連度情報を示す表図である。 実施形態における、アクセス履歴を示す表図である。 実施形態における、先読みリストを示す表図である。 実施形態における、削除(仮想化)リストを示す表図である。 実施形態における、Edgeノードがクライアントからファイル/オブジェクト読み出し要求を受信した際のファイル/オブジェクト管理モジュールのフローチャート例である。 実施形態における、関連ファイル抽出処理のフローチャート例である。 実施形態における、空き容量確保処理のフローチャート例である。 実施形態における、関連度計算モジュールのフローチャート例である。
実施の形態について、図面を用いて詳細に説明する。ただし、本発明は以下に示す実施の形態の記載内容に限定して解釈されるものではない。本発明の思想ないし趣旨から逸脱しない範囲で、その具体的構成を変更し得ることは当業者であれば容易に理解される。
以下に説明する発明の構成において、同一部分又は同様な機能を有する部分には同一の符号を異なる図面間で共通して用い、重複する説明は省略することがある。
同一あるいは同様な機能を有する要素が複数ある場合には、同一の符号に異なる添字を付して説明する場合がある。ただし、複数の要素を区別する必要がない場合には、添字を省略して説明する場合がある。
本明細書等における「第1」、「第2」、「第3」などの表記は、構成要素を識別するために付するものであり、必ずしも、数、順序、もしくはその内容を限定するものではない。また、構成要素の識別のための番号は文脈毎に用いられ、一つの文脈で用いた番号が、他の文脈で必ずしも同一の構成を示すとは限らない。また、ある番号で識別された構成要素が、他の番号で識別された構成要素の機能を兼ねることを妨げるものではない。
図面等において示す各構成の位置、大きさ、形状、範囲などは、発明の理解を容易にするため、実際の位置、大きさ、形状、範囲などを表していない場合がある。このため、本発明は、必ずしも、図面等に開示された位置、大きさ、形状、範囲などに限定されない。
データをEdgeノードに先読みしていると、新たなデータ取得時に容量不足と想定される場合、データ取得容量分のデータを削除する必要がある。また、帯域利用による課金などがある場合は、Edgeが保持するデータは、基本的に保持し続け、Edge/Core間でデータ送受信による帯域の利用を抑制することが望ましい。
データの削除に関して特許文献2の技術では、アクセス頻度が低いものから削除する。このため、先読み予定または先読み直後のデータもアクセス頻度が低いと判定される場合があり、先読み効果が得られない場合がある。また、削除したデータを再読み込みすると、Edge/Core間でデータ送受信が増加する。
以下で説明する関連性を考慮したデータ先読み・削除(仮想化)手法の一例では、データ間の関連性を示す関連情報を用いて先読みするデータを決定する。Edgeノードで取得したデータは、基本的に削除せず、クライアントの要求データまたはその関連するデータをCoreノードから取得する際に、容量不足となる場合にデータの削除(仮想化)を行う。このとき、データ間の関連性を示す関連情報を用いて、削除するデータも決定する。削除するデータは、先読みするデータ容量の不足分とする。
これにより,先読みデータが所定のアクセス時間を越えていても削除されない。よって、最低限のEdge/Core間のデータ送受信で最適な先読みを行うことが可能となり、Edge/Coreの負荷低減、帯域利用料の削減、クライアントのデータ取得の高速化が可能となる。また、ネットワークの帯域と、先読みに使用できる時間を考慮して、先読みするデータの容量を定める。
図1~図10を用いて、本発明の実施形態を説明する。実施形態は、ファイル/オブジェクトを管理するCoreノードと、ファイル/オブジェクトを仮想化し、クライアント要求に応じて、Coreノードからファイル/オブジェクトを取得・削除(仮想化)するEdgeノードからなるストレージシステムの例である。
本実施例は、(1)Edgeノードがクライアントから要求を受け、ファイル/オブジェクト情報の関連度を用いて、ファイル/オブジェクトを先読みする処理、(2)先読みの時に、容量不足が想定される場合において、不足分の容量を確保するため、ファイル/オブジェクト情報の関連度を用いて削除(仮想化)するファイル/オブジェクトを決定し、実行する処理について示す。
図1は、実施形態において、Edgeノード100とCoreノード200による関連性を考慮したデータ先読み・削除(仮想化)システムの構成例である。なお、Edgeノード100に対しては、図示しないクライアントが接続されており、Edgeノード100からファイルの取得が可能となっている。なお、本明細書等ではデータとファイルの語は、特段の説明がない限り同義で用いることにする。
<1.Edgeノード>
Edgeノード100は、CPU110、メモリ120、ネットワークインターフェース130、記憶装置140を有する。また、Edgeノードは複数あっても良い。
CPU110は、メモリ120に格納されたプログラムを実行する。
メモリ120は、ファイル/オブジェクト管理モジュール121、関連度計算モジュール122、先読み・削除(仮想化)モジュール123を有し、ファイル/オブジェクト情報400、関連度情報410、先読み設定情報500、アクセス履歴情報600、先読みリスト700、削除リスト800を格納する。
ファイル/オブジェクト管理モジュール121は、記憶装置140のファイル/オブジェクトを管理し、ファイル/オブジェクト情報400を更新する。また、他ノードからのデータの取得や、データの容量管理を行う。
関連度計算モジュール122は、アクセス履歴情報600、先読み設定情報500を用いて、関連度計算アルゴリズムにより、関連度情報410の関連度を更新する。
先読み・削除(仮想化)モジュール123は、関連度情報410の関連度を用いて、クライアントから取得要求があったファイル/オブジェクトに関連するファイル/オブジェクトを決定し、取得する。また、ファイル/オブジェクトを取得する際に、容量不足が想定される場合において、関連度情報410の関連度を用いて、削除(仮想化)するファイルを決定する。
ファイル/オブジェクト情報400は、記憶装置140が保持するファイル/オブジェクトの情報、仮想ファイル/仮想オブジェクトの情報、および各種データの関連情報を保持する。
先読み設定情報500は、関連度計算や先読み・削除(仮想化)時に必要な情報(帯域幅や空き容量など)を保持する。
アクセス履歴情報600は、クライアントからファイル/オブジェクトの取得要求を受けた際の時刻などのログ情報を保持する。
先読みリスト700は、先読みファイルを決定する際に生成する、先読みファイルの候補のリストを保持する。
削除リスト800は、先読みファイルを全て取得すると空き容量不足となる場合に、空き容量不足を解消するために削除(仮想化)する候補のリストを保持する。
ネットワークインターフェース130は、外部ネットワークに接続し、他ノードやクライアントとデータを送受信する。
記憶装置140は、ファイル/オブジェクトの実体(実データ)141とファイル/オブジェクトの仮想情報(仮想データ)142を保持する。また、ファイル/オブジェクト情報400のようなメタデータを記憶装置140で管理しても良い。
本実施例では計算や制御等の機能は、メモリ120に格納されたプログラムがCPU110によって実行されることで、定められた処理を他のハードウェアと協働して実現される。計算機などが実行するプログラム、その機能、あるいはその機能を実現する手段を、「機能」、「手段」、「部」、「ユニット」、「モジュール」等と呼ぶ場合がある。
以上のEdgeノードの構成は、単体のコンピュータで構成してもよいし、あるいは、入力装置、出力装置、処理装置、記憶装置の任意の部分が、ネットワークで接続された他のコンピュータで構成されてもよい。
本実施例中、ソフトウエアで構成した機能と同等の機能は、FPGA(Field Programmable Gate Array)、ASIC(Application Specific Integrated Circuit)などのハードウェアでも実現できる。
<2.Coreノード>
Coreノード200は、CPU210、メモリ220、ネットワークインターフェース230、記憶装置240を有する。また、Coreノードは、複数あっても良い。Coreノードは実データを管理し、Edgeノード100からの要求により、実データの一部がEdgeノードに送信・記憶される。
CPU210は、メモリ220に格納されたプログラムを実行する。メモリ220は、ファイル/オブジェクト管理モジュール221を有する。
ファイル/オブジェクト管理モジュール221は、ファイル/オブジェクトのデータの容量や記憶装置240上の位置等を記憶し、データの入出力を可能にする。
ネットワークインターフェース230は、外部ネットワークに接続し、他ノードとデータを送受信する。
記憶装置240は、ファイル/オブジェクトの実態(実データ)241を保持する。また、Coreノードであっても、他Coreノードの実データを仮想データとして、保持しても良い。このとき、ファイル/オブジェクト管理モジュール221は、仮想データも管理する。
<3.ファイル/オブジェクト情報>
図2は、ファイル/オブジェクト情報400の例を示す。ファイル/オブジェクト情報400は、Edgeノード100のファイル/オブジェクト管理モジュール121、関連度計算モジュール122、先読み・削除(仮想化)モジュール123が使用する。
ファイル/オブジェクト情報400は、ファイル名401、最終アクセス日時402、仮想ファイルフラグ403、実ファイルサイズ404を格納する。ファイル/オブジェクト情報400は、ファイル/オブジェクト管理モジュール121が作成し、更新する。最終アクセス日時402、仮想ファイルフラグ403はリアルタイムで更新するのが良い。
ファイル名401は、記憶装置140に保持するファイル/オブジェクト141および仮想ファイル/仮想オブジェクト142のファイル名を保持する。最終アクセス日時402は、ファイル名401に対するクライアントからの要求があった最終アクセス日時を保持する。仮想ファイルフラグ403は、記憶装置140に実データとして保持しているか、仮想データとしているかを示す。実ファイルサイズ404は、記憶装置140に保持している実データあるいは仮想データの実データサイズを示す。
<4.先読み設定情報>
図3は、先読み設定情報500の例を示す。先読み設定情報500は、Edgeノード100の関連度計算モジュール122および先読み・削除(仮想化)モジュール123が使用する。先読み設定情報500は、基本的にユーザ(オペレータ)が設定し、更新するが、動的に変化するパラメータはシステムが自動的に変更しても良い。
先読み設定情報500は、帯域幅501、先読みファイル取得時間502、空き容量503、関連ファイル閾値504を保持する。
帯域幅501は、Edgeノード100とCoreノード200間のノード間の帯域幅を示す。Coreノード200が複数ある場合は、各Coreノードを識別する情報に対応付けて、Edgeノードと各Coreノード間の帯域幅をそれぞれ保持する。帯域幅は予めユーザが設定するか、公知の測定方法でネットワークインターフェース130が測定する。帯域幅が時間的に変動する場合は、任意の時間間隔で更新すればよいが、一定値としてもよい。
先読みファイル取得時間502は、任意に決定され、先読みファイルの容量を決定する際に、帯域幅501と掛け合わせて用いるための情報を示す。先読みできるファイルの容量は、帯域幅と先読みファイル取得時間502によって定まるため、ユーザはシステムの用途や性能に応じて適当なファイル取得時間を設定する。
空き容量503は、Edgeノード100の記憶装置140の空き容量情報を示す。空き容量は、記憶装置140への先読みファイルの記憶や削除に従って更新される。
関連ファイル閾値504は、関連度計算モジュール122が関連度を計算する際に、連続してアクセスされたファイルが関連しているかを決めるための閾値を示す。閾値は任意にさだめてよい。図3の例では、10秒以内に連続してアクセスされた2つのファイルのファイルを関連ファイルと定めている。また、閾値に代えて、関連度を計算するための関数を定義する情報を格納しておいてもよい。
<5.関連度情報>
図4は、関連度情報410の例を示す。関連度情報410は、Edgeノード100の関連度計算モジュール122、先読み・削除(仮想化)モジュール123が使用する。関連度情報410は、関連度計算モジュール122が、先読み設定情報500とアクセス履歴情報600を元にして生成、更新する。生成や更新は、例えばファイルへのアクセスを契機として行なうが、定期的にまとめてバッチ処理しても良い。
関連度情報410は、関連元のファイル名411、関連ファイル1のファイル名412、関連ファイル1の関連度413、関連ファイル1のアクセス頻度414、関連ファイル2のファイル名415、関連ファイル2の関連度416、関連ファイル3の関連度417およびそれ以降の関連ファイル情報418を格納する。
なお、ファイル名411のファイルに関連するファイルが複数有る場合には、関連ファイル1、関連ファイル2・・・のように情報を格納している。
関連度は、先読み設定情報500の関連ファイル閾値(あるいは関数)504とアクセス履歴情報600を用い、2つのファイルのアクセスの時間間隔(秒)に基づいて決定する。例えば、ファイル名411のファイルと関連ファイル名412のファイルのアクセス間隔(秒)と、関連ファイル閾値504を比較し、アクセス間隔が閾値を超える場合を関連度0%とし、0秒後に取得されたデータであれば100%とし、アクセス間隔と関連度が線形の関係として関連度を計算する。あるいは、シグモイド(sigmoid)関数を利用して、閾値を変曲点として、横軸を差分時間(アクセス間隔)として関連度を計算してもよい。例えば、
f(t)=1-(-1)/(1+exp(-g(t/i-1)))
のような関数を用いる。ここで、
f(t):関連度
t:差分時間
g:関数のグラフの傾斜
i:関数のグラフの変曲点
である。
一般には、関連度を表す関数f(t)として、tの増加に伴いf(t)が減少する単調減少関数であって、所定のt(関連ファイル閾値504)を超えた場合においてf(t)=0になるような関数を用いればよい。
アクセス頻度は、アクセス履歴情報600を用いて決定する。例えば、アクセス履歴内の所定の期間内にFile1からFile2の順でアクセスが100回あったとした場合に、アクセス頻度を100と設定する。
一例として関連度計算モジュール122は、アクセス頻度414のそれぞれのアクセス毎に関連度を計算し、平均値を計算して関連度413とする。例えば、図4のFileAとFileBの関連度70%は、10回のアクセスの其々で計算された関連度の平均値である。
アクセス頻度が小さくサンプル数が少ない場合は、関連度の信頼度が低いとして関連度を用いないようにしてもよい。たとえば、アクセス頻度3回を閾値としておき、図4のFile1とFile3の関連度20%は信頼度が低いとして、関連度を計算しないかあるいは無効にするように構成してもよい。
<6.アクセス履歴情報>
図5は、Edgeノード100の関連度計算モジュール122が関連度情報410の関連度を更新するために使用するアクセス履歴情報600の例を示す。アクセス履歴情報600は、一般的なノードが記録しているアクセス履歴情報を用いてよい。アクセス履歴情報600は、ファイル名602、アクセス時間603、ユーザ名604、ホスト名605を保持する。
ファイル名602は、クライアントがアクセスしたファイル名を示す。アクセス時間603は、クライアントがアクセスした時間を示す。ユーザ名604は、クライアントのユーザ名を示す。ホスト名605は、アクセス元のホスト名(IPアドレス)を示す。
なお、図4の関連度情報410のテーブルは、図5のアクセス履歴情報600を基にしてEdgeノード100毎に1つ作成すればよい。ただし、ユーザ(クライアント)毎、ホスト(CoreノードIPアドレス)毎、あるいはユーザとホストの組み合わせ毎に、別々に計算し、個別のテーブルとして作成することもできる。例えば、あるクライアントに対する先読み処理は、当該クライアントのアクセス履歴に基づいて計算した関連度情報に基づいて行なう。このようにすると、ユーザやホストの特性を関連度に反映することが可能である。
<7.先読みリスト>
図6は、Edgeノード100の先読み・削除(仮想化)モジュール123が使用する先読みリスト700を示す。先読みリスト700は、先読み予定ファイル名701、関連段数702、関連度703、仮想ファイルフラグ704、実ファイルサイズ705、抽出関連ファイル706を保持する。
先読みリスト700は、先読み・削除(仮想化)モジュール123により、例えばEdgeノード100に対してクライアントからファイルの要求があった際に生成される。先読み・削除(仮想化)モジュール123は、生成した先読みリスト700に基づいて、ファイルの先読みや削除を行う。当該処理が完了した後は、生成した先読みリスト700は廃棄してよい。
先読み予定ファイル名701は、クライアントが要求したファイルに対して、先読み・削除(仮想化)モジュール123が抽出した関連ファイル名を示す。抽出に際しては、先読み・削除(仮想化)モジュール123は、関連度情報410を参照して、クライアントが要求したファイルに関連するファイルを抽出する。
関連段数702は、クライアントが要求したファイルを0段目として、その関連ファイルを1段目、1段目のファイルに関連するファイルを2段目として、クライアントが要求したファイルからの距離を示す。
関連度703は、関連元の関連度(クライアントが要求したファイルは100%とする)と関連度情報410の関連度を合成した値を示す。合成方法は、関連度計算のアルゴリズムによって異なる。例えば、1段目の関連ファイルは関連度情報410の関連度をそのまま用い、2段目以降の関連ファイルは経由したファイルの関連度と自分の関連度の積を関連度703とする。
仮想ファイルフラグ704は、先読み予定ファイル名701のファイルが記憶装置140に仮想データとして保持しているか、実データとして保持しているかを示す。
実ファイルサイズ705は、先読み予定ファイル名701の実データのサイズを示す。
抽出関連ファイル706は、クライアント要求ファイルに関連するファイルにおいて、先読み予定のファイルと先読みしないファイルを区別するフラグ、および先読みする優先順を示す。
図6の例では、クライアントが要求したファイルはFileAであり、関連度は100%である。FileAが仮想ファイルの場合は、Coreノード200から実ファイルとしてEdgeノード100の記憶装置140のファイル/オブジェクト141として取得される。図4の関連度情報410に基づいて、FileB,C,D,Eが先読みリスト700にリストアップされ、関連度703が計算される。FileB,Cは関連度が上位である仮想ファイルである。FileB,Cの容量は合計100MBであり、図3の先読み情報500の帯域幅501と先読みファイル取得時間502から、先読み可能な容量((100MB/sec)×1sec)である。
FileBとFileCでは、FileBのほうが関連度が高く、FileCより先読みの優先度が高い。よって、抽出関連ファイル706に先読みの優先度(優先順位)を示すフラグが格納される。また、FileD,Eは関連度が下位であるファイルであり、先読み可能な容量からあふれているため、これらが仮想ファイルである場合には先読み候補から除外される。また、実ファイルである場合には、削除候補となる。これらを示すフラグを抽出関連ファイル706として格納する。
<8.削除(仮想化)リスト>
図7は、Edgeノード100の先読み・削除(仮想化)モジュール123が使用する削除(仮想化)リスト800を示す。削除(仮想化)リスト800は、削除(仮想化)予定ファイル名801、仮想ファイルフラグ802、実ファイルサイズ803、抽出関連ファイル804、削除(仮想化)または先読みキャンセル対象805を保持する。削除(仮想化)リスト800は、先読み予定ファイル名701生成後先読み・削除(仮想化)モジュール123が生成する。
削除(仮想化)予定ファイル名801は、削除(仮想化)を行う候補のファイル名を示す。仮想ファイルフラグ802は、削除(仮想化)予定ファイル名801が実データか仮想データかを示す。実ファイルサイズ803は、削除(仮想化)予定ファイル名801の実データのサイズを示す。
抽出関連ファイル804は、先読み時に先読みリスト700の抽出関連ファイル706にも挙がっていた場合、抽出関連ファイル706と同じ値を示す。先読みリスト700に先読み対象として挙がっていた場合は、削除する優先度を下げる。削除(仮想化)しないと容量が確保できない場合において、削除(仮想化)リスト800で優先度が高いものから削除(仮想化)候補とする。
削除(仮想化)または先読みキャンセル対象805は、削除(仮想化)予定ファイル名801に挙がっているものの中で、容量の確保のために削除する対象ファイルを示すフラグを格納する。
図7の例では、図2のファイル・オブジェクト情報400に基づいて、クライアント要求ファイル以外で最もアクセスが古い実ファイルであるFileDが抽出されている。さらに、図4の関連度情報410に基づいて、FileDの関連ファイルが抽出され、実ファイルであるFileEが抽出されている。
図6と図7の例では、先読み対象となるのはFileBとFileCであり、削除対象となるのはFileDとFileEとなる。
<9.ファイル/オブジェクト読み出し要求の受信時の処理>
図8は、Edgeノード100がクライアントからデータ取得要求を受領し、ファイル/オブジェクト情報400、関連度情報410と先読み設定情報500を元に、Coreノード200からデータを取得・先読みし、不足分の容量を確保する処理のフローチャート例を示す。
ファイル/オブジェクト管理モジュール121は、クライアントからデータ処理要求を受信し、当該データが仮想であれば実体化し、先読み処理を開始する。
<9-1.クライアント要求ファイルの取得>
クライアント要求ファイル(あるいは要求データ)の応答は以下のように行う(S101~S105、S300)。
ファイル/オブジェクト管理モジュール121は、ファイル/オブジェクト情報400により、クライアント要求ファイルが仮想であるか(すなわち、記憶装置140にないか)確認する(S101)。
クライアント要求ファイルが仮想である場合は、Coreノード200から実データを取得する処理を開始する。ファイル/オブジェクト情報400により、クライアント要求ファイルの実ファイルサイズを確認する。
ファイル/オブジェクト管理モジュール121は、クライアント要求ファイルの実データサイズ分の空き容量がEdgeノード100の記憶装置140にあるか確認する(S102)。
クライアント要求ファイルの実データサイズ分の空き容量がない場合は、容量確保処理を開始する。
目標確保容量をクライアント要求ファイルの実データサイズ分に設定する(S103)。
先読み・削除(仮想化)モジュール123に目標確保容量の値を渡し、空き容量を確保する。詳細は、図10の空き容量確保処理で説明する(S300)。
クライアント要求ファイルの実データ分の空き容量の確保後または既にある場合は、Coreノード200からクライアント要求ファイルの実データを取得する(S104)。
クライアント要求ファイルが仮想でないまたはCoreノード200から取得後の場合は、記憶装置140に格納されているクライアント要求ファイルをクライアントへ送信する(S105)。
<9-2.先読み処理>
先読み処理は、上記と並行して以下のように行う(S111~S116、S200、S300)。
ファイル/オブジェクト管理モジュール121は、クライアント要求ファイルを、関連ファイルの抽出対象(関連元ファイル)に設定する(S111)。
ファイル/オブジェクト管理モジュール121は、先読み設定情報500から、帯域幅501と先読みファイル取得時間502を取得し、掛け合わせた値を先読み総容量に設定する(S112)。
先読み・削除(仮想化)モジュール123に先読み総容量と抽出対象(関連元ファイル)の情報を渡し、関連ファイルを抽出する。詳細は、図9の関連ファイル抽出を参照(S200)。
抽出した関連ファイルを先読みリストに設定する(S113)。
抽出した先読みファイルの取得に必要な容量の不足分を計算する。先読みファイルが既に実データであればサイズは、0となり、全てが仮想データであれば、最大で先読み総容量分となる(S114)。
目標確保容量に先読みファイルの取得の際に不足する分の容量を設定する(S114)。
先読み・削除(仮想化)モジュール123に目標確保容量の値を渡し、空き容量を確保する。詳細は、図10の空き容量確保処理を参照(S300)。
先読みファイルを取得する(S116)。
<10.関連ファイル抽出>
図9は、先読み・削除(仮想化)モジュール123が関連ファイルを抽出する処理S200のフローチャート例を示す。なお、処理S200は、先読み対象となる関連ファイルを抽出する場合、および実ファイルの削除対象(仮想化)となる関連ファイルを抽出する場合の双方に用いられる。
先読み・削除(仮想化)モジュール123に抽出対象ファイル(関連元ファイル)と先読みする関連ファイルの総容量が設定された場合に処理を開始する。先読み対象となる関連ファイルを抽出する場合には、初期の抽出対象ファイルはクライアント要求ファイルである。実ファイルの削除対象となる関連ファイルを抽出する場合には、初期の抽出対象ファイルは低アクセスファイルである。
使用するファイル関連度情報410の指定がある場合は、設定する(S208)。たとえば、特定ユーザのみの関連度情報を使用するなどである。
関連ファイルを抽出する抽出対象ファイルの関連段数を0、関連度100%とし、関連ファイルリストに追加する(S201)。
抽出対象ファイルの関連ファイルについて、関連度情報410を用いて抽出する(S202)。
S202で抽出した関連ファイルについての関連段数を1段増やす(S203)。
関連ファイルリストの関連元ファイルの関連度と関連ファイルの関連度を合成する。合成の方法は、例えば、掛け合わせたり平均を取ったりすることで合成する(S204)。
関連データの関連段数と合成した関連度を関連ファイルリストに追加する(S205)。
全ての関連ファイルについて調査したか確認する(S206)。
全ての関連ファイルについて調査していない場合は、次の関連段数の処理を開始する。そのため、現在の関連ファイルを抽出対象ファイルに設定して、処理S202以降を継続する(S207)。
全ての関連ファイルについて調査した場合は、関連ファイルリストの作成を終了する。作成された関連ファイルリストを元に、先読みリスト700あるいは削除リスト800が設定される(S113)。
図6の先読みリスト700の例では、クライアント要求ファイルはFileAであり、関連段数0、関連度は100%である。FileAと関連するFileBは、関連段数1段である。例えば、図4の関連度情報410により、FileAとFileBの関連度が70%とすると、例えば、合成されたFileBの関連度は、FileAの関連度100%とFileBの関連度70%の積で70%である(S204)。
FileBと関連するFileCは、関連段数2段である。例えば、図4の関連度情報410により、FileBとFileCの関連度が40%とすると、例えば、合成されたFileCの関連度は、FileAの関連度100%とFileBの関連度70%とFileCの関連度40%の積で28%である(S204)。以降のFileD,FileEも同様に計算できる。
FileAはクライアントの要求ファイルであるため、直ちに読み出される。関連ファイルであるFileB~FileEのうち、仮想データはFileBとFileCであるため、これらが先読みファイルの候補となる。
<11.空き容量の確保>
図10は、先読み・削除(仮想化)モジュール123が空き容量を確保するための処理S300のフローチャート例を示す。
先読み・削除(仮想化)モジュール123に目標確保容量が設定された場合に処理を開始する。
使用する関連度情報410(特定ユーザのみなど)の指定がある場合は、設定する(S309)。
関連ファイルの抽出対象に指定が無ければ低アクセスファイルのファイルを設定する(S301)。低アクセスファイル(低アクセスデータ)とは、クライアントからの要求がないと予想されるファイルであり、例えば一定期間内でのアクセス数が最も低いファイル、あるいはアクセス時間が最古のファイルである。これらはファイル・オブジェクト情報400やアクセス履歴情報600を参照することで特定可能である。
低アクセスファイルの関連ファイルを抽出し関連ファイルリストを作成する(S200)。関連ファイルリストの作成方法は、図9で説明したとおりであるが、関連ファイルの抽出対象(関連段数0段目のファイル)の設定が異なる。
関連データファイルの抽出順に削除対象に設定する。このとき、削除対象からはクライアント要求ファイルを除く。また、先読みリスト700中で先読み予定となっている関連ファイルがある場合は、削除対象としての優先度を下げる、あるいは、先読み予定の関連ファイルを除いたファイルを削除対象に設定し、削除リストを作成する(S302)。
またこのとき、既に先読み等がされており記憶装置140に記憶されている実ファイルのうち、一定期間内でのアクセス頻度が高いまたはアクセス時間が新しいファイル(高アクセスファイル)に対して関連度の高いファイルは、削除対象から除外しても良い。
目標削除容量分の削除対象が決定したか確認する(S303)。高アクセスファイルの抽出においては、上記のアクセス頻度、アクセス時間、および関連度に適当な閾値を設けておけばよい。
削除対象が決定してない場合は、次の低アクセスデータが存在するか確認する(S304)。
次の低アクセスデータがある場合は、抽出対象ファイルに設定し、再度関連ファイルを抽出し、削除対象を追加する(S305)。
全ての低アクセスデータを調べてなお、削除目標容量に達しなかった場合は、先読みリスト700の先読み予定データの最も低い優先度のデータの先読みをキャンセルする(S306)。
目標削除容量に達した場合は、先読みリスト700と削除リスト800を元に、先読みファイルおよび削除ファイルを決定する(S307)。
削除対象の実データを削除し、仮想データ化する(S308)。
図7の削除リスト800の例では、例えば図2のファイル・オブジェクト情報400で最もアクセス日時が古いFileDが最初の抽出対象ファイルとなる。そして、図4の関連度情報410によると、FileDに関連するFileEがあるため、FileEが関連ファイルとして抽出される。削除対象ファイルとする場合には、関連元ファイルに関連する関連ファイルは、全て関連元ファイルと一括して削除ができるため、関連度の計算は省略しても良い。ただし、関連ファイルが同時にクライアント要求ファイルであるときや、先読みファイルとされている場合には、削除しないのは既に述べたとおりである。
また、削除対象は実ファイルに限定される。先に述べたように、先読みリストで先読み対象になっているファイルは削除対象から除外される。この例では図6の先読みリスト700の抽出関連ファイル706が参照され、抽出関連ファイル804で先読み対象でないことが判別できる。よって、FileDとFileEが削除(仮想化)または先読みキャンセル対象805により、削除対象として設定される。
いま、図7の例のように、目標削除容量が100MBである場合には、FileDとFileEの仮想化により、記憶装置140に100MBの空き容量が確保できる。よって、記憶装置140からFileDとFileEが削除され、FileBとFileCが記憶される。仮に、FileDとFileEの削除で目標削除容量が達成できない場合には、先読みファイルの下位のファイル(図6の例ではFileC)の先読みがキャンセルされる。
<12.関連情報の作成>
図11は、関連度計算モジュール122が関連度情報410を生成する処理のフローチャート例を示す。定期または任意で関連度情報410を更新する場合に、処理を開始する。
アクセス履歴情報600を取得する(S1101)。
作成する関連度情報410に特定のユーザ・ホストのみなどの指定があるか確認する(S1102)。この指定により、実施例のデータ先読み・削除を適用するユーザ・ホストを指定することが可能である。
特定のユーザやホストのみなどの指定がある場合は、アクセス履歴情報600を特定のユーザ・ホストでフィルタする(S1103)。
指定が無い、あるいは既にフィルタ済みの場合は、先読み設定情報500から関連ファイル閾値504あるいは関連度を計算するための関数を取得する(S1104)。
以下の処理で、アクセス履歴情報600のn番目のファイル(関連元ファイル)と、m番目のファイルの関連度を順次計算する。ファイル総数をdとする。
関連元ファイルの番号nに1をセットする(S1105)。関連度を計算するファイルの番号にmに1をセットする(S1106)。
アクセス履歴情報600のn番目とm番目の関連度を関連ファイル閾値504(あるいは関数)と連続している回数(アクセス頻度)を用いて計算する(S1107)。
例えば、ファイル1からファイル2へのアクセス回数が100回でファイル1からファイル3へのアクセス回数が1回の場合、ファイル1からファイル2への関連度補正係数100/101、ファイル1からファイル3への関連度補正係数1/101を乗算するなどの処理を行う。
n=mの場合は関連度は100%になるので、n=mの条件の計算は省略してもよい。関連度はアクセスの順序に依存するため、関連元ファイルnに対するファイルmの関連度と、関連元ファイルmに対するファイルnの関連度は一般に異なる。
次に、ファイル情報のファイルnにファイルmの関連度が既に設定されているか確認する(S1108)。既に設定されていれば、計算結果の関連度と現在の関連度を合成(例えば平均をとる)する(S1109)。計算結果の関連度を関連度情報410で保持(上書き)する(S1110)。
特定の一つの関連元ファイルnに対して、全てのファイルmの関連度を計算したかどうか確認する(S1111)。全てのファイルについて計算していなければ、次のファイルを指定する(S1112)。全てのファイルについて計算していれば、全てのファイルを関連元ファイルnにしたかどうかを確認する(S1113)。
全てのファイルを関連元ファイルにしていれば、処理を終了する。全てのファイルを関連元ファイルにしていなければ、次のファイルを関連元ファイルに指定する(S1114)。
以上詳細に説明したように、一つの実施例では、Edgeで取得したデータは、基本的に削除せず、クライアントの要求データまたはその関連するデータをCoreから取得する際に、容量不足となる場合にデータの削除(仮想化)を行う仕組みを用いる。このとき、先読みで使用する関連情報を用いて、削除するデータも決定する。削除するデータ容量は、容量不足分とする。これにより,先読みデータが所定のアクセス時間を越えていても、容量不足分以上に削除されない。よって、最低限のデータ送受信で最適な先読みを行うことが可能となり、負荷低減、帯域利用料の削減、クライアントのデータ取得の高速化が可能となる。
Edgeノード100、CPU110、メモリ120、ネットワークインターフェース130、記憶装置140、ファイル/オブジェクト管理モジュール121、関連度計算モジュール122、先読み・削除(仮想化)モジュール123、ファイル/オブジェクト情報400、関連度情報410、先読み設定情報500、アクセス履歴情報600、先読みリスト700、削除リスト800

Claims (13)

  1. 記憶装置を備え、クライアントの要求に基づいてクライアント要求データを出力するとともに、前記クライアントの要求の前に所定の先読みデータを前記記憶装置に記憶する、情報処理装置であって、
    データのアクセス履歴に基づいてデータ相互の関連度を計算する、関連度計算モジュールと、
    前記クライアント要求データと所定の関連度を有するデータを前記先読みデータとして前記記憶装置に記憶し、また、前記クライアント要求データおよび前記先読みデータの少なくとも一つを前記記憶装置に記憶しようとするときに、前記記憶装置の記憶容量が不足する場合には、前記関連度を用いて前記記憶装置から削除するデータを決定する先読み・削除モジュールと、
    を備え
    前記先読み・削除モジュールは、
    前記アクセス履歴に基づいて低アクセスデータを抽出し、前記低アクセスデータと所定の関連度を有するデータを低アクセス関連データとして抽出し、前記低アクセスデータおよび前記低アクセス関連データを、前記記憶装置から削除するデータとして決定する、
    情報処理装置。
  2. 前記低アクセスデータは、前記アクセス履歴に基づいて一定期間内でのアクセス数が最も低いまたはアクセス時間が最古のデータである、
    請求項記載の情報処理装置。
  3. 前記低アクセスデータあるいは前記低アクセス関連データが同時に前記先読みデータとして前記記憶装置に記憶される予定のデータである場合には、前記記憶装置から削除するデータから除外する、
    請求項記載の情報処理装置。
  4. 前記先読み・削除モジュールは、
    前記先読みデータの少なくとも一つを前記記憶装置に記憶しようとするときには、先読みデータを読み出してくるホストとの間の回線の帯域幅と先読みファイル取得時間を規定した先読み設定情報に基づいて、前記先読みデータの容量を決定する、
    請求項1記載の情報処理装置。
  5. 前記関連度は、時間tのアクセス間隔を持ってアクセスされる2つのデータの組に対して、単調減少関数f(t)で定義される、
    請求項1記載の情報処理装置。
  6. 前記単調減少関数f(t)は、線形関数である、
    請求項記載の情報処理装置。
  7. 特定の第1のデータと特定の第2のデータの組が、一定時間内に複数回アクセスされた場合には、アクセス毎に計算した関連度の平均値を前記第1のデータと前記第2のデータの関連度とする、
    請求項記載の情報処理装置。
  8. 特定の第1のデータと特定の第2のデータの組が、一定時間内に所定回数未満のアクセスしかなかった場合には、前記第1のデータと前記第2のデータの関連度を計算しないか計算しても無効とする、
    請求項記載の情報処理装置。
  9. 前記関連度は、前記クライアント毎、あるいは、前記先読みデータを読み出してくるホスト毎、あるいは、前記クライアントおよび前記ホストの組み合わせ毎に計算される、
    請求項1記載の情報処理装置。
  10. クライアントの要求に基づいてクライアント要求データを前記クライアントに提供する情報処理装置のデータ管理方法であって、
    データのアクセス履歴に基づいて計算されるデータ相互の関連度を用い、
    クライアントの要求を契機に、前記クライアント要求データが第1の記憶装置に存在するかどうかを確認する第1のステップと、
    前記クライアント要求データが前記第1の記憶装置に存在しない場合、前記クライアント要求データを第2の記憶装置から前記第1の記憶装置に取得する第2のステップと、
    クライアントの要求を契機に、前記クライアント要求データと所定の関連度を有する先読みデータを抽出する第3のステップと、
    前記先読みデータを前記第2の記憶装置から前記第1の記憶装置に取得する第4のステップと、
    前記クライアント要求データおよび前記先読みデータの少なくとも一つを前記第1の記憶装置に取得しようとするときに、前記第1の記憶装置の記憶容量が不足する場合には、前記関連度を用いて前記第1の記憶装置から削除するデータを決定する第5のステップと、
    を備え
    前記第5のステップは、
    データのアクセス履歴に基づいて第1の記憶装置に存在する低アクセスデータを特定する第6のステップと、
    前記低アクセスデータと所定の関連度を有する低アクセス関連データを抽出する第7のステップと、
    前記第1の記憶装置から、前記低アクセスデータおよび前記低アクセス関連データを削除する第8のステップと、
    を備える情報処理装置のデータ管理方法。
  11. 前記第3のステップでは、先読み可能なデータ容量の制限の下で、前記クライアント要求データと関連度が高いデータを優先的に先読みデータとして抽出し、
    前記第7のステップでは、低アクセスデータと関連度があるデータを全て低アクセス関連データとして抽出し、
    前記低アクセスデータあるいは前記低アクセス関連データが同時に前記第3のステップで前記先読みデータとして抽出されている場合には、先読みデータとしての抽出を優先する、
    請求項10記載の情報処理装置のデータ管理方法。
  12. 前記低アクセスデータは、前記アクセス履歴に基づいて一定期間内でのアクセス数が最も低いまたはアクセス時間が最古のデータである、
    請求項11記載の情報処理装置のデータ管理方法。
  13. 前記関連度は、時間tのアクセス間隔を持ってアクセスされる2つのデータの組に対して、単調減少関数f(t)で定義される、
    請求項10記載の情報処理装置のデータ管理方法。
JP2019073622A 2019-04-08 2019-04-08 情報処理装置および情報処理装置のデータ管理方法 Active JP7269780B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2019073622A JP7269780B2 (ja) 2019-04-08 2019-04-08 情報処理装置および情報処理装置のデータ管理方法
US16/842,387 US11194504B2 (en) 2019-04-08 2020-04-07 Information processing device and data management method of information processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019073622A JP7269780B2 (ja) 2019-04-08 2019-04-08 情報処理装置および情報処理装置のデータ管理方法

Publications (2)

Publication Number Publication Date
JP2020173508A JP2020173508A (ja) 2020-10-22
JP7269780B2 true JP7269780B2 (ja) 2023-05-09

Family

ID=72662313

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019073622A Active JP7269780B2 (ja) 2019-04-08 2019-04-08 情報処理装置および情報処理装置のデータ管理方法

Country Status (2)

Country Link
US (1) US11194504B2 (ja)
JP (1) JP7269780B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022091308A (ja) * 2020-12-09 2022-06-21 株式会社日立製作所 ストレージシステム及びデータ削除方法
CN113377725B (zh) * 2021-08-13 2021-11-12 苏州浪潮智能科技有限公司 一种内核客户端的预读方法、系统及计算机可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6934720B1 (en) 2001-08-04 2005-08-23 Oracle International Corp. Automatic invalidation of cached data
JP2015125597A (ja) 2013-12-26 2015-07-06 富士通株式会社 データ配置制御プログラム、データ配置制御方法およびデータ配置制御装置
WO2018051429A1 (ja) 2016-09-14 2018-03-22 株式会社日立製作所 ファイルサーバ及び情報システム

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6134643A (en) * 1997-11-26 2000-10-17 Intel Corporation Method and apparatus for cache line prediction and prefetching using a prefetch controller and buffer and access history
JP2001057571A (ja) * 1998-09-14 2001-02-27 Matsushita Electric Ind Co Ltd ファイルシステム
US7133971B2 (en) * 2003-11-21 2006-11-07 International Business Machines Corporation Cache with selective least frequently used or most frequently used cache line replacement
US7565494B1 (en) * 2006-09-12 2009-07-21 Emc Corporation Configuring a bounded cache prefetch policy in a computer system employing object addressable storage
US8966185B2 (en) * 2012-06-14 2015-02-24 International Business Machines Corporation Cache memory prefetching
US20160223332A1 (en) * 2012-11-29 2016-08-04 Google Inc. Location quality by pre-fetching ap locations
US9430031B2 (en) * 2013-07-29 2016-08-30 Western Digital Technologies, Inc. Power conservation based on caching
US10154072B2 (en) 2014-09-17 2018-12-11 Microsoft Technology Licensing, Llc Intelligent streaming of media content
US10409781B2 (en) * 2015-04-29 2019-09-10 Box, Inc. Multi-regime caching in a virtual file system for cloud-based shared content
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
US10397368B2 (en) * 2015-06-25 2019-08-27 International Business Machines Corporation Data prefetching for large data systems
JP2017072982A (ja) 2015-10-07 2017-04-13 富士通株式会社 情報処理装置、キャッシュ制御方法およびキャッシュ制御プログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6934720B1 (en) 2001-08-04 2005-08-23 Oracle International Corp. Automatic invalidation of cached data
JP2015125597A (ja) 2013-12-26 2015-07-06 富士通株式会社 データ配置制御プログラム、データ配置制御方法およびデータ配置制御装置
WO2018051429A1 (ja) 2016-09-14 2018-03-22 株式会社日立製作所 ファイルサーバ及び情報システム

Also Published As

Publication number Publication date
JP2020173508A (ja) 2020-10-22
US20200319817A1 (en) 2020-10-08
US11194504B2 (en) 2021-12-07

Similar Documents

Publication Publication Date Title
US11687543B2 (en) Time-series data storage and processing database system
KR102097300B1 (ko) 클라우드-기반 파일 시스템 내에서의 파일 핸들링
US8150809B2 (en) File delete method, file open method, storage medium storing file delete program, and storage medium storing file open program
JP5886447B2 (ja) ロケーション非依存のファイル
JP7269780B2 (ja) 情報処理装置および情報処理装置のデータ管理方法
JP2019009774A5 (ja)
US20210021817A1 (en) Hologram streaming machine
CN110226158B (zh) 一种数据预取方法、装置和存储设备
CN107197359B (zh) 视频文件缓存方法及装置
EP3043267A1 (en) Storage apparatus, storage system, data readout method, and storage program
JP2018537800A (ja) メモリアクセスコマンドの転送記述子
US20120203974A1 (en) Automatic determination of read-ahead amount
US11210134B2 (en) Atomic execution unit for object storage
WO2012061841A1 (en) Methods, systems, and media for stored content distribution and access
US10146783B2 (en) Using file element accesses to select file elements in a file system to defragment
CN110765086B (zh) 一种小文件的目录读取方法、系统、电子设备及存储介质
US9575680B1 (en) Deduplication rehydration
JP2007080240A (ja) ファイル割り当てテーブルのアクセス手法
US10120570B2 (en) Temporary spill area for volume defragmentation
KR102238025B1 (ko) 정보 처리 방법 및 처리 장치
JP2010182254A (ja) 情報処理装置、および情報処理方法、並びにプログラム
CN107783990B (zh) 一种数据压缩方法及终端
JP5695571B2 (ja) サーバー装置及びコンテンツ取得方法
JP2014139763A (ja) 情報処理装置、情報処理方法、プログラム
JP7180769B2 (ja) データ管理装置、制御方法、及び記憶媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20211224

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20221101

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221108

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221227

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230424

R150 Certificate of patent or registration of utility model

Ref document number: 7269780

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150