IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社バッファローの特許一覧

特許7223231記憶装置、記憶方法、及び記憶プログラム
<>
  • 特許-記憶装置、記憶方法、及び記憶プログラム 図1
  • 特許-記憶装置、記憶方法、及び記憶プログラム 図2
  • 特許-記憶装置、記憶方法、及び記憶プログラム 図3
  • 特許-記憶装置、記憶方法、及び記憶プログラム 図4
  • 特許-記憶装置、記憶方法、及び記憶プログラム 図5
  • 特許-記憶装置、記憶方法、及び記憶プログラム 図6
  • 特許-記憶装置、記憶方法、及び記憶プログラム 図7
  • 特許-記憶装置、記憶方法、及び記憶プログラム 図8
  • 特許-記憶装置、記憶方法、及び記憶プログラム 図9
  • 特許-記憶装置、記憶方法、及び記憶プログラム 図10
  • 特許-記憶装置、記憶方法、及び記憶プログラム 図11
  • 特許-記憶装置、記憶方法、及び記憶プログラム 図12
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-02-08
(45)【発行日】2023-02-16
(54)【発明の名称】記憶装置、記憶方法、及び記憶プログラム
(51)【国際特許分類】
   G06F 16/13 20190101AFI20230209BHJP
   G06F 16/178 20190101ALI20230209BHJP
【FI】
G06F16/13 100
G06F16/178
【請求項の数】 13
(21)【出願番号】P 2019102085
(22)【出願日】2019-05-31
(65)【公開番号】P2020197782
(43)【公開日】2020-12-10
【審査請求日】2022-01-26
(73)【特許権者】
【識別番号】390040187
【氏名又は名称】株式会社バッファロー
(74)【代理人】
【識別番号】110002505
【氏名又は名称】弁理士法人航栄事務所
(72)【発明者】
【氏名】田村 佳照
【審査官】成瀬 博之
(56)【参考文献】
【文献】特表2014-503086(JP,A)
【文献】特開2017-122978(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00-16/958
(57)【特許請求の範囲】
【請求項1】
ローカルエリアネットワークを介して複数の端末装置からアクセス可能な記憶装置であって、
前記複数の端末装置が、共通のファイル保存領域として利用可能なファイル記憶部と、
前記ローカルエリアネットワークとは異なるネットワークを介してアクセス可能なサービス提供装置が提供する同期保存領域と、前記ファイル記憶部との間で、保存されたファイルの同期を行う同期制御を含む記憶制御を行う記憶制御部と、
前記同期の対象である保存ファイルの、前記同期保存領域及び前記ファイル記憶部のうちの前記保存ファイルの記憶先を含む管理情報を記憶する管理情報記憶部と、を備え、
前記記憶制御部は、前記端末装置から自装置へ保存要求がされた場合、前記ファイル記憶部と前記同期保存領域との双方に前記保存ファイルを記憶させる第一の制御と、前記同期保存領域のみに前記保存ファイルを記憶させる第二の制御を、前記ファイル記憶部の空き容量に応じて切り替えて行い、前記管理情報を更新する、記憶装置。
【請求項2】
請求項1記載の記憶装置であって、
前記記憶制御部は、前記ファイル記憶部に記憶された保存ファイルに関連付けられた優先度に基づいて、前記ファイル記憶部に保存された複数の保存ファイルのうち一部の保存ファイルを削除し、前記管理情報を更新する、記憶装置。
【請求項3】
請求項1又は2記載の記憶装置であって、
前記記憶制御部は、前記ファイル記憶部の空き容量が予め定められた値以上である場合は前記第一の制御を行い、前記ファイル記憶部の空き容量が前記予め定められた値未満である場合は前記第二の制御を行う、記憶装置。
【請求項4】
請求項1から3のいずれか1項記載の記憶装置であって、
前記記憶制御部は、前記ローカルエリアネットワークとは異なるネットワークに接続可能な複数の端末装置が共通のファイル保存領域として利用可能な前記同期保存領域に、前記管理情報記憶部に前記管理情報が記憶されていない前記保存ファイルが記憶されると、前記保存ファイルを前記ファイル記憶部へ記憶させる第三の制御を行うか否かを、前記ファイル記憶部の空き容量に応じて切り替え、前記管理情報を更新する、記憶装置。
【請求項5】
請求項4記載の記憶装置であって、
前記記憶制御部は、前記管理情報記憶部に前記管理情報が記憶されていない前記保存ファイルが前記同期保存領域に記憶されると、前記ファイル記憶部の空き容量が予め定められた値以上である場合は前記第三の制御を行う、記憶装置。
【請求項6】
請求項1から5のいずれか1項記載の記憶装置であって、
前記記憶制御部は、前記管理情報に基づいて、前記ファイル記憶部及び前記同期保存領域の少なくともいずれかに記憶された保存ファイルを示す一覧情報を前記端末装置へ送信する、記憶装置。
【請求項7】
請求項6記載の記憶装置であって、
前記一覧情報は、前記ファイル記憶部及び前記同期保存領域に記憶された保存ファイルと、前記同期保存領域に記憶され前記ファイル記憶部に記憶されていない保存ファイルと、を示す記憶装置。
【請求項8】
請求項1から7のいずれか1項記載の記憶装置であって、
前記記憶制御部は、前記端末装置から読み出しが要求された保存ファイルが前記ファイル記憶部及び前記同期保存領域に記憶されている場合は前記管理情報に基づいて前記ファイル記憶部から前記読み出しを行い、前記読み出しが要求された保存ファイルが前記同期保存領域のみに記憶されている場合は前記管理情報に基づいて前記同期保存領域から前記読み出しを行う、記憶装置。
【請求項9】
請求項1から8のいずれか1項記載の記憶装置であって、
前記記憶制御部は、前記端末装置から削除が要求された保存ファイルが前記ファイル記憶部及び前記同期保存領域に記憶されている場合は前記管理情報に基づいて前記ファイル記憶部及び前記同期保存領域から前記削除を行って前記管理情報を更新し、前記削除が要求された保存ファイルが前記同期保存領域のみに記憶されている場合は前記管理情報に基づいて前記同期保存領域から前記削除を行って前記管理情報を更新する、記憶装置。
【請求項10】
請求項1から9のいずれか1項記載の記憶装置であって、
前記ファイル記憶部及び前記管理情報記憶部は異なる記憶媒体に含まれる、記憶装置。
【請求項11】
請求項1から10のいずれか1項記載の記憶装置であって、
前記ファイル記憶部の記憶容量は前記同期保存領域の記憶容量より小さい、記憶装置。
【請求項12】
ローカルエリアネットワークを介して複数の端末装置からアクセス可能な記憶装置であって、前記複数の端末装置が、共通のファイル保存領域として利用可能なファイル記憶部を有する記憶装置による記憶方法であって、
前記ローカルエリアネットワークとは異なるネットワークを介してアクセス可能なサービス提供装置が提供する同期保存領域と、前記ファイル記憶部との間で、保存されたファイルの同期を行う同期制御を含む記憶制御を行う記憶制御ステップと、
前記同期の対象である保存ファイルの、前記同期保存領域及び前記ファイル記憶部のうちの前記保存ファイルの記憶先を含む管理情報を記憶する管理情報記憶ステップと、を備え、
前記記憶制御ステップでは、前記端末装置から自装置へ保存要求がされた場合、前記ファイル記憶部と前記同期保存領域との双方に前記保存ファイルを記憶させる第一の制御と、前記同期保存領域のみに前記保存ファイルを記憶させる第二の制御を、前記ファイル記憶部の空き容量に応じて切り替えて行い、前記管理情報を更新する、記憶方法。
【請求項13】
ローカルエリアネットワークを介して複数の端末装置からアクセス可能な記憶装置であって、前記複数の端末装置が、共通のファイル保存領域として利用可能なファイル記憶部を有する記憶装置の記憶プログラムであって、
前記ローカルエリアネットワークとは異なるネットワークを介してアクセス可能なサービス提供装置が提供する同期保存領域と、前記ファイル記憶部との間で、保存されたファイルの同期を行う同期制御を含む記憶制御を行う記憶制御ステップと、
前記同期の対象である保存ファイルの、前記同期保存領域及び前記ファイル記憶部のうちの前記保存ファイルの記憶先を含む管理情報を記憶する管理情報記憶ステップと、をコンピュータに実行させるための記憶プログラムであり、
前記記憶制御ステップでは、前記端末装置から自装置へ保存要求がされた場合、前記ファイル記憶部と前記同期保存領域との双方に前記保存ファイルを記憶させる第一の制御と、前記同期保存領域のみに前記保存ファイルを記憶させる第二の制御を、前記ファイル記憶部の空き容量に応じて切り替えて行い、前記管理情報を更新する、記憶プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、記憶装置、記憶方法、及び記憶プログラムに関する。
【背景技術】
【0002】
スマートフォンやタブレット端末等の普及に伴い、インターネットを利用したクラウドストレージのサービスを提供するサービスプロバイダが増えている。このサービスは、ユーザによって予め登録されたアカウント情報を用いてユーザ認証を行うことで、ユーザ毎に確保された記憶領域の利用が可能となるウェブサービスである。また、LAN(Local Area Network)を介して複数の端末装置でファイルを共有するための記憶装置であるNAS(Network Attached Storage)が知られている。
【0003】
また、NASとクラウドストレージとの間でファイル同期を行う連携機能が知られている。例えば、WAN(Wide Area Network)に接続されている端末装置がクラウドストレージへファイルを記憶させると、ファイル同期によりそのファイルがNASにも記憶され、LANに接続された端末装置がNASからそのファイルを読み出すことができる。また、LANに接続された端末装置がNASへファイルを記憶させると、ファイル同期によりそのファイルがクラウドストレージにも記憶され、LANに接続されていない端末装置がクラウドストレージからそのファイルを読み出すことができる。
【0004】
また、特許文献1には、ファイルを保管し提供するサーバとファイルを利用する端末とを繋ぐネットワーク上に配置され、フォルトするデータ量の期待値の最悪値が保証されるキャッシュ制御方式を用いたネットワークキャッシュ装置が記載されている。なお、フォルトとは、リクエストされたファイルがキャッシュされていないため、ネットワークを通じてサーバからそのファイルを取得することである。特許文献1に記載されたネットワークキャッシュ装置は、サーバから獲得したファイルを格納するためのスペースがない場合に、優先度の低い順に任意の数のファイルを削除する。それでも必要なスペースが空かない場合は、このネットワークキャッシュ装置は、残りのファイル集合の中から最終参照時刻が古い順にファイルを削除する。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2002-91825号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
上記の連携機能において、NASとクラウドストレージとの間でファイル同期を行うためには、NASとクラウドストレージに同じ記憶容量(全容量)が必要になる。しかしながら、様々な要因により、クラウドストレージの記憶容量に対してNASの記憶容量が不足し、上記のファイル同期ができなくなる場合がある。
【0007】
例えば、クラウドストレージはサービスプロバイダとの契約によって容易に容量の増加が可能であるが、NASの記憶容量の増加は記憶媒体の交換を要するため容易ではなく、それによりクラウドストレージの記憶容量に対してNASの記憶容量が不足する場合がある。
【0008】
また、NASの記憶媒体の部分的な故障等によってNASの記憶容量が減少することにより、クラウドストレージの記憶容量に対してNASの記憶容量が不足する場合がある。
【0009】
クラウドストレージの記憶容量に対してNASの記憶容量が不足してファイル同期ができなくなると、このファイル同期による連携機能の利便性が低下する。
【0010】
例えば、ユーザがファイルを保存する場合に、NASの空き容量が少なければNASの不要ファイルを削除してからNASにファイルを記憶させたり、空き容量が大きいクラウドストレージにファイルを記憶させたりする必要がある。
【0011】
また、他のユーザがファイルを読み出す場合に、NASとクラウドストレージのどちらに所望のファイルがあるかが不明であるため、NAS及びクラウドストレージの中から所望のファイルを探す必要がある。
【0012】
なお、特許文献1は、ファイルを保管し提供するサーバとファイルを利用する端末とを繋ぐネットワーク上に配置されたネットワークキャッシュ装置においてフォルトするデータ量の期待値の最悪値を保証する技術を開示するものであり、NASとクラウドストレージとの間でファイル同期を行う連携機能の利便性の低下を抑制することについては考慮していない。
【0013】
本発明は、上記事情に鑑みてなされたものであり、LANに接続されたNAS等の記憶装置の容量が少なくても、その記憶装置とクラウドストレージ等の他のサービス提供装置との連携機能の利便性低下を抑制することを目的とする。
【課題を解決するための手段】
【0014】
本発明の記憶装置は、ローカルエリアネットワークを介して複数の端末装置からアクセス可能な記憶装置であって、前記複数の端末装置が、共通のファイル保存領域として利用可能なファイル記憶部と、前記ローカルエリアネットワークとは異なるネットワークを介してアクセス可能なサービス提供装置が提供する同期保存領域と、前記ファイル記憶部との間で、保存されたファイルの同期を行う同期制御を含む記憶制御を行う記憶制御部と、前記同期の対象である保存ファイルの、前記同期保存領域及び前記ファイル記憶部のうちの前記保存ファイルの記憶先を含む管理情報を記憶する管理情報記憶部と、を備え、前記記憶制御部は、前記端末装置から自装置へ保存要求がされた場合、前記ファイル記憶部と前記同期保存領域との双方に前記保存ファイルを記憶させる第一の制御と、前記同期保存領域のみに前記保存ファイルを記憶させる第二の制御を、前記ファイル記憶部の空き容量に応じて切り替えて行い、前記管理情報を更新するものである。
【0015】
本発明の記憶方法は、ローカルエリアネットワークを介して複数の端末装置からアクセス可能な記憶装置であって、前記複数の端末装置が、共通のファイル保存領域として利用可能なファイル記憶部を有する記憶装置による記憶方法であって、前記ローカルエリアネットワークとは異なるネットワークを介してアクセス可能なサービス提供装置が提供する同期保存領域と、前記ファイル記憶部との間で、保存されたファイルの同期を行う同期制御を含む記憶制御を行う記憶制御ステップと、前記同期の対象である保存ファイルの、前記同期保存領域及び前記ファイル記憶部のうちの前記保存ファイルの記憶先を含む管理情報を記憶する管理情報記憶ステップと、を備え、前記記憶制御ステップでは、前記端末装置から自装置へ保存要求がされた場合、前記ファイル記憶部と前記同期保存領域との双方に前記保存ファイルを記憶させる第一の制御と、前記同期保存領域のみに前記保存ファイルを記憶させる第二の制御を、前記ファイル記憶部の空き容量に応じて切り替えて行い、前記管理情報を更新するものである。
【0016】
本発明の記憶プログラムは、ローカルエリアネットワークを介して複数の端末装置からアクセス可能な記憶装置であって、前記複数の端末装置が、共通のファイル保存領域として利用可能なファイル記憶部を有する記憶装置の記憶プログラムであって、前記ローカルエリアネットワークとは異なるネットワークを介してアクセス可能なサービス提供装置が提供する同期保存領域と、前記ファイル記憶部との間で、保存されたファイルの同期を行う同期制御を含む記憶制御を行う記憶制御ステップと、前記同期の対象である保存ファイルの、前記同期保存領域及び前記ファイル記憶部のうちの前記保存ファイルの記憶先を含む管理情報を記憶する管理情報記憶ステップと、をコンピュータに実行させるための記憶プログラムであり、前記記憶制御ステップでは、前記端末装置から自装置へ保存要求がされた場合、前記ファイル記憶部と前記同期保存領域との双方に前記保存ファイルを記憶させる第一の制御と、前記同期保存領域のみに前記保存ファイルを記憶させる第二の制御を、前記ファイル記憶部の空き容量に応じて切り替えて行い、前記管理情報を更新するものである。
【発明の効果】
【0017】
本発明によれば、LANに接続されたNAS等の記憶装置の容量が少なくても、その記憶装置とクラウドストレージ等の他のサービス提供装置との連携機能の利便性低下を抑制することのできる記憶装置、記憶方法、及び記憶プログラムを提供することができる。
【図面の簡単な説明】
【0018】
図1図1は、本発明の一実施形態であるファイル同期システム100の概略構成を示す図である。
図2図2は、図1に示すファイル同期システム100における第一情報機器1の内部構成例を示す図である。
図3図3は、図1に示すファイル同期システム100におけるNAS2の内部構成例を示す図である。
図4図4は、図1に示すファイル同期システム100におけるサービス提供装置7の内部構成例を示す図である。
図5図5は、図1に示すファイル同期システム100における第二情報機器8の内部構成例を示す図である。
図6図6は、図3に示すNAS2のCPU30の機能ブロック図である。
図7図7は、図3に示すNAS2のSSD360に記憶される管理情報362の一例を示す図である。
図8図8は、図1に示すファイル同期システム100において第一情報機器1がNAS2にファイルの保存要求を行う場合の処理を説明するためのフローチャートである。
図9図9は、図1に示すファイル同期システム100において第二情報機器8がサービス提供装置7にファイルの保存要求を行う場合の処理を説明するためのフローチャートである。
図10図10は、図1に示すファイル同期システム100において第一情報機器1がNAS2に対して保存ファイルの読み出しを要求する場合の処理を説明するためのフローチャートである。
図11図11は、図1に示すファイル同期システム100において第一情報機器1がNAS2に対してファイルの削除を要求する場合の処理を説明するためのフローチャートである。
図12図12は、図3及び図6に示すNAS2が優先度の低い保存ファイルを削除する処理を説明するためのフローチャートである。
【発明を実施するための形態】
【0019】
以下、本発明の実施形態について図面を参照して説明する。
【0020】
図1は、本発明の一実施形態であるファイル同期システム100の概略構成を示す図である。
【0021】
ファイル同期システム100は、第一情報機器1と、NAS2と、ルータ5と、サービス提供装置7と、第二情報機器8と、を備える。
【0022】
第一情報機器1及びNAS2は、企業、学校、又は個人宅内等で使用されるLAN(Local Area Network:ローカルエリアネットワーク)3に接続されており、LAN3を介して相互に通信を行うことができる。
【0023】
LAN3は、ルータ5を介してインターネット6に接続されている。これにより、第一情報機器1及びNAS2は、それぞれインターネット6に接続可能となっている。
【0024】
第一情報機器1は、ネットワーク通信を行うためのネットワーク通信機能と、表示部と、キーボード、マウス、又はタッチパネル等の操作インタフェース(I/F)と、を有する電子機器である。第一情報機器1には、例えばパーソナルコンピュータ、タブレット端末、又はスマートフォン等が用いられる。
【0025】
ファイル同期システム100において第一情報機器1は複数含まれていてよい。第一情報機器1は、LAN3を介してNAS2にアクセス可能な端末装置を構成する。インターネット6は、LAN3とは異なるネットワークを構成する。
【0026】
第一情報機器1は、NAS2に対して予め登録されており、LAN3を介して、NAS2に記憶されているファイルの編集、NAS2へのファイルの記憶、及びNAS2からのファイルの読み出し等を行うことができる。
【0027】
NAS2は、ファイルの記憶及び管理に特化したファイルサーバであり、ファイル管理を行うためのファイルシステムと、ネットワーク通信を行うためのネットワーク通信機能と、を備える。NAS2は、LAN3を介して複数の第一情報機器1からアクセス可能な記憶装置を構成する。
【0028】
NAS2には、複数の第一情報機器1が登録される。NAS2は、登録された複数の第一情報機器1からLAN3を介してアクセス可能であり、この複数の第一情報機器1の各々によってファイルの記憶、編集、及び読出し等が行われる場合もある。
【0029】
サービス提供装置7は、ファイル記憶を行うためのウェブサービスであるクラウドストレージを提供するサービスプロバイダの運営するサーバである。サービス提供装置7は、インターネット6に接続されており、LAN3に接続されていない第二情報機器8からインターネット6を介してアクセス可能である。また、サービス提供装置7は、LAN3に接続された第一情報機器1からも、LAN3及びインターネット6を介してアクセス可能である。
【0030】
サービス提供装置7によって提供されるサービスは、予め登録されたユーザがインターネット6を介してファイルを記憶させることのできるウェブサービスである。また、サービス提供装置7は、NAS2との間でファイル同期が行われる同期保存領域(例えば後述のNAS用記憶領域732)を有する。
【0031】
サービス提供装置7は、ハードディスクドライブ又はソリッドステートドライブ等の記憶媒体を有する1又は複数のファイルサーバにより構成される。サービス提供装置7が複数のファイルサーバにより構成される場合、上記の同期保存領域は複数のファイルサーバにより構成されてもよい。
【0032】
サービス提供装置7は、NAS2の管理者がウェブサービスにユーザ名及びパスワード等により識別されるアカウントを登録(以下、ユーザ登録という)することにより、当該管理者が利用可能な記憶領域を管理者に対して提供する。ファイル同期システム100では、NAS2の管理者が、上記のウェブサービスにユーザ登録済みであるものとする。
【0033】
つまり、NAS2は、インターネット6を介してサービス提供装置7にアクセスし、サービス提供装置7においてNAS2に対して割り当てられている同期保存領域にファイルを記憶させることができるようになっている。
【0034】
第二情報機器8は、ネットワーク通信を行うためのネットワーク通信機能と、表示部と、キーボード、マウス、又はタッチパネル等の操作インタフェース(I/F)と、を有する電子機器である。第二情報機器8には、例えばパーソナルコンピュータ、タブレット端末、又はスマートフォン等が用いられる。ファイル同期システム100において第二情報機器8は複数含まれていてよい。第二情報機器8は、インターネット6に接続可能な端末装置を構成する。
【0035】
第二情報機器8は、NAS2を介さずに、インターネット6を介してサービス提供装置7にアクセス可能である。具体的には、第二情報機器8は、サービス提供装置7に対して予め登録されており、インターネット6を介して、サービス提供装置7に記憶されているファイルの編集、サービス提供装置7へのファイルの記憶、及びサービス提供装置7からのファイルの読み出し等を行うことができる。
【0036】
第一情報機器1及び第二情報機器8のそれぞれは、上記の第一情報機器1及び第二情報機器8の各機能を兼ね備えていてもよい。例えば、第一情報機器1は、上記の第一情報機器1の機能に加えて、NAS2を介さずにインターネット6を介してサービス提供装置7にアクセス可能な機能を有してもよい。また、第二情報機器8は、上記の第二情報機器8の機能に加えて、LAN3を介してNAS2にアクセス可能な機能を有してもよい。
【0037】
図2は、図1に示すファイル同期システム100における第一情報機器1の内部構成例を示す図である。
【0038】
第一情報機器1は、CPU(Central Processing Unit)20と、ROM(Read Only Memory)21と、RAM(Random Access Memory)22と、液晶ドライバ230と、液晶パネル231と、LANモジュール240と、キーボード、マウス、又は液晶パネル231と一体化されたタッチパネル等の操作インタフェース(I/F)260と、内部ストレージ部27と、USB(Universal Serial Bus)コントローラ280と、USBコネクタ281と、を備える。なお、USBコントローラ280及びUSBコネクタ281は、一般的なスマートフォン等の情報機器に含まれる構成であるが、省いてもよい。
【0039】
CPU20、ROM21、RAM22、液晶ドライバ230、LANモジュール240、操作インタフェース260、内部ストレージ部27、及びUSBコントローラ280は、それぞれ共通のバスにより接続されている。
【0040】
CPU20は、ROM21から読み出されてRAM22に展開されたファームウェア等のプログラムを実行することで、第一情報機器1の全体の動作制御を行う。
【0041】
ROM21には、上述のファームウェア等のプログラムと各種設定データが記憶されている。RAM22は、第一情報機器1のワークメモリとして動作し、各種プログラム及びデータを一時的に記憶する。
【0042】
液晶パネル231は、画像を表示するための表示部である。液晶ドライバ230は、表示画面を構成するデータがCPU20から供給されると、液晶パネル231の表示領域にその表示画面を表示するように、この液晶パネル231を駆動する。
【0043】
LANモジュール240は、LAN3との間で無線又は有線により通信するためのモジュールである。LANモジュール240は、例えばIEEE(The Institute of Electrical andElectronics Engineers)802.11規格に準拠して無線通信を行うものが用いられる。又は、LANモジュール240は、例えばIEEE802.3規格に準拠して有線通信を行うものが用いられる。
【0044】
内部ストレージ部27は、内部ストレージ270と内部ストレージインタフェース(I/F)271とを備える。内部ストレージ270は、例えばフラッシュメモリのような不揮発性半導体メモリ又はハードディスクドライブである。内部ストレージ270には、第一情報機器1において用いられるアプリケーションプログラム、文書ファイル、音ファイル、画像ファイル、又は動画ファイル等の各種ファイルが記憶される。
【0045】
内部ストレージインタフェース271は、内部ストレージ270に対するデータの読み出し又は記憶の指令があった場合に、内部ストレージ270の全体の制御を行うとともに、データの読み出し又は記憶の制御を行い、読み出されたデータを出力する。
【0046】
なお、内部ストレージ270は挿脱可能な不揮発性メモリカードであってもよい。この場合、内部ストレージインタフェース271は、このメモリカードが装着されるメモリカードスロットをさらに備える。
【0047】
USBコントローラ280は、例えばUSB2.0又はUSB3.0規格に沿って、USBコネクタ281を介して接続されたUSBデバイスとの間でデータの送受信を行う。USBコネクタ281は、いわゆるメス型USBコネクタ(USBレセプタクル)であって、不図示のUSBケーブルのオス型USBコネクタ(USBプラグ)が挿入可能に構成されている。
【0048】
図3は、図1に示すファイル同期システム100におけるNAS2の内部構成例を示す図である。
【0049】
NAS2は、CPU30と、ROM31と、RAM32と、HDD(Hard Disk Drive)部33と、有線LANモジュール34と、USBコントローラ350と、USBコネクタ351と、SSD(Solid State Drive)部36と、を備える。なお、USBコントローラ350及びUSBコネクタ351は、一般的なNASに含まれる構成であるが、省いてもよい。
【0050】
CPU30、ROM31、RAM32、HDD部33、有線LANモジュール34、USBコントローラ350及びSSD部36は、それぞれ共通のバスにより接続されている。
【0051】
CPU30は、ROM31から読み出されてRAM32に展開されたファームウェア等のプログラムを実行することで、NAS2の全体の動作制御を行う。
【0052】
ROM31には、上述のファームウェア等のプログラムが記憶されている。RAM32は、NAS2のワークメモリとして動作し、各種プログラム及びデータを一時的に記憶する。
【0053】
HDD部33は、HDD330とHDDインタフェース(I/F)331とを備える。HDD330は、記憶媒体であるディスクと、このディスクの回転を行う回転部と、ディスクに対してデータの読み出し及び記憶を行うヘッド部とを備える(いずれも不図示)。
【0054】
HDDインタフェース331は、HDD330に対するデータの読み出し又は記憶の指令があった場合に、HDD330の全体の制御を行うとともに、データの読み出し又は記憶の制御を行い、読み出されたデータを出力する。
【0055】
HDD330には、アプリケーションプログラムの他、NAS2に登録されている第一情報機器1から送信されてきたアプリケーションプログラム、文書ファイル、音ファイル、画像ファイル、又は動画ファイル等の各種ファイルが適宜記憶されている。
【0056】
HDD330には、上述した各種ファイルが記憶される領域を示すフォルダとして共通記憶領域332が形成されている。なお、共通記憶領域332は、フォルダの上位であるドライブであってもよい。共通記憶領域332は、複数の第一情報機器1が共通のファイル保存領域として利用可能なファイル記憶部を構成する。
【0057】
共通記憶領域332は、サービス提供装置7が提供するクラウドストレージ(例えば後述のNAS用記憶領域732)と連携するクラウド連携用領域となっている。共通記憶領域332の容量は、クラウドストレージの容量よりも少ない場合がある。
【0058】
このような状況は、例えば、サービスプロバイダとの契約によってクラウドストレージの容量が増加したが、それに伴ったHDD330の交換はしていないことに起因して発生する。又は、このような状況は、HDD330の部分的な故障等によってHDD330の記憶容量が減少することに起因して発生する場合もある。
【0059】
NAS2は、共通記憶領域332の記憶内容と、後述のサービス提供装置7におけるNAS用記憶領域732の記憶内容と、を双方向に同期させるファイル同期を行う。
【0060】
ただし、NAS2は、このファイル同期において、HDD330の共通記憶領域332の空き容量が閾値を下回っている場合には、ファイル同期の対象となったファイルのうち一部のファイルを共通記憶領域332に記憶させない。
【0061】
図3の例では、ファイルA、ファイルB、及びファイルCがファイル同期の対象となっており、このうちファイルA及びファイルBは共通記憶領域332に記憶されているが、ファイルCについては共通記憶領域332に記憶されていない。
【0062】
以下、このファイル同期の対象となったファイルを「保存ファイル」と称する。保存ファイルには、第一情報機器1がNAS2に対して保存を要求したファイルと、第二情報機器8がサービス提供装置7に対して保存を要求したファイルと、が含まれる。
【0063】
ここで、ファイルの保存とは、そのファイル自体がいずれの装置の記憶媒体に記憶されるかに拘らず、将来においてNAS2とサービス提供装置7のいずれからもそのファイルを読み出せるようにしておくことである。
【0064】
保存ファイルは、NAS2の共通記憶領域332の空き容量に応じて、NAS2の共通記憶領域332及びサービス提供装置7のNAS用記憶領域732の両方に記憶され、又はサービス提供装置7のNAS用記憶領域732のみに記憶される。この保存ファイルの記憶の処理については図8及び図9により後述する。
【0065】
また、第一情報機器1は、NAS2の共通記憶領域332に記憶されていない保存ファイルについても、NAS2及びサービス提供装置7のいずれに対しても読み出しや削除を要求することが可能である。NAS2に対する保存ファイルの読み出しの要求の処理については図10により後述する。NAS2に対する保存ファイルの削除の要求の処理については図11により後述する。
【0066】
有線LANモジュール34は、例えばIEEE802.3規格に準拠して、LAN3との間で有線による通信を行う。有線LANモジュール34の代わりに、例えばIEEE802.11規格に準拠してルータ5との間で無線による通信を行うモジュールを用いてもよい。
【0067】
USBコントローラ350は、例えばUSB2.0又はUSB3.0規格に沿って、USBコネクタ351を介して接続されたUSBデバイスとの間でデータの送受信を行う。USBコネクタ351は、いわゆるメス型USBコネクタ(USBレセプタクル)であって、USBケーブルのオス型USBコネクタ(USBプラグ)が挿入可能に構成されている。
【0068】
SSD部36は、SSD360とSSDインタフェース(I/F)361とを備える。SSD360は、記憶媒体であるフラッシュメモリと、キャッシュ用のメモリと、フラッシュメモリに対するアクセスを制御するコントローラチップとを備える(いずれも不図示)。SSD360は、HDD330と異なる記憶媒体を構成する。
【0069】
SSDインタフェース361は、SSD360に対するデータの読み出し又は記憶の指令があった場合に、SSDインタフェースの全体の制御を行うとともに、データの読み出し又は記憶の制御を行い、読み出されたデータを出力する。
【0070】
SSD360には、上記のファイル同期の対象となっている各保存ファイルのメタデータを含む管理情報362が記憶される。SSD360において管理情報362が記憶される領域は管理情報記憶部を構成する。保存ファイルのメタデータは、例えばその保存ファイルのファイル名、タイムスタンプ、ファイルサイズ等の属性情報である。また、保存ファイルのメタデータには、その保存ファイルの実際の記憶先が含まれる。管理情報362の具体例については図7により後述する。
【0071】
図3の例では、管理情報362には、それぞれ上記のファイルA、ファイルB、及びファイルCのメタデータであるメタデータa、メタデータb、及びメタデータcが含まれる。
【0072】
このように、SSD360には、上記のファイル同期の対象となっている各保存ファイルのメタデータが、共通記憶領域332に記憶されていない保存ファイルのメタデータ(図3の例ではファイルCのメタデータc)も含めて記憶される。
【0073】
これにより、NAS2は、ファイル同期の対象であるが共通記憶領域332に記憶されていない保存ファイルについて読み出し要求があった場合に、その保存ファイルのメタデータに基づいてその保存ファイルの記憶先を特定し、その保存ファイルを取得することができる。この処理については図10により後述する。
【0074】
図4は、図1に示すファイル同期システム100におけるサービス提供装置7の内部構成例を示す図である。
【0075】
サービス提供装置7は、CPU70、ROM71、RAM72、HDD部73、有線LANモジュール74、USBコントローラ750、及びUSBコネクタ751を備える。なお、USBコントローラ750及びUSBコネクタ751は、一般的なサーバに含まれる構成であるが、省いてもよい。
【0076】
CPU70、ROM71、RAM72、HDD部73、有線LANモジュール74、及びUSBコントローラ750は、それぞれ共通のバスにより接続されている。
【0077】
CPU70は、ROM71から読み出されてRAM72に展開されたファームウェア等のプログラムを実行することで、サービス提供装置7の全体の動作制御を行う。ROM71には、上述のファームウェア等のプログラムが記憶されている。RAM72は、サービス提供装置7のワークメモリとして動作し、各種プログラム及びデータを一時的に記憶する。
【0078】
HDD部73は、HDD730とHDDインタフェース(I/F)731とを備える。HDD730は、記憶媒体であるディスクと、このディスクの回転を行う回転部と、ディスクに対してデータの読み出し及び記憶を行うヘッド部とを備える(いずれも不図示)。
【0079】
HDDインタフェース731は、HDD730に対するデータの読み出し又は記憶の指令があった場合に、HDD730の全体の制御を行うとともに、データの読み出し又は記憶の制御を行い、読み出されたデータを出力する。
【0080】
HDD730にはアプリケーションプログラムと、サービス提供装置7によるNAS2の管理者によるユーザ登録情報が記憶された登録テーブル等が適宜記憶されている。
【0081】
また、HDD730には、NAS2のHDD330に形成されている上記の共通記憶領域332に対応するNAS用記憶領域732が形成されている。NAS用記憶領域732は、サービス提供装置7が提供する同期保存領域を構成する。
【0082】
CPU70は、NAS2からのファイル保存要求やファイル削除要求に従って、NAS用記憶領域732へのファイル記憶やファイル削除を行う。その結果、NAS用記憶領域732には、上記のファイル同期の対象となっている各保存ファイルが、NAS2の共通記憶領域332には記憶されていない保存ファイルも含めて記憶される。
【0083】
有線LANモジュール74は、例えばIEEE802.3規格に準拠して、インターネット6との間で有線による通信を行う。
【0084】
USBコントローラ750は、例えばUSB2.0又はUSB3.0規格に沿って、USBコネクタ751を介して接続されたUSBデバイスとの間でデータの送受信を行う。USBコネクタ751は、いわゆるメス型USBコネクタ(USBレセプタクル)であって、USBケーブルのオス型USBコネクタ(USBプラグ)が挿入可能に構成されている。
【0085】
サービス提供装置7は、NAS2や第二情報機器8との間でファイル転送を行う際に、ネットワークでファイルの転送を行うための通信プロトコルであるFTP(File Transfer Protocol)を用いる。また、サービス提供装置7は、ルータ5等のファイアウォール機能を有する装置に対して、FTP用に設けられたポート(例えばポート番号20番、21番のポート)を用いて通信を行う。
【0086】
図5は、図1に示すファイル同期システム100における第二情報機器8の内部構成例を示す図である。図5は、LANモジュール240を通信モジュール241に変更した点を除いては図2と同様であるため、通信モジュール241についてのみ説明する。
【0087】
通信モジュール241は、インターネット6との間で無線又は有線により通信するためのモジュールである。通信モジュール241としては、例えばLANモジュール240と同じものを用いることができる。この場合に、第二情報機器8は、LAN3等のLANを経由してインターネット6に接続可能である。
【0088】
又は、通信モジュール241は、LANを経由せずに、セルラ方式の無線通信により移動体通信網を経由してインターネット6に接続可能なセルラモジュールなどであってもよい。また、第二情報機器8は、通信モジュール241として、上記のLANモジュール240と同じものと、上記のセルラモジュールと、の両方を備えていてもよい。
【0089】
図6は、図3に示すNAS2のCPU30の機能ブロック図である。
【0090】
NAS2のCPU30は、受付部30Aと、ファイル管理部30Bと、アップロード部30Cと、更新リスト取得部30Dと、ダウンロード部30Eと、を備える。これらの機能ブロックは、NAS2のCPU30が、NAS2のROM31に記憶された記憶プログラムを含むプログラムを実行することにより形成される。
【0091】
受付部30Aは、第一情報機器1からLAN3を介して入力される、ファイル保存要求、ファイル読み出し要求、及びファイル削除要求等を受け付ける。
【0092】
ファイル管理部30Bは、受付部30Aが受け付けた各要求に応じて、上記のファイル同期に関する処理を行う。ファイル管理部30Bは、同期制御を含む記憶制御を行う記憶制御部を構成する。ファイル管理部30Bによるファイル同期に関する処理(同期制御)については図8から図11により後述する。
【0093】
また、ファイル管理部30Bは、共通記憶領域332に記憶させた優先度の低いファイルを削除する処理を行ってもよい。ファイル管理部30Bによる優先度の低いファイルを削除する処理については図12により後述する。
【0094】
アップロード部30Cは、ファイル管理部30Bからの制御に従って、ファイル同期の対象のファイルを、有線LANモジュール34を介してサービス提供装置7へ送信する。
【0095】
更新リスト取得部30Dは、管理者によって予め決められたタイミングで、サービス提供装置7に対して、サービス提供装置7のNAS用記憶領域732のファイルの更新リストの送信を要求する。そして、更新リスト取得部30Dは、この要求に応じてサービス提供装置7から送信されてきた更新リストを取得する。
【0096】
ファイルの更新リストとは、更新リスト取得部30Dにより要求が行われた時点でサービス提供装置7のNAS用記憶領域732に記憶されているファイルのうち、更新リスト取得部30Dにより前回要求が行われた時点から変更のあったファイルの一覧を示すものである。
【0097】
この更新リストには、例えば、各ファイルのファイル名、作成日時、更新日時、作成者、ファイル形式(拡張子)、及びコメント等のファイル及びファイルの状態を一意に特定するためのメタデータが含まれてもよい。
【0098】
なお、更新リスト取得部30Dは、サービス提供装置7に対して、サービス提供装置7のNAS用記憶領域732に記憶されている全てのファイルのリストを取得し、取得した最新のリストと、過去に取得したリストとを比較して、過去から更新のあったファイルのリストを更新リストとして作成することで、更新リストの取得を行ってもよい。
【0099】
例えば、サービス提供装置7から送信されてくるファイルのリストには、上記の更新リストと同様に、ファイル名、作成日時、更新日時、作成者、ファイル形式、及びコメント等の情報が含まれる。この更新リストに含まれる情報をNAS2のメタデータと比較することで、例えば更新日時の違いによってファイルが更新されたことを判断したり、ファイル名の違いによってファイルが変更又は追加されたことを判断したりといった更新状況の判断が可能である。
【0100】
ダウンロード部30Eは、ファイル管理部30Bからの制御に従って、更新リスト取得部30Dにより取得された更新リストにあるファイルを、有線LANモジュール34を介してサービス提供装置7から受信する。
【0101】
図7は、図3に示すNAS2のSSD360に記憶される管理情報362の一例を示す図である。図7においては、図3及び図4の例と同様に、ファイル同期の対象の保存ファイルとしてファイルA、ファイルB、及びファイルCがあり、ファイルA及びファイルBはNAS2とサービス提供装置7の両方に記憶されているが、ファイルCはサービス提供装置7のみに記憶されている場合について説明する。
【0102】
この場合に、NAS2は、それぞれファイルA、ファイルB、及びファイルCに対応するメタデータa、メタデータb、及びメタデータcを、管理情報362としてSSD360に記憶させる。
【0103】
各メタデータには、例えば、ファイル名と、NAS2における記憶先と、サービス提供装置7における記憶先と、が含まれる。また、各メタデータには、さらに、タイムスタンプ、ファイルサイズ、重要フラグ、最終アクセス日時、アクセス頻度等の情報が含まれてもよい。
【0104】
ファイル名は、保存ファイルに付された名前である。図7の例では、ファイルA、ファイルB、及びファイルCのファイル名はそれぞれfile_A、file_B、及びfile_Cである。
【0105】
NAS2における記憶先は、NAS2の共通記憶領域332における保存ファイルの記憶先であり、例えば保存ファイルが記憶されたHDD330の領域を示すパスである。パスは、保存ファイルが記憶されたディレクトリのパスであってもよいし、保存ファイルが記憶されたディレクトリのパスと保存ファイルのファイル名とを連結したパス(フルパス)であってもよい。ただし、NAS2に記憶されていない保存ファイルのメタデータには、NAS2における記憶先は格納されない。
【0106】
例えばNAS2に記憶されているファイルA及びファイルBのメタデータa及びメタデータbには、NAS2における記憶先としてそれぞれfilepath_A及びfilepath_Bが格納されている。一方、NAS2に記憶されていないファイルCのメタデータcには、NAS2における記憶先が格納されていない。
【0107】
サービス提供装置7における記憶先は、サービス提供装置7のNAS用記憶領域732における保存ファイルの記憶先であり、例えばサービス提供装置7が保存ファイルを保存したバケットを示すURL(Uniform Resource Locator)である。バケットとは、クラウドストレージにおいてデータを格納するコンテナである。このURLを用いてサービス提供装置7にアクセスすることにより、サービス提供装置7に対して保存ファイルへのアクセスを要求することができる。
【0108】
上記のファイル同期においては、保存ファイルは、NAS2の共通記憶領域332の空き容量によらずにサービス提供装置7のNAS用記憶領域732に記憶されるため、各メタデータにサービス提供装置7における記憶先が格納される。図7の例では、ファイルA、ファイルB、及びファイルCのサービス提供装置7における記憶先はそれぞれurl_A、url_B、及びurl_Cである。
【0109】
タイムスタンプは、保存ファイルに付された時刻情報である。例えば、タイムスタンプは、第一情報機器1や第二情報機器8によって保存ファイルが生成された時刻であってもよいし、第一情報機器1や第二情報機器8によって保存ファイルが更新された時刻であってもよいし、これらの時刻の両方を含んでもよい。
【0110】
ファイルサイズは、例えばバイト(byte)単位で表される保存ファイルのデータ量である。
【0111】
重要フラグは、ユーザによって保存ファイルに対して付されたフラグ情報である。例えば、ユーザは、保存ファイルに対して、その保存ファイルが重要であると考える場合は重要フラグをtrueに設定する。ユーザによって重要フラグがtrueに設定されていない保存ファイルについては重要フラグがfalseとなる。
【0112】
最終アクセス日時は、保存ファイルの読み出しや更新が最後に行われた時刻である。
【0113】
アクセス頻度は、保存ファイルの読み出しや更新の頻度である。例えば、アクセス頻度は、過去一定時間内に行われた保存ファイルの読み出しや更新の回数に応じた値とすることができる。
【0114】
なお、保存ファイルが第一情報機器1や第二情報機器8によって更新された場合、NAS2は、例えば、更新前の保存ファイルのメタデータを削除して更新後の保存ファイルのメタデータを新規に作成する。又は、この場合に、NAS2は、更新された保存ファイルのメタデータを、更新後の保存ファイルの内容に更新してもよい。
【0115】
図8は、図1に示すファイル同期システム100において第一情報機器1がNAS2にファイルの保存要求を行う場合の処理を説明するためのフローチャートである。
【0116】
第一情報機器1の操作インタフェース260が操作されて、第一情報機器1の内部ストレージ270に記憶されている任意のファイルのNAS2への保存が指示されたとする。この場合に、第一情報機器1は、このファイルをNAS2に送信することにより、NAS2に対してこのファイルの保存を要求する(ステップS801)。
【0117】
ここで、ファイルの保存の要求は、そのファイル自体がいずれの装置の記憶媒体に記憶されるかに拘らず、将来においてNAS2とサービス提供装置7のいずれからもそのファイルを読み出せるようにしておくことの要求である。
【0118】
NAS2のファイル管理部30Bは、受付部30Aを介してステップS801による要求を受け付け、第一情報機器1から受信したファイルについてのメタデータを生成する(ステップS802)。
【0119】
次に、NAS2のファイル管理部30Bは、共通記憶領域332の空き容量が予め定められた閾値以上であるか否かを判断する(ステップS803)。この閾値は、任意に設定することができるが、例えば共通記憶領域332の全容量の数%(一例としては5%)とすることができる。共通記憶領域332の空き容量とは、共通記憶領域332として使用可能なHDD330の全容量のうち未使用の容量である。
【0120】
ステップS803において、NAS2のファイル管理部30Bは、空き容量が閾値以上である場合(ステップS803:Yes)は、ステップS801により受信したファイルを共通記憶領域332に記憶させる(ステップS804)。
【0121】
次に、NAS2のファイル管理部30Bは、ステップS802によって生成したメタデータに、ステップS804によるファイルの記憶先を追加し(ステップS805)、ステップS806へ移行する。このファイルの記憶先は、例えばこのファイルが記憶されたHDD330の領域を示すパスである。
【0122】
ステップS803において、空き容量が閾値以上でない場合(ステップS803:No)は、NAS2のファイル管理部30Bは、ステップS801により受信したファイルを共通記憶領域332に記憶させずにステップS806へ移行する。
【0123】
次に、NAS2のアップロード部30Cは、ステップS801により受信したファイルをサービス提供装置7へ送信することにより、サービス提供装置7に対してこのファイルの記憶を要求する(ステップS806)。なお、このファイルがステップS804により共通記憶領域332におけるフォルダ内に格納された場合、NAS2のアップロード部30Cは、そのフォルダを示す情報についてもサービス提供装置7へ送信する。
【0124】
サービス提供装置7は、ステップS806により受信したファイルをHDD730のNAS用記憶領域732に記憶する(ステップS807)。このとき、サービス提供装置7は、上記のフォルダを示す情報がNAS2のアップロード部30Cから送信された場合は、NAS用記憶領域732のうち、その情報が示すフォルダ(共通記憶領域332がドライブである場合はそのドライブ及びフォルダ)に対応する領域にファイルを記憶する。
【0125】
次に、サービス提供装置7は、ステップS807による、サービス提供装置7におけるファイルの記憶先をNAS2へ通知する(ステップS808)。このファイルのサービス提供装置7における記憶先は、例えばサービス提供装置7がファイルを保存したバケットを示すURLである。
【0126】
NAS2のファイル管理部30Bは、ステップS808により通知された、サービス提供装置7におけるファイルの記憶先を、ステップS802により生成したメタデータに追加する(ステップS809)。
【0127】
次に、NAS2のファイル管理部30Bは、ステップS802により生成し、ステップS805とステップS809、又はステップS809によりファイルの記憶先を追加したメタデータをSSD360に記憶させ(ステップS810)、待機状態に移行する。具体的には、NAS2のファイル管理部30Bは、このメタデータを、SSD360に記憶されている管理情報362に追加する。
【0128】
図8の処理により、第一情報機器1がNAS2にファイルの保存要求を行うと、NAS2の空き容量が閾値以上であればそのファイルがNAS2に記憶され、NAS2の空き容量が閾値未満であればそのファイルがNAS2に記憶されない。また、いずれの場合にもそのファイルはサービス提供装置7に記憶される。また、NAS2は、そのファイルの記憶先を含むメタデータを生成し、そのメタデータを管理情報362に追加することにより管理情報362を更新する。
【0129】
ステップS804及びステップS806は、NAS2の共通記憶領域332とサービス提供装置7のNAS用記憶領域732との双方に保存ファイルを記憶させる第一の制御を構成する。ステップS803からステップS804を経由せずにステップS806へ移行する処理と、ステップS806と、はサービス提供装置7のNAS用記憶領域732のみに保存ファイルを記憶させる第二の制御を構成する。
【0130】
図8に示した処理は、適宜変更することが可能である。例えば、メタデータをステップS810においてSSD360に記憶させる処理について説明したが、メタデータをステップS802においてSSD360に記憶させてもよい。この場合は、ステップS805やステップS809は、SSD360に記憶されたメタデータを更新することにより実行される。この場合、ステップS810は不要である。
【0131】
また、ファイルを空き容量に応じて共通記憶領域332に記憶させる処理より先に、ファイルをサービス提供装置7に記憶させる処理を行ってもよい。例えば、ステップS803からステップS805の処理と、ステップS806からステップS809の処理と、の順序を入れ替えてもよい。
【0132】
次に、第二情報機器8がサービス提供装置7にファイルを書き込む場合の動作について説明する。
【0133】
図9は、図1に示すファイル同期システム100において第二情報機器8がサービス提供装置7にファイルの保存要求を行う場合の処理を説明するためのフローチャートである。
【0134】
第二情報機器8の操作インタフェース260が操作されて、第二情報機器8の内部ストレージ270に記憶されている任意のファイルの、サービス提供装置7への保存が指示されたとする。この場合に、第二情報機器8は、インターネット6を介してこのファイルをサービス提供装置7に送信することにより、サービス提供装置7に対してこのファイルの保存を要求する(ステップS901)。
【0135】
サービス提供装置7は、ステップS901による要求を受け付け、第二情報機器8から受信したファイルをHDD730のNAS用記憶領域732に記憶させる(ステップS902)。
【0136】
NAS2の更新リスト取得部30Dは、予め定められたタイミングになると、サービス提供装置7に対して上記の更新リストを要求する(ステップS903)。
【0137】
サービス提供装置7は、ステップS903における要求に対して、NAS用記憶領域732に記憶されているファイルについての更新リストを作成し、作成した更新リストを要求元のNAS2に送信する(ステップS904)。
【0138】
NAS2のファイル管理部30Bは、ステップS904においてサービス提供装置7から受信した更新リストが更新リスト取得部30Dによって取得されると、その更新リストに基づいて同期処理対象のファイルを抽出する(ステップS905)。
【0139】
同期処理対象のファイルとは、サービス提供装置7のNAS用記憶領域732に記憶されたファイルのうち、更新リストを前回取得した時点から変更のあったファイルである。変更のあったファイルとは、例えば、追加されたファイルや更新されたファイルである。図9の例では、同期処理対象のファイルには、ステップS902においてサービス提供装置7に記憶されたファイルが含まれる。
【0140】
次に、NAS2のファイル管理部30Bは、ステップS905により同期処理対象として抽出したファイルのメタデータを生成する(ステップS906)。
【0141】
次に、NAS2のファイル管理部30Bは、サービス提供装置7に対して、ステップS905により同期処理対象として抽出したファイルのサービス提供装置7における記憶先の通知を要求する(ステップS907)。このファイルのサービス提供装置7における記憶先は、例えばサービス提供装置7がファイルを保存したバケットを示すURLである。
【0142】
サービス提供装置7は、ステップS907により記憶先の通知を要求されたファイルのサービス提供装置7における記憶先をNAS2に通知する(ステップS908)。
【0143】
次に、NAS2のファイル管理部30Bは、ステップS906により生成したメタデータに、ステップS908により通知されたサービス提供装置7における記憶先を追加する(ステップS909)。
【0144】
次に、NAS2のファイル管理部30Bは、HDD330の共通記憶領域332の空き容量が予め定められた閾値以上であるか否かを判断する(ステップS910)。この閾値は、例えば図8のステップS803における閾値と同じである。
【0145】
ステップS910において、空き容量が閾値以上である場合(ステップS910:Yes)は、NAS2のダウンロード部30Eは、ステップS905により同期処理対象として抽出したファイルをサービス提供装置7に要求する(ステップS911)。
【0146】
サービス提供装置7は、ステップS911により要求されたファイルをHDD730のNAS用記憶領域732から読み出し、読み出したファイルをNAS2へ送信する(ステップS912)。
【0147】
ステップS912により送信されたファイルは、NAS2のダウンロード部30Eにより受信される。NAS2のファイル管理部30Bは、ダウンロード部30Eにより受信されたファイルをHDD330の共通記憶領域332に記憶させる(ステップS913)。ステップS913は、NAS2の共通記憶領域332に記憶されていない保存ファイルを共通記憶領域332へ記憶させる第三の制御を構成する。
【0148】
次に、NAS2のファイル管理部30Bは、ステップS906により生成したメタデータに、ステップS913におけるファイルの記憶先を追加し(ステップS914)、ステップS915へ移行する。このファイルの記憶先は、例えばこのファイルが記憶されたHDD330の領域を示すパスである。
【0149】
ステップS910において、空き容量が閾値以上でない場合(ステップS910:No)は、NAS2のファイル管理部30Bは、ステップS905により同期処理対象として抽出したファイルを共通記憶領域332に記憶させずにステップS915へ移行する。
【0150】
次に、NAS2のファイル管理部30Bは、ステップS802により生成し、ステップS909とステップS914、又はステップS909によりファイルの記憶先を追加したメタデータをSSD360に記憶させ(ステップS915)、待機状態に移行する。具体的には、NAS2のファイル管理部30Bは、このメタデータを、SSD360に記憶されている管理情報362に追加する。
【0151】
図9の処理により、第二情報機器8がサービス提供装置7にファイルの保存要求を行うと、そのファイルはサービス提供装置7に記憶される。また、NAS2の空き容量が閾値以上であればそのファイルがNAS2に記憶され、NAS2の空き容量が閾値未満であればそのファイルがNAS2に記憶されない。また、NAS2は、そのファイルの記憶先を含むメタデータを生成し、そのメタデータを管理情報362に追加することにより管理情報362を更新する。
【0152】
図9に示した処理は、適宜変更することが可能である。例えば、メタデータをステップS915においてSSD360に記憶させる処理について説明したが、メタデータをステップS906においてSSD360に記憶させてもよい。この場合は、ステップS909やステップS914は、SSD360に記憶されたメタデータを更新することにより実行される。この場合、ステップS915は不要である。
【0153】
また、ファイルを空き容量に応じて共通記憶領域332に記憶させる処理より後に、ファイルのサービス提供装置7における記憶先をメタデータに追加する処理を行ってもよい。例えば、ステップS907からステップS909の処理と、ステップS910からステップS914の処理と、の順序を入れ替えてもよい。
【0154】
次に、第一情報機器1がNAS2に対して保存ファイルの読み出しを要求する場合の動作について説明する。
【0155】
図10は、図1に示すファイル同期システム100において第一情報機器1がNAS2に対して保存ファイルの読み出しを要求する場合の処理を説明するためのフローチャートである。
【0156】
第一情報機器1の操作インタフェース260が操作されて、NAS2の共通記憶領域332へのアクセスが指示されたとする。この場合に、第一情報機器1は、NAS2とサービス提供装置7との間のファイル同期により保存されている各ファイルの一覧情報をNAS2に対して要求する(ステップS1001)。
【0157】
ステップS1001による要求は、NAS2の受付部30Aにより受け付けられる。NAS2のファイル管理部30Bは、受付部30Aにより受け付けられた第一情報機器1からの要求に応じて、SSD360に記憶させている管理情報362に含まれる各メタデータを読み出す(ステップS1002)。
【0158】
次に、NAS2のファイル管理部30Bは、ステップS1002により読み出した各メタデータに対応する各保存ファイルの一覧情報を生成する(ステップS1003)。すなわち、NAS2は、サービス提供装置7のみに記憶されている保存ファイルも含めた各保存ファイルの一覧情報を生成する。
【0159】
各保存ファイルの一覧情報には、例えば各保存ファイルのファイル名が含まれる。また、各保存ファイルの一覧情報には、各保存ファイルのタイムスタンプ、データサイズ等の情報が含まれてもよい。この一覧情報は、NAS2の共通記憶領域332及びサービス提供装置7のNAS用記憶領域732の少なくともいずれかに記憶された保存ファイルを示す一覧情報を構成する。
【0160】
次に、NAS2のファイル管理部30Bは、ステップS1003により生成した一覧情報を第一情報機器1へ送信する(ステップS1004)。
【0161】
第一情報機器1は、ステップS1004により受信した一覧情報に基づいて、一覧情報が示す各保存ファイルを示す画面を表示する。この画面が表示された状態で第一情報機器1の操作インタフェース260が操作されて、一覧情報が示す保存ファイルの読み出しが指示されたとする。この場合に、第一情報機器1は、この保存ファイルをNAS2に対して要求する(ステップS1005)。
【0162】
ステップS1005による要求は、NAS2の受付部30Aにより受け付けられる。NAS2のファイル管理部30Bは、ステップS1005において第一情報機器1から要求された保存ファイルをNAS2が記憶しているか否かを判断する(ステップS1006)。この判断は、SSD360に記憶されたメタデータのうち、要求された保存ファイルのメタデータに、NAS2における記憶先が含まれているか否かを判定することにより行うことができる。
【0163】
ステップS1006において、要求された保存ファイルをNAS2が記憶している場合(ステップS1006:Yes)は、NAS2のファイル管理部30Bは、その保存ファイルを共通記憶領域332から読み出し(ステップS1007)、ステップS1010へ移行する。この読み出しは、SSD360に記憶されたメタデータのうち、要求された保存ファイルのメタデータに含まれる、NAS2における記憶先に基づいて行うことができる。
【0164】
ステップS1006において、要求された保存ファイルをNAS2が記憶していない場合(ステップS1006:No)は、NAS2のダウンロード部30Eは、その保存ファイルをサービス提供装置7に対して要求する(ステップS1008)。
【0165】
サービス提供装置7は、ステップS1008により要求された保存ファイルをHDD730から読み出し、読み出した保存ファイルをNAS2へ送信する(ステップS1009)。ステップS1009により送信された保存ファイルは、NAS2のダウンロード部30Eにより受信される。
【0166】
次に、NAS2のファイル管理部30Bは、ステップS1007により読み出した保存ファイル、又はステップS1009によりサービス提供装置7から受信した保存ファイルを第一情報機器1へ送信し(ステップS1010)、待機状態へ移行する。
【0167】
図10に示す処理により、第一情報機器1がNAS2に対して保存ファイルの読み出しを要求すると、NAS2は、その保存ファイルのメタデータを参照し、その保存ファイルをNAS2が記憶していればその保存ファイルを自装置で読み出して第一情報機器1に送信する。また、NAS2は、その保存ファイルをNAS2が記憶していなければその保存ファイルをサービス提供装置7から受信して第一情報機器1に送信する。
【0168】
これにより、第一情報機器1は、NAS2及びサービス提供装置7に記憶されている保存ファイルと、サービス提供装置7のみに記憶されている保存ファイルと、のいずれについても、NAS2から受信することができる。
【0169】
第一情報機器1がステップS1004により受信した一覧情報に基づいて各保存ファイルを表示することについて説明したが、このとき、第一情報機器1は、NAS2及びサービス提供装置7に記憶されている保存ファイルと、サービス提供装置7のみに記憶されている保存ファイルと、を区別せずに表示してもよい。第一情報機器1のユーザは、保存ファイルの実際の記憶先を意識せずに、NAS2を介して保存ファイルにアクセスすることが可能になる。
【0170】
又は、第一情報機器1は、NAS2及びサービス提供装置7に記憶されている保存ファイルと、サービス提供装置7のみに記憶されている保存ファイルと、を区別して表示してもよい。これにより、第一情報機器1のユーザは、NAS2及びサービス提供装置7に記憶されている保存ファイルであれば読み出しに時間がかからないが、サービス提供装置7のみに記憶されている保存ファイルであれば読み出しに時間がかかる等の予測を行うことが可能になる。
【0171】
なお、第二情報機器8がサービス提供装置7に対して保存ファイルの読み出しを要求した場合は、サービス提供装置7がその保存ファイルをNAS用記憶領域732から読み出して第二情報機器8へ送信する。
【0172】
次に、第一情報機器1がNAS2に対してファイルの削除を要求する場合の動作について説明する。
【0173】
図11は、図1に示すファイル同期システム100において第一情報機器1がNAS2に対してファイルの削除を要求する場合の処理を説明するためのフローチャートである。
【0174】
ステップS1101からステップS1104は、図10のステップS1001からステップS1004と同じである。
【0175】
第一情報機器1は、ステップS1104においてNAS2から受信した一覧情報に基づいて、一覧情報が示す各ファイルを示す画面を表示する。この画面が表示された状態で第一情報機器1の操作インタフェース260が操作されて、一覧情報が示す各保存ファイルの中から削除対象の保存ファイルが指定されると、第一情報機器1は、この保存ファイルの削除をNAS2に要求する(ステップS1105)。
【0176】
ステップS1105による要求は、NAS2の受付部30Aにより受け付けられる。NAS2のファイル管理部30Bは、ステップS1105において第一情報機器1から削除を要求された保存ファイルをNAS2が記憶しているか否かを判断する(ステップS1106)。この判断は、SSD360に記憶されたメタデータのうち、削除を要求された保存ファイルのメタデータに、NAS2における記憶先が含まれているか否かを判定することにより行うことができる。
【0177】
ステップS1106において、第一情報機器1から削除を要求された保存ファイルをNAS2が記憶していない場合(ステップS1106:No)は、NAS2は、ステップS1108へ移行する。
【0178】
ステップS1106において、第一情報機器1から削除を要求された保存ファイルをNAS2が記憶している場合(ステップS1106:Yes)は、NAS2のファイル管理部30Bは、その保存ファイルを共通記憶領域332から削除する(ステップS1107)。この削除は、SSD360に記憶されたメタデータのうち、削除を要求された保存ファイルのメタデータに含まれる、NAS2における記憶先に基づいて行うことができる。
【0179】
次に、NAS2のファイル管理部30Bは、第一情報機器1から削除を要求された保存ファイルの削除をサービス提供装置7に対して要求する(ステップS1108)。
【0180】
サービス提供装置7は、ステップS1108により削除を要求された保存ファイルをHDD730から削除する(ステップS1109)。
【0181】
また、NAS2のファイル管理部30Bは、ステップS1105により削除を要求された保存ファイルのメタデータをSSD360から削除し(ステップS1110)、待機状態へ移行する。
【0182】
図11に示した処理により、第一情報機器1がNAS2に対してファイルの削除を要求すると、NAS2は、その保存ファイルのメタデータを参照する。そして、NAS2は、その保存ファイルをNAS2が記憶していればその保存ファイルを自装置から削除し、サービス提供装置7に対してもその保存ファイルを削除させる。
【0183】
また、NAS2は、その保存ファイルをNAS2が記憶していなければサービス提供装置7に対してその保存ファイルを削除させる。また、NAS2は、いずれの場合においても、削除した保存ファイルのメタデータを管理情報362から削除することにより管理情報362を更新する。
【0184】
図11に示した処理は、適宜変更することが可能である。例えば、保存ファイルをNAS2から削除する処理より先に、保存ファイルをサービス提供装置7から削除させる処理を行ってもよい。例えば、ステップS1106からステップS1107の処理と、ステップS1108の処理と、の順序を入れ替えてもよい。
【0185】
また、サービス提供装置7は、ステップS1109の後に、保存ファイルを削除したことをNAS2へ通知してもよい。この場合に、NAS2は、サービス提供装置7から保存ファイルが削除されたことが通知された後に、ステップS1110によってメタデータを削除してもよい。
【0186】
次に、NAS2が優先度の低い保存ファイルを削除する動作について説明する。
【0187】
図12は、図3及び図6に示すNAS2が優先度の低い保存ファイルを削除する処理を説明するためのフローチャートである。
【0188】
NAS2は、図8から図11において説明したファイル同期に関する処理とともに、共通記憶領域332に記憶させた優先度の低い保存ファイルを削除する処理として、図12に示す処理を実行してもよい。図12に示す処理は、例えば、ファイル同期に関する処理と非同期に(例えば定期的に)実行される。ただし、図12に示す処理は、ファイル同期に関する処理と同期して実行されてもよい。
【0189】
まず、NAS2のファイル管理部30Bは、共通記憶領域332の空き容量が予め定められた閾値以上であるか否かを判断する(ステップS1201)。この閾値は、任意に設定することができるが、例えばサービス提供装置7のNAS用記憶領域732の空き容量に相当する値とすることができる。これにより、NAS2とサービス提供装置7との間でファイル同期ができなくなる恐れがある状況か否かを判定することができる。
【0190】
ステップS1201において、共通記憶領域332の空き容量が閾値以上である場合(ステップS1201:Yes)は、NAS2は、待機状態へ移行する。空き容量が閾値以上でない場合(ステップS1201:No)は、NAS2のファイル管理部30Bは、NAS2が共通記憶領域332に記憶している各保存ファイルのメタデータをSSD360から読み出す(ステップS1202)。
【0191】
次に、NAS2のファイル管理部30Bは、ステップS1202により読み出したメタデータに基づいて、NAS2が共通記憶領域332に記憶している各保存ファイルに関連付けた優先度を導出する(ステップS1203)。保存ファイルに関連付けた優先度とは、その保存ファイルをNAS2が保存しておくことの優先度である。優先度は、例えば「0」及び「1」などの2段階の情報であってもよいし、「1」から「5」等の三段階以上の情報であってもよい。保存ファイルに関連付けた優先度の導出方法については後述する。なお、ここでは数値が大きい優先度ほど高い優先度を示している。
【0192】
次に、NAS2のファイル管理部30Bは、ステップS1203により導出した優先度が低いファイルを共通記憶領域332から削除する(ステップS1204)。ステップS1204において削除される優先度が低い保存ファイルとは、例えば、NAS2が共通記憶領域332に記憶している各保存ファイルのうち、一定の優先度に満たない保存ファイルである。又は、ステップS1204において削除される優先度が低い保存ファイルとは、NAS2が共通記憶領域332に記憶している各保存ファイルのうち、優先度が最も低いN個の保存ファイルであってもよい。Nは1以上の自然数である。
【0193】
次に、NAS2のファイル管理部30Bは、ステップS1204において削除した保存ファイルのNAS2における記憶先を、SSD360に記憶させたその保存ファイルのメタデータから削除し(ステップS1205)、待機状態へ移行する。
【0194】
図12に示した処理により、NAS2は、保存ファイルの削除要求がなくても、優先度が低い保存ファイルを共通記憶領域332から削除して共通記憶領域332の空き容量を増やしつつ、優先度が高い保存ファイルを共通記憶領域332に残しておくことができる。これにより、新規の保存ファイルや優先度が高い保存ファイルを共通記憶領域332に優先的に記憶させることができ、第一情報機器1がNAS2を介してこれらの保存ファイルへアクセスする際のアクセス速度を向上させることができる。
【0195】
保存ファイルに関連付けた優先度の導出方法について説明する。保存ファイルに関連付けた優先度の導出方法は任意の方法とすることができるが、具体例としては下記のものがある。
【0196】
例えば、ファイル管理部30Bは、図7に示したメタデータの重要フラグに基づいて優先度を導出することができる。これは、上記のように、重要フラグは、その保存ファイルが重要かどうかによってユーザが設定するものであるためである。例えば、ファイル管理部30Bは、図7に示した例において、ファイルAの重要フラグはtrueであるためファイルAの優先度として「1」を導出し、ファイルBの重要フラグはfalseであるためファイルBの優先度として「0」を導出する。
【0197】
又は、ファイル管理部30Bは、図7に示したメタデータのアクセス頻度に基づいて優先度を導出してもよい。これは、過去のアクセス頻度が高い保存ファイルほど、将来においても頻繁にアクセスがある可能性が高いためである。例えば、ファイル管理部30Bは、ファイルA及びファイルBのアクセス頻度をそのままそれぞれファイルA及びファイルBの優先度として導出する。
【0198】
又は、ファイル管理部30Bは、図7に示したメタデータの最終アクセス日時に基づいて優先度を導出してもよい。これは、最終アクセス日時が新しい保存ファイルほど、現時点で必要とされている可能性が高く、将来においてもアクセスがある可能性が高いためである。例えば、ファイル管理部30Bは、最終アクセス日時が新しいほど高い優先度となるように、ファイルA及びファイルBの優先度を導出する。
【0199】
又は、ファイル管理部30Bは、図7に示したファイルサイズに基づいて優先度を導出してもよい。これは、ファイルサイズが大きい保存ファイルほど、NAS2がサービス提供装置7からダウンロードする際の処理負荷や遅延が大きく、NAS2に記憶しておくことによる処理負荷や遅延の改善量が大きいためである。例えば、ファイル管理部30Bは、ファイルA及びファイルBのファイルサイズをそのままそれぞれファイルA及びファイルBの優先度として導出する。
【0200】
以上説明したように、NAS2は、第一情報機器1からNAS2への保存要求がされた場合、第一の制御と第二の制御を、NAS2の共通記憶領域332の空き容量に応じて切り替えて行う。
【0201】
第一の制御は、NAS2の共通記憶領域332とサービス提供装置7のNAS用記憶領域732との双方に、同期の対象である保存ファイルを記憶させる制御である。第二の制御は、サービス提供装置7のNAS用記憶領域732のみに保存ファイルを記憶させる制御である。
【0202】
例えば、NAS2は、共通記憶領域332の空き容量が予め定められた値以上である場合は第一の制御を行い、共通記憶領域332の空き容量が予め定められた値未満である場合は第二の制御を行う。
【0203】
また、NAS2は、保存ファイルの記憶先を含む管理情報362を記憶しており、上記の第一の制御又は第二の制御を行った場合に、その制御内容に応じて管理情報362を更新する。
【0204】
このような構成により、NAS2の共通記憶領域332の空き容量が少ない場合は、保存ファイルをサービス提供装置7に記憶させるとともに、サービス提供装置7における保存ファイルの記憶先を含む管理情報362をNAS2に記憶することができる。
【0205】
これにより、NAS2の共通記憶領域332の記憶容量が、サービス提供装置7のNAS用記憶領域732の記憶容量に対して不足していても、第一情報機器1のユーザは、NAS2の共通記憶領域332の空き容量を気にせずに、NAS2に対してファイルの保存要求を行うことができる。
【0206】
また、NAS2は、保存ファイルをサービス提供装置7のみに記憶させる場合であっても、サービス提供装置7における保存ファイルの記憶先を含む管理情報362を記憶している。これにより、NAS2に対してその保存ファイルの読み出し要求があった場合に、その保存ファイルをサービス提供装置7から取得して第一情報機器1へ送信することができる。
【0207】
このため、第一情報機器1のユーザは、保存ファイルがNAS2に記憶されているか否かを気にせずに、NAS2に対して保存ファイルの読み出しを要求し、NAS2から保存ファイルを得ることができる。
【0208】
このように、NAS2によれば、NAS2の記憶容量がサービス提供装置7の記憶容量に対して不足していても、ファイル同期による連携機能の利便性が低下することを抑制することができる。
【0209】
また、NAS2は、共通記憶領域332に記憶された保存ファイルに関連付けられた優先度に基づいて、共通記憶領域332に保存された複数の保存ファイルのうち一部の保存ファイルを削除してもよい。この場合に、NAS2は、削除の内容に応じて管理情報362を更新する。
【0210】
このような構成により、優先度が低い保存ファイルを共通記憶領域332から削除し、共通記憶領域332に対して、優先度が高い保存ファイルや、新規に保存が要求されたファイルを優先的に記憶させることができる。
【0211】
また、NAS2は、NAS2の共通記憶領域332に記憶されていない保存ファイルがサービス提供装置7のNAS用記憶領域732に記憶されると、その保存ファイルを共通記憶領域332へ記憶させる第三の制御(図9参照)を行うか否かを、共通記憶領域332の空き容量に応じて切り替えてもよい。
【0212】
例えば、NAS2は、NAS2の共通記憶領域332に記憶されていない保存ファイルがサービス提供装置7のNAS用記憶領域732に記憶されると、共通記憶領域332の空き容量が予め定められた値以上である場合は第三の制御を行う。
【0213】
このような構成により、NAS2の共通記憶領域332の空き容量が少ない場合、保存ファイルをサービス提供装置7のみに記憶させるとともに、サービス提供装置7における保存ファイルの記憶先を含む管理情報362をNAS2に記憶することができる。
【0214】
これにより、NAS2の共通記憶領域332の記憶容量が、サービス提供装置7のNAS用記憶領域732の記憶容量に対して不足していても、第二情報機器8のユーザは、NAS2の共通記憶領域332の空き容量を気にせずに、サービス提供装置7に対してファイルの保存要求を行うことができる。
【0215】
また、NAS2は、保存ファイルがサービス提供装置7のみに記憶される場合であっても、サービス提供装置7における保存ファイルの記憶先を含む管理情報362を記憶している。これにより、NAS2に対してその保存ファイルの読み出し要求があった場合に、その保存ファイルをサービス提供装置7から取得して第一情報機器1へ送信することができる。
【0216】
このため、第一情報機器1のユーザは、保存ファイルがNAS2に記憶されているか否かを気にせずに、NAS2に対して保存ファイルの読み出しを要求し、NAS2から保存ファイルを得ることができる。
【0217】
このように、NAS2によれば、NAS2の記憶容量がサービス提供装置7の記憶容量に対して不足していても、ファイル同期による連携機能の利便性が低下することを抑制することができる。
【0218】
また、NAS2は、管理情報362に基づいて、NAS2の共通記憶領域332及びサービス提供装置7のNAS用記憶領域732の少なくともいずれかに記憶された保存ファイルを示す一覧情報を第一情報機器1へ送信してもよい。この一覧情報は、NAS2の共通記憶領域332及びサービス提供装置7のNAS用記憶領域732の両方に記憶された保存ファイルと、サービス提供装置7のNAS用記憶領域732に記憶されNAS2の共通記憶領域332に記憶されていない保存ファイルと、を示す。
【0219】
これにより、第一情報機器1は、サービス提供装置7にのみ記憶された保存ファイルも含めた各保存ファイルに対するアクセスを、NAS2に対して要求することができる。したがって、第一情報機器1のユーザは、保存ファイルがNAS2に記憶されているか否かを気にせずに、NAS2に対して保存ファイルの読み出しを要求し、NAS2から保存ファイルを得ることができる。
【0220】
例えば、NAS2は、第一情報機器1から読み出しが要求された保存ファイルがNAS2の共通記憶領域332及びサービス提供装置7のNAS用記憶領域732の両方に記憶されている場合は管理情報362に基づいて共通記憶領域332から読み出しを行う。また、NAS2は、第一情報機器1から読み出しが要求された保存ファイルがサービス提供装置7のNAS用記憶領域732のみに記憶されている場合は管理情報362に基づいてNAS用記憶領域732から読み出しを行う。
【0221】
また、NAS2は、第一情報機器1から削除が要求された保存ファイルがNAS2の共通記憶領域332及びサービス提供装置7のNAS用記憶領域732の両方に記憶されている場合は、管理情報362に基づいてNAS2の共通記憶領域332及びサービス提供装置7のNAS用記憶領域732の両方から保存ファイルの削除を行って管理情報362を更新する。また、NAS2は、第一情報機器1から削除が要求された保存ファイルがサービス提供装置7のNAS用記憶領域732のみに記憶されている場合は、管理情報362に基づいてサービス提供装置7のNAS用記憶領域732から保存ファイルの削除を行って管理情報362を更新する。
【0222】
また、NAS2において、保存ファイルが記憶される共通記憶領域332と、管理情報362が記憶される記憶部は、それぞれ異なる記憶媒体に含まれてもよい。このとき、管理情報362が記憶される記憶部は、保存ファイルが記憶される共通記憶領域332の記憶媒体より故障しにくい記憶媒体(例えばSSD)に含まれることが望ましい。例えば、図3の例のように、保存ファイルが記憶される共通記憶領域332はHDD330に含まれ、管理情報362が記憶される記憶部はSSD360に含まれてもよい。
【0223】
このような構成により、例えばHDD330に故障やエラーが発生して共通記憶領域332の保存ファイルにアクセスできなくなっても、NAS2は、SSD360に記憶された管理情報362を参照することにより、アクセスできなくなった保存ファイルをサービス提供装置7から取得することが可能になる。
【0224】
したがって、このような場合に第一情報機器1からNAS2に保存ファイルの読み出し要求があっても、NAS2はその保存ファイルをサービス提供装置7から取得して第一情報機器1へ送信することができる。
【0225】
ただし、NAS2において、保存ファイルが記憶される共通記憶領域332と、管理情報362が記憶される記憶部は、同じ記憶媒体に含まれてもよい。例えば、図3に示した例において、共通記憶領域332と、管理情報362が記憶される記憶部とは、両方ともHDD330に含まれ、又は両方ともSSD360に含まれてもよい。
【0226】
なお、第一情報機器1がパーソナルコンピュータ、タブレット端末、又はスマートフォン等の電子機器である構成について説明したが、第一情報機器1はこれに限らない。例えば、第一情報機器1は、LAN3を介してNAS2と接続された、NAS2とは別のNASであってもよい。例えば、このNASは、NAS2との間でファイル同期を行っており、そのファイル同期の処理により、NAS2に対してファイルの保存や削除を要求する。
【0227】
NAS2のROM31に記憶される記憶プログラムは、プログラムをコンピュータが読取可能な一時的でない(non-transitory)記憶媒体に記憶される。このような「コンピュータ読取可能な記憶媒体」は、例えば、CD-ROM(Compact Disc-ROM)等の光学媒体や、USBメモリ又はメモリカード等の磁気記憶媒体等を含む。また、このようなプログラムを、インターネット6を介したダウンロードによって提供することもできる。
【0228】
以上のように本明細書には以下の事項が開示されている。
【0229】
開示された記憶装置は、ローカルエリアネットワークを介して複数の端末装置からアクセス可能な記憶装置であって、前記複数の端末装置が、共通のファイル保存領域として利用可能なファイル記憶部と、前記ローカルエリアネットワークとは異なるネットワークを介してアクセス可能なサービス提供装置が提供する同期保存領域と、前記ファイル記憶部との間で、保存されたファイルの同期を行う同期制御を含む記憶制御を行う記憶制御部と、前記同期の対象である保存ファイルの、前記同期保存領域及び前記ファイル記憶部のうちの前記保存ファイルの記憶先を含む管理情報を記憶する管理情報記憶部と、を備え、前記記憶制御部は、前記端末装置から自装置へ保存要求がされた場合、前記ファイル記憶部と前記同期保存領域との双方に前記保存ファイルを記憶させる第一の制御と、前記同期保存領域のみに前記保存ファイルを記憶させる第二の制御を、前記ファイル記憶部の空き容量に応じて切り替えて行い、前記管理情報を更新するものである。
【0230】
開示された記憶装置は、前記記憶制御部は、前記ファイル記憶部に記憶された保存ファイルに関連付けられた優先度に基づいて、前記ファイル記憶部に保存された複数の保存ファイルのうち一部の保存ファイルを削除し、前記管理情報を更新するものである。
【0231】
開示された記憶装置は、前記記憶制御部は、前記ファイル記憶部の空き容量が予め定められた値以上である場合は前記第一の制御を行い、前記ファイル記憶部の空き容量が前記予め定められた値未満である場合は前記第二の制御を行うものである。
【0232】
開示された記憶装置は、前記記憶制御部は、前記ローカルエリアネットワークとは異なるネットワークに接続可能な複数の端末装置が共通のファイル保存領域として利用可能な前記同期保存領域に、前記管理情報記憶部に前記管理情報が記憶されていない前記保存ファイルが記憶されると、前記保存ファイルを前記ファイル記憶部へ記憶させる第三の制御を行うか否かを、前記ファイル記憶部の空き容量に応じて切り替え、前記管理情報を更新するものである。
【0233】
開示された記憶装置は、前記記憶制御部は、前記管理情報記憶部に前記管理情報が記憶されていない前記保存ファイルが前記同期保存領域に記憶されると、前記ファイル記憶部の空き容量が予め定められた値以上である場合は前記第三の制御を行うものである。
【0234】
開示された記憶装置は、前記記憶制御部は、前記管理情報に基づいて、前記ファイル記憶部及び前記同期保存領域の少なくともいずれかに記憶された保存ファイルを示す一覧情報を前記端末装置へ送信するものである。
【0235】
開示された記憶装置は、前記一覧情報は、前記ファイル記憶部及び前記同期保存領域に記憶された保存ファイルと、前記同期保存領域に記憶され前記ファイル記憶部に記憶されていない保存ファイルと、を示すものである。
【0236】
開示された記憶装置は、前記記憶制御部は、前記端末装置から読み出しが要求された保存ファイルが前記ファイル記憶部及び前記同期保存領域に記憶されている場合は前記管理情報に基づいて前記ファイル記憶部から前記読み出しを行い、前記読み出しが要求された保存ファイルが前記同期保存領域のみに記憶されている場合は前記管理情報に基づいて前記同期保存領域から前記読み出しを行うものである。
【0237】
開示された記憶装置は、前記記憶制御部は、前記端末装置から削除が要求された保存ファイルが前記ファイル記憶部及び前記同期保存領域に記憶されている場合は前記管理情報に基づいて前記ファイル記憶部及び前記同期保存領域から前記削除を行って前記管理情報を更新し、前記削除が要求された保存ファイルが前記同期保存領域のみに記憶されている場合は前記管理情報に基づいて前記同期保存領域から前記削除を行って前記管理情報を更新するものである。
【0238】
開示された記憶装置は、前記ファイル記憶部及び前記管理情報記憶部は異なる記憶媒体に含まれるものである。
【0239】
開示された記憶装置は、前記ファイル記憶部の記憶容量は前記同期保存領域の記憶容量より小さいものである。
【0240】
開示された記憶方法は、ローカルエリアネットワークを介して複数の端末装置からアクセス可能な記憶装置であって、前記複数の端末装置が、共通のファイル保存領域として利用可能なファイル記憶部を有する記憶装置による記憶方法であって、前記ローカルエリアネットワークとは異なるネットワークを介してアクセス可能なサービス提供装置が提供する同期保存領域と、前記ファイル記憶部との間で、保存されたファイルの同期を行う同期制御を含む記憶制御を行う記憶制御ステップと、前記同期の対象である保存ファイルの、前記同期保存領域及び前記ファイル記憶部のうちの前記保存ファイルの記憶先を含む管理情報を記憶する管理情報記憶ステップと、を備え、前記記憶制御ステップでは、前記端末装置から自装置へ保存要求がされた場合、前記ファイル記憶部と前記同期保存領域との双方に前記保存ファイルを記憶させる第一の制御と、前記同期保存領域のみに前記保存ファイルを記憶させる第二の制御を、前記ファイル記憶部の空き容量に応じて切り替えて行い、前記管理情報を更新するものである。
【0241】
開示された記憶プログラムは、ローカルエリアネットワークを介して複数の端末装置からアクセス可能な記憶装置であって、前記複数の端末装置が、共通のファイル保存領域として利用可能なファイル記憶部を有する記憶装置の記憶プログラムであって、前記ローカルエリアネットワークとは異なるネットワークを介してアクセス可能なサービス提供装置が提供する同期保存領域と、前記ファイル記憶部との間で、保存されたファイルの同期を行う同期制御を含む記憶制御を行う記憶制御ステップと、前記同期の対象である保存ファイルの、前記同期保存領域及び前記ファイル記憶部のうちの前記保存ファイルの記憶先を含む管理情報を記憶する管理情報記憶ステップと、をコンピュータに実行させるための記憶プログラムであり、前記記憶制御ステップでは、前記端末装置から自装置へ保存要求がされた場合、前記ファイル記憶部と前記同期保存領域との双方に前記保存ファイルを記憶させる第一の制御と、前記同期保存領域のみに前記保存ファイルを記憶させる第二の制御を、前記ファイル記憶部の空き容量に応じて切り替えて行い、前記管理情報を更新するものである。
【符号の説明】
【0242】
20,30,70 CPU
21,31,71 ROM
22,32,72 RAM
27 内部ストレージ部
30A 受付部
30B ファイル管理部
30C アップロード部
30D 更新リスト取得部
30E ダウンロード部
33,73 HDD部
34,74 有線LANモジュール
36 SSD部
100 ファイル同期システム
230 液晶ドライバ
231 液晶パネル
240 LANモジュール
241 通信モジュール
260 操作インタフェース
270 内部ストレージ
271 内部ストレージインタフェース
280,350,750 USBコントローラ
281,351,751 USBコネクタ
330,730 HDD
331,731 HDDインタフェース
332 共通記憶領域
360 SSD
361 SSDインタフェース
362 管理情報
732 NAS用記憶領域
A,B,C ファイル
a,b,c メタデータ
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12