JP4952119B2 - ファイルサーバを用いたコンテンツ管理システムと方法およびプログラム - Google Patents

ファイルサーバを用いたコンテンツ管理システムと方法およびプログラム Download PDF

Info

Publication number
JP4952119B2
JP4952119B2 JP2006211077A JP2006211077A JP4952119B2 JP 4952119 B2 JP4952119 B2 JP 4952119B2 JP 2006211077 A JP2006211077 A JP 2006211077A JP 2006211077 A JP2006211077 A JP 2006211077A JP 4952119 B2 JP4952119 B2 JP 4952119B2
Authority
JP
Japan
Prior art keywords
file
cms
processing unit
server
file system
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2006211077A
Other languages
English (en)
Other versions
JP2008040602A (ja
Inventor
隆史 鳥居
聡 山川
善裕 梶木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 JP2006211077A priority Critical patent/JP4952119B2/ja
Publication of JP2008040602A publication Critical patent/JP2008040602A/ja
Application granted granted Critical
Publication of JP4952119B2 publication Critical patent/JP4952119B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、情報処理システムに関し、特に、ファイルサーバのファイル管理と、コンテンツ管理システムを統合するシステムと方法及びコンピュータ・プログラムに関する。
ストレージに格納される情報は年々増えつつあり、その膨大な情報をどうやって管理するか・活用するかが企業にとっても個人にとっても大きな課題となってくる。
データベースに格納されているデータを「構造化データ」、それ以外を「非構造化データ」と言う。
非構造化データは、ファイルとして、個人用パソコン内部やファイルサーバに格納されている。
特に、非構造化データの共有用途として、ファイルサーバやNAS(Network Attached Storage)は、汎用・高速・高信頼などの利点があり、現在広く使われている。
近年、この非構造化データの量が急激な伸びを見せており、このトレンドは今後さらに強まると見られている。これにともなって、非構造化データの管理がさらに重要な課題となってくると考えられる。
なお、特許文献1には、更新(登録、修正、削除等)のファイル操作を監視する監視手段を備えた構成が開示されている。また特許文献2には、データをファイル単位に管理することによってマルチメディア処理可能なファイルサーバの構成が開示されている。さらに特許文献3には、WWWサーバとDBサーバを備えたデータベース連携Webページ構築システムが開示されている。
特開2003−140958号公報 特開平11−96187号公報 特開2002−14864号公報 エンタープライズコンテンツ管理(ECM、ECMジャパン株式会社、インターネット URL<http://www.documentum.co.jp/solutions/ecm/ecm.htm>
従来のファイルサーバやファイルサーバ用のアプリケーションには、コンテンツ管理という視点が欠けている。
非構造化データは、今後さらに増えると見込まれており、非構造化データのコンテンツ管理の重要性は増している。
コンテンツ管理をするためには、ファイルに、多元的な属性を与え、それをもとにファイルを整理・検索するインターフェイスが必要である。
従来のファイルサーバは、そのような機能がない。このため、ファイルサーバ上では、ディレクトリ構成やファイル名といった単純なレベルでファイル管理する方法がとられている。
従来のファイルサーバは、コンテンツ管理に必要な多元的な属性の付与と、それに基づく整理・検索の機能を具備していない。
一方、コンテンツを管理、保存、展開等するために、コンテンツ管理システム(CMS:Contents Management System)という製品(ソフトウエア)がある(例えば非特許文献1等参照)。
CMSでも、ファイルを扱い、管理することができる。しかしながら、CMSは、従来のファイルアクセスとは異なる専用システムを用いる必要がある。ファイルサーバとの互換性がなく、ファイルサーバとは別個のシステムとして構築しなければならない。
具体的には、一般に、CMSでファイルを読み書きする方法は、ファイルサーバの場合とは異なる。
このため、ユーザは、クライアント内のローカルディスクか、もしくは、ファイルサーバ上にて、ファイルを作成し、それをCMSにアップロードするという作業が必要になる。
しかしながら、このような作業は非効率的である。
また、ファイルがローカルディスクやファイルサーバとCMSの中に2重に存在するため、ストレージ容量の面でも非効率であり、一方を編集した場合に他方への反映を怠り一貫性が損なわれるなどの問題が起こりがちである。一部には、CMSの上にファイルサーバと互換のプロトコルでファイルの読み書きができるインターフェイスを設けた製品もある。
この種のCMS製品は、例えば図15のような構成をとっている。なお、図15は、従来のOracle Filesの構成を模式的に示す図である。図15を参照すると、CMSサーバ4は、ファイルアクセスサーバ処理部13と、CMSサーバ処理部17と、コンテンツを登録するデータベース18と、ファイルシステム14とを備えている。クライアント1は、ファイルアクセスアプリケーション11と、ファイルアクセスクライアント処理部12と、CMSアプリケーション15と、CMSクライアント処理部16とを備えている。クライアント1に対してはファイルサーバと同様に、既存のファイルアクセスアプリケーションが使えるという利点があり、かつCMSの機能も実現できている。
しかし、一般に、CMSの機能は複雑であり、ファイルサーバと比較すると、読み出し書き込みの動作が遅いため、このような形態では、頻繁にファイルの読み書きを行うアプリケーションの動作には耐えず、ファイルサーバのように汎用的に使用できるものではない。
さらに、一般的なCMSは、ファイルを、多元的な属性と共に管理しており、ユーザは、この多元的な属性に対して、キーワードを指定するなどの操作で、ファイルの検索を行う機能を有している。しかしながら、CMSの上に、ファイルサーバと互換のインターフェイスを設けただけの製品では、ファイルサーバのプロトコルにしか対応していないアプリケーションからは、CMSサーバ処理部で管理される、多元的な属性を参照することや、多元的な属性を用いて、ファイルの検索を行うことが出来ない。
すなわち、ファイルの作成や編集を行う環境と、ファイルの管理を行うCMSとを、それぞれ別個のシステムとして構築しなければならず、
・作業の非効率性、
・容量の非効率性、
・ファイルの一貫性維持に対する脆弱性、
などの課題がある。
そして、ファイルサーバとCMSとは、動作が大幅に異なることから、両者を統合することは極めて困難であった。
したがって、本発明の目的は、ファイルサーバとCMSを統合可能とするシステム、方法とプログラムを提供することにある。
本願で開示される発明は、前記課題を解決するため、概略以下の通りの構成とされる。
本発明は、ファイルサーバとCMSを統合させるため、以下のような機能を有するFS−CMS連携処理部を備えている。
本発明において、FS−CMS連携処理部は、ファイルシステムへのイベントをモニタして、CMSに通知する手段と、CMSが行う処理をファイルシステムに対する操作に翻訳してファイルシステムに対して操作する手段を備える。
また、本発明においては、CMSの上でのみ管理していた多元的な属性を、ファイルシステムにおけるリンクに対応させ、ファイルサーバのプロトコルにしか対応していないアプリケーションからも使用可能にする。
さらに、本発明においては、検索ディレクトリという機能を設け、CMSの上でしか使用できなかったファイル検索を、ファイルサーバのプロトコルにしか対応していないアプリケーションからも使用可能としている。
さらにまた、本発明においては、検索ディレクトリからファイルを削除した場合に、CMSにおける多元的な属性をファイルシステムにおけるリンクに対応させた実装では、リンクが削除されるだけでファイルの実体は削除されないという課題が生じるため、削除イベントを監視する機構や、それに応じてファイルの実体を削除する機構などを設ける。
さらに、本発明においては、一部のアプリケーションの場合、ファイルを変更して保存すると、ファイルシステム上ではファイルの変更ではなく、新規ファイルに置き換わるという動作を行うため、この種のアプリケーションにて検索ディレクトリからファイルを更新すると、ファイルシステムにおけるリンクで表現していたCMSにおける多元的な属性が失われてしまうという課題が生じるのに対し、リンクを再設定する機能を設ける。
本発明の一アスペクト(側面)に係るサーバ装置においては、ファイルシステムへのアクセスを制御するファイルアクセスサーバ処理部と、データベースにてコンテンツを管理するCMS(Contents Management System)サーバ処理部と、前記ファイルアクセスサーバ処理部による前記ファイルシステムへのファイル操作が行われた場合、前記ファイルシステムへの操作内容を前記CMSサーバ処理部に通知し、前記操作内容を、前記CMSサーバ処理部で管理される前記データベースに反映させる制御を行うFS−CMS連携処理部と、を備えている。
本発明に係るサーバ装置において、前記FS−CMS連携処理部は、前記ファイルサーバ装置が接続するクライアントのCMSアプリケーションによるファイル操作を、前記ファイルシステムへのファイル操作に変換した上で、前記ファイルシステムに対して操作を行い、さらに、前記FS−CMS連携処理部は、前記ファイルシステムに対して行った前記操作の内容を、前記CMSサーバ処理部に通知し、前記操作の内容を、前記CMSサーバ処理部で管理される前記データベースに反映させる制御を行う構成としてもよい。
本発明に係るサーバ装置において、CMSアプリケーションのメニューページ上でファイル操作を選択するボタンのリンク先が、CMSアプリケーション本来の対応するページではなく予め用意した別のページに設定され、前記ボタンの選択時、前記別のページに制御が移り、前記FS−CMS連携処理部の対応するファイル操作の処理が実行されるように設定されており、前記CMSアプリケーションのメニューページ上でファイル操作が選択された場合、前記FS−CMS連携処理部により、前記ファイルシステムへのファイル操作が行われ、さらに、前記FS−CMS連携処理部は、前記ファイルシステムに対して行った前記操作の内容を、前記CMSサーバ処理部に通知し、前記操作の内容を、前記CMSサーバ処理部で管理される前記データベースに反映させる制御を行う、構成としてもよい。
本発明に係るサーバ装置において、前記FS−CMS連携処理部は、前記CMSサーバ処理部のAPI(アプリケーションインタフェース)をコールすることで、前記ファイルシステムに為された前記操作の内容を、前記CMSサーバ処理部で管理される前記データベースに反映させる、構成としてもよい。
本発明に係るサーバ装置において、前記データベースが、1行あたり、ファイル名と、分類コードと、ファイルの属性情報の列を少なくとも含み、前記分類コードとして、ファイルの親ディレクトリのパス名を含み、前記FS−CMS連携処理部は、前記ファイルシステムへの操作イベント発生時、前記操作の対象となるパス名とファイル名とを取得し、ファイルの親ディレクトリを分類コードとして、前記CMSサーバ処理部のCMSのコンテンツ操作用のAPIをコールする、構成としてもよい。
本発明に係るサーバ装置において、前記データベースが、1行あたり、ファイル名と、分類コードと、ファイルの属性情報の列を少なくとも含み、前記FS−CMS連携処理部は、ファイルの親ディレクトリのパス名と分類コードとを対応付ける変換テーブルを含み、前記FS−CMS連携処理部は、前記ファイルシステムへの操作イベント発生時、パス名とファイル名を取得し、親ディレクトリから前記変換テーブルを参照して分類コードを導き、前記CMSサーバ処理部のCMSのコンテンツ操作用のAPIをコールする、構成としてもよい。
本発明に係るサーバ装置は、ファイルシステムへのアクセスを制御するファイルアクセスサーバ処理部と、データベースにてコンテンツを管理するCMS(Contents Management System)サーバ処理部と、前記ファイルシステムへの操作イベントが発生した時、前記CMSサーバ処理部に通知して、前記データベースに反映させ、一方、前記CMSサーバ処理部が行う処理を、前記ファイルシステムに対する操作に変換して前記ファイルシステムに対して操作するFS−CMS連携処理部と、を備えている。
本発明において、前記FS−CMS連携処理部は、クライアントから、前記ファイルシステムへのアクセスを、モニタリングアプリケーションインタフェースを通じて認識し、前記クライアントからのアクセスにより、前記ファイルシステムに変更が加えられると、前記FS−CMS連携処理部は、前記変更内容を、前記CMSサーバ処理部に通知し、前記FS−CMS連携処理部から前記通知を受けた前記CMSサーバ処理部では、前記データベースに前記変更内容を反映させ、前記クライアントがCMSアプリケーションを用いてファイルに対する操作を行うと、前記FS−CMS連携処理部を経由して、前記ファイルシステムにアクセスし、前記CMSサーバ処理部では、前記データベースに、前記変更内容を反映させる、構成としてもよい。
本発明に係るサーバ装置においては、ファイルシステムへのアクセスを制御するファイルアクセスサーバ処理部と、データベースにてコンテンツを管理するCMSサーバ処理部と、前記ファイルシステムと前記CMSサーバ処理部を連携させるFS−CMS連携処理部と、を備え、前記FS−CMS連携処理部は、クライアントから、前記ファイルシステムへのアクセスを、モニタリングアプリケーションインタフェースを通じて認識し、前記クライアントからのアクセスにより、前記ファイルシステムに変更が加えられると、前記FS−CMS連携処理部は、前記変更内容を、前記CMSサーバ処理部に通知し、前記FS−CMS連携処理部から前記通知を受けた前記CMSサーバ処理部では、前記データベースに、前記変更内容を反映させ、前記クライアントがCMSアプリケーションを用いて前記CMSサーバ処理部にアクセスし、ファイルに対する操作を行うと、前記CSMサーバ処理部から、前記FS−CMS連携処理部を経由して、前記ファイルシステムにアクセスする。
本発明において、前記FS−CMS連携処理部は、前記削除(DELETE)を契機として、ファイルの拡張属性とリンクを設定しなおすようにしてもよい。
本発明において、前記FS−CMS連携処理部は、前記クライアントからの前記ファイルシステムの検索ディレクトリへのアクセスを、モニタリングアプリケーションインタフェースを通じて認識すると、前記検索ディレクトリ名の示す属性を備えているファイルを、前記CMSサーバ処理部に問い合わせ、
前記CMSサーバ処理部は、前記FS−CMS連携処理部からの前記問い合わせを受けて、前記データベースを検索して、前記検索ディレクトリ名の示す属性を備えているファイルのリストを、前記FS−CMS連携処理部に返し、
前記FS−CMS連携処理部は、前記ファイルのリストをもとに、前記ファイルシステムにリンクファイルを作成し、前記検索ディレクトリ名の示す属性をもつファイルが一覧となって見えるようにしてもよい。
本発明において、前記FS−CMS連携処理部が、RENAME元ファイルとRENAME先ファイルを備えたRENAMEテーブルと、DELETEイベントを保存するDELETEテーブルを備えている。
本発明において、前記FS−CMS連携処理部に、RENAME元ファイルとRENAME先ファイルを備え、RENAMEイベントを保存するRENAMEテーブルと、DELETEイベントを保存するDELETEテーブルを備えている。前記FS−CMS連携処理部は、前記ファイルシステムのファイルが更新されるときには、RENAMEテーブルとDELETEテーブルを作成し、DELETEイベントのファイルが、RENAMEテーブルのRENAME先ファイルにあるかをチェックし、DELETEイベントのファイルが存在した場合、RENAME元ファイルと同名なファイルがファイルシステム上にあるかをチェックし、RENAME元ファイルと同名なファイルが前記ファイルシステム上に存在した場合、アプリケーションの更新動作とみなし、拡張属性とリンクを再設定し、RENAMEテーブルとDELETEテーブルから、前記ファイルに関するエントリを削除する。
本発明に係るクライアント装置は、ファイルアクセスプロトコルと、CMSアクセスプロトコルで、前記本発明のファイルサーバのファイルアクセスサーバ処理部、CMSサーバ処理部にアクセスする。
本発明の他のアスペクト(側面)に係る方法は、クライアントからのファイルシステムへのアクセスを制御するファイルアクセスサーバ処理と、データベースにてコンテンツを管理するCMS(Contents Management System)サーバ処理と、を連携させる方法であって、前記クライアントのファイルアクセスアプリケーションからの前記ファイルシステムへの操作が行われた場合、前記ファイルシステムへの前記操作の内容を前記CMSサーバ処理に通知し、前記操作の内容を前記CMSサーバ処理で管理される前記データベースに反映させる制御を行う。本発明は、ファイルシステムへのアクセスを制御するファイルアクセスサーバ処理部と、コンテンツを管理するCMS(Contents Management System)サーバ処理部と、前記ファイルアクセスサーバ処理部とCMSサーバ処理部を連携するFS−CMS連携処理部と、を備えたファイルサーバによる、FSとCMSの連携方法であって、
前記FS−CMS連携処理部が、クライアントからのアクセス要求に基づき、ファイルシステムへのイベントをモニタしてCMSサーバ処理部に通知する工程と、
前記FS−CMS連携処理部が、前記CMSサーバ処理部が行う処理を、前記ファイルシステムに対する操作に変換してファイルシステムに対して操作する工程と、
を含む。
本発明に係る方法において、前記FS−CMS連携処理部は、前記クライアントからファイルシステムへのアクセスを、モニタリングアプリケーションインタフェースを通じて認識し、前記クライアントからのアクセスにより、前記ファイルシステムに変更が加えられると、その変更内容を、前記CMSサーバ処理部に通知し、前記CMSサーバ処理部は、前記データベースにその変更を反映させる工程と、
前記クライアントがCMSアプリケーションを用いて前記CMSサーバ処理部にアクセスし、ファイルに対する操作を行うと、前記CSMサーバ処理部から前記FS−CMS連携処理部を経由して前記ファイルシステムにアクセスする工程と、
を含む。
本発明に係る方法において、CMSで管理される属性を、前記ファイルシステムにおけるリンクに対応させる工程を含み、前記ファイルサーバのプロトコルにしか対応していないアプリケーションからもCMSをアクセス可能としている。
本発明に係る方法において、検索ディレクトリからファイルを削除した場合に、削除イベントを監視し、該削除イベントに応じてファイルの実体を削除する。
本発明に係る方法において、前記FS−CMS連携処理部は、前記DELETEを契機として、前記ファイルの拡張属性とリンクを設定しなおす。
本発明に係る方法において、前記FS−CMS連携処理部は、
ファイルシステムのファイルが更新されるときには、RENAMEテーブルとDELETEテーブルを作成し、前記RENAMEテーブルは、RENAME元ファイルとRENAME先ファイルを備え、
DELETEイベントのファイルが、RENAMEテーブルのRENAME先ファイルにあるかをチェックし、
DELETEイベントのファイルが、RENAMEテーブルのRENAME先ファイルに存在した場合、RENAME元ファイルと同名なファイルがファイルシステム上にあるかをチェックし、
RENAME元ファイルと同名なファイルがファイルシステム上に存在した場合、アプリケーションの更新動作とみなし、拡張属性とリンクを再設定し、
RENAMEテーブルとDELETEテーブルからこのファイルに関するエントリを削除する。
本発明の他のアスペクト(側面)に係るプログラムは、
ファイルシステムへのアクセスを制御するファイルアクセスサーバ処理部と、
コンテンツを管理するCMSサーバ処理部と、
FS−CMS連携処理部と、
を備えたファイルサーバのコンピュータに、
前記FS−CMS連携処理部における、
クライアントからのアクセス要求に基づき、ファイルシステムへのイベントをモニタして前記CMSサーバ処理に通知する処理、
前記CMSサーバ処理で行う処理を、前記ファイルシステムに対する操作に変換してファイルシステムに対して操作する処理と、
を実行させるプログラムよりなる。
本発明の他のアスペクト(側面)に係るプログラムにおいて、
前記FS−CMS連携処理部が、前記クライアントからファイルシステムへのアクセスを、モニタリングアプリケーションインタフェースを通じて認識し、前記クライアントからのアクセスにより、前記ファイルシステムに変更が加えられると、その変更内容を、前記CMSサーバ処理部に通知する処理と、
前記CMSサーバ処理部は、前記データベースにその変更を反映させる処理と、
前記クライアントがCMSアプリケーションを用いて前記CMSサーバ処理部にアクセスし、ファイルに対する操作を行うと、前記CSMサーバ処理部から、前記FS−CMS連携処理部を経由して前記ファイルシステムにアクセスする処理と
を前記コンピュータに実行させるプログラムよりなる。
本発明の他のアスペクト(側面)に係るプログラムにおいて、
CMSで管理される属性を、前記ファイルシステムにおけるリンクに対応させる処理を備え、
ファイルサーバのプロトコルにしか対応していないアプリケーションからもCMSをアクセス可能としてなる、ことを特徴とするプログラムよりなる。
本発明の他のアスペクト(側面)に係るプログラムにおいて、
前記検索ディレクトリからファイルを削除した場合に、削除イベントを監視し、前記削除イベントに応じてファイルの実体を削除する処理を、
を前記コンピュータに実行させるプログラムよりなる。
本発明の他のアスペクト(側面)に係るプログラムにおいて、DELETEを契機として、拡張属性とリンクを設定しなおす、処理を前記コンピュータに実行させるプログラムよりなる。
本発明の他のアスペクト(側面)に係るプログラムにおいて、前記FS−CMS連携処理部が、
前記ファイルシステムのファイルが更新されるときには、RENAMEテーブルとDELETEテーブルを作成し、
DELETEイベントのファイルが、RENAMEテーブルのRENAME先ファイルにあるかをチェックし、
DELETEイベントのファイルが、RENAMEテーブルのRENAME先ファイルに存在した場合、RENAME元ファイルと同名なファイルがファイルシステム上にあるかをチェックし、
RENAME元ファイルと同名なファイルがファイルシステム上に存在した場合、アプリケーションの更新動作とみなし、拡張属性とリンクを再設定し、
RENAMEテーブルとDELETEテーブルからこのファイルに関するエントリを削除する処理を前記コンピュータに実行させるプログラムよりなる。
本発明によれば、FS−CMS連携処理部を備え、ファイルサーバに対して行われた操作をCMSに反映し、また、CMSが行う処理をファイルシステムに対して反映する構成としたことで、ファイルサーバで所望のコンテンツ管理を実現することができる。
本発明によれば、従来はファイルサーバとコンテンツ管理という2つのシステムに分離していたものを統合することで、より簡素で効率的な管理を可能としている。
次に、本発明を実施する最良の形態のシステム構成について図を用いて説明する。図1は、本発明を実施する最良の形態のシステム構成の一例を示す図である。図1を参照すると、この実施形態は、少なくとも1台以上のクライアント1と、少なくとも1台以上のファイルサーバ2とを備えている。クライアント1とファイルサーバ2はネットワーク3で接続されている。
<ファイルサーバ・CMSの仕組み>
はじめに、ファイルサーバとCMSの典型的な構成について、比較例として、図10を参照して説明しておく。
図10を参照すると、この比較例において、クライアント1は、ファイルアクセスアプリケーション11と、ファイルアクセスクライアント処理部12を備えている。
ファイルサーバ2は、ファイルアクセスサーバ処理部13と、ファイルシステム14を備えている。
クライアント1は、ファイルサーバ2にアクセスするときには、ファイルアクセスアプリケーション11でファイルサーバ2を示すディレクトリを開き、ファイルにアクセスする。
ファイルアクセスアプリケーション11は、ファイルアクセスクライアント処理部12に処理を依頼する。
ファイルアクセスクライアント処理部12は、ファイルアクセスプロトコル21を介してファイルアクセスサーバ処理部13と通信を行い、ファイル情報の獲得やファイルデータのREAD/WRITEを行う。
ファイルサーバ2の内部において、ファイルアクセスサーバ処理部13は、クライアント1のリクエストに応じてファイルシステム14にアクセスし、ファイルシステム14からの応答を、ファイルアクセスプロトコル21に変換して、クライアント1に返すという処理を行う。
図10に示すように、CMSサーバ4は、ファイルサーバ2とは別に設けられている。クライアント1は、CMSサーバ4への処理依頼を行うため、CMSアプリケーション15とCMSクライアント処理部16を備えている。
CMSサーバ4は、CMSサーバ処理部17と、データベース18と、ファイルシステム14を備えている。
典型的なCMSにおいて、ファイルをREAD/WRITEする方法は、ファイルサーバ2の場合とは異なる。
クライアント1上で動作するCMSアプリケーション15に、ファイルアップロードの類のメニューページが設けられており、該メニュー上からの操作で、ファイルをアップロードし、該メニューで、多元的な属性を設定する。
つまり、ユーザは、ファイルサーバ2上にファイルを作成し、コンテンツ管理を行うために、CMSアプリケーション15のメニューの操作により、当該ファイルをCMSサーバ4にアップロードするという作業が必要になる。
<第1の実施形態>
図2は、本発明の第1の実施形態の構成を示す図である。図2を参照すると、本実施形態において、ファイルサーバ2は、ファイルアクセスサーバ処理部13と、ファイルシステム14と、FS(File System)−CMS(Contents Management System)連携処理部19と、CMSサーバ処理部17と、データベース18を備えている。クライアント1は、ファイルアクセスアプリケーション11と、ファイルアクセスクライアント処理部12と、CMSアプリケーション15と、CMSクライアント処理部16を備えている。なお、クライアント1の構成は、図10の構成と同一である。ファイルサーバ2における、ファイルアクセスサーバ処理部13、CMSサーバ処理部17、FS−CMS連携処理部19の各処理部は、ファイルサーバ2を構成するコンピュータで実行されるプログラムによって処理、機能を実現してもよいことは勿論である。本実施の形態では、ファイルサーバ2に、FS−CMS連携処理部19を導入している。以下、FS−CMS連携処理部19の動作について説明する。
クライアント1がファイルアクセスアプリケーション11を用いて、ファイルシステム14にアクセスすると、FS−CMS連携処理部19は、イベントを検出するモニタリングAPI(アプリケーションインタフェース)24を通じて、ファイルシステム14へのアクセスを検出する。
モニタリングAPI24は、さまざまな実装があるが、例えばデータ管理アプリケーションインタフェース(DMAPI)が用いられる(DMAPIが有効化される)。DMAPIは、ファイルシステム14に対して起きたイベントを受け取ることができるAPIである。また、FCTRLのNOTIFY機能を用いてもよい。
DMAPIの機能について、図11を参照して概説する。DMAPIは、予めカーネルに登録した領域に対してアクセスがあると、アプリケーションに通知を行うAPI(アプリケーションインタフェース)である。
DMAPIアプリケーション20(DMAPIを利用するユーザ空間アプリケーション)は、ファイルシステム14に対して、場所とイベントを登録する(1)。
ここで、場所とは、イベントが発生したら通知をあげるディレクトリやファイルを指定する。なお、場所として、ファイルシステム全体を指定することも可能である。
イベントでは、通知をあげる操作を指定する。
登録されるイベントは、例えば
・ファイル作成(CREATE)、
・ファイル削除(DELETE)、
・OPEN、
・CLOSE、
・READ、
・WRITE、
・RENAME、
・LINK、・・・
など、ファイルシステムAPIのほとんどが指定可能である。
図11に示す例では、DMAPIアプリケーション20は、場所:ディレクトリA、イベント:CREATEを登録する。
この場合、ファイルシステム14のディレクトリAに、クライアント1がファイルXを作成したときに(2)、DMAPIアプリケーション20に対して、ディレクトリAにファイルXが作成されたことが通知される(3)。
再び、図2を参照すると、クライアント1のアクセスにより、ファイルシステム14に変更が加えられると、FS−CMS連携処理部19は、その変更を、CMSサーバ処理部17に通知する。CMSサーバ処理部17は、データベース18にその変更を反映させる。
また、クライアント1がCMSアプリケーション15を用いてCMSサーバ処理部17にアクセスし、ファイルに対する操作を行うと、CSMサーバ処理部17から、FS−CMS連携処理部19を経由してファイルシステム14にアクセスする。
これらの機能により、ファイルサーバとCMSとで、ファイルの一貫性を保つことができる。
なお、CMSのデータベース18の内容は、CMSによって異なるが、その基本は、ディレクトリの階層構造に相当する分類コードと、ファイル属性とが列になり、ファイルが行になっている。図12に、CMSデータベースの一例を示す。図12に示す例では、ファイル毎(行毎)に、ファイル名、分類コード、シリアルID、リビジョン、最終更新時刻、属性の各列がある。また、図12に示す例では、分類コードは、ディレクトリと同じイメージである。このように、分類コードをディレクトリ階層構造と同じとすることで、ディレクトリと分類コードの相互の変換が不要となる。なお、分類コードとディレクトリ構造とを別にして、FS−CMS連携処理部19に変換テーブルを備えた構成としてもよい。
図2に示した本実施形態において、クライアント1のファイルアクセスにより、ファイルシステム14に変更が加えられたときの動作を以下に説明する。
図13は、本実施形態において、ファイルシステム14に新規にファイルを作成した場合の処理を説明するためのフローチャートである。
クライアント1のファイルアクセスにより、ファイルシステム14に新規にファイルを作成した場合、DMAPIを通じて、FS−CMS連携処理部19にファイルを新規に作成したファイルの親ディレクトリのパス名とファイル名が渡される(STEP1)。
次に、FS−CMS連携処理部19で、分類コードを見つける(STEP2)。
本実施形態においては、図12を参照して説明したように、分類コードをディレクトリと同一とすることで、FS−CMS連携処理部19では、DMAPIから通知されたファイルの親ディレクトリのパス名から、容易に分類コードを導くことができる。なお、本発明は、分類コードをディレクトリと同一とする構成に限定されるものでなく、前述したように、分類コードとディレクトリを別にしてもよいことは勿論である。この場合、FS−CMS連携処理部19では、親ディレクトリのパス名から変換テーブルを引いて(検索して)、分類コードを導くなどして、分類コードを見つける必要がある。特に制限されないが、親ディレクトリのパス名と分類コードとの対応をテーブル形式で格納した変換テーブルは、FS−CMS連携処理部19内に備えてもよい。
次に、FS−CMS連携処理部19は、CMSサーバ処理部17のAPIをコールして、ファイルの新規登録を行う(STEP3)。データベース18には、新規ファイルに対応した、ファイル名、分類コード、シリアルID、リビジョン、最終更新時刻、属性の列が新規登録される。一般に、CMSには、外部プログラムからコンテンツを操作するためのAPIが用意されている。本実施形態では、FS−CMS連携処理部19は、このAPIを利用する。
次に、ファイルシステム14に対するファイル操作が削除である場合を説明する。クライアント1のファイルアクセスにより、ファイルアクセスサーバ処理部13により、ファイルシステム14内のファイルを削除した場合には、ファイルの新規作成の場合と同様に、FS−CMS連携処理部19には、DMAPI経由で、削除したファイルの親ディレクトリとファイル名が渡される。
FS−CMS連携処理部19では、親ディレクトリパス名から、分類コードを導き、ファイル名と同一のコンテンツを削除する。ファイルの削除は、CMSサーバ処理部17のAPIを利用する。この場合、例えば、データベース18から当該ファイル名の行が削除される。
次に、ファイルシステム14のファイルの更新について説明する。クライアント1のファイルアクセスにより、ファイルアクセスサーバ処理部13により、ファイルの更新が行われた場合、ファイルの新規作成や削除の場合とは異なり、ファイルの最終更新時刻が変わるだけである。FS−CMS連携処理部19には、DMAPI経由で、ファイルのパス名が渡される。FS−CMS連携処理部19は、ファイルパス名から分類コードを導き、最終更新時刻を変更するために、CMSサーバ処理部17のAPIをコールする。この場合、データベース18の当該ファイル名、分類コードに対応する行の、最終更新時刻の列が変更される。
次に、クライアント1がCMSアプリケーション15を用いてファイルに変更を加えたときの動作を説明する。
まず、新規にファイルを作成した場合、クライアント1は、CMSアプリケーション15経由で、ファイルをアップロードする。その際、ファイルのアップロード先が、図2のファイルシステム14内となるように、事前に設定しておく。
本実施形態においては、クライアント1が、CMSサーバ上のフォルダで、ファイルをアップロードするだけで、自動的に、ファイルサーバ2のファイルシステム14内の対応するディレクトリに、該ファイルがアップロードされる。すなわち、比較例として示した図10の構成の場合、クライアント1は、CMSアプリケーション15の操作により、CMSサーバ4上のフォルダで、ファイルをアップロードすると、CMSサーバ4のファイルシステム14内にファイルを新規作成することになるが、本実施形態では、図2のファイルサーバ2のファイルシステム14内にファイルが新規作成されるように、アップロード先が設定されている。
なお、CMSサーバがファイルのアップロード先を設定(変更)できない構成の場合や、ファイルの作成操作によりデータベース内部にファイルを格納してしまう場合には、別の方法をとる必要がある。その手法について、図14を参照して説明する。
まず、CMSサーバ(図10の4)で、新規ファイルを登録するためのページ(CMSメニューページ)を、FS−CMS連携処理部19にアクセスするURL(Uniform Resource Locator)とし、ボタンの選択により、独自に設けた新規登録ページに飛ぶように予め設定しておく。これは、CMSメニューページの新規ファイル登録のリンクを書き換えるだけで済むことから、変更は容易である。具体的には、CMSメニューページの新規登録ボタン61のリンク先を、独自の新規登録ページ71(URL)に設定しておく。クライアント1において、CMSアプリケーション15のCMSメニューページの新規登録ボタン61が選択されると、リンク先の新規登録ページ71が表示され、新規登録ページ71上でファイルをアップロードすると、ファイルサーバ2のFS−CMS連携処理部19の対応する処理に移行する。
FS−CMS連携処理部19では、新規登録ページ71でアップロードされたファイルをファイルシステム14に格納し、ファイルシステム14へのファイルの新規作成に対応してCMSサーバ処理部17に対して、前述したCMSのAPIをコールして、CMSのデータベース18に対して、新規ファイルの登録を行う。なお、CMSサーバ処理部17に対する処理は、ファイルアクセスサーバ処理部13からファイルシステム14に新規ファイルを作成した場合にFS−CMS連携処理部19がCMSサーバ処理部17に対して行う処理と同じである。
次に、クライアント1で動作するCMSアプリケーション15からのファイル削除操作について、図14を参照して説明する。CMSアプリケーション15のメニューページからファイルシステム14のファイルを削除する場合も、同様にして、削除ボタン62から、独自の削除ページ72へリンクするようにしておく。これにより、FS−CMS連携処理部19に対して、最初に、ファイルの削除が通知され、FS−CMS連携処理部19は、ファイルシステム14から該当するファイルの削除を行い、つづいて、CMSサーバ処理部17に対して、前述したCMSサーバ処理部17のAPIをコールして、データベース18の対応する行の内容を削除する。これにより、ファイルシステムとCMSの連携をとることができる。
CMSアプリケーション15のメニューページからファイルシステム14のファイルを更新する場合も、更新ボタン63から独自の更新ページ73へリンクするようにしておく。
これにより、FS−CMS連携処理部19に対して、最初に、更新が通知され、FS−CMS連携処理部19は、ファイルシステム14において、ファイルの更新を行い、つづいて、CMSサーバ処理部17に対して、前述したCMSのAPIをコールして、CMSのデータベース18の対応する行において、更新情報を設定する。これにより、ファイルシステムとCMSの連携をとることができる。
なお、図2のCMSのデータベース18に対して、クライアント1のCMSアプリケーション15、CMSクライアント処理部16、CMSアクセスプロトコル23、CMSサーバ処理部17を介して、CMSのデータベース18の内容に変更が為され、ファイルシステム14に変更内容を反映する必要がある場合、CMSサーバ処理部17が、FS−CMS連携処理部19に通知し、FS−CMS連携処理部19にてファイルシステム14へのファイル操作を行うようにしてもよいことは勿論である。例えば、CMSのデータベース18(図12)内のある行(エントリ)を削除する場合、削除対象の行のファイル名と分類コードのパス名(親ディレイトリ)をFS−CMS連携処理部19に通知し、FS−CMS連携処理部19がファイルシステム14内の該当ファイルの削除操作を行うようにしてもよい。すなわち、CMS側からファイルシステム側への連携を行うことができる。ファイルのRENAME等も、同様にして行うことができる。
<第2の実施形態>
次に、本発明の第2の実施形態について説明する。本実施形態では、CMSの検索機能を、ファイルシステムとして実現する。CMSには、多元的な属性やファイル同士の関連性を把握し、ユーザに対して整理して提示したり、ストレージ管理に利用したり、関連性を提示したりする機能が必要である。
本実施形態では、ファイルサーバ上でその機能を実現するために、検索ディレクトリを用いる。
まず、検索ディレクトリの機能について説明し、つづいて検索ディレクトリを実現するために、図2のFS−CMS連携処理部19がどのような動作をするかについて説明する。
検索ディレクトリは、多元的な属性、またはその組み合わせがディレクトリ名となっており、そのディレクトリを開くと、その属性が付与されているファイルが一覧となって見えるものである。
通常のディレクトリと同じように見えるため、クライアント1は、ファイルアクセスアプリケーション11を介してアクセスでき、また更新も可能である。
検索ディレクトリは、図2のファイルアクセスアプリケーション11でアクセスできるので、CMSクライアント処理部16を導入していないクライアント1でも、アクセスが可能となる。図3を参照して、具体的に説明する。図3は、本発明の第2の実施形態を説明するための図であり、検索ディレクトリのリンク構成が模式的に示されている。
ディレクトリA(31)にファイルX(34)が置かれており、「開発情報」と「機密」という2つの属性37が付与されている。
検索ディレクトリ「開発情報」(32)と検索ディレクトリ「機密」(33)がファイルシステム14に作成される。
検索ディレクトリ「開発情報」(32)にリンクファイルX1(35)が置かれ、検索ディレクトリ「機密」(33)にはリンクファイルX2(36)が置かれている。
これらのリンクファイルは、ハードリンクまたはシンボリックリンクで、ファイルX(34)にリンクされている。つまり、これらのファイルを開く(「OPEN」する)と、ファイルX(34)が開く。
クライアント1は、例えば「開発情報」という属性のついたファイル、あるいは、「機密」という属性のついたファイルを探す場合、検索ディレクトリ「開発情報」(32)や、検索ディレクトリ「機密」(33)を開くことで、簡単に見つけることができる。
このような検索ディレクトリを、FS−CMS連携処理部19がどのように実現しているかについて以下に説明する。
まず、ファイルシステム14に、検索ディレクトリを作成する。
検索ディレクトリの作成については、
・FS−CMS連携処理部19が自動で作成してもよいし、
・クライアント1からCMSクライアント処理部16を通じて作成を指示するようにしてもよい。
クライアント1が検索ディレクトリにアクセスしてきたら、FS−CMS連携処理部19は、モニタリングAPI24を通じて、検索ディレクトリのアクセスを検出する。
モニタリングAPI24が、クライアントによる検索ディレクトリのアクセスを検出したら、FS−CMS連携処理部19は、その検索ディレクトリ名の示す属性を備えているファイルを、CMSサーバ処理部17に問い合わせる。
CMSサーバ処理部17は、データベース18を検索して、該当するファイルリストをFS−CMS連携処理部19に返す。
該当するファイルリストをもとに、FS−CMS連携処理部19は、ファイルシステム14に、リンクファイルを作成する。このリンクは、ハードリンクであってもシンボリックリンクであってもよい。これにより、検索ディレクトリに、その属性をもつファイルのリストが見えるようになる。
このように、検索ディレクトリを作ると、1つのファイルに対して、ファイルシステム14内で複数のリンクファイルが作成される。
通常のファイルシステム14では、ファイルが削除されたときに、そのファイルにリンクしているリンクファイルは削除されない。つまり、ファイル自体が削除されても、検索ディレクトリからは削除されないことになってしまう。
そして、削除されたファイルにアクセスしたときの現象は、ハードリンクとシンボリックリンクの場合で異なる。
例えばハードリンクの場合、ファイルの削除操作により、ファイルのリンクカウンタが1つ減るだけで、ファイル実体はファイルシステム14から削除されない。ファイルシステム14では、リンクカウンタが「0」になったら、ファイル実体が削除される。つまり、検索ディレクトリから、ファイルをアクセスすると、ファイル実体にアクセスできてしまう。つまり、ファイルを削除したのに、アクセスできてしまうというおかしな現象になる。
一方、シンボリックリンクの場合、リンクカウンタは「1」のままであるため、ファイルの削除動作により、ファイルシステム14から、ファイル実体が削除される。この削除の実行に対して、すでに、ファイル自体は削除されているので、アクセスしたときに、ファイルが存在しないというエラーがでる。
つまり、ファイル実体は存在しないのに、検索ディレクトリからは、該ファイルは削除されない、という、おかしな現象になる。
この問題を解決するため、FS−CMS連携処理部19は、モニタリングAPI24を通じて、ファイルが削除されたことを受けとったら、削除されたファイルにリンクしているリンクファイルを、CMSサーバ処理部17に問い合わせる。
CMSサーバ処理部17は、データベース18を検索し、リンクしているファイルの情報をFS−CMS連携処理部19に返す。
FS−CMS連携処理部19は、それに基づいて、ファイルシステム14上のリンクファイルを削除する。
ファイルシステム14がゴミ箱フォルダ機能を備えている場合には、削除要求を受けたファイルはいきなり削除されるのではなく、ファイルシステム14上でゴミ箱フォルダへ移動される。
その場合は、FS−CMS連携処理部19は、削除イベントではなく、ゴミ箱フォルダへの移動(RENAME)というイベントを受け取る。
FS−CMS連携処理部19は、ゴミ箱フォルダへの移動を削除イベントと同じように扱い、リンクファイルを削除する。
検索ディレクトリ内のファイルは、通常のファイルアクセスアプリケーション11からアクセス可能であり、更新も可能である。ファイルの内容を変更しても、属性は変化しないし、検索ディレクトリのリンクファイルもつながった状態で保持される。
ただし、一部のアプリケーションでファイルを変更して保存すると、ファイルシステム14上では、ファイルの変更ではなく、新規ファイルに置き換わる場合がある。
これは、アプリケーションの更新の途中でシステムが止まってしまった場合などには元の状態に戻れるようにするために、アプリケーションが行っている工夫である。
ファイル自体に、上書き変更していくのではなく、別のファイルに変更を含めて、全てWRITEし、最終的に保存するときには、元ファイルの削除と、新規ファイルのファイル名変更(RENAME)を行う。こうすることにより、ファイル名変更というアトミックな処理で更新ができるため、更新の途中状態というステータスが無くなるのである。
この動作のフローは、2つのタイプ(タイプA、タイプB)に分類できる。それぞれについて図4、及び図5を用いて説明する。
まず、タイプAについて図4を用いて説明する。図4は、ファイルA(41)を更新する場合のフローを示している。
まず、ファイルA(41)は、「〜ファイルA2.tmp」(42)にRENAMEされる(STEP1)。これは更新前のファイルのバックアップという意味がある。
更新を加えたファイルは、「〜ファイルA1.tmp」(43)という名前で、新規にCREATE(作成)され、更新内容を含めてWRITE(書き込み)される(STEP2)。
すべてWRITEされたら、元のファイルA(41)にRENAMEされる(STEP3)。
最後にバックアップファイルである「〜ファイルA2.tmp」(42)がDELETE(削除)される(STEP4)。
この一連の動作により、途中のどの段階で止まってしまったとしても、バックアップに戻ることが可能とされ、更新途中であったことを検出することもできる。
次に、タイプBについて、図5を用いて説明する。タイプBの場合、ファイルA(41)は、「〜ファイルA.bak」(42)にRENAMEされ(STEP1)、更新を加えた新規ファイルが、はじめからファイルA(41)として、CREATEされ、WRITEされる(STEP2)。
その後、「〜ファイルA.bak」が削除される。
この場合も、バックアップ用テンポラリファイル「〜ファイルA.bak」(42)が存在するため、更新途中で止まってしまっても、戻ることができる。
しかし、検索ディレクトリにとっては、タイプAにしてもタイプBにしても、このような更新は都合が悪い。
まず、ファイルシステム14としては、別のファイルになってしまうため、多元的な属性をファイルシステムの拡張属性に保存している場合には、失われてしまう。
また、検索ディレクトリのリンクは、シンボリックリンクであれば、ファイル名でつながっているので保持されるが、ハードリンクは切れてしまう。
ファイルシステム14として、別のファイルであるため仕方ないとも言えるが、ユーザにとっては更新であることからすると、コンテンツ管理システムとしては、利便性が損なわれてしまう。
そこで、この問題を、本実施形態のFS−CMS連携処理部19を用いて、どのように解決しているか、以下に説明する。
アプリケーションがファイル41を更新する際の動作では、必ず、ファイル41がバックアップ用テンポラリファイル42にRENAMEされ(STEP1)、最後にバックアップ用テンポラリファイル42がDELETEされる(STEP3またはSTEP4)。
更新フローの最後は、DELETEであり、これをきっかけとして、拡張属性とリンクを設定しなおすのがよい。
そのために、FS−CMS連携処理部19に、RENAMEイベントを保存するRENAMEテーブル51と、DELETEイベントを保存するDELETEテーブル52を持つ。
これらのイベントを保存して参照することで、アプリケーションの更新を検出する。
具体的には、図4のタイプAのフローでファイルAが更新されるときには、図6(A)、図6(B)のRENAMEテーブル51とDELETEテーブル52が作成される。RENAMEテーブル51は、RENAME元ファイルとRENAME先ファイル、属性欄を備える。DELETEテーブル52は、CREATEファイルを有する。
図5のタイプBのフローでファイルAが更新されるときは、図7(A)、(B)のRENAMEテーブル51、DELETEテーブル52ができる。
図8は、本実施形態の処理手順を示す流れ図である。図8を参照して、本実施形態の処理を説明する。
まず、DELETEイベント発生で処理がスタートする(STEP0)。
DELETEイベントのファイルが、RENAMEテーブル51のRENAME先ファイルに存在するかをチェックする(STEP1)。
DELETEイベントのファイルが、RENAMEテーブル51のRENAME先ファイルに存在した場合、RENAME元ファイルと同名なファイルがファイルシステム上にあるかをチェックする(STEP2)。
RENAME元ファイルと同名なファイルがファイルシステム上に存在した場合には、アプリケーションの更新動作とみなし、拡張属性とリンクを再設定する(STEP3)。
最後に、RENAMEテーブル51とDELETEテーブル52から、該ファイルに関するエントリを削除する(STEP4)。これは、該ファイルのエントリの削除を行わないと、RENAMEテーブル51とDELETEテーブル52が際限なく大きくなるためである。
ファイルシステム14が、ゴミ箱フォルダ機能を備えている場合には、更新時の元ファイルはゴミ箱フォルダに移動する。つまり、DELETEテーブル52がRENAMEテーブル51で代替可能となる。
図9(A)、図9(B)に、タイプAとタイプBの場合のRENAMEテーブル51をそれぞれ示す。
ゴミ箱フォルダへのRENAMEイベントを受け取ったら、RENAMEテーブル51を参照して、元ファイル名を割り出す。
そして、ファイルシステム上に、RENAME元ファイルと同名のファイルが存在すれば、ゴミ箱フォルダのファイルから、拡張属性やリンクを引き継ぐ。
あるいは、スナップショットを利用して定期的に再設定するようにしてもよい。例えば夜間などのアクセスがない時間帯にリンクを総チェックする。
リンク切れの復旧のために、スナップショットを利用する。リンク切れのファイルは、現在のファイルシステム14からは削除されているが、スナップショットをとっている場合には、スナップショット領域には、残っている。よって、スナップショット領域のファイルにアクセスし、それが、現在のファイルシステム14にも存在するか否かをチェックすることで、リンク切れを検出することができる。
もし、スナップショット領域のファイルと、現在のファイルシステム上のファイルとが同一であれば、リンクはつながっており、異っていれば、更新されたことを意味する。
これは、例えばinode番号(データ領域を確保するための番号)を比較したり、更新時刻を比較したりすることで、可能である。
更新されている場合、スナップショット領域のファイルから、拡張属性を読みこんで、更新後のファイルに設定し、リンクは張り直す。
リンク切れの総チェックを行うときに、予めRENAMEイベントを受けていれば、そのファイルだけをチェックする、もしくは、何らかの機能により更新されたファイル一覧を獲得できれば、それだけをチェックすることも可能である。これにより、チェックにかかる時間を短縮できる。
上記した本実施形態によれば、ファイルサーバとコンテンツ管理システムという2つのシステムを統合することができ、管理の簡素化、効率化ができる。ファイルサーバでファイル管理をしているところにコンテンツ管理システムを導入すると、従来は二重管理になってしまうために避けるところが多かった。本発明によれば、ファイルサーバを残しつつコンテンツ管理システムを組み込むことができ、導入障壁が低くなる。
なお、前記FS−CMS連携処理部19における、ファイルシステム14への操作イベントの認識は、ポーリング方式、あるいは、イベント発生が割り込み等で通知される方式等、任意の方式で行ってもよい。
以上、本発明を上記実施例に即して説明したが、本発明は上記実施例の構成にのみ制限されるものでなく、本発明の範囲内で当業者であればなし得るであろう各種変形、修正を含むことは勿論である。
本発明の一実施形態のシステム構成を示す図である。 本発明の一実施形態の機能構成を示す図である。 本発明の検索ディレクトリのリンク構成を模式的に示す図である。 アプリケーションがファイルを更新するフローを示す図である。 アプリケーションがファイルを更新するフローを示す図である。 (A)、(B)は、本発明の第2の実施形態におけるRENAMEテーブル・DELETEテーブルをそれぞれ示す図である。 (A)、(B)は、本発明の第2の実施形態におけるRENAMEテーブル・DELETEテーブルを示す図である。 本発明の第2の実施形態における拡張属性・リンクの再設定フローを示す図である。 (A)、(B)は、本発明の第2の実施形態におけるRENAMEテーブルとDELETEテーブルをそれぞれ示す図である。 比較例のファイルサーバとCMSの機能構成を示す図である。 DMAPIの動作を説明する図である。 CMSデータベースの構成の一例を説明する図である。 ファイルシステムに新規ファイル作成したときのフローを示す図である。 CMSからファイル操作したときの構成を示す図である。 従来のOracle Filesの構成を示す図である。
符号の説明
1 クライアント
2 ファイルサーバ
3 ネットワーク
4 CMSサーバ
11 ファイルアクセスアプリケーション
12 ファイルアクセスクライアント処理部
13 ファイルアクセスサーバ処理部
14 ファイルシステム
15 CMSアプリケーション
16 CMSクライアント処理部
17 CMSサーバ処理部
18 データベース
19 FS−CMS連携処理部
20 DMAPIアプリケーション
21 ファイルアクセスプロトコル
22 ファイルシステムAPI
23 CMSアクセスプロトコル
24 モニタリングAPI
31 ディレクトリA
32 検索ディレクトリ
33 検索ディレクトリ
34 ファイルX
35 リンクファイルX1
36 リンクファイルX2
37 属性
41 ファイルA
42 バックアップ用テンポラリファイル
43 更新用テンポラリファイル
51 RENAMEテーブル
52 DELETEテーブル
61 新規登録ボタン
62 削除ボタン
63 更新ボタン
71 新規登録ページ
72 削除ページ
73 更新ページ

Claims (19)

  1. ファイルシステムへのアクセスを制御するファイルアクセスサーバ処理部と、
    データベースにてコンテンツを管理するCMS(Contents Managemnt System)サーバ処理部と、
    前記ファイルアクセスサーバ処理部による前記ファイルシステムへのファイル操作が行われた場合、前記ファイルシステムへの操作内容を前記CMSサーバ処理部に通知し、前記操作内容を、前記CMSサーバ処理部で管理される前記データベースに反映させ、前記CMSサーバ処理部が行う処理を、前記ファイルシステムに対する操作に変換して前記ファイルシステムに対して操作する制御を行うFS−CMS連携処理部と、
    を備え
    前記FS−CMS連携処理部は、ファイルサーバ装置が接続するクライアントのCMSアプリケーションによるファイル操作を前記ファイルシステムへのファイル操作に変換した上で前記ファイルシステムに対して操作を行い、
    前記ファイルシステムに対する前記操作の内容を、前記CMSサーバ処理部に通知し、前記操作の内容を、前記CMSサーバ処理部で管理される前記データベースに反映させる制御を行う、ことを特徴とするファイルサーバ装置。
  2. 請求項1記載のファイルサーバ装置において、
    前記ファイルサーバ装置が接続するクライアントで実行されるCMSアプリケーションのメニューページ上のファイル操作を選択するボタンのリンク先が、CMSアプリケーション本来の対応するページではなく、予め用意した別のページに設定され、前記ボタンの選択時、前記別のページに制御が移り、前記FS−CMS連携処理部の対応するファイル操作の処理が実行されるように設定されており、
    前記CMSアプリケーションのメニューページ上でファイル操作がなされた場合、前記FS−CMS連携処理部により、前記ファイルシステムへのファイル操作が行われ、
    さらに、前記FS−CMS連携処理部は、前記ファイルシステムに対して行った前記操作の内容を、前記CMSサーバ処理部に通知し、前記操作の内容を、前記CMSサーバ処理部で管理される前記データベースに反映させる制御を行う、ことを特徴とするファイルサーバ装置。
  3. 前記FS−CMS連携処理部は、前記CMSサーバ処理部のAPI(アプリケーションインタフェース)をコールすることで、前記ファイルシステムに為された前記操作の内容を、前記CMSサーバ処理部で管理される前記データベースに反映させる、ことを特徴とする請求項1又は2に記載のファイルサーバ装置。
  4. 前記データベースが、1行あたり、ファイル名と、分類コードと、ファイルの属性情報の列を少なくとも含み、
    前記分類コードとして、ファイルの親ディレクトリのパス名を含み、
    前記FS−CMS連携処理部は、前記ファイルシステムへの操作イベント発生時、前記操作の対象となるパス名とファイル名とを取得し、
    ファイルの親ディレクトリを分類コードとして、前記CMSサーバ処理部のCMSのコンテンツ操作用のAPIをコールする、ことを特徴とする請求項記載のファイルサーバ装置。
  5. 前記データベースが、1行あたり、ファイル名と、分類コードと、ファイルの属性情報の列を少なくとも含み、
    前記FS−CMS連携処理部は、ファイルの親ディレクトリのパス名と分類コードとを対応付ける変換テーブルを含み、
    前記FS−CMS連携処理部は、前記ファイルシステムへの操作イベント発生時、パス名とファイル名を取得し、親ディレクトリから前記変換テーブルを参照して分類コードを導き、
    前記CMSサーバ処理部のCMSのコンテンツ操作用のAPIをコールする、ことを特徴とする請求項記載のファイルサーバ装置。
  6. クライアントからのファイルシステムへのアクセスを制御するファイルアクセスサーバ処理部と、
    データベースにてコンテンツを管理するCMS(Contents Managemnt System)サーバ処理部と、
    前記クライアントからの前記ファイルシステムへの操作イベントが発生した時、前記CMSサーバ処理部に通知して、前記ファイルシステムへの操作内容を、前記データベースに反映させ、
    一方、前記CMSサーバ処理部が行う処理を、前記ファイルシステムに対する操作に変換して前記ファイルシステムに対して操作するFS−CMS連携処理部と、
    を備え、
    前記FS−CMS連携処理部は、前記クライアントからの、前記ファイルシステムへのアクセスを、モニタリングアプリケーションインタフェースを通じて認識し、
    前記クライアントからのアクセスにより、前記ファイルシステムに変更が加えられると、前記FS−CMS連携処理部は、前記変更内容を、前記CMSサーバ処理部に通知し、
    前記FS−CMS連携処理部から前記通知を受けた前記CMSサーバ処理部では、前記データベースに前記変更内容を反映させ、
    前記クライアントがCMSアプリケーションを用いてファイルに対する操作を行うと、前記FS−CMS連携処理部を経由して、前記ファイルシステムにアクセスし、前記CMSサーバ処理部では、前記データベースに、前記変更内容を反映させる、ことを特徴とするファイルサーバ装置。
  7. 前記CMSサーバ処理部で管理される属性を、前記ファイルシステムにおけるリンクに対応させる手段を備え、
    前記クライアントにおいて、前記ファイルアクセスサーバ処理部対応のプロトコルにしか対応していないアプリケーションからも、前記CMSサーバ処理部をアクセス可能としてなる、ことを特徴とする請求項記載のファイルサーバ装置。
  8. 検索ディレクトリ機能を備え、前記CMSサーバ処理部でのファイル検索を、前記クライアントにおいて前記ファイルアクセスサーバ処理部対応のプロトコルにしか対応していないアプリケーションからも利用可能としている、ことを特徴とする請求項記載のファイルサーバ装置。
  9. 前記FS−CMS連携処理部は、前記クライアントからの前記ファイルシステムの検索ディレクトリへのアクセスを、モニタリングアプリケーションインタフェースを通じて認識すると、前記検索ディレクトリ名の示す属性を備えているファイルを、前記CMSサーバ処理部に問い合わせ、
    前記CMSサーバ処理部は、前記FS−CMS連携処理部からの前記問い合わせを受けて、前記データベースを検索して、前記検索ディレクトリ名の示す属性を備えているファイルのリストを、前記FS−CMS連携処理部に返し、
    前記FS−CMS連携処理部は、前記ファイルのリストをもとに、前記ファイルシステムにリンクファイルを作成し、前記検索ディレクトリ名の示す属性をもつファイルが一覧となって見えるようにしてなる、ことを特徴とする請求項記載のファイルサーバ装置。
  10. 前記検索ディレクトリからファイルがデリート(DELETE)された場合に、前記ファイルのデリート(DELETE)イベントに応じて、前記ファイルの実体をデリートする手段を備えている、ことを特徴とする請求項又は記載のファイルサーバ装置。
  11. 前記FS−CMS連携処理部は、デリート(DELETE)イベントを契機として、ファイルの拡張属性とリンクを再設定する、ことを特徴とする請求項のいずれか一に記載のファイルサーバ装置。
  12. 前記FS−CMS連携処理部が、リネーム(RENAME)元のファイルと、リネーム(RENAME)先のファイルの情報を備えたリネーム(RENAME)テーブルと、
    デリート(DELETE)イベントを保存するデリート(DELETE)テーブルと、
    を備えている、ことを特徴とする請求項のいずれか一に記載のファイルサーバ装置。
  13. 前記FS−CMS連携処理部は、
    前記ファイルシステムのファイルが更新されるときには、更新対象のファイルに関連付けて、リネーム(RENAME)イベントを保存するリネーム(RENAME)テーブルと、デリート(DELETE)イベントを保存するデリート(DELETE)テーブルと、を作成し、
    前記DELETEイベントのファイルが、前記RENAMEテーブルのRENAME先ファイルとして存在するか否かをチェックし、
    前記DELETEイベントのファイルが前記RENAMEテーブルのRENAME先ファイルとして存在した場合、RENAME元ファイルと同名なファイルが前記ファイルシステム上に存在するか否かをチェックし、
    前記RENAME元ファイルと同名なファイルが前記ファイルシステム上に存在した場合には、アプリケーションの更新動作とみなし、拡張属性とリンクを再設定し、前記RENAMEテーブルと前記DELETEテーブルから、前記ファイルに関するエントリを削除する、ことを特徴とする請求項のいずれか一に記載のファイルサーバ装置。
  14. ファイルアクセスアプリケーションと、CMS(Contents Managemnt System)アプリケーションを含むクライアントと、
    前記クライアントと通信接続するファイルサーバ装置と、
    を備え、
    前記ファイルサーバ装置が、
    ファイルシステムと、
    前記クライアントからの前記ファイルシステムへのアクセスを制御するファイルアクセスサーバ処理部と、
    データベースにてコンテンツを管理するCMSサーバ処理部と、
    前記ファイルシステムと前記CMSサーバ処理部とを連携させる制御を行うFS−CMS連携処理部と、
    を備え、
    前記FS−CMS連携処理部は、
    前記クライアントのファイルアクセスアプリケーションからの前記ファイルシステムへのアクセスを、モニタリングアプリケーションインタフェースを通じて認識し、
    前記クライアントのファイルアクセスアプリケーションからの前記ファイルシステムへの操作イベントが発生した場合、前記ファイルシステムへの前記操作の内容を、前記CMSサーバ処理部で管理される前記データベースに反映させる制御を行い、
    前記クライアントのCMSアプリケーションによるファイル操作を、前記ファイルシステムに対する操作に変換し、前記ファイルシステムに対して操作を行うとともに、前記ファイルシステムへの前記操作の内容を、前記CMSサーバ処理部に通知し、前記CMSサーバ処理部で管理される前記データベースに反映させる制御を行う、ことを特徴とする、ファイルサーバを用いたコンテンツ管理システム。
  15. 前記FS−CMS連携処理部は、前記クライアントからの前記ファイルシステムの検索ディレクトリへのアクセスを、モニタリングアプリケーションインタフェースを通じて認識すると、前記検索ディレクトリ名の示す属性を備えているファイルを前記CMSサーバ処理部に問い合わせ、
    前記CMSサーバ処理部は、前記FS−CMS連携処理部からの前記問い合わせを受けて、前記データベースを検索して、前記検索ディレクトリ名の示す属性を備えているファイルのリストを、前記FS−CMS連携処理部に返し、
    前記FS−CMS連携処理部は、前記ファイルのリストをもとに、前記ファイルシステムにリンクファイルを作成し、前記検索ディレクトリ名の示す属性をもつファイルが一覧となって見えるようにしてなる、ことを特徴とする、請求項1記載のファイルサーバを用いたコンテンツ管理システム。
  16. クライアントからのファイルシステムへのアクセスを制御するファイルアクセスサーバ処理と、データベースにてコンテンツを管理するCMS(Contents Managemnt System)サーバ処理と、を連携させる方法であって、
    前記クライアントのファイルアクセスアプリケーションから、前記ファイルシステムへの操作が行われた場合、前記ファイルシステムへの前記操作の内容を、前記CMSサーバ処理に通知し、前記操作の内容を前記CMSサーバ処理で管理される前記データベースに反映させる制御を行い、
    前記CMSサーバ処理が行う処理を、前記ファイルシステムに対する操作に変換して前記ファイルシステムに対して操作し、
    前記クライアントがCMSアプリケーションをさらに含み、前記クライアントのCMSアプリケーションによるファイル操作に対して、前記ファイルシステムに対する操作に変換し、前記ファイルシステムに対して操作を行うとともに、前記操作の内容を、前記CMSサーバ処理で管理される前記データベースに反映させる制御を行う、ことを特徴とするファイルアクセスサーバ処理とCMSサーバ処理の連携方法。
  17. 前記CMSサーバ処理のCMSのコンテンツ操作用のAPI(アプリケーションインタフェース)を用いて、前記ファイルシステムに対する操作に対応するコンテンツ処理を実行する、ことを特徴とする請求項1記載のファイルアクセスサーバ処理とCMSサーバ処理の連携方法。
  18. クライアントからのファイルシステムへのアクセスを制御するファイルアクセスサーバ処理と、データベースにてコンテンツを管理するCMS(Contents Managemnt System)サーバ処理と、を実行するコンピュータに、
    前記クライアントのファイルアクセスアプリケーションからの前記ファイルシステムへの操作が行われた場合、前記ファイルシステムへの操作内容を、前記CMSサーバ処理で管理される前記データベースに反映させる制御を行い、前記CMSサーバ処理が行う処理を、前記ファイルシステムに対する操作に変換して前記ファイルシステムに対して操作する連携処理であって、前記クライアントのCMSアプリケーションによるファイル操作に対して、前記ファイルシステムに対する操作に変換し、前記ファイルシステムに対して操作を行うとともに、前記ファイルシステムに対する操作内容を、前記CMSサーバ処理で管理される前記データベースに反映させる制御を行う連携処理を実行させる、プログラム。
  19. 請求項18記載のプログラムにおいて、
    前記連携処理では、前記CMSサーバ処理のAPI(アプリケーションインタフェース)を用いて前記ファイルシステムに対する操作に対応するコンテンツ処理を実行する、プログラム。
JP2006211077A 2006-08-02 2006-08-02 ファイルサーバを用いたコンテンツ管理システムと方法およびプログラム Expired - Fee Related JP4952119B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006211077A JP4952119B2 (ja) 2006-08-02 2006-08-02 ファイルサーバを用いたコンテンツ管理システムと方法およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006211077A JP4952119B2 (ja) 2006-08-02 2006-08-02 ファイルサーバを用いたコンテンツ管理システムと方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2008040602A JP2008040602A (ja) 2008-02-21
JP4952119B2 true JP4952119B2 (ja) 2012-06-13

Family

ID=39175559

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006211077A Expired - Fee Related JP4952119B2 (ja) 2006-08-02 2006-08-02 ファイルサーバを用いたコンテンツ管理システムと方法およびプログラム

Country Status (1)

Country Link
JP (1) JP4952119B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8300056B2 (en) 2008-10-13 2012-10-30 Apple Inc. Seamless display migration
US8797334B2 (en) 2010-01-06 2014-08-05 Apple Inc. Facilitating efficient switching between graphics-processing units
US8368702B2 (en) * 2010-01-06 2013-02-05 Apple Inc. Policy-based switching between graphics-processing units
US8648868B2 (en) 2010-01-06 2014-02-11 Apple Inc. Color correction to facilitate switching between graphics-processing units

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07141237A (ja) * 1993-11-17 1995-06-02 Toshiba Corp データベースアクセス制御装置
JPH09114724A (ja) * 1995-10-16 1997-05-02 Hitachi Ltd リモートファイル操作方法
JP3992263B2 (ja) * 2000-03-30 2007-10-17 株式会社日立製作所 データベース−ファイル連携方法
JP3651768B2 (ja) * 2000-05-18 2005-05-25 富士通株式会社 文書ファイル検索システム
JP4343669B2 (ja) * 2003-12-12 2009-10-14 日本電信電話株式会社 ファイル管理装置,動的名前空間生成方法および動的名前空間生成プログラム

Also Published As

Publication number Publication date
JP2008040602A (ja) 2008-02-21

Similar Documents

Publication Publication Date Title
US11698885B2 (en) System and method for content synchronization
US11803516B2 (en) System and method for selective synchronization
JP7053847B2 (ja) コンテンツ管理システムにおけるメタデータ再同期
US10831614B2 (en) Visualizing restoration operation granularity for a database
US10909151B2 (en) Distribution of index settings in a machine data processing system
JP4313432B2 (ja) ファイルのコピーおよび更新
US9110909B2 (en) File level hierarchical storage management system, method, and apparatus
JP4847709B2 (ja) タイムラインベースのコンピューティング環境を使用してデータを回復するための方法、媒体、およびシステム
US9135257B2 (en) Technique for implementing seamless shortcuts in sharepoint
US7529778B1 (en) System and method for providing access to consistent point-in-time file versions
US8135677B2 (en) File management system and method
US7958101B1 (en) Methods and apparatus for mounting a file system
JP5697754B2 (ja) 計算機システム、ファイル管理方法及びメタデータサーバ
US20080109619A1 (en) Information provision system and information provision method
US20220121680A1 (en) Synchronizing an external location
JP4952119B2 (ja) ファイルサーバを用いたコンテンツ管理システムと方法およびプログラム
JP5076015B1 (ja) 情報処理装置、クライアント管理方法及びクライアント管理システム
US8095542B1 (en) Methods and apparatus for allowing access to content
JP2006031608A (ja) 計算機、ストレージシステム、計算機が行うファイル管理方法、およびプログラム
JP4253315B2 (ja) 知識情報収集システムおよび知識情報収集方法
JP3708894B2 (ja) 知識情報収集システムおよび知識情報収集方法
JP3725837B2 (ja) 知識情報収集システムおよび知識情報収集方法
JP2006092020A (ja) 文書管理装置および方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090717

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111104

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111122

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120123

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120214

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120227

R150 Certificate of patent or registration of utility model

Ref document number: 4952119

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150323

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees