JP2016208232A - ビデオサーバシステム、データ操作方法、及び、コンピュータ・プログラム - Google Patents

ビデオサーバシステム、データ操作方法、及び、コンピュータ・プログラム Download PDF

Info

Publication number
JP2016208232A
JP2016208232A JP2015086888A JP2015086888A JP2016208232A JP 2016208232 A JP2016208232 A JP 2016208232A JP 2015086888 A JP2015086888 A JP 2015086888A JP 2015086888 A JP2015086888 A JP 2015086888A JP 2016208232 A JP2016208232 A JP 2016208232A
Authority
JP
Japan
Prior art keywords
management
video server
information
response
shared storage
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2015086888A
Other languages
English (en)
Inventor
森本 憲一
Kenichi Morimoto
憲一 森本
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.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2015086888A priority Critical patent/JP2016208232A/ja
Publication of JP2016208232A publication Critical patent/JP2016208232A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

【課題】 多重化された複数の管理サーバを明示的に切り替えることなく利用可能なビデオサーバシステム等を提供する。
【解決手段】 ビデオサーバシステムは、1以上の素材情報と、ファイルシステムに関する管理情報とを記憶する共有ストレージと、上記管理情報に基づいて、上記共有ストレージを管理する複数の管理サーバと、上記素材情報に関する操作要求を上記管理サーバに送信するビデオサーバとを備え、複数の上記管理サーバは、上記素材情報に関する上記ビデオサーバからの上記操作要求をそれぞれ個別に受け付け、上記管理情報に基づいて生成した上記操作要求に対する応答をそれぞれ個別に上記ビデオサーバに送信し、上記応答を送信した上記管理サーバのうち、上記ビデオサーバから当該応答に関する特定の通知を受け付けた上記管理サーバが、上記素材情報に関する操作を実行する。
【選択図】 図8

Description

本発明は、多重化された複数の管理サーバを含むビデオサーバシステム等に関する。
近年、音声や映像等の素材データを記憶したストレージ(記憶装置等)を、複数のビデオサーバユニットで共有する構成(以下「SAN(Storage Area Network)構成」と称する)を有するビデオサーバシステムが用いられている。
規模が大きいSAN構成のビデオサーバシステムにおいては、ストレージにおけるファイルシステムを管理する管理サーバ(FSS(FileSystem management Server):ファイルシステム管理サーバ)が設けられる場合が多い。この場合、各ビデオサーバユニット(VS:Video Server)において映像あるいは音声素材の収録等の処理が行なわれる際、その素材に関するファイル操作の要求がFSSに送信される。係る操作には、例えば、素材データを識別する素材ID(Identifier:識別情報)の素材リストへ登録、あるいは、素材データを格納すべきストレージ領域の確保等が含まれる。FSSは、受信したファイル操作の要求に関する処理を実行した後、その応答を、当該ファイル操作を要求したVSへ返信する。
上述の通り、FSSは、ビデオサーバシステムにおける主要な構成要素(コンポーネント)であり、FSSが動作しない状態になると、ビデオサーバとしての動作に支障をきたす場合がある。このことから、FSSの障害に備え、FSSが多重化(例えば二重化)される場合がある。係る多重化(特には二重化)を実現可能な技術的手段として、現用/予備(待機)構成が広く知られている。FSSを現用/予備構成により二重化した場合、平常時には現用系のFSSが処理を実行し、現用系のFSSに障害が発生した場合に、予備系のFSSが処理を引き継いで続行する。この構成においては、現用系のFSSに障害が生じた際、確実にかつ速やかに予備系のFSSと切り替えられることが求められる。
上記したような多重化技術に関連して、例えば、二重化されたサーバの切り替えを迅速に行なう技術が、特許文献1(特開平05−282187)に開示されている。
また、特許文献2(特開2003−022259号公報)には、障害発生時に運用系サーバから待機系(予備系)サーバへの運用引き継ぎを行うクライアント・サーバシステムに関する技術が開示されている。特許文献2に開示された技術においては、クライアントは、運用系及び待機系の各サーバを識別する情報と、各サーバの障害発生の有無を検知する情報とに基づいて、接続するサーバを選択する。
また、特許文献3(特開平10−069467号公報)は、複数のサーバがデータを共有している場合に、クライアントが、処理負荷の最も軽いサーバを選択して、共有データへのアクセスを要求する技術を開示する。特許文献3に開示された技術においては、クライアントは、複数のサーバに同時にアクセス要求を送信し、当該アクセス要求に対して最も早く応答したサーバを最も軽負荷のサーバと判定する。
なお、特許文献4(特開2010−233190号公報)において、本発明者は、ビデオサーバシステムにおけるファイルシステムを管理するファイルシステム管理情報を、ファイルシステム管理サーバと、ビデオサーバとに重複して保持する技術を提案した。
特開平05−282187号公報 特開2003−022259号公報 特開平10−069467号公報 特開2010−233190号公報
上記したように、多重化されたサーバ等で構成されるシステムにおいては、障害が発生した際に、多重化されたサーバを迅速に切り替える(即ち、処理を実行するサーバを迅速に選択する)ことが求められる。係る切り替えのきっかけとなるサーバの故障(障害)の検出については、ハートビート診断(サーバが応答するかどうか)による方法が採用されることが多い。しかしながら、係る方法には切り替え時間の増大、あるいは、誤検出の可能性が存在する。
ビデオサーバシステムに対してはリアルタイム性が要求されることが多く、現用系の管理サーバと予備系の管理サーバとの切り替え時間が、ビデオサーバシステムとしての動作に重大な影響を及ぼす可能性がある。しかしながら、上述の通り、係る切り替え時間の影響は、現用/予備構成が内包する問題である。また、多重化された管理サーバによる処理が適切に制御されない場合、共有される資源(データ等)に不整合が生じる可能性がある。
これに対して、上記特許文献1に開示された技術は、オンライン(現用系)ジョブの障害検知自体に要する時間や誤検知等を考慮していない。また、特許文献2に開示された技術は、クライアントが明示的にサーバを選択する必要がある。また、運用系サーバから待機系サーバに切り替える際に、必要に応じて一定時間の待ち時間を設けることから、切り替え時間による影響を排除できない可能性がある。また特許文献3に開示された技術は、サーバ側において共有データの整合性を保つ具体的な技術についてなんら開示していない。
本発明は上記のような事情を鑑みてなされたものである。即ち、本発明は、多重化された管理サーバを明示的に切り替えることなく利用可能であり、共有されるデータを適切に管理可能なビデオサーバシステム等を提供することを主たる目的の一つとする。
上記の目的を達成すべく、本発明の一態様に係るビデオサーバシステムは、以下の構成を備える。即ち、本発明の一態様に係るビデオサーバシステムは、1以上の素材情報と、ファイルシステムに関する管理情報とを記憶する共有ストレージと、上記管理情報に基づいて、上記共有ストレージを管理する複数の管理サーバと、上記素材情報に関する操作要求を上記管理サーバに送信するビデオサーバとを備え、複数の上記管理サーバは、上記素材情報に関する上記ビデオサーバからの上記操作要求をそれぞれ受け付け、上記管理情報に基づいて生成した上記操作要求に対する応答をそれぞれ上記ビデオサーバに送信し、上記応答を送信した上記管理サーバのうち、上記ビデオサーバから当該応答に関する特定の通知を受け付けた上記管理サーバが、上記素材情報に関する操作を実行する。
また、本発明の一態様に係るデータ操作方法は、以下の構成を備える。即ち、本発明の一態様に係るデータ操作方法は、1以上の素材情報と、ファイルシステムに関する管理情報とを記憶する共有ストレージを、上記管理情報に基づいて管理する複数の管理サーバが、上記共有ストレージに記憶された上記素材情報に関する操作を要求する操作要求をビデオサーバからそれぞれ受け付け、上記管理情報に基づいて生成した上記操作要求に対する応答をそれぞれ上記ビデオサーバに送信し、上記応答を送信した上記管理サーバのうち、上記ビデオサーバから当該応答に関する特定の通知を受け付けた上記管理サーバが、上記素材情報に関する操作を実行する。
また、同目的は、上記構成を有するビデオサーバシステム(又はその構成要素)、あるいは、データ操作方法を、コンピュータによって実現するコンピュータ・プログラム、及び、そのコンピュータ・プログラムが格納されている、コンピュータ読み取り可能な記録媒体等によっても達成される。
本発明によれば、多重化された管理サーバを明示的に切り替えることなく利用可能であり、、共有されるデータを適切に管理可能である。
図1は、本発明の第1の実施形態に係るビデオサーバシステムの機能的な構成を例示するブロック図である 図2は、多重化された管理サーバを含むビデオサーバシステムの機能的な構成の一例を示すブロック図である。 図3は、本発明の第1の実施形態に係るビデオサーバシステムの動作(素材データの追加)を例示するフローチャートである。 図4は、本発明の第1の実施形態に係るビデオサーバシステムの動作(更新リストの確認)を例示するフローチャートである。 図5は、本発明の第1の実施形態に係るビデオサーバシステムの動作(素材データの削除)を例示するフローチャートである。 図6は、本発明の第1の実施形態に係るビデオサーバシステムの動作(素材データの再生)を例示するフローチャートである。 図7は、本発明の第1の実施形態に係るビデオサーバシステムの動作(更新リストの定期的な確認)を例示するフローチャートである。 図8は、本発明の第2の実施形態に係るビデオサーバシステムの機能的な構成を例示するブロック図である。 図9は、本発明の第3の実施形態に係るデータ管理システムの機能的な構成を例示するブロック図である。 図10は、本発明の各実施形態に係るビデオサーバシステム、あるいは、その構成要素を実現可能なハードウェアの構成を例示する図である。
以下、本発明を実施する形態について図面を参照して詳細に説明する。以下の各実施形態に記載されている構成は例示であり、本発明の技術範囲はそれらには限定されない。
まず、本発明の各実施形態に関する説明に先立って、本発明の理解を容易にするため、本発明に関する技術的背景等について具体的に説明する。
上記したように、規模が大きいSAN構成のビデオサーバシステムにおいては、障害耐性(耐故障性等)を向上するために、FSSが多重化される場合がある。図2は、多重化されたFSSを備えるビデオサーバシステムの一つの構成例を示す図である。
図2に例示するビデオサーバシステム200においては、ファイルシステム管理サーバ(FSS)201が多重化(「FSS1」及び「FSS2」)されている。FSS201は、共有ストレージ203におけるファイルシステムを管理する。係るFSS201が管理するファイルシステムの管理データ(図2の203b)には、例えば、素材リスト203dと、空きリスト203cとの2種類のデータが含まれる。
素材リスト203dは、音声や映像等の素材の名称(ID)、属性、素材データの共有ストレージ203における配置位置(記憶領域の位置:例えば、アドレス範囲等)等のデータセットを含む。なお、素材リスト203dにおける上記データセットは、素材ごとに並べられてもよい。
空きリスト203cは、共有ストレージ203において素材データを記憶する領域(素材データ領域)に含まれる、空き領域(空きブロック)のリストである。
これらの管理データ203bは、各FSS(「FSS1」、「FSS2」)のローカルストレージに配置されてもよい。しかしながら、その場合、各FSSの間でそれらを同期するための通信が必要とることから、通信障害等によりFSS間の通信が途切れた場合の対策が必要となる。よって、図2に例示するように、管理データ203bを共有ストレージ203に配置するほうが適切な場合がある。なお、図2に例示するように、管理データ203bが配置される共有ストレージは、素材データが配置される共有ストレージと同じでもよいし、管理データ専用の共有ストレージを用意してもよい。
ファイルシステムの管理データ203bが共有ストレージ203に配置される場合、2台のFSS201(「FSS1」、「FSS2」)が管理データ203bを同時に更新すると、管理データ203bの不整合を生じる可能性がある。このため、一方のFSS201を現用系(図2の「FSS1」)、他方のFSS201を予備系(図2の「FSS2」)として扱い、現用系のFSSのみが管理データの更新を行なう。予備系のFSS201(「FSS2」)は、定期的に現用系のFSS201(「FSS1」)を監視する。そして、予備系の「FSS2」は、現用系の「FSS1」がダウンしたと判断した場合、FSS2自身を現用に切り替えるとともに、「FSS1」の動作を引き継いで動作する。
現用系の「FSS1」を監視する方法としては、上記したようなハードビート診断が用いられる場合が多い。即ち、予備系の「FSS2」は、図2に例示するLAN(Local Area Network)あるいは他の通信手段を経由して、現用系の「FSS1」へハートビート(特定の通信メッセージ等)を送信する。予備系の「FSS2」は、送信したハートビートに対する応答時間が特定のタイムアウト値を超えた場合、現用系「FSS1」がダウンしたと判断する。
しかしながら、上記説明した構成には、以下のような問題点がある。
まず、現用系のFSSがダウンした際に予備系のFSSへ切り替えるために要する時間を短縮するには、ハートビートに対する応答時間のタイムアウト値は短いほどよい。しかしながら、係るタイムアウト値が過度に短い場合、例えば、通信経路の遅延等に起因して、予備系のFSSが、現用系のFSSのダウンを誤判断する可能性が高くなる。このため、タイムアウト値には、ある程度の長さの時間が設定される必要である。これより、現用系「FSS1」と予備系「FSS2」との間の切り替えには、ある程度の時間がかかる。即ち、係る切り替え時間に起因して、ビデオサーバの動作に影響が出る可能性がある。
また、ハードビート診断を用いた場合、現用系のFSS(「FSS1」)がダウンしたのか、通信経路に障害(切断)が発生したのかを判断することが困難である。よって、実際には現用系のFSSがダウンしていないにも関わらず、予備系のFSSが現用系に切り替わってしまう可能性がある。この場合、現用系のFSSが二重起動(二重動作)してしまう可能性がある。現用系のFSSが二重起動(二重動作)すると、ファイルシステムの管理データ203bがそれらのFSSにより重複して操作されてしまう可能性が有る。この場合、ファイルシステムの管理データ203bに不整合が生じる可能性があることから、素材データの消失等につながる可能性がある。なお、2台のFSS間の通信経路を冗長化すれば、通信切断等による誤判断の可能性を低減できるものの、冗長化により物理的なコストが増大する。
また、各ビデオサーバ(VS)202(図2のVS1、VS2)は2台のFSSの内、どちらが現用系のFSSなのかを認識し、現用系のFSSに各種要求を送信する必要がある。現用系のFSSを各VSに認識させる手段として、例えば、現用系のFSSが切り替わった際に、当該現用系のFSSから各VSへ通知する方法が考えられる。しかしながら、例えば、係る通知が送信される際に通信障害が生じていた場合には、係る通知が各VSへ届かない可能性がある。この場合、実際の現用系のFSSと、VS側の認識とが不一致となる可能性がある。
上記は、いずれも、現用/予備構成を採用した場合に生じ得る問題である。このことから、上記したような問題を根本的に改善するために、現用系と予備系との切り替えが不要な構成を用いて、ビデオサーバシステムを構築することが望ましいと考えられる。本発明者は、係る問題を解決可能な構成の一つとして、多重化されたFSSがいずれも常に動作する、いわば両現用(全現用)に相当し得る構成に着想するに至った。以下、本発明を実現可能な実施形態にについて具体的に説明する。
<第1の実施形態>
以下、本発明の第1の実施形態におけるビデオサーバシステムについて、図面を参照して説明する。
(構成)
図1は、本発明の第1の実施形態におけるビデオサーバシステムの機能的な構成を例示するブロック図である。図1に例示するように、本実施形態におけるビデオサーバシステム100は、大別して、複数のファイルシステム管理サーバ(FSS)101と、ビデオサーバ(VS)102と、共有ストレージ103と、を主たる構成要素として備える。ビデオサーバシステム100を構成するこれらの構成要素の間は、任意の通信手段により通信可能に接続されている。より具体的には、図1に示す具体例においては、FSS101及びVS102と、共有ストレージ103との間は、ストレージ接続用の通信ネットワーク(例えば、SANを構成するファイバチャネル等)により接続されている。また、各FSS101と、VS102との間は、有線、無線、又はそれらを組み合わせた通信ネットワーク(LAN等)により接続されている。以下、それぞれの構成要素について説明する。
ファイルシステム管理サーバ(FSS)101は、共有ストレージ103に構築されたファイルシステムを管理する管理サーバである。FSS101は、後述するビデオサーバ102から通知される要求に従って、共有ストレージ103に記憶された素材データに関する各種ファイル操作を実行可能である。係る操作には、例えば、共有ストレージ103に対する新たな素材データの追加や、共有ストレージ103に記憶された素材データの参照、更新、削除等が含まれる。FSS101は、係るファイル操作の結果を、当該ファイル操作を要求したVS102に通知してもよい。図1に例示するように、本実施形態におけるビデオサーバシステム100は、2台のFSS101(「FSS1」及び「FSS2」)を備える。本実施形態においては、「FSS1」及び「FSS2」の両方が、ビデオサーバ102から通知される各種要求を処理可能である。
ビデオサーバ(VS)102は、音声あるいは映像のデータ(あるいは信号)を入出力(収録、再生等)可能なサーバ装置である。より具体的には、VS102は、FSS100に対して、新たに収録した素材データの登録や、特定の素材データの参照(再生)等を要求する。また、VS102は、ファイバチャネルネットワーク等を介して、共有ストレージ103に対して素材データの読み込み、あるいは書き込みを実行可能である。
VS102は、例えば、放送局等において、映像や音声データの収録処理や、オンエア再生のための素材データの参照(再生)処理等を実行する。また、VS102は、入力された映像信号や音声信号等に対して各種処理(エンコード等)を実行することにより、素材データを生成可能であってもよい。また、VS102は、共有ストレージに記憶された素材データから、音声や映像信号等を生成可能であってもよい。
共有ストレージ103は、物理的あるいは仮想的な記憶デバイスにより構成された記憶装置である。共有ストレージ103にはファイルシステムが構築される。この場合、素材データ103aは、当該ファイルシステムにおいてファイルの形式で記憶されてもよい。共有ストレージ103は、素材データ103aを記憶する領域(素材データ領域)と、ファイルシステムの管理データ103bを記憶する領域(管理データ領域)とを有してもよい。
素材データ103aは、音声あるいは映像等のコンテンツを含むデータである。素材データ103aは、当該素材データを特定可能な識別情報(ID)を含んでもよい。
共有ストレージ103における管理データ103bは、共有ストレージに構築されたファイルシステムを管理する各種データを保持する。より具体的には、係る管理データ103bは、空きリスト103cと、素材リスト103dと、更新リスト103eとを保持する。
空きリスト103cは、共有ストレージ103における素材データ領域に含まれる、空き領域(空きブロック)のリストである。係る空きリスト103cは、例えば、両端キューのデータ構造を用いて構成される。本実施形態においては、2台のFSS101が、それぞれ空きリスト103cを構成する両端キューの異なる端部からキューを操作する。より具体的には、FSS1は、空きリスト103cを構成する両端キューの一端部からキューに対して内容(データ)を追加あるいは削除可能である。また、FSS2は、空きリスト103cを構成する両端キューの他端部からキューに対して内容(データ)を追加あるいは削除可能である。このような構成とすることで、「FSS1」と「FSS2」とは、共有ストレージにいて素材データを記憶可能な空き領域をそれぞれ確保あるいは解放可能である。
素材リスト103dは、音声や映像等の素材の名称(素材ID)、属性、素材データの共有ストレージ103における配置位置(記憶領域において配置された位置:アドレス範囲等)等のデータセットを含む。なお、素材リスト103dにおいて、上記データセットは、素材データ103aごとに並べられてもよい。
更新リスト103eは、FSS101が素材リスト103dに対して実行した操作の履歴を記憶するデータである。
本実施形態においては、素材リスト103dと、更新リスト103eとは、FSS101毎に個別に用意され、それぞれのFSS101により管理される。即ち、図1に例示する構成では、「FSS1」に対しては、「素材リスト1」と「更新リスト1」との組が用意され、「FSS2」に対しては、「素材リスト2」と「更新リスト2」との組が用意される。各FSS101は、当該FSS101に対して用意された素材リスト103d及び更新リスト103eを更新(書き換え)可能であり、他のFSS101に対して用意された素材リスト103d及び更新リスト103eを参照可能である。より具体的には、「FSS1」は、「素材リスト1」及び「更新リスト1」を更新可能であり、「素材リスト2」及び「更新リスト2」を参照可能である。同様に、「FSS2」は、「素材リスト2」及び「更新リスト2」を更新可能であり、「素材リスト1」及び「更新リスト1」を参照可能である。以下、素材リスト103dと、更新リスト103eとの組を「素材管理情報」と称する場合がある。
上記説明した本実施形態におけるビデオサーバシステム100の各構成要素は、それぞれ専用のハードウェア装置により実現されてもよい。また、ビデオサーバシステム100の各構成要素は、汎用の情報処理装置(コンピュータ等)及び当該情報処理装置において実行されるソフトウェア・プログラムを用いて実現されてもよい。また、本実施形態におけるビデオサーバシステム100の各構成要素を実現するハードウェア装置あるいは情報処理装置は、物理的な装置であってもよく、仮想化された装置であってもよい。ビデオサーバシステム100の各構成要素を実現可能なハードウェア(例えば、図10)については、後述する。
(動作)
次に、上記のように構成された本実施形態におけるビデオサーバシステム100の動作について説明する。まず、ビデオサーバシステム100の動作の概要について説明する。
ビデオサーバシステム100における各VS102は、FSS101に対して各種要求を通知する際、全てのFSS101(「FSS1」及び「FSS2」)に対して要求を送信する。
各FSS101は、VS102からの要求をそれぞれ受信する。各FSS101は、受信した要求を受け付けられる場合は、「受付可」を表す応答を、当該要求を送信したVS102へ返す(送信する)。VS102は、複数のFSS101から応答が帰ってきた場合には、特定のFSS101を選択して、当該選択したFSS101に対して「承諾」を表す通知(承諾通知)を送信する。また、VS102は、他のFSS101に対しては、「拒否」を表す通知(拒否通知)を送信する。例えば、VS102は、複数のFSS101から応答が帰ってきた場合には、最初に応答が帰ってきたFSS101に対して承諾通知を送信し、後から応答が返ってきた方のFSS101には拒否通知を送信してもよい。なお、VS102は、応答が返ってこないFSS101に対しては、何も送信せずともよい。
以下、ビデオサーバシステム100の動作について、図面を参照して詳細に説明する。まず、図3に例示するフローチャートを参照して、VS102が収録動作を行なう場合について説明する。
VS102が収録動作を行なう際、VS102は、各FSS101に対して素材(素材データ)の新規登録を要求する。FSS101は、VS102から新規登録を要求された素材データのIDを素材リストに追加する。そして、FSS101は、共有ストレージ103の空き領域において、当該素材データを記録する領域を割当て、VS102へその領域の位置(例えば、記憶領域のアドレス)を返す。より具体的には、以下のような処理が実行される。
まず、VS102は、各FSS101(図1においては「FSS1」と「FSS2」)に対して、新たな素材(素材データ)の登録を要求する新規登録要求を送信する(ステップS301)。この要求には素材名(ID)、素材長(サイズ)が含まれていてもよい。
次に、各FSS101は、新規登録要求を受信すると、要求に含まれている素材サイズに必要な容量を算出する(ステップS302)。
次に、各FSS101は、空きリスト103cの端部から、素材データを記憶するために必要な空き領域を取り出す(ステップS303)。この場合、各FSS101は、素材データを記憶可能なサイズの空き領域の位置(例えば、共有ストレージ103におけるアドレスや、ブロック番号等)を取得してもよい。各FSS101は、空きリスト103cを構成する両端キューにおいて、それぞれのFSS101が操作可能な端部から、空き領域を確保する。図1に例示する具体例においては、「FSS1」は、空きリスト103cの一端部から空き領域を確保し、「FSS2」は、空きリスト103cの他端部から空き領域を確保する。
次に、各FSS101は、領域が確保できた場合には、新規登録要求を送信したVS102に対して「受付可」を表す応答を返す(ステップS304)。各FSS101は、確保した空き領域に関する情報(例えば、空き領域の位置等)を係る応答に含めてもよい。
次に、VS102は、いずれかのFSS101から「受付可」を表す応答を受信すると、そのFSS101に対して承諾通知を送信する。VS102は、その後、他のFSS101から「受付可」を表す応答を受信した場合は、そのFSS101に対して拒否通知を送信する(ステップS305)。なお、以下においては、説明のため、図1における「FSS1」に承諾通知が通知され、「FSS2」に拒否通知が通知されたことを仮定する。
そして、VS102は、「FSS1」から受け付けた「受付可」の応答に含まれる空き領域に関する情報(例えば、空き領域の位置)を用いて、共有ストレージ103に対する、新規の素材データの記録を開始する(ステップS306)。
次に、各FSS101は、VS102から受け付けた通知の内容を確認する(ステップS307)。
VS102から受け付けた通知が承諾通知だった場合(ステップS308においてYES)、FSS101は、他のFSS101が管理する更新リストを確認する(ステップS309)。ステップS309における処理について、図4に例示するフローチャートを参照して説明する。
まず、各FSS101は、他のFSS101が管理する更新リスト103eを確認する(ステップS401)。例えば、「FSS1」が承諾通知を受けた場合、承諾通知を受け付けた「FSS1」は、「FSS2」が管理する「更新リスト2」を確認する。
他のFSS101が管理する更新リスト103eが、更新されている場合(ステップS402においてYES)、各FSS101は、他のFSS101が管理する更新リスト103eにおいて更新された内容を、自FSS101が管理する素材リスト103dに反映する(ステップS403)。即ち、更新リスト103eに新たな素材(素材データ)の追加や、登録済みの素材(素材データ)の削除等の操作が記録されている場合には、その内容を自FSS101が管理する素材リスト103dに反映する。例えば、「FSS1」が承諾通知を受けた場合、「FSS1」は、「FSS2」が管理する「更新リスト2」が更新されていれば、その更新内容を「素材リスト1」に反映する。換言すると、ステップS401乃至ステップS403の処理により、それぞれのFSS101が管理する素材リスト103dの内容が同期される。
なお、各FSS101は、例えば、自FSS101が管理する素材リスト103d及び更新リスト103eと、他のFSS101か管理する素材リスト103d及び更新リスト103eと、を比較することにより、更新リスト103eの更新有無を判定してもよい。更新リスト103eの更新有無を判定する方法は上記に限定されず、任意の方法を適宜選択してよい。例えば、更新リスト103eが操作された時刻に関する情報等に基づいて、更新の有無が判定されてもよい。
次に、FSS101は、当該FSS101が管理する素材リスト103dに対して、新規登録要求に含まれる素材IDと、当該素材データが記録された記憶領域の位置とを追加し、素材リスト103dを更新する(ステップS310)。例えば、「FSS1」が、「素材リスト1」に対して、新規登録要求に含まれる素材IDと、当該素材データが記録された記憶領域の位置とを追加する。
次に、FSS101は、更新リスト103eに、新たに素材IDを追加した旨を記録する。例えば、「FSS1」が、「更新リスト1」に、新たに素材IDを追加した旨を記録する。
また、FSS101がVS102から拒否通知を受け付けた場合(ステップS308においてNO)、当該FSS101は、ステップS303において確保した領域を、空きリスト103cに戻す。即ち、「FSS2」が拒否通知を受信した場合、「FSS2」は、確保した領域を空きリスト103cに戻す。
次にVS102が共有ストレージ103に記憶された素材(素材データ)を削除する動作(削除動作)を行なう場合について、図5に例示するフローチャートを参照して説明する。
VS102が素材(素材データ)を削除する際、VS102は、各FSS101に対して素材データを削除する要求(素材削除要求)を送信する。各FSS101は、それぞれが管理する素材リスト103dから、素材削除要求により指定された素材IDを検索し、その素材が記憶されている記録領域の位置情報を得る。FSS101は、素材リストから、その素材IDを削除する。FSS101は、削除された素材データが記憶されていた領域の位置を空きリストに戻す。より具体的には、以下のような処理が実行される。
まず、VS102は、各FSS101(例えば、「FSS1」及び「FSS2」)に対して、特定の素材(素材データ)を削除する要求(素材削除要求)を送信する(ステップS501)。この要求(素材削除要求)には削除対象である素材(素材データ)を特定可能な素材名(ID)が含まれている。
各FSS101は、VS102から素材削除要求を受信すると、要求元(送信元)のVS102に対して「受付可」を表す応答を送信する(ステップS502)。
次に、VS102は、いずれかのFSS102(例えば、「FSS1」又は「FSS2」)から「受付可」を表す応答を受信すると、そのFSS101へ承諾通知を送信する。その後、他のFSS101から「受付可」を表す応答受信した場合は、そのFSSへ拒否通知を送信する(ステップS503)。以下、図1に示す具体例において、「FSS1」に対して承諾通知が送信され、「FSS2」に対して拒否通知が送信されたと仮定する。
各FSS101は、VS102から受信した通知の内容を確認する(ステップS504)。
VS102から拒否通知を受信した場合(ステップS504においてNO)、FSS101(この場合は「FSS2」)は、処理を終了する。
VS102から承諾通知を受信した場合(ステップS504においてYES)、FSS101(この場合は「FSS1」)は、以下の処理を続行する。
「FSS1」は、他のFSS101(この場合は「FSS2」)が管理する更新リストを確認する(ステップS505)。ステップS505における処理は、ステップS309と同様としてよいので、詳細な説明を省略する。
次に、「FSS1」は、素材リスト103d(この場合は「素材リスト1」)において、素材削除要求が通知された素材(素材データ)を検索する。具体的には、「FSS1」は、「素材リスト1」において、素材削除要求に含まれる素材IDを検索する(ステップS506)。
次に、「FSS1」は、ステップS506における検索結果から、削除対象の素材データが共有ストレージ103において記憶されている記録領域の位置(アドレス等)を得る(特定する)。そして、「FSS1」は、係る記憶領域を空きリスト103cに戻す(ステップS507)。即ち、「FSS1」は、削除対象の素材データが記憶されていた記憶領域を、空き領域として空きリスト103cに登録する。
次に、「FSS1」は、「素材リスト1」から、素材削除要求に含まれる素材IDを削除する(ステップS508)。さらに、「FSS1」は、更新リスト103e(この場合は「更新リスト1」)に、素材削除要求に含まれる素材IDを削除した旨を記録する(ステップS509)。
次にVS102が、共有ストレージ103に記憶された素材(素材データ)を再生(参照)する動作(再生動作)を行なう場合について、図6に例示するフローチャートを参照して説明する。
VS102(例えば図1に例示するVS1)が再生動作を行なう際、VS102は、各FSS101に対して、素材(素材データ)の再生情報を要求する。FSS102は、それぞれが管理する素材リストにおいて、VS102から要求された素材(素材データ)を検索する。そして、FSS102は、その素材(素材データ)が記憶されている、共有ストレージ103における記録領域の位置情報をVS102に返信する。より具体的には、以下のような処理が実行される。
まず、VS102は、各FSS101(例えば、図1における「FSS1」と「FSS2」)に素材(素材データ)の再生に必要な情報を要求する、素材再生情報要求を送信する(ステップS601)。この要求(素材再生情報要求)には、再生する素材(素材データ)を特定可能な素材名(ID)が含まれている。なお、VS102は、特定の素材(素材データ)を再生以外の目的で参照する際に、素材再生情報要求を送信してもよい。
次に、各FSS101は、VS102から素材再生情報要求を受信すると、それぞれのFSS101が管理する素材リスト103dから、素材再生情報要求に含まれている素材IDを検索する(ステップS602)。
そして、各FSS101は、ステップS602における検索結果から、再生対象の素材(素材データ)が記憶された共有ストレージ103における記録領域の位置を得る(特定する)(ステップS603)。
そして、各FSS101は、素材再生情報の要求元(送信元)であるVS102へ、「受付可」を表す応答を送信する(ステップS604)。なお、係る応答には、上記特定した素材(素材データ)の記録領域の位置を表す情報が含まれてもよい。
VS102は、いずれかのFSS101(「FSS1」または「FSS2」)から「受付可」を表す応答を受信すると、そのFSS101へ承諾通知を送信する。その後、他方のFSS101から「受付可」を表す応答を受信した場合は、当該FSS101へ拒否通知を送信する(ステップS605)。以下、VS102(VS1)が、「FSS1」に対して承諾通知を送信し、「FSS2」に対して拒否通知を送信したと仮定する。
VS102は、VS1から受信した「受付可」を表す応答に含まれる、再生対象の素材(素材データ)の記録領域の位置を表す情報を使用して、素材データの再生を開始する(ステップS606)。例えば、VS102は、再生対象の素材(素材データ)が記憶された共有ストレージ103における記憶領域を参照することにより、係る素材データの再生を開始してもよい。
上記した再生動作のように、ファイルシステム管理データの書き換え(更新)を行なわない要求の場合、VS102は、各FSS101に対して、「承諾通知」や「拒否通知」を送信しなくともよい。
各FSS101は、VS102から要求が通知されていない間、更新リスト103eを確認する処理(更新リスト確認処理)を実行してもよい。図7に例示するフローチャートを参照して、係る更新リスト確認処理について説明する。
まず、各FSS101(図1における「FSS1」、「FSS2」)は、特定の時間経過を確認する(ステップS701)。具体的には、各FSS101は、前回更新リスト確認処理を実行してからの経過時間を確認してもよい。なお、FSS101は、所定の時間毎に、定期的に更新リスト確認処理を実行してもよい。
上記ステップS701における確認の結果、特定の時間が経過していた場合(ステップS702においてYES)、各FSS101は、他のFSS101が管理する更新リストを確認する(ステップS703)。即ち、各FSS101は、定期的に他のFSS101が管理する更新リスト103eをチェックし、何らかの更新があればそれを自FSS101が管理する素材リスト103dに反映する。なお、ステップS703における処理は、上記ステップS309と同様としてよいので、詳細な説明を省略する。
(効果)
上記のように構成された本実施形態におけるビデオサーバシステム100が奏する効果について説明する。上記のように構成されたビデオサーバシステム100によれば、VS102は、各FSS101を区別することなく、各種要求を送信可能である。即ち、各FSS101を現用系/予備系等と区別する概念が不要であることから、VS102の観点からは、各FSS101が等価となる。なぜならば、VS102は、各FSS101を区別せずに並行して各種要求を送信可能であるとともに、係る要求に応答した特定のFSS101を選択することで、係る要求に関する操作を実行可能だからである。これにより、ビデオサーバシステム100においては、多重化されたFSS101に関して現用系/予備系を切り替える「切り替え時間」を考慮する必要がない。即ち、ビデオサーバシステム100は、FSS101が多重化されている場合であっても、それらの「切り替え時間」に起因する、処理時間に関する影響(遅延等)を排除可能である。
また、ビデオサーバシステム100における各FSS101は、最低限、共有ストレージ103とのみ接続されていればよく、FSS101間は直接接続されていなくともよい。なぜならば、各FSS101は、共有ストレージ103に保存されたファイルシステム管理データを参照することにより、他のFSS101により実行された各種処理を確認可能だからである。これにより、FSS101間の直接的な通信は不要であることから、例えば、通信障害等に起因したファイルシステム管理に関する問題の発生が低減される。即ち、ビデオサーバシステム100は、多重化されたFSS101による並行処理等に起因して、共有される資源(データ等)に不整合が生じることを防止できる。なお、あるFSS101と、共有ストレージ103との接続が切断された場合、当該FSS101は、ファイルシステムの管理データにアクセスできなくなる。これにより、当該FSS101は、ファイルシステムを管理するサーバとしての動作が不能になる。しかしながら、他のFSS101が正常に稼働していれば、ビデオサーバシステム100全体に対する悪影響は発生しない。
また、VS102は最低限、いずれか1台のFSS101と通信可能であればよい。例えば、現用/予備を区別するビデオサーバシステムにおいては、ビデオサーバは、現用系のFSSと通信する必要がある。しかしながら、本実施形態におけるビデオサーバシステム100によれば、VS102は、いずれのFSS101と通信してもよい。なぜならば、本実施形態においては、各FSS101は、いずれも所謂「現用系」として機能し、VS102から通知される要求を処理可能であるからである。
以上より、本実施形態におけるビデオサーバシステム100は、多重化された管理サーバ(FSS101)を明示的に切り替えることなく利用可能である。また、本実施形態におけるビデオサーバシステム100は、共有ストレージ103において共有されるデータを適切に管理可能である。
なお、上記図1に示した具体例においては、説明の便宜上、FSS101が2台の場合を例示しているが、本実施形態はこれには限定されない。即ち、FSS101の台数、また、VS102の台数は、それぞれ任意に定められてよい。この場合、空きリスト103cは、例えば、複数のFSS101がアクセス可能な任意のデータ構造を用いて実現可能である。また、この場合、複数のFSS101は、周知の排他制御技術(例えば、セマフォアやMutex(Mutual Exclusion)等)を用いて、それぞれ空きリスト103cにアクセスしてもよい。
<第2の実施形態>
次に、本発明の第2の実施形態について、図面を参照して説明する。図8は、本実施形態におけるビデオサーバシステム800の機能的な構成を例示するブロック図である。
図8に例示するように、本実施形態におけるビデオサーバシステム800は、大別して、複数の管理サーバ801と、1以上のビデオサーバ802と、共有ストレージ803とを備える。ビデオサーバシステム800を構成するこれらの構成要素の間は、任意の通信手段を用いて通信可能に接続されている。例えば、各管理サーバ801及びビデオサーバ802と、共有ストレージ803との間は、SAN等のストレージ接続用ネットワークを用いて接続されていてもよい。また、各管理サーバ801と、ビデオサーバ802との間は、LAN等の通信ネットワークを用いて接続されていてもよい。以下、ビデオサーバシステム800を構成する各構成要素について説明する。
共有ストレージ803は、1以上の素材情報803aと、ファイルシステムに関する管理情報803bとを記憶可能な記憶領域を提供する。共有ストレージ803は、例えば、素材情報803aを記憶する記憶領域と、管理情報803bを記憶する記憶領域とを提供可能な、記憶デバイスであってもよい。共有ストレージ803を構成する記憶デバイスは、例えば、HDDや半導体記憶装置等の物理的な記憶デバイスであってもよく、それらが仮想化された仮想的な記憶デバイスであってもよい。素材情報803aと、管理情報803bとは、それぞれ、ファイルシステムにおけるファイルとして共有ストレージ803に記憶されてもよい。具体的には、係る素材情報803aは、上記第1の実施形態における素材データ103aであってもよい。また、係る管理情報803bは、上記第1の実施形態における管理データ103bであってもよい。なお、係る共有ストレージ803は、上記第1の実施形態における共有ストレージ103と同様としてもよい。
管理サーバ801は、管理情報803bに基づいて、共有ストレージ803を管理する。より具体的には、管理サーバ801は、共有ストレージ803に構成されたファイルシステムや、共有ストレージ803に記憶されたデータを管理する。係る共有ストレージ803の管理には、例えば、共有ストレージ803に記憶された素材情報803aに関する各種操作(素材情報803aの追加、削除、参照、更新等)が含まれてもよい。また、係る共有ストレージ803の管理には、管理情報803bに関する各種操作が含まれてもよい。なお、係る管理サーバ801は、上記第1の実施形態における管理サーバ101と同様としてもよい。
ビデオサーバ802は、共有ストレージ803に記憶された素材情報803aに関する操作要求を、管理サーバ801に送信する。係る操作要求は、例えば、素材情報803aの新規追加、削除、更新、参照等の操作に関する要求であってもよい。なお、係るビデオサーバ802は、上記第1の実施形態におけるビデオサーバ(VS)102と同様としてもよい。
上記のように構成されたビデオサーバシステム800において、複数の管理サーバ801は、素材情報803aに関するビデオサーバ802からの操作要求をそれぞれ個別に受け付ける。そして、複数の管理サーバ801は、管理情報802bに基づいて生成した、当該操作要求に対する応答を、それぞれ個別にビデオサーバ802に対して送信する。
より具体的には、管理サーバ810は、例えば、管理情報802bに含まれる、素材管理情報803dと、空き領域管理情報803cとに基づいて、操作要求に対する応答を生成してもよい。素材管理情報803dは、共有ストレージ803における素材情報803aの記憶領域を特定可能な情報であり、それぞれの管理サーバ801毎に用意される。各管理サーバ801は、それぞれ個別に素材管理情報803dを管理する。空き領域管理情報803cは、共有ストレージ803における空き領域を管理可能情報であり、複数の管理サーバ801により共有される。
上記応答を送出した管理サーバ801のうち、ビデオサーバ802から当該応答に関する特定の通知を受け付けた管理サーバ801が、素材情報803aに関する操作を実行する。具体的には、例えば、複数の管理サーバ801から応答を受け付けたビデオサーバ802が、特定の管理サーバ801を選択し、係る選択した1台の管理サーバ801に対して、上記操作要求に関する特定の通知を送信する。係る特定の通知は、例えば、上記操作要求の実行を承諾する承諾通知であってもよい。そして、係る特定の通知(例えば承諾通知)を受け付けた管理サーバ801が、上記操作要求に関する操作を実行する。
上記のように構成された本実施形態におけるビデオサーバシステム800によれば、ビデオサーバ802は、各管理サーバ801を区別することなく、各種要求を送信可能である。各管理サーバ101を現用系/予備系等と区別する概念が不要であることから、ビデオサーバ802の観点からは、各管理サーバ101が等価となる。なぜならば、ビデオサーバ802は、各管理サーバ801を区別せずに並行して各種要求を送信可能であるとともに、係る要求に応答した特定の管理サーバ801を選択することで、係る要求に関する操作が実行可能であるからである。これにより、ビデオサーバシステム800においては、管理サーバ801に関して、現用系/予備系を切り替える「切り替え時間」を考慮する必要がない。即ち、ビデオサーバシステム800は、管理サーバ801が多重化されている場合であっても、それらの「切り替え時間」に起因する、処理時間に関する影響(遅延等)を排除可能である。
また、ビデオサーバシステム800おける各管理サーバ801は、共有ストレージ803に記憶された管理情報803bに基づいて、共有ストレージ803に構築されたファイルシステムを管理可能である。これにより、例えば、各管理サーバ801が相互に直接通信せずとも共有ストレージ803におけるファイルシステムの整合性を保つことが可能であり、また、通信障害等に起因したファイルシステムの障害を低減可能である。
また、ビデオサーバ802は、いずれかの管理サーバ801にアクセス可能であればよく、いずれかの管理サーバ801が正常に稼働していれば、ビデオサーバシステム800は処理を続行可能である。
以上より、本実施形態におけるビデオサーバシステム800は、多重化された管理サーバ801を明示的に切り替えることなく利用可能である。また、本実施形態におけるビデオサーバシステム800は、共有ストレージ803において共有されるデータを適切に管理可能である。
<第3の実施形態>
次に、本発明の第3の実施形態について、図面を参照して説明する。図9は、本実施形態におけるデータ管理システム900の機能的な構成を例示するブロック図である。
本実施形態におけるデータ管理システム900は、上記各実施形態におけるビデオサーバシステム(100、800)を実現可能な技術を用いて構成された、任意のコンテンツデータを管理可能なデータ管理システムである。係るコンテンツデータは、例えば、映像、画像、音声、文書、各種計測データ等の任意のデータを含んでよい。
係るデータ管理システム900は、1以上のコンテンツデータと、ファイルシステムに関する管理データとを記憶する共有ストレージ(例えば、図9の共有ストレージ903)におけるファイルシステムを、当該管理データに基づいて管理する複数の管理サーバ901を備える。
上記のように構成されたデータ管理システム900における複数の管理サーバ901は、コンテンツデータに関する操作を要求する操作要求を、当該操作要求の送信元(例えば図9のクライアント902)からそれぞれ受け付ける。具体的には、例えば、複数の管理サーバ901は、それぞれ個別に、コンテンツデータに関する操作要求をクライアント902から受け付けてもよい。そして、管理サーバ901は、上記管理データに基づいて生成した上記操作要求に対する応答を、当該操作要求の送信元にそれぞれ送信する。具体的には、例えば、複数の管理サーバ901は、それぞれ個別に、上記操作要求に対する応答をクライアント902に送信してもよい。
上記応答を送信した管理サーバ901のうち、当該操作要求の送信元から当該応答に関する特定の通知を受け付けた管理サーバ901が、コンテンツデータに関する操作を実行する。
上記のように構成された本実施形態におけるデータ管理システム900によれば、複数の管理サーバ901が、現用/予備などの区別なく、共有ストレージ(例えば共有ストレージ903)に記憶されたコンテンツデータに関する処理を実行可能である。即ち、本実施形態におけるデータ管理システム900は、管理サーバ901が多重化されている場合であっても、それらの「切り替え時間」に起因する、処理時間に関する影響(遅延等)を排除可能である。
更に、各管理サーバ901は、共有ストレージ(例えば共有ストレージ903)に記憶された管理データに基づいて共有ストレージにおけるファイルシステムを管理する。これより、各管理サーバ901が相互に直接通信せずとも共有ストレージにおけるファイルシステムの整合性を保つことが可能であり、また、通信障害等に起因したファイルシステムの障害を低減可能である。
以上より、本実施形態におけるデータ管理システム900は、多重化された管理サーバ901を明示的に切り替えることなく利用可能である。また、本実施形態におけるデータ管理システム900は、共有ストレージ903において共有されるデータを適切に管理可能である。
<ハードウェア及びソフトウェア・プログラム(コンピュータ・プログラム)の構成>
以下、上記説明した各実施形態を実現可能なハードウェア構成について説明する。
以下の説明においては、上記各実施形態において説明したビデオサーバシステム(100、800)、あるいはデータ管理システム(900)をまとめて、単に「ビデオサーバシステム」と称する。またこれらビデオサーバシステムの各構成要素を、単に「ビデオサーバシステムの構成要素」と称する。
上記各実施形態において説明したビデオサーバシステムは、1つ又は複数の専用のハードウェア装置により構成されてもよい。その場合、上記各図(図1、図8、及び、図9)に示した各構成要素は、一部又は全部を統合したハードウェア(処理ロジックを実装した集積回路あるいは記憶デバイス等)として実現されてもよい。
例えば、ビデオサーバシステムを専用のハードウェアにより実現する場合、係るビデオサーバシステムの構成要素は、それぞれの機能を提供可能な集積回路(例えば、SoC(System on a Chip)等)を用いて実装されてもよい。この場合、ビデオサーバシステムの構成要素が保持するデータは、例えば、SoCとして統合されたRAM(Random Access Memory)領域やフラッシュメモリ領域、あるいは、当該SoCに接続された記憶デバイス(磁気ディスク等)に記憶されてもよい。また、この場合、ビデオサーバシステムの各構成要素を接続する通信回線としては、周知の通信バスを採用してもよい。また、各構成要素を接続する通信回線はバス接続に限らず、それぞれの構成要素間をピアツーピアで接続してもよい。ビデオサーバシステムを複数のハードウェア装置により構成する場合、それぞれのハードウェア装置の間は、任意の通信手段(有線、無線、またはそれらの組み合わせ)により通信可能に接続されていてもよい。
また、上述したビデオサーバシステム又はその構成要素は、図10に例示するような汎用のハードウェアと、係るハードウェアによって実行される各種ソフトウェア・プログラム(コンピュータ・プログラム)とによって構成されてもよい。この場合、ビデオサーバシステムは、任意の数の、汎用のハードウェア装置及びソフトウェア・プログラムにより構成されてもよい。
図10における演算装置1001は、汎用のCPU(中央処理装置:Central Processing Unit)やマイクロプロセッサ等の演算処理装置である。演算装置1001は、例えば後述する不揮発性記憶装置1003に記憶された各種ソフトウェア・プログラムを記憶装置1002に読み出し、係るソフトウェア・プログラムに従って処理を実行してもよい。例えば、上記各実施形態におけるビデオサーバシステムの構成要素(管理サーバ(101、801、901)あるいはビデオサーバ(102、802等))は、演算装置1001により実行されるソフトウェア・プログラムとして実現可能である。
記憶装置1002は、演算装置1001から参照可能な、RAM等のメモリ装置であり、ソフトウェア・プログラムや各種データ等を記憶する。なお、記憶装置1002は、揮発性のメモリ装置であってもよい。例えば、上記各実施形態におけるメモリ部204は、記憶装置1002を用いて実現可能である。
不揮発性記憶装置1003は、例えば磁気ディスクドライブや、フラッシュメモリによる半導体記憶装置のような、不揮発性の記憶装置である。不揮発性記憶装置1003は、各種ソフトウェア・プログラムやデータ等を記憶可能である。
ネットワークインタフェース1006は、通信ネットワークに接続するインタフェース装置であり、例えば有線及び無線のLAN(Local Area Network)接続用インタフェース装置や、SAN接続用インタフェース装置等を採用してもよい。上記各実施形態における管理サーバあるいはビデオサーバは、ネットワークインタフェース1006を介して、共有ストレージと接続されていてもよい。また、上記各実施形態における管理サーバ及びビデオサーバは、ネットワークインタフェース1006を介して相互に通信可能に接続されていてもよい。
ドライブ装置1004は、例えば、後述する記録媒体1005に対するデータの読み込みや書き込みを処理する装置である。
記録媒体1005は、例えば光ディスク、光磁気ディスク、半導体フラッシュメモリ等、データを記録可能な任意の記録媒体である。
入出力インタフェース1007は、外部装置との間の入出力を制御する装置である。
上述した各実施形態を例に説明した本発明におけるビデオサーバシステム(あるいはその構成要素)は、例えば、図10に例示するハードウェア装置に対して、上記各実施形態において説明した機能を実現可能なソフトウェア・プログラムを供給することにより、実現されてもよい。より具体的には、例えば、係る装置に対して供給したソフトウェア・プログラムを、演算装置1001が実行することによって、本発明が実現されてもよい。この場合、係るハードウェア装置で稼働しているオペレーティングシステムや、データベース管理ソフト、ネットワークソフト等のミドルウェアなどが各処理の一部を実行してもよい。
更に、上記ソフトウェア・プログラムは記録媒体1005に記録されてもよい。この場合、上記ソフトウェア・プログラムは、上記ビデオサーバシステム等の出荷段階、あるいは運用段階等において、適宜ドライブ装置1004を通じて不揮発性記憶装置1003に格納されるよう構成されてもよい。
なお、上記の場合において、上記ハードウェアへの各種ソフトウェア・プログラムの供給方法は、出荷前の製造段階、あるいは出荷後のメンテナンス段階等において、適当な治具を利用して当該装置内にインストールする方法を採用してもよい。また、各種ソフトウェア・プログラムの供給方法は、インターネット等の通信回線を介して外部からダウンロードする方法等のように、現在では一般的な手順を採用してもよい。
そして、このような場合において、本発明は、係るソフトウェア・プログラムを構成するコード、あるいは係るコードが記録されたところの、コンピュータ読み取り可能な記録媒体によって構成されると捉えることができる。この場合、係る記録媒体は、ハードウェア装置と独立した媒体に限らず、LANやインターネットなどにより伝送されたソフトウェア・プログラムをダウンロードして記憶又は一時記憶した記憶媒体を含む。
また、上述したビデオサーバシステムは、図10に例示するハードウェア装置を仮想化した仮想化環境と、当該仮想化環境において実行される各種ソフトウェア・プログラム(コンピュータ・プログラム)とによって構成されてもよい。この場合、図10に例示するハードウェア装置の構成要素は、当該仮想化環境における仮想デバイスとして提供される。なお、この場合も、図10に例示するハードウェア装置を物理的な装置として構成した場合と同様の構成にて、本発明を実現可能である。
以上、本発明を、上述した模範的な実施形態に適用した例として説明した。しかしながら、本発明の技術的範囲は、上述した各実施形態に記載した範囲には限定されない。当業者には、係る実施形態に対して多様な変更又は改良を加えることが可能であることは明らかである。そのような場合、係る変更又は改良を加えた新たな実施形態も、本発明の技術的範囲に含まれ得る。更に、上述した各実施形態、あるいは、係る変更又は改良を加えた新たな実施形態を組み合わせた実施形態も、本発明の技術的範囲に含まれ得る。そしてこのことは、特許請求の範囲に記載した事項から明らかである。
なお、上記の各実施形態の一部又は全部は、以下の付記のようにも記載されうる。なお、以下の付記は本発明をなんら限定するものではない。
(付記1)
1以上の素材情報と、ファイルシステムに関する管理情報とを記憶する共有ストレージと、
上記管理情報に基づいて、上記共有ストレージを管理する複数の管理サーバと、
上記素材情報に関する操作要求を上記管理サーバに送信するビデオサーバと、を備え、
複数の上記管理サーバは、上記素材情報に関する上記ビデオサーバからの上記操作要求をそれぞれ個別に受け付け、上記管理情報に基づいて生成した上記操作要求に対する応答をそれぞれ個別に上記ビデオサーバに送信し、
上記応答を送信した上記管理サーバのうち、上記ビデオサーバから当該応答に関する特定の通知を受け付けた上記管理サーバが、上記素材情報に関する操作を実行する
ビデオサーバシステム。
(付記2)
上記管理情報には、
それぞれの上記管理サーバ毎に用意された、上記共有ストレージにおける上記素材情報の記憶領域を特定可能な素材管理情報と、
複数の上記管理サーバにより共有される、上記共有ストレージにおける空き領域を管理可能な空き領域管理情報と、が含まれ、
複数の上記管理サーバは、上記素材管理情報と、上記空き領域管理情報と、の少なくともいずれかに基づいて生成した上記操作要求に対する応答をそれぞれ個別に上記ビデオサーバに送信する
付記1に記載のビデオサーバシステム。
(付記3)
上記ビデオサーバは、複数の上記管理サーバから上記操作要求に対する応答を受け付けた場合、特定の上記管理サーバに対して当該操作要求に関する処理の実行を承諾することを表す承諾通知を送信すると共に、他の上記管理サーバに対して当該操作要求に関する処理の実行を承諾しないことを表す拒否通知を送信する、
付記1又は付記2に記載のビデオサーバシステム。
(付記4)
上記空き領域管理情報は、複数の上記管理サーバがそれぞれ上記共有ストレージにおいて確保可能な空き領域に関する情報を保持し、
上記ビデオサーバが、複数の上記管理サーバに対して上記共有ストレージに対する新たな上記素材情報の登録を要求する上記操作要求を送信した場合、
当該操作要求を受け付けた複数の上記管理サーバは、それぞれ、上記空き領域管理情報に基づいて、新たな上記素材情報を登録するために上記共有ストレージにおいて確保可能な空き領域に関する情報を含む応答を生成し、当該応答を上記ビデオサーバに送信し、
上記応答を送信した上記管理サーバのうち、上記ビデオサーバから上記承諾通知を受け付けた上記管理サーバは、当該管理サーバが確保した上記空き領域に関する情報と、新たな上記素材情報を特定可能な情報とを、上記素材管理情報に登録し、
上記応答を送信した上記管理サーバのうち、上記ビデオサーバから上記拒否通知を受け付けた上記管理サーバは、当該管理サーバが確保した上記空き領域を解放する
付記3に記載のビデオサーバシステム。
(付記5)
上記ビデオサーバが、複数の上記管理サーバに対して、上記共有ストレージに記憶された上記素材情報に対する削除を要求する上記操作要求を送信した場合、
当該操作要求を受け付けた複数の上記管理サーバは、それぞれ、上記操作要求を処理可能であることを表す応答を生成して上記ビデオサーバに送信し、
上記応答を送信した上記管理サーバのうち、上記ビデオサーバから上記承諾通知を受け付けた上記管理サーバは、
上記素材管理情報に基づいて、上記操作要求により指定された削除対象である上記素材情報が上記共有ストレージにおいて記憶された領域を特定するとともに、当該特定した領域を、空き領域として上記空き領域管理情報に登録し、
上記素材管理情報から、当該削除対象の上記素材情報を削除する
付記3又は付記4に記載のビデオサーバシステム。
(付記6)
上記ビデオサーバが、複数の上記管理サーバに対して、上記共有ストレージに記憶された特定の上記素材情報に対する参照を要求する上記操作要求を送信した場合、
当該操作要求を受け付けた複数の上記管理サーバは、それぞれ、上記素材管理情報に基づいて、上記操作要求により指定された参照対象である上記素材情報が上記共有ストレージにおいて記憶された領域を特定するとともに、当該特定した領域に関する情報を含む応答を生成して上記ビデオサーバに送信する
付記3乃至付記5のいずれかに記載のビデオサーバシステム。
(付記7)
それぞれの上記管理サーバ毎に用意された上記素材管理情報は、それぞれの上記管理サーバからのみ更新可能であるとともに、他の上記管理サーバから参照可能であり、
複数の上記管理サーバは、それぞれの上記管理サーバに用意された上記素材管理情報を操作するタイミングと、定期的なタイミングとの少なくとも一方のタイミングにおいて、他の上記管理サーバに用意された上記第1の素材管理情報を参照し、当該参照した素材管理情報が更新されている場合には、その更新された情報を自管理サーバに割り当てられた上記素材管理情報に反映する、
付記4乃至付記6のいずれかに記載のビデオサーバシステム。
(付記8)
上記空き領域管理情報は両端キューのデータ構造を用いて構成され、
自ビデオサーバシステムが、2台の上記管理サーバを備える場合において、
2台の上記管理サーバのうち、一方の上記管理サーバが、上記両端キューの一端側から上記空き領域管理情報にアクセスし、他方の上記管理サーバが、上記両端キューの他端側から上記空き領域管理情報にアクセスする
付記4乃至付記7のいずれかに記載のビデオサーバシステム。
(付記9)
1以上の素材情報と、ファイルシステムに関する管理情報とを記憶する共有ストレージを、上記管理情報に基づいて管理する複数の管理サーバが、
上記共有ストレージに記憶された上記素材情報に関する操作を要求する操作要求をビデオサーバからそれぞれ個別に受け付け、
上記管理情報に基づいて生成した上記操作要求に対する応答をそれぞれ個別に上記ビデオサーバに送信し、
上記応答を送信した上記管理サーバのうち、上記ビデオサーバから当該応答に関する特定の通知を受け付けた上記管理サーバが、上記素材情報に関する操作を実行する
データ操作方法。
(付記10)
1以上の素材情報と、ファイルシステムに関する管理情報とを記憶する共有ストレージに記憶された上記素材情報に関する操作を要求する操作要求を、ビデオサーバから受け付ける処理と、
上記管理情報に基づいて生成した上記操作要求に対する応答を上記ビデオサーバに送信する処理と、
上記ビデオサーバから当該応答に関する特定の通知を受け付けた場合に、上記素材情報に関する操作を実行する処理と、をコンピュータに実行させる
コンピュータ・プログラム。
(付記11)
1以上のコンテンツデータと、ファイルシステムに関する管理データとを記憶する共有ストレージを、上記管理データに基づいて管理する複数の管理サーバを備え、
複数の上記管理サーバは、
上記コンテンツデータに関する操作を要求する操作要求を、当該操作要求の送信元からそれぞれ個別に受け付け、
上記管理データに基づいて生成した上記操作要求に対する応答を、上記操作要求の送信元にそれぞれ個別に送信し、
上記応答を送信した上記管理サーバのうち、上記操作要求の送信元から当該応答に関する特定の通知を受け付けた上記管理サーバが、上記コンテンツデータに関する操作を実行する
データ管理システム。
(付記12)
上記ビデオサーバは、複数の上記管理サーバから上記操作要求に対する応答を受け付けた場合、最も早く当該応答を受け付けた上記管理サーバに対して、上記承諾通知を送信すると共に、他の上記ファイルシステム管理サーバに対して上記拒否通知を送信する、
付記3に記載のビデオサーバシステム。
100 ビデオサーバシステム
101 ファイルシステム管理サーバ(FSS)
102 ビデオサーバ(VS)
103 共有ストレージ
200 ビデオサーバシステム
201 ファイルシステム管理サーバ(FSS)
202 ビデオサーバ(VS)
203 共有ストレージ
800 ビデオサーバシステム
801 管理サーバ
802 ビデオサーバ
803 共有ストレージ
900 データ管理システム
901 管理サーバ
902 クライアント
903 共有ストレージ
1001 演算装置
1002 記憶装置
1003 不揮発性記憶装置
1004 ドライブ装置
1005 記録媒体
1006 ネットワークインタフェース
1007 入出力インタフェース

Claims (10)

  1. 1以上の素材情報と、ファイルシステムに関する管理情報とを記憶する共有ストレージと、
    前記管理情報に基づいて、前記共有ストレージを管理する複数の管理サーバと、
    前記素材情報に関する操作要求を前記管理サーバに送信するビデオサーバとを備え、
    複数の前記管理サーバは、前記素材情報に関する前記ビデオサーバからの前記操作要求をそれぞれ受け付け、前記管理情報に基づいて生成した前記操作要求に対する応答をそれぞれ前記ビデオサーバに送信し、
    前記応答を送信した前記管理サーバのうち、前記ビデオサーバから当該応答に関する特定の通知を受け付けた前記管理サーバが、前記素材情報に関する操作を実行する
    ビデオサーバシステム。
  2. 前記管理情報には、
    それぞれの前記管理サーバ毎に用意された、前記共有ストレージにおける前記素材情報の記憶領域を特定可能な素材管理情報と、
    複数の前記管理サーバにより共有される、前記共有ストレージにおける空き領域を管理可能な空き領域管理情報とが含まれ、
    複数の前記管理サーバは、前記素材管理情報と、前記空き領域管理情報と、の少なくともいずれかに基づいて生成した前記操作要求に対する応答を、前記ビデオサーバに送信する
    請求項1に記載のビデオサーバシステム。
  3. 前記ビデオサーバは、複数の前記管理サーバから前記操作要求に対する応答を受け付けた場合、特定の前記管理サーバに対して当該操作要求に関する処理の実行を承諾することを表す承諾通知を送信すると共に、他の前記管理サーバに対して当該操作要求に関する処理の実行を承諾しないことを表す拒否通知を送信する、
    請求項1又は請求項2に記載のビデオサーバシステム。
  4. 前記空き領域管理情報は、複数の前記管理サーバがそれぞれ前記共有ストレージにおいて確保可能な空き領域に関する情報を保持し、
    前記ビデオサーバが、複数の前記管理サーバに対して前記共有ストレージに対する新たな前記素材情報の登録を要求する前記操作要求を送信した場合、
    当該操作要求を受け付けた複数の前記管理サーバは、それぞれ、前記空き領域管理情報に基づいて、新たな前記素材情報を登録するために前記共有ストレージにおいて確保可能な空き領域に関する情報を含む応答を生成し、当該応答を前記ビデオサーバに送信し、
    前記応答を送信した前記管理サーバのうち、前記ビデオサーバから前記承諾通知を受け付けた前記管理サーバは、当該管理サーバが確保した前記空き領域に関する情報と、新たな前記素材情報を特定可能な情報とを、前記素材管理情報に登録し、
    前記応答を送信した前記管理サーバのうち、前記ビデオサーバから前記拒否通知を受け付けた前記管理サーバは、当該管理サーバが確保した前記空き領域を解放する
    請求項3に記載のビデオサーバシステム。
  5. 前記ビデオサーバが、複数の前記管理サーバに対して、前記共有ストレージに記憶された前記素材情報に対する削除を要求する前記操作要求を送信した場合、
    当該操作要求を受け付けた複数の前記管理サーバは、それぞれ、前記操作要求を処理可能であることを表す応答を生成して前記ビデオサーバに送信し、
    前記応答を送信した前記管理サーバのうち、前記ビデオサーバから前記承諾通知を受け付けた前記管理サーバは、
    前記素材管理情報に基づいて、前記操作要求により指定された削除対象である前記素材情報が前記共有ストレージにおいて記憶された領域を特定するとともに、当該特定した領域を、空き領域として前記空き領域管理情報に登録し、
    前記素材管理情報から、当該削除対象の前記素材情報を削除する
    請求項3又は請求項4に記載のビデオサーバシステム。
  6. 前記ビデオサーバが、複数の前記管理サーバに対して、前記共有ストレージに記憶された特定の前記素材情報に対する参照を要求する前記操作要求を送信した場合、
    当該操作要求を受け付けた複数の前記管理サーバは、それぞれ、前記素材管理情報に基づいて、前記操作要求により指定された参照対象である前記素材情報が前記共有ストレージにおいて記憶された領域を特定するとともに、当該特定した領域に関する情報を含む応答を生成して前記ビデオサーバに送信する
    請求項3乃至請求項5のいずれかに記載のビデオサーバシステム。
  7. それぞれの前記管理サーバ毎に用意された前記素材管理情報は、それぞれの前記管理サーバからのみ更新可能であるとともに、他の前記管理サーバから参照可能であり、
    複数の前記管理サーバは、それぞれの前記管理サーバに用意された前記素材管理情報を操作するタイミングと、定期的なタイミングとの少なくとも一方のタイミングにおいて、他の前記管理サーバに用意された前記第1の素材管理情報を参照し、当該参照した素材管理情報が更新されている場合には、その更新された情報を自管理サーバに割り当てられた前記素材管理情報に反映する、
    請求項4乃至請求項6のいずれかに記載のビデオサーバシステム。
  8. 前記空き領域管理情報は両端キューのデータ構造を用いて構成され、
    自ビデオサーバシステムが、2台の前記管理サーバを備える場合において、
    2台の前記管理サーバのうち、一方の前記管理サーバが、前記両端キューの一端側から前記空き領域管理情報にアクセスし、他方の前記管理サーバが、前記両端キューの他端側から前記空き領域管理情報にアクセスする
    請求項4乃至請求項7のいずれかに記載のビデオサーバシステム。
  9. 1以上の素材情報と、ファイルシステムに関する管理情報とを記憶する共有ストレージを、前記管理情報に基づいて管理する複数の管理サーバが、
    前記共有ストレージに記憶された前記素材情報に関する操作を要求する操作要求をビデオサーバからそれぞれ受け付け、
    前記管理情報に基づいて生成した前記操作要求に対する応答をそれぞれ前記ビデオサーバに送信し、
    前記応答を送信した前記管理サーバのうち、前記ビデオサーバから当該応答に関する特定の通知を受け付けた前記管理サーバが、前記素材情報に関する操作を実行する
    データ操作方法。
  10. 1以上の素材情報と、ファイルシステムに関する管理情報とを記憶する共有ストレージに記憶された前記素材情報に関する操作を要求する操作要求を、ビデオサーバから受け付ける処理と、
    前記管理情報に基づいて生成した前記操作要求に対する応答を前記ビデオサーバに送信する処理と、
    前記ビデオサーバから当該応答に関する特定の通知を受け付けた場合に、前記素材情報に関する操作を実行する処理と、をコンピュータに実行させる
    コンピュータ・プログラム。
JP2015086888A 2015-04-21 2015-04-21 ビデオサーバシステム、データ操作方法、及び、コンピュータ・プログラム Pending JP2016208232A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015086888A JP2016208232A (ja) 2015-04-21 2015-04-21 ビデオサーバシステム、データ操作方法、及び、コンピュータ・プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015086888A JP2016208232A (ja) 2015-04-21 2015-04-21 ビデオサーバシステム、データ操作方法、及び、コンピュータ・プログラム

Publications (1)

Publication Number Publication Date
JP2016208232A true JP2016208232A (ja) 2016-12-08

Family

ID=57490519

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015086888A Pending JP2016208232A (ja) 2015-04-21 2015-04-21 ビデオサーバシステム、データ操作方法、及び、コンピュータ・プログラム

Country Status (1)

Country Link
JP (1) JP2016208232A (ja)

Similar Documents

Publication Publication Date Title
US11907561B2 (en) Data backup method and apparatus
CN108712332B (zh) 一种通信方法、系统和装置
US9917884B2 (en) File transmission method, apparatus, and distributed cluster file system
US20210200681A1 (en) Data storage method and apparatus, and server
US9367261B2 (en) Computer system, data management method and data management program
JP5094460B2 (ja) 計算機システム、データ一致化方法およびデータ一致化処理プログラム
CN106446159B (zh) 一种存储文件的方法、第一虚拟机及名称节点
CN104935654A (zh) 一种服务器集群系统中的缓存方法、写入点客户端和读客户端
JP2014123218A (ja) プログラム、データ管理方法および情報処理装置
CN108762668B (zh) 一种处理写入冲突的方法及装置
CN114338651A (zh) 文件传输方法、装置、电子设备及可读存储介质
CN111049928A (zh) 数据同步方法、系统、电子设备及计算机可读存储介质
CN108228581B (zh) Zookeeper兼容通信方法、服务器及系统
CN108418859B (zh) 写数据的方法和装置
CN108833164B (zh) 服务器控制方法、装置、电子设备及存储介质
EP3031172B1 (en) Managing data feeds
JP4612714B2 (ja) データ処理方法、クラスタシステム、及びデータ処理プログラム
CN108512753A (zh) 一种集群文件系统中消息传输的方法及装置
US20150135004A1 (en) Data allocation method and information processing system
JP2001346181A (ja) データ記憶部共有装置およびプログラム記録媒体
US10896103B2 (en) Information processing system
JP2016208232A (ja) ビデオサーバシステム、データ操作方法、及び、コンピュータ・プログラム
CN113391759B (zh) 一种通信方法和设备
JP2007334668A (ja) メモリダンプ方法、クラスタシステム、それを構成するノードおよびプログラム
JP5509272B2 (ja) 計算機システム、データ一致化方法およびデータ一致化処理プログラム