特許第6390196号(P6390196)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ 日本電気株式会社の特許一覧

特許6390196ストレージシステム、ストレージ方法、および、プログラム
<>
  • 特許6390196-ストレージシステム、ストレージ方法、および、プログラム 図000002
  • 特許6390196-ストレージシステム、ストレージ方法、および、プログラム 図000003
  • 特許6390196-ストレージシステム、ストレージ方法、および、プログラム 図000004
  • 特許6390196-ストレージシステム、ストレージ方法、および、プログラム 図000005
  • 特許6390196-ストレージシステム、ストレージ方法、および、プログラム 図000006
  • 特許6390196-ストレージシステム、ストレージ方法、および、プログラム 図000007
  • 特許6390196-ストレージシステム、ストレージ方法、および、プログラム 図000008
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6390196
(24)【登録日】2018年8月31日
(45)【発行日】2018年9月19日
(54)【発明の名称】ストレージシステム、ストレージ方法、および、プログラム
(51)【国際特許分類】
   H04N 5/93 20060101AFI20180910BHJP
   H04N 5/91 20060101ALI20180910BHJP
   G06F 3/06 20060101ALI20180910BHJP
   G06F 12/00 20060101ALI20180910BHJP
   H04N 21/232 20110101ALI20180910BHJP
   H04N 21/231 20110101ALI20180910BHJP
【FI】
   H04N5/93
   H04N5/91
   G06F3/06 301Z
   G06F12/00 520E
   H04N21/232
   H04N21/231
【請求項の数】10
【全頁数】17
(21)【出願番号】特願2014-126358(P2014-126358)
(22)【出願日】2014年6月19日
(65)【公開番号】特開2016-5238(P2016-5238A)
(43)【公開日】2016年1月12日
【審査請求日】2017年5月9日
(73)【特許権者】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100080816
【弁理士】
【氏名又は名称】加藤 朝道
(72)【発明者】
【氏名】長谷部 賀洋
(72)【発明者】
【氏名】山川 聡
【審査官】 斎藤 眞
(56)【参考文献】
【文献】 特開2001−228528(JP,A)
【文献】 特開2007−079866(JP,A)
【文献】 特開2010−176497(JP,A)
【文献】 特開2002−329191(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 5/76−5/956
H04N 7/10
H04N 7/14−7/173
H04N 7/20−7/56
H04N 21/00−21/858
G06F 3/06−3/08
G06F 12/00
G06F 17/30
(57)【特許請求の範囲】
【請求項1】
映像データまたは画像データであるストリームデータを相対的に粗い粒度の複数の第1のデータに分割して第1のストレージ手段に蓄積するとともに、分割後の複数の第1のデータのそれぞれを識別する第1のメタ情報を保持する第1の蓄積手段と、
前記ストリームデータに含まれる一部のデータを、前記映像データ又は前記画像データ上に定義した座標軸上の座標に応じて、相対的に細かい粒度の複数の第2のデータに分割して第2のストレージ手段に蓄積するとともに、分割後の複数の第2のデータのそれぞれを識別する第2のメタ情報を保持する第2の蓄積手段と、を備える、
ことを特徴とするストレージシステム。
【請求項2】
記一部のデータは、前記映像データまたは画像データが表す画面に含まれる一部の領域のデータである、
請求項1に記載のストレージシステム。
【請求項3】
前記第1の蓄積手段は、前記映像データまたは画像データを取得または撮影した時刻に応じて、前記映像データまたは画像データを複数の第1のデータに分割する、
請求項2に記載のストレージシステム。
【請求項4】
前記一部のデータは、前記映像データまたは画像データのうちの、前記映像データまたは画像データを取得または撮影した時刻が所定の期間内に含まれるデータであり、
前記第2の蓄積手段は、前記一部の領域のデータを前記座標に応じて複数の第2のデータに分割し、分割後の複数の第2のデータのそれぞれの座標を前記第2のメタ情報として保持する、
請求項2または3に記載のストレージシステム。
【請求項5】
前記一部のデータは、前記ストリームデータのうちの相対的に利用頻度が高いデータ、または、予め指定されたデータである、
請求項1ないし4のいずれか1項に記載のストレージシステム。
【請求項6】
前記第2の蓄積手段は、受け付けた検索要求に含まれる時刻および座標に対応するデータが前記第2のストレージ手段に蓄積されているか否かを、前記第2のメタ情報を参照して判定する、
請求項1ないし5のいずれか1項に記載のストレージシステム。
【請求項7】
前記第2の蓄積手段は、受け付けた検索要求に含まれる時刻および座標に対応するデータが前記第2のストレージ手段に蓄積されている場合、前記第2のストレージ手段から該データを読み出し、それ以外の場合、該データが前記第1のストレージ手段に蓄積されているかどうかを判定するように前記第1の蓄積手段に指示する、
請求項6に記載のストレージシステム。
【請求項8】
コンピュータが、映像データまたは画像データであるストリームデータを相対的に粗い粒度の複数の第1のデータに分割して第1のストレージ手段に蓄積するとともに、分割後の複数の第1のデータのそれぞれを識別する第1のメタ情報を保持するステップと、
前記ストリームデータに含まれる一部のデータを、前記映像データ又は前記画像データ上に定義した座標軸上の座標に応じて、相対的に細かい粒度の複数の第2のデータに分割して第2のストレージ手段に蓄積するとともに、分割後の複数の第2のデータのそれぞれを識別する第2のメタ情報を保持するステップと、を含む、
ことを特徴とするストレージ方法。
【請求項9】
記一部のデータは、前記映像データまたは画像データが表す画面に含まれる一部の領域のデータである、
請求項8に記載のストレージ方法。
【請求項10】
映像データまたは画像データであるストリームデータを相対的に粗い粒度の複数の第1のデータに分割して第1のストレージ手段に蓄積するとともに、分割後の複数の第1のデータのそれぞれを識別する第1のメタ情報を保持する処理と、
前記ストリームデータに含まれる一部のデータを、前記映像データ又は前記画像データ上に定義した座標軸上の座標に応じて、相対的に細かい粒度の複数の第2のデータに分割して第2のストレージ手段に蓄積するとともに、分割後の複数の第2のデータのそれぞれを識別する第2のメタ情報を保持する処理と、をコンピュータに実行させる、
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ストレージシステム、ストレージ方法、および、プログラムに関し、特に、ストリームデータを蓄積するストレージシステム、ストレージ方法、および、プログラムに関する。
【背景技術】
【0002】
大容量のデータを格納するとともに、データが必要とされた際には必要な分だけデータを提供するストレージシステムが知られている。かかるストレージシステムに対して、切れ目がないデータから成るストリームデータを格納する場合、ストリームデータの特性に合わせて、活用または蓄積し易いデータの単位を定義し、そのデータ単位にストリームデータを分割した後、データの蓄積が行われる。
【0003】
ストリームデータとして、例えば、ある地点を撮影し続けた高精細な映像データ、または、連続撮影した高精細な画像データ群を考えた場合、これらのデータを活用する際、映像データまたは画像データ群の一部にフォーカスする動作が行われる。すなわち、映像データや画像データ上に定義した座標軸を用いて(例えば、緯度、経度を座標軸として定義するなど)データの一部分を切り出す動作が行われる。また、これらのデータを蓄積する場合、映像データであれば、撮影したデータの時間軸方向に対してある一定時間ごとにデータを分割してデータの蓄積が行われる。一方、画像データであれば、撮影画像を単位としてデータの蓄積が行われる。
【0004】
上述のようなデータの蓄積ないし活用環境において、数年から数十年単位の長期間に亘って連続して撮影したデータを保存し続けると、データの総容量がテラバイトからペタバイトのオーダーになることがある。このような場合、データの保存先となるストレージシステムは、蓄積メディアのバイト単価を考慮すると、磁気テープドライブや安価で大容量なハードディスクによって構成されることになる。特に、撮影した映像データまたは高精細画像データを、撮影の時間軸に沿って連続して読み出す場合、磁気テープドライブやハードディスクからの読み出しは、読み出すストリームデータを頭出しした後、メディア上に連続して書き込まれたデータを読むことになる。したがって、データを高速に読み出すことが可能となる。
【0005】
また、上記のようなストリームデータを活用する際、データ本体以外に管理しなければならないデータとして、例えば、撮影した緯度、経度といった地理的な座標軸に基づく位置情報、時間情報、撮影主体の識別子(ID:Identifier)等のデータの関連情報(以下、「メタデータ」という。)が存在する。メタデータは、ストリームデータを活用する際、どの部分のデータを読み出して活用するのかを特定するために必要とされる。例えば、上述のデータストレージシステムに保存されたストリームデータの頭出しの際に先頭となるデータを特定する場合や、時間軸方向にどれだけのデータを読み出すかといったデータの読み出し範囲を決定する際に、メタデータが必要とされる。
【0006】
関連技術として、特許文献1には、データの利用頻度に見合う性能を有する装置にデータを格納する(例えば、頻繁に利用されるデータに対して高性能の記憶装置を提供し、稀にしか使用されないデータに対して低性能の記憶装置を提供する)技術が記載されている。
【0007】
また、特許文献2には、センタ配信サーバに登録されているコンテンツの少なくとも一部について、各々、先頭部分を予めキャッシュ用ストレージに格納し、コンテンツデータを短い時間のファイルに時間帯毎に分割する技術が記載されている。
【0008】
さらに、特許文献3には、地図データの管理方法として、所定の領域で区切った図形データを領域ごとに分割してファイル管理し、抽出指定範囲が与えられると、当該範囲に属しているファイルを検索して地図データを出力する方法が記載されている。
【0009】
また、特許文献4には、物件の測量を支援する装置であって、現在位置の情報を取得し、取得した現在位置の情報に基づいて、現在位置が事前に設定された位置範囲内にあるか否かを判断し、現在位置が当該位置範囲内にあると判断されたときにのみ、現在位置の情報を蓄積する装置が記載されている。
【先行技術文献】
【特許文献】
【0010】
【特許文献1】特表2014−500542号公報
【特許文献2】特開2013−089977号公報
【特許文献3】特開2004−287931号公報
【特許文献4】特開2002−243505号公報
【発明の概要】
【発明が解決しようとする課題】
【0011】
以下の分析は、本発明者によってなされたものである。
【0012】
前述のストリームデータの蓄積や、データの活用に伴うデータの読み出しの際、ストリームデータ読み出し単位は、ストリームデータ蓄積時に分割したデータ単位となる。例えば、ある地点を撮影し続けた映像データの場合、時間方向に分割したデータ単位が読み出しの単位となる。一方、連続撮影した画像データの場合、撮影データ単位がデータの読み出し単位となる。
【0013】
しかし、データの活用時に必要とされるデータが、ある地点における一部の領域のデータのみであった場合、不必要な部分のデータも含めて、データを一旦ストレージシステムから読み出し、必要な部分のみを抽出するといった余分な処理が発生するという問題がある。このような余分な処理は、データ活用に伴うデータの処理時間を増大させるというデメリットがある。
【0014】
かかる問題に対応するため、予めストリームデータの蓄積単位をより細粒度にすることが考えられる。例えば、上記の撮影データの場合において、撮影したデータの位置座標軸に応じてデータを複数に分割して保存することにより、データの読み出し単位の粒度を細かくすることで、データの読み出し要求に応じて必要なデータのみを読み出すことが可能となる。
【0015】
しかし、数年から数十年単位の長期間におよぶ撮影データを保存し続けた場合、データを細粒度で蓄積することにより、データを管理するためのメタデータの量も増大する。したがって、データ読み出し効率を優先すると、ストレージへの使用容量の効率が低下するという問題がある。また、メタデータの量が増大することにより、必要なデータがどこに格納されているかを特定するためのメタデータの探索処理も複雑となるため、処理時間の低下を招くおそれもある。なお、特許文献1ないし4に記載された技術によると、これらの問題を解決することは困難である。
【0016】
そこで、メタデータの増大を防ぎつつ、蓄積されたストリームデータの中から要求されたデータを迅速に読み出すことができるようにすることが課題となる。本発明の目的は、かかる課題解決に寄与するストレージシステム、ストレージ方法、および、プログラムを提供することにある。
【課題を解決するための手段】
【0017】
本発明の第1の態様に係るストレージシステムは、映像データまたは画像データであるストリームデータを相対的に粗い粒度の複数の第1のデータに分割して第1のストレージ手段に蓄積するとともに、分割後の複数の第1のデータのそれぞれを識別する第1のメタ情報を保持する第1の蓄積手段と、前記ストリームデータに含まれる一部のデータを、前記映像データ又は前記画像データ上に定義した座標軸上の座標に応じて、相対的に細かい粒度の複数の第2のデータに分割して第2のストレージ手段に蓄積するとともに、分割後の複数の第2のデータのそれぞれを識別する第2のメタ情報を保持する第2の蓄積手段と、を備えている。
【0018】
本発明の第2の態様に係るストレージ方法は、コンピュータが、映像データまたは画像データであるストリームデータを相対的に粗い粒度の複数の第1のデータに分割して第1のストレージ手段に蓄積するとともに、分割後の複数の第1のデータのそれぞれを識別する第1のメタ情報を保持するステップと、前記ストリームデータに含まれる一部のデータを、前記映像データ又は前記画像データ上に定義した座標軸上の座標に応じて、相対的に細かい粒度の複数の第2のデータに分割して第2のストレージ手段に蓄積するとともに、分割後の複数の第2のデータのそれぞれを識別する第2のメタ情報を保持するステップと、を含む。
【0019】
本発明の第3の態様に係るプログラムは、映像データまたは画像データであるストリームデータを相対的に粗い粒度の複数の第1のデータに分割して第1のストレージ手段に蓄積するとともに、分割後の複数の第1のデータのそれぞれを識別する第1のメタ情報を保持する処理と、前記ストリームデータに含まれる一部のデータを、前記映像データ又は前記画像データ上に定義した座標軸上の座標に応じて、相対的に細かい粒度の複数の第2のデータに分割して第2のストレージ手段に蓄積するとともに、分割後の複数の第2のデータのそれぞれを識別する第2のメタ情報を保持する処理と、をコンピュータに実行させる。なお、プログラムは、非一時的なコンピュータ可読記録媒体(non-transitory computer-readable storage medium)に記録されたプログラム製品として提供することもできる。
【発明の効果】
【0020】
本発明に係るストレージシステム、ストレージ方法、および、プログラムによると、メタデータの増大を防ぎつつ、蓄積されたストリームデータの中から要求されたデータを迅速に読み出すことが可能となる。
【図面の簡単な説明】
【0021】
図1】一実施形態に係るストレージシステムの構成を例示するブロック図である。
図2】第1の実施形態に係るストレージシステムの構成を例示するブロック図である。
図3】第1の実施形態に係るストレージシステムにおけるエリアキャッシュ管理部の構成を例示するブロック図である。
図4】第1の実施形態に係るストレージシステムにおけるアーカイブ保存手段の構成を例示するブロック図である。
図5】ストリームデータのフォーマットを例示する図である。
図6】キャッシュデータのフォーマットとエリアキャッシュ管理部が保持するメタ情報の内容を例示する図である。
図7】アーカイブデータのフォーマットとアーカイブ保存手段が保持するメタ情報の内容を例示する図である。
【発明を実施するための形態】
【0022】
はじめに、一実施形態の概要について説明する。なお、この概要に付記する図面参照符号は、専ら理解を助けるための例示であり、本発明を図示の態様に限定することを意図するものではない。
【0023】
図1は、一実施形態に係るストレージシステムの構成を例示するブロック図である。図2は、後述の実施形態に係るストレージシステムの構成を例示するブロック図である。図1を参照すると、ストレージシステムは、ストリームデータを相対的に粗い粒度の複数の第1のデータに分割して第1のストレージ手段14(例えば、図2のアーカイブストレージ106)に蓄積するとともに、分割後の複数の第1のデータのそれぞれを識別する第1のメタ情報を保持する第1の蓄積手段12(例えば、図2のアーカイブ保存手段104)と、ストリームデータに含まれる一部のデータを相対的に細かい粒度の複数の第2のデータに分割して第2のストレージ手段18(例えば、図2のキャッシュ105)に蓄積するとともに、分割後の複数の第2のデータのそれぞれを識別する第2のメタ情報を保持する第2の蓄積手段16(例えば、図2のエリアキャッシュ管理部102)と、を備えている。
【0024】
ここで、上記ストリームデータは、映像データまたは画像データであり、上記一部のデータは、前記映像データまたは画像データが表す画面に含まれる一部の領域のデータであってもよい。このとき、第1の蓄積手段12は、映像データまたは画像データを取得または撮影した時刻に応じて、映像データまたは画像データを複数の第1のデータに分割してもよい。
【0025】
また、上記一部のデータは、映像データまたは画像データのうちの、映像データまたは画像データを取得または撮影した時刻が所定の期間内に含まれるデータであり、第2の蓄積手段16は、上記一部の領域のデータを座標に応じて複数の第2のデータに分割し、分割後の複数の第2のデータのそれぞれの座標を第2のメタ情報として保持してもよい。
【0026】
さらに、上記一部のデータは、ストリームデータのうちの相対的に利用頻度が高いデータ、または、予め指定されたデータであってもよい。
【0027】
また、第2の蓄積手段16は、受け付けた検索要求に含まれる時刻および座標に対応するデータが第2のストレージ手段18に蓄積されているか否かを、第2のメタ情報を参照して判定してもよい。さらに、第2の蓄積手段16は、受け付けた検索要求に含まれる時刻および座標に対応するデータが第2のストレージ手段18に蓄積されている場合、第2のストレージ手段18から該データを読み出し、それ以外の場合、該データが第1のストレージ手段14に蓄積されているかどうかを判定するように第1の蓄積手段12に指示するようにしてもよい。
【0028】
かかるストレージシステムによると、メタデータの増大を防ぎつつ、蓄積されたストリームデータの中から要求されたデータを迅速に読み出すことが可能となる。なぜなら、ストリームデータに含まれる一部のデータについてのみ、相対的に細かい粒度の複数の第2のデータに分割して第2のストレージ手段18に蓄積し、分割後の複数の第2のデータのそれぞれを識別する第2のメタ情報を保持するようにしたことで、ストリームデータの全体を細かい粒度のデータに分割した場合と比較してメタデータの増大を防ぐことができ、かつ、利用頻度の高いデータを上記一部のデータとすることで、蓄積されたストリームデータの中から所望のデータを迅速に読み出すことができるからである。
【0029】
上記ストレージシステムは、さらに、ストリームデータを取得または撮影した際に、時間方向にのみ分割して蓄積する(例えば、ある地点を撮影した映像や画像データの場合、撮影時の映像や画像を位置座標軸で分割することなく蓄積する)アーカイブストレージと、所定の期間内に取得または撮影したストリームデータのみを、位置座標軸で区切ったデータとして細粒度に分割して蓄積するI/O向けストレージの2種類のストレージを連動させて動作させるストレージシステムとして実現することもできる。
【0030】
かかるストレージシステムにおいては、アーカイブストレージには、取得または撮影したすべてのストリームデータが格納され、一方、I/O向けストレージには、ストリームデータの一部のデータが格納される。また、かかるストレージシステムにおいて、I/O向けストレージは、ストリームデータの一部のデータを位置座標軸で分割した細粒度データとして蓄積している。ただし、I/O向けストレージは、データの位置座標や時間範囲をデータの読み出し要求命令として受けることにより、指定された前記範囲に該当する細粒度データを複数組み合わせてデータの要求元に返送するようにしてもよい。
【0031】
このように、アーカイブストレージとI/O向けストレージを連動させたストレージシステムとすることで、ストリームデータの蓄積におけるデータ数、メタデータ数、および、これらの容量を削減しつつ、ある時間範囲のデータに関しては、要求されたストリームデータの一部を効率よく読み出すことが可能となる。例えば、ストリームデータの要求形態として、より最新のストリームデータの要求確率が高い場合、最新のデータをI/O向けストレージへ優先的に蓄積することにより、要求の大多数をI/O向けストレージに蓄積されたデータで応答し、ストリームデータの読み出し効率を上げることが可能となる。
【0032】
ストリームデータに対するアクセスの際、ストリーム全体を先頭から検索し、必要な情報が見つかるまで逐次処理を行うと、必要なデータにアクセスするまで長い時間を要するという問題がある。一方、データを細分化し、細分化したデータに対するメタ情報を付与する方法によると、ストリームデータの増加に伴い、メタ情報の容量が増大し、検索速度の低下を招くおそれがある。しかしながら、上述のストレージシステムのように、利用頻度が高い(例えば、最近の)データを高速な媒体にストアし、かつ、データの細分化を図り、アクセス頻度が低いデータに対しては元のストリームデータの状態でアーカイブストレージに蓄積(ストア)することで、効率的なストリームデータ管理手段を提供することが可能となる。
【0033】
<実施形態1>
次に、図面を参照しながら、第1の実施形態に係るストレージシステムについて詳細に説明する。図2は、本実施形態に係るストレージシステムの構成を例示するブロック図である。
【0034】
図2を参照すると、ストレージシステムは、データ受信部101、エリアキャッシュ管理部102、検索要求受付部103、アーカイブ保存手段104、および、キャッシュ105を備えている。また、ストレージシステムは、外部に設けられたアーカイブストレージ106とデータのやり取りが可能なように接続されている。なお、ストレージシステムは、アーカイブストレージ106を含んで構成されていてもよい。
【0035】
データ受信部101は、外部から入力されたストリームデータを受信する。データ受信部101は、受信したストリームデータをエリアキャッシュ管理部102に転送する。
【0036】
エリアキャッシュ管理部102は、ストリームデータがエリアキャッシュ管理部102に設定されている座標の範囲であるかどうかを判定する。設定されている座標の範囲である場合、エリアキャッシュ管理部102は、エリアキャッシュ管理部102に接続されているキャッシュ105にストリームデータを格納する。
【0037】
キャッシュ105は、高速な記憶媒体である。キャッシュ105は、例えば、DRAM(Dynamic Random Access Memory)、SSD(Solid State Drive)などのフラッシュメモリ、HDD(Hard Disk Drive)などで構成される。
【0038】
エリアキャッシュ管理部102は、キャッシュ105に格納する際、キャッシュ105の空き領域がなければ、古いデータから削除を行い、新たな領域を確保した上でストリームデータをキャッシュ105に格納する。また、エリアキャッシュ管理部102に対しては、キャッシュを行う座標が設定される。設定方法として、手動で特定領域の設定を行うか、または、頻度が高い領域の座標を設定するなどの方法を用いることができる。なお、キャッシュ105の容量が許す限り、複数の座標を設定することができる。エリアキャッシュ管理部102は、それぞれの座標に対して上位からのストリームデータの内容をチェックする。また、エリアキャッシュ管理部102に座標が設定されているか否かに依らず、エリアキャッシュ管理部102は、受信したストリームデータをアーカイブ保存手段104に転送する。
【0039】
アーカイブ保存手段104は、受け取ったストリームデータをアーカイブデータとしてアーカイブストレージ106に格納する。
【0040】
検索要求受付部103は、ホストコンピュータ(非図示)からのデータ検索の要求(リクエスト)を受信する。検索要求は、データ取り出しの座標と時間を含み、それぞれ一定の範囲での検索を可能とする。検索要求は、座標として、例えば、映像または地図平面上のX軸とY軸の範囲でのパラメータを持つ。また、検索要求は、時間として、年日時秒などの情報を持ち、開始時間と終了時間で指定するか、開始時間からの経過で示すなどの方法で指定してもよい。
【0041】
検索要求受付部103は、ホストコンピュータからの検索要求に対して、検索要求で指定された座標範囲と時間範囲をエリアキャッシュ管理部102に送信する。エリアキャッシュ管理部102は、管理されている複数のキャッシュの内容の検索を行い、該当するデータがキャッシュ105に存在する場合、データを検索要求受付部103に送信する。検索要求受付部103は、データをホストコンピュータに送信し、検索を終了する。
【0042】
一方、エリアキャッシュ管理部102は、該当するデータがキャッシュ105に存在しない場合、該当するデータの属するストリームデータを取得するため、アーカイブ保存手段104に当該検索要求を送信する。アーカイブ保存手段104は、受信した検索要求で示される座標、時間範囲に該当するストリームデータを読み込み、検索範囲に該当するデータを抜き出した後、エリアキャッシュ管理部102に送信する。エリアキャッシュ管理部102は、該データを検索要求受付部103に送信する。検索要求受付部103は、ホストコンピュータにデータを転送し、処理を完了する。
【0043】
ストリームデータを保存するアーカイブストレージ106として、低速、かつ、バイト当たりのコストが低い記憶媒体を用いることができる。前述のように、アーカイブストレージ106として、テープ、光ディスク、または、高密度なハードディスクなどを用いることができる。
【0044】
図3は、図2に示したエリアキャッシュ管理部102の構成を例示するブロック図である。図3を参照すると、エリアキャッシュ管理部102は、メタ情報管理部201、メタ情報202、および、キャッシュデータ制御部203を備えている。メタ情報管理部201は、図2の検索要求受付部103からの検索リクエストを受信し、メタ情報202に該当する座標、時間範囲のデータの有無を検索するようにキャッシュデータ制御部203に指示する。
【0045】
メタ情報202は、一例として、図6のメタ情報506のフォーマットを有する。メタ情報506は、取得した時間毎、または、一定の時間間隔を1つのデータとしてマージしたデータ単位に対して定義される。図6においては、キャッシュデータ501は、データ単位1〜nに分割されている。メタ情報506は細分化されたデータへのポインタ508を持ち、ある時間のデータをキャッシュから直ぐに取り出せる構造を有している。具体的には、ストリームデータ全体503の領域からキャッシュすべき領域505を切り出し、それぞれの区分(ここでは、G、H、K、Lに相当)毎のポインタをメタ情報506上のポインタ508としてそれぞれ持つ。
【0046】
図4は、図2に示したアーカイブ保存手段104の構成を例示するブロック図である。図4を参照すると、アーカイブ保存手段104は、メタ情報管理部301、メタ情報302、および、アーカイブデータ制御部303を備えている。
【0047】
メタ情報管理部301は、エリアキャッシュ管理部102から転送されたストリームデータを、アーカイブデータとしてアーカイブストレージ106に格納するようにアーカイブデータ制御部303に指示する。また、メタ情報管理部301は、エリアキャッシュ管理部102から受信した検索要求で示される座標、時間範囲に該当するストリームデータをアーカイブストレージ106から読み込み、検索範囲に該当するデータを抜き出すようにアーカイブデータ制御部303に指示し、取得したデータをエリアキャッシュ管理部102に送信する。
【0048】
メタ情報302は、一例として、図7に示したメタ情報603のような構造を持つ。メタ情報603は、アーカイブを行うストリーム毎に座標と時刻の範囲を持つ。また、メタ情報603のエントリは、それぞれ、ストリームデータへのポインタを持ち、座標範囲または時間範囲で検索を行い、必要なデータが見つかった場合、該当するストリームデータへのアクセスを容易にする。
【0049】
以下、図面を参照しつつ、本実施形態に係るストレージシステムの動作について説明する。
【0050】
図5は、外部から入力されるストリームデータ401を例示する。映像や画像のストリーム毎にストリームデータ401が定義される。ストリームデータ401は、ある瞬間の映像、または、ある時間の範囲のデータで構成される。映像の範囲は座標で示され、データはそれぞれX座標、Y座標で指定することが可能である。ストリームデータ401自体は1つの大きな固まりであり、ポインタやインデックスなどの途中のデータにアクセスするための情報を持たない。したがって、ストリームデータ中のデータにアクセスするには、時間軸で古いデータから順次デコードを行いながらアクセスを行い、所望のデータまでデータをデコードする必要がある。したがって、ストリームデータの一部のデータにアクセスするには、他の形式のデータにアクセスする場合と比較して長い時間を要する。
【0051】
データ受信部101は、外部から入力されたストリームデータを受信する。データ受信部101は、受信したストリームデータをエリアキャッシュ管理部102に転送する。エリアキャッシュ管理部102は、ストリームデータがエリアキャッシュ管理部102で設定されている座標の範囲であるか否かを判定する。
【0052】
図6は、図2のキャッシュ105が保持するキャッシュデータ501と、図3のメタ情報202の構成を例示する。例えば、入力されたストリームデータを503のような座標の範囲とし、キャッシュとして取り込むデータはG、H、K、Lに該当するデータとする。このとき、エリアキャッシュ管理部102は、ストリームデータ中からG、H、K、Lのデータを取り出し、キャッシュデータ501の先頭データ502の前に新たなデータ格納領域を作成する。同様に、エリアキャッシュ管理部102は、メタ情報506の先頭507の前に新たなメタ情報の領域を作成し、前述のキャッシュ領域へのポインタを508上にそれぞれ記録する。さらに、エリアキャッシュ管理部102は、領域509に取得したデータの時間情報を記録し、キャッシュデータの更新を終了する。
【0053】
これと平行して、ストレージシステムは、ストリームデータのアーカイブストレージ106への記録も行う。図2のエリアキャッシュ管理部102は、アーカイブデータをアーカイブ保存手段104に送信する。アーカイブデータは、図5のストリームデータ401をそのまま記録したものである。図4に示したアーカイブ保存手段104のメタ情報管理部301は、メタ情報302として、図7に示したメタ情報603を持つ。例えば、前述のキャッシュデータに登録されたX座標、Y座標がA〜Pで示されるストリームデータはX座標の範囲が20〜40に相当し、Y座標が30〜50に相当するとした場合、ストリーム2が当該ストリームデータに相当する。
【0054】
メタ情報管理部301は、アーカイブストレージ106上のストリーム2の領域に新たなデータの格納領域を作成する。また、メタ情報管理部301は、メタ情報603のストリーム2の時間情報を今回の新たな情報に更新する。さらに、メタ情報管理部301は、先ほど追加で確保したデータ領域にデータを追記するようにアーカイブデータ制御部303に指示し、アーカイブを完了する。アーカイブデータのアーカイブストレージ106への追記は、キャッシュ105上に蓄積するか否かに関係なく行われる。
【0055】
なお、メタ情報管理部201は、キャッシュ105にデータを登録する際に、新たなデータ格納領域が確保できない場合、図6のキャッシュデータ501の古いものから削除する。図6に示した例では、メタ情報管理部201は、キャッシュデータ501のうちの一番古い領域nのデータを削除するとともに、メタ情報506におけるnに相当する領域を削除する。
【0056】
検索要求受付部103は、ホストコンピュータからのデータ検索の要求(リクエスト)を受信する。検索要求は、データ取り出しの座標と時間を含み、それぞれ一定の範囲での検索を可能とする。検索要求は、座標として、例えば、映像または地図平面上のX軸とY軸の範囲でのパラメータを持つ。また、検索要求は、時間として、年日時秒などの情報を持ち、開始時間と終了時間で指定するか、開始時間からの経過で示すなどの方法で指定してもよい。検索要求受付部103は、ホストコンピュータからの検索要求に対して、検索要求で指定された座標範囲と時間範囲をエリアキャッシュ管理部102に送信する。
【0057】
エリアキャッシュ管理部102は、管理されている複数のキャッシュの内容の検索を行う。ここでは、一例として、検索の内容を「X座標が30〜35、Y座標が35〜40、時間の範囲が2012年4月15日13:00〜14:00」とする。検索要求受付部103は、かかる検索要求を受信すると、エリアキャッシュ管理部102に検索情報を転送する。
【0058】
図3のメタ情報管理部201は、メタ情報202上に該当する範囲のデータが存在するか否か検索する。ここでは、一例として、図6に示すようなキャッシュデータ501とメタ情報506であるとする。X座標が30〜35、Y座標が35〜40のデータはKに該当する。また、Kのデータのうち、時間の範囲が上記の条件に該当するデータとしてデータ1と2が存在する。メタ情報管理部201は、メタ情報506の1と2の領域のポインタを参照し、キャッシュ105に格納されているキャッシュデータ501の1と2のデータ中からKの情報を取り出し、検索要求受付部103に転送する。検索要求受付部103は、転送されたデータをホストコンピュータに返し、処理を完了する。
【0059】
次に、検索要求受付部103がホストコンピュータから「X座標が20〜25、Y座標が30〜35、時間の範囲が2012年4月15日11:00のデータ」の検索要求を受け付けた場合を考える。かかる検索要求は、図6におけるMの領域に対する要求であることが分かる。メタ情報506上には、Mに対するエントリは存在しない。そこで、メタ情報管理部201は、検索要求をアーカイブ保存手段104に転送する。
【0060】
アーカイブ保存手段104のメタ情報管理部301は、当該検索要求のアーカイブデータがアーカイブストレージ106にないかどうか調べるため、メタ情報302を検索する。ここでは、メタ情報302は、図7に示すメタ情報603の形式を持つものとする。メタ情報管理部301は、X座標が20〜25、Y座標が30〜35、2012年4月15日11:00のデータを持つストリームがないかどうか検索する。ここでは、ストリーム2が一致する。そこで、メタ情報検索部301は、メタ情報302に基づいて、アーカイブストレージ106に格納されているストリーム2のアーカイブデータの中から前述のデータに該当するデータがないか全検索を行うようにアーカイブデータ制御部303に指示する。メタ情報管理部301は、検索結果を検索要求受付部103に返し、一連の検索処理を完了する。
【0061】
上記構成を備えた本実施形態のストレージシステムによると、利用頻度が高いストリームデータは細粒度に管理することが可能となり、ホストコンピュータからのアクセスを、メタ情報を開始ポインタとして処理することが可能となる。また、必要最小限の小粒度データに対するアクセスで済むため、ストリームデータの読み出し効率を上げることが可能となる。さらに、アクセス頻度が低いデータはアーカイブのみ保存し、かつ、大きなデータ単位で管理することができるため、メタ情報を大幅に増加させることなくアクセス性能を改善することが可能となる。
【0062】
なお、本発明において、下記の形態が可能である。
[形態1]
上記第1の態様に係るストレージシステムのとおりである。
[形態2]
前記ストリームデータは、映像データまたは画像データであり、
前記一部のデータは、前記映像データまたは画像データが表す画面に含まれる一部の領域のデータである、
形態1に記載のストレージシステム。
[形態3]
前記第1の蓄積手段は、前記映像データまたは画像データを取得または撮影した時刻に応じて、前記映像データまたは画像データを複数の第1のデータに分割する、
形態2に記載のストレージシステム。
[形態4]
前記一部のデータは、前記映像データまたは画像データのうちの、前記映像データまたは画像データを取得または撮影した時刻が所定の期間内に含まれるデータであり、
前記第2の蓄積手段は、前記一部の領域のデータを座標に応じて複数の第2のデータに分割し、分割後の複数の第2のデータのそれぞれの座標を前記第2のメタ情報として保持する、
形態2または3に記載のストレージシステム。
[形態5]
前記一部のデータは、前記ストリームデータのうちの相対的に利用頻度が高いデータ、または、予め指定されたデータである、
形態1ないし4のいずれか一に記載のストレージシステム。
[形態6]
前記第2の蓄積手段は、受け付けた検索要求に含まれる時刻および座標に対応するデータが前記第2のストレージ手段に蓄積されているか否かを、前記第2のメタ情報を参照して判定する、
形態1ないし5のいずれか一に記載のストレージシステム。
[形態7]
前記第2の蓄積手段は、受け付けた検索要求に含まれる時刻および座標に対応するデータが前記第2のストレージ手段に蓄積されている場合、前記第2のストレージ手段から該データを読み出し、それ以外の場合、該データが前記第1のストレージ手段に蓄積されているかどうかを判定するように前記第1の蓄積手段に指示する、
形態6に記載のストレージシステム。
[形態8]
上記第2の態様に係るストレージ方法のとおりである。
[形態9]
前記ストリームデータは、映像データまたは画像データであり、
前記一部のデータは、前記映像データまたは画像データが表す画面に含まれる一部の領域のデータである、
形態8に記載のストレージ方法。
[形態10]
前記コンピュータは、前記映像データまたは画像データを取得または撮影した時刻に応じて、前記映像データまたは画像データを複数の第1のデータに分割する、
形態9に記載のストレージ方法。
[形態11]
前記一部のデータは、前記映像データまたは画像データのうちの、前記映像データまたは画像データを取得または撮影した時刻が所定の期間内に含まれるデータであり、
前記コンピュータは、前記一部の領域のデータを座標に応じて複数の第2のデータに分割し、分割後の複数の第2のデータのそれぞれの座標を前記第2のメタ情報として保持する、
形態9または10に記載のストレージ方法。
[形態12]
前記一部のデータは、前記ストリームデータのうちの相対的に利用頻度が高いデータ、または、予め指定されたデータである、
形態8ないし11のいずれか一に記載のストレージ方法。
[形態13]
前記コンピュータが、受け付けた検索要求に含まれる時刻および座標に対応するデータが前記第2のストレージ手段に蓄積されているか否かを、前記第2のメタ情報を参照して判定するステップを含む、
形態8ないし12のいずれか一に記載のストレージ方法。
[形態14]
前記コンピュータが、受け付けた検索要求に含まれる時刻および座標に対応するデータが前記第2のストレージ手段に蓄積されている場合、前記第2のストレージ手段から該データを読み出すステップと、
それ以外の場合、該データが前記第1のストレージ手段に蓄積されているかどうかを判定するステップと、を含む、
形態13に記載のストレージ方法。
[形態15]
上記第3の態様に係るプログラムのとおりである。
[形態16]
前記ストリームデータは、映像データまたは画像データであり、
前記一部のデータは、前記映像データまたは画像データが表す画面に含まれる一部の領域のデータである、
形態15に記載のプログラム。
[形態17]
前記映像データまたは画像データを取得または撮影した時刻に応じて、前記映像データまたは画像データを複数の第1のデータに分割する処理を、前記コンピュータに実行させる、
形態16に記載のプログラム。
[形態18]
前記一部のデータは、前記映像データまたは画像データのうちの、前記映像データまたは画像データを取得または撮影した時刻が所定の期間内に含まれるデータであり、
前記一部の領域のデータを座標に応じて複数の第2のデータに分割し、分割後の複数の第2のデータのそれぞれの座標を前記第2のメタ情報として保持する処理を、前記コンピュータに実行させる、
形態16または17に記載のプログラム。
[形態19]
前記一部のデータは、前記ストリームデータのうちの相対的に利用頻度が高いデータ、または、予め指定されたデータである、
形態15ないし18のいずれか一に記載のプログラム。
[形態20]
受け付けた検索要求に含まれる時刻および座標に対応するデータが前記第2のストレージ手段に蓄積されているか否かを、前記第2のメタ情報を参照して判定する処理を、前記コンピュータに実行させる、
形態15ないし19のいずれか一に記載のプログラム。
[形態21]
受け付けた検索要求に含まれる時刻および座標に対応するデータが前記第2のストレージ手段に蓄積されている場合、前記第2のストレージ手段から該データを読み出す処理と、
それ以外の場合、該データが前記第1のストレージ手段に蓄積されているかどうかを判定する処理と、を前記コンピュータに実行させる、
形態20に記載のプログラム。
【0063】
なお、本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態の変更・調整が可能である。また、本発明の全開示の枠内において種々の開示要素(各請求項の各要素、各実施形態の各要素、各図面の各要素等を含む)の多様な組み合わせ、ないし、選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。
【符号の説明】
【0064】
10 ストレージシステム
12 第1の蓄積手段
14 第1のストレージ手段
16 第2の蓄積手段
18 第2のストレージ手段
101 データ受信部
102 エリアキャッシュ管理部
103 検索要求受付部
104 アーカイブ保存手段
105 キャッシュ
106 アーカイブストレージ
201、301 メタ情報管理部
202、302 メタ情報
203 キャッシュデータ制御部
303 アーカイブデータ制御部
401 ストリームデータ
402 ストリームデータを構成するデータ
403 画面内の領域
501 キャッシュデータ
502 先頭データ
503 画面
504 画面内の領域
505 画面
506 メタ情報
507 メタ情報の先頭
508 ポインタ
509 領域
601 アーカイブデータ
602 ストリーム
603 メタ情報
604 ストリーム2に対するメタ情報
図1
図2
図3
図4
図5
図6
図7