【文献】
山田浩之,第3回 転置索引とは何か?,検索エンジンはいかにして動くのか?[online],2009年12月 8日,[2016年1月5日検索],URL,http://gihyo.jp/dev/serial/01/search-engine/0003
(58)【調査した分野】(Int.Cl.,DB名)
【背景技術】
【0002】
一般的に知られた全文検索装置では、大量のデータの中からユーザの求める情報を正確、且つ迅速に検索すると共に、検索した結果を提供することが求められている。
【0003】
このような要求に対して、全文検索装置における検索方法は、大別して走査型(grep型)と索引型(インデックス型)との2種類の方法がある。
【0004】
走査型(Grep型)は、文書の先頭から末尾までを読み込むことによって、一致する検索対象の文字列を探し出す方法である。また、索引型(インデックス型)は、あらかじめ検索対象となる文書を基に索引(インデックス)を作成し、そのインデックスを基に検索することによって、検索速度の向上を図る手法である。
【0005】
索引型(インデックス型)は、検索対象となる文書が増えた場合においても検索速度の低下を防ぐことが可能である。そのため、索引型(インデックス型)は、中規模から大規模の文書検索に適した手法である。一方で、索引型(インデックス型)は、索引(インデックス)の作成に多くの時間を必要とする。
【0006】
このような背景から、索引(インデックス)の作成および再作成に関する技術は、多岐にわたり存在する。
【0007】
特許文献1に記載されたアンロードプログラム、ロードプログラム及びデータ移行方法は、アンロードプログラムを実行することによって、移行前のシステムからオブジェクトのオブジェクト識別子とそのオブジェクトが有する属性値とからなるレコードが蓄積されたオブジェクトアンロードファイルを生成する。
【0008】
さらに、特許文献1は、移行前のシステムから全てのインデックスデータを読み出すと共に、読み出したインデックスデータを格納したインデックスアンロードファイルを生成する。
【0009】
特許文献1は、生成したオブジェクトアンロードファイルとインデックスアンロードファイルを移行後のシステムに送信する。
【0010】
次に、特許文献1は、ロードプログラムを実行することによって、移行前のシステムから送信されたオブジェクトアンロードファイルを読み出す。特許文献1は、読み出したレコードに対して、新たなオブジェクト識別子を付与する。
【0011】
特許文献1は、データ移行前のオブジェクト識別子と新たに付与したオブジェクト識別子とを対応させたインスタンス番号テーブルとクラス番号テーブルとを生成する。
【0012】
さらに、特許文献1は、クラス番号変換テーブルおよびインスタンス番号変換テーブルを参照し、レコード内にある属性リンクのインデックス情報(移行前のオブジェクト識別子)を、新たなオブジェクト識別子に変換する。
【0013】
このように、特許文献1は、アンロードプログラムおよびロードプログラムを実行することによって、移行後のシステムにおけるインデックステーブルを効率よく作成すると共に、移行したレコード内にある属性リンクのインデックス情報を効率よく移行する技術を開示する。
【0014】
特許文献2に記載された文書検索装置は、ユーザから文書データの修正要求を受け付けた場合、修正後の文書データを読み込む。さらに、特許文献2は、読み込んだ文書データからインデックスキー候補を取得する。特許文献2は、取得したインデックスキー候補が、すでに転置インデックスに登録されているか否かを判断する。
【0015】
特許文献2は、判断した結果、インデックスキー候補が転置インデックスに登録されていない場合に、新規インデックスキーとして転置インデックスに登録する。
【0016】
一方、特許文献2は、インデックスキー候補が転置インデックスに登録されている場合に、データ修正入力部から通知された修正処理手順に従って、転置インデックスに登録されているインデックスキーを消去または変更する。
【0017】
このように、特許文献2は、文書データを修正した際のインデックスの再作成時間を減少させる技術を開示する。
【0018】
特許文献3に記載された匿名データベースシステムは、ユーザによって入力されたバイオメトリクス情報と識別アイディー(identification;以降、「ID」と称する)生成ルール記憶部に記憶された識別ID生成ルールに基づいて、識別IDを生成する識別ID生成部を有する。
【0019】
さらに、特許文献3は、データベースシステムに登録する情報と生成した識別IDとをペアにしてデータベースシステムに登録する。これにより、特許文献3は、バイオメトリクス情報が入力され際に、当該バイオメトリクス情報に基づき識別ID生成部によって、生成した識別IDを用いてデータベースに登録された情報を検索すると共に、検索結果を表示する。
【0020】
さらに、特許文献3は、複数のデータベースシステム間において、登録したデータの保存先を変更する場合に、移行前のデータベースシステムからユーザの識別IDに対応したデータを抜き取る。
【0021】
さらに、特許文献3は、移行後の識別ID生成ルールを用いて、識別IDを生成する。特許文献3は、移行前から抜き取ったデータの識別IDを、移行後に生成した識別IDに変更する。さらに、特許文献3は、移行後のデータベースシステムに識別IDを変更したデータを登録する。
【0022】
このように、特許文献3は、本人固有の生物学的特徴であるバイオメトリクス情報に基づいて生成した識別IDを個人特定情報の代わりに用いることによって、個人特定情報が流れることなく、情報をやり取りする技術を開示する。
【発明の概要】
【発明が解決しようとする課題】
【0024】
ところで、文書管理装置の運用は、安定して動作させるために定期的なバージョンアップやハードウェアのリプレイスを行う必要がある。そのため、文書管理装置は、旧文書管理装置(以降、「移設元装置」と称する)で作成したデータベースを新文書管理装置(以降、「移設先装置」と称する)に移設する。即ち、文書管理装置においては、移設元装置で作成した索引(インデックス)を移設先装置で動作可能な索引(インデックス)を新たに作成する必要がある。
【0025】
より具体的に、例えば、文書管理装置は、データベースのバージョンやオペレーティングシステム(Operating System;以降、「OS」と称する)の種別等が異なる文書管理装置間において、リプレイスを行う場合、移設元装置で作成した転置インデックスを移設先装置に移設することができない。
【0026】
その理由は、データベースのバージョンやOSの種別等が異なるために、移設先装置におけるデータの保持方法が異なる場合や転置インデックスの作成方法が異なる場合、または何れも不明な場合等に対応するためである。
【0027】
このため、移設元装置は、データ単位を識別するためのデータキー(データID)を、移設するデータに含めることができない。ここで、一例として、データ単位とは、データとそのデータに関連する登録者、登録日、更新者、更新日などの属性値である。
【0028】
このため、一般的に知られた文書管理装置は、異なる文書管理装置間においてデータの移設を行う際に、移設元装置から移設したデータを移設先装置に登録した後に、転置インデックスを作成する必要がある。
【0029】
しかしながら、近年、文書管理装置の運用では、データを移設する際に、短時間で文書管理装置の運用を開始することが求められている。そのため、転置インデックスの作成は、データを移設後の新たな文書管理装置の運用を開始した後に行うことも少なくない。
【0030】
また、転置インデックスの作成では、転置インデックスを作成する際の文書管理装置への負荷も考慮して、夜間に作業する必要がある。このため、文書管理装置は、運用が開始した後も検索機能が使えないという事態が発生する。
【0031】
また、上述した特許文献1に記載された技術では、移行前のシステムにおいて、専用ツール(アンロードプログラム)を用いてデータベースのデータを出力し、出力したデータを移行後のシステムに送信すると共に、専用ツール(ロードプログラム)を用いてデータをロードする。
【0032】
このため、特許文献1は、移行後のシステムに対応した専用のプログラムが必要となる。さらに、オブジェクト指向データベース管理システム間でのデータ移行に関して記載されているに留まり、移行するシステムやデータベースの形態が異なる場合にどのようにデータを移設するのか具体的に開示していないので、移行するシステムやデータベースの形態が異なる場合に対処することができない。
【0033】
さらに、特許文献1は、アンロードプログラムおよびロードプログラムの実行をオブジェクト指向データベース管理システム上で実行するため、オブジェクト指向データベース管理システムへの負荷について考慮されておらず、依然としてオブジェクト指向データベース管理システムの運用が開始された後も検索機能が使えない問題を解決することが困難である。
【0034】
また、特許文献2は、文書データの修正要求を受けた場合に、転置インデックスに登録および削除を行うことが記載されているに留まり、データベース管理システム間のデータ移行に関して何ら言及されていない。
【0035】
また、特許文献3は、個人特定情報に識別IDを付与すると共に、識別IDに関連したデータを移行する場合について記載されているに留まり、データベースシステムに登録された全てのデータを移行することに関して何ら言及されていない。
【0036】
さらに、特許文献3は、データベースシステム毎に準備された識別ID生成ルールを用いて識別IDを生成する。特許文献3は、データベースシステム上で識別ID生成ルールを用いて識別IDを生成するため、データベースシステムへの負荷について考慮されておらず、依然としてデータベースシステムの運用が開始された後も検索機能が使えない問題を解決することが困難である。
【0037】
本発明の主たる目的は、上述した異なる装置間においてデータを移行する際に、移行先の装置において、直ちに検索することが可能なデータ移行管理装置等を提供することにある。
【課題を解決するための手段】
【0038】
上記の課題を達成すべく、本発明に係るデータ移行管理装置は、以下の構成を備えることを特徴とする。
【0039】
即ち、本発明に係るデータ移行管理装置は、
外部装置に移行対象のデータである移行データを移行する際に、前記外部装置の装置情報に基づいて装置IDを生成し、前記移行データから実体と該実体の属性情報とを取得し、前記実体に含まれ、且つ検索対象となる本文情報を抽出し、前記装置IDと前記属性情報とに基づいて、前記実体を特定可能な文書IDを文書ID発行ルールに従って生成し、前記文書IDと前記本文情報と前記属性情報とに基づいて、前記本文情報の検索に際して参照する転置インデックスを生成すると共に、前記文書IDに基づいて、前記転置インデックスを逆向きに検索する際に参照する逆インデックスを生成することを特徴とする。
【0040】
また、同目的を達成すべく、本発明に係るデータ移行管理方法は、以下の構成を備えることを特徴とする。
【0041】
即ち、本発明に係るデータ移行管理方法は、
外部装置に移行対象のデータである移行データを移行する際に、前記外部装置の装置情報に基づいて装置IDを生成し、前記移行データから実体と該実体の属性情報とを取得し、前記実体に含まれ、且つ検索対象となる本文情報を抽出し、前記装置IDと前記属性情報とに基づいて、前記実体を特定可能な文書IDを文書ID発行ルールに従って生成し、前記文書IDと前記本文情報と前記属性情報とに基づいて、前記本文情報の検索に際して参照する転置インデックスを生成すると共に、前記文書IDに基づいて、前記転置インデックスを逆向きに検索する際に参照する逆インデックスを生成することを特徴とする。
【0042】
尚、同目的は、上記の各構成を有するデータ移行管理装置およびデータ移行管理方法を、コンピュータによって実現するコンピュータ・プログラム、およびそのコンピュータ・プログラムが格納されている、読み取り可能な記憶媒体によっても達成される。
【発明の効果】
【0043】
本発明によれば、異なる装置間においてデータを移行する際に、移行先の装置において、直ちに検索することが可能なデータ移行管理装置等を提供することができる。
【発明を実施するための形態】
【0045】
次に、本発明を模範的に実施する形態について図面を参照して詳細に説明する。尚、以下に説明する実施形態は、特許請求の範囲に係る発明を限定することはなく、また実施形態の中で説明されている構成の組み合わせの全てが発明の解決機能に必須であるとは限らない。
【0046】
<第1の実施形態>
まず、本発明の第1の実施形態におけるデータ移行管理装置1について、
図1を参照して説明する。
【0047】
図1は、本発明の第1の実施形態におけるデータ移行管理装置1の構成を示すブロック図である。
【0048】
図1において、データ移行管理装置1は、生成部2、文書ID発行ルール102を有する。
【0049】
ここで、本発明の第1の実施形態に係るより具体的なデータ移行管理装置1の動作について説明する。
【0050】
ここで、一例として、本実施形態では、外部装置101に移行対象のデータである移行データ100を移行する場合の動作について、詳細に説明する。尚、説明の便宜上、一例として、データ移行管理装置1は、外部装置101とは、異なる検索システム(転置インデックス210と逆インデックス202と不図示の検索エンジン)が搭載されたサーバ(
図1には不図示)上で動作することとする。尚、このサーバを実現可能なハードウェア環境については、
図11を参照して後述する。
【0051】
尚、例えば、外部装置101は、データ管理装置や文書管理装置、全文検索装置等とする。但し、本発明は、これらに限定されない(以下の実施形態においても同様)。
【0052】
尚、説明の便宜上、上述した構成を例に説明するが、これに限定されない。
【0053】
生成部2は、外部装置101を一意に特定するための装置IDを生成する(装置IDおよび生成方法については、第2の実施形態において後述する)。
【0054】
また、生成部2は、文書IDを生成するための文書ID発行ルール102を取得する(文書ID発行ルール102については、第2の実施形態において後述する)。
【0055】
尚、
図1において、文書ID発行ルール102は、外部装置101から取得していないが、これに限らず、文書ID発行ルール102は、外部装置101から取得もよい(以下の実施形態においても同様)。
【0056】
外部装置101は、移行データ100を文書情報として登録する(移行データ100については、第2の実施形態において後述する)。
【0057】
生成部2は、移行データ100から実体とその実体の属性情報を取得する。
【0058】
より具体的に、生成部2は、移行データ100に格納されたレコードを先頭から順番に読み込む。さらに、生成部2は、読み込んだ移行データ100に格納されたレコードを文書ファイルの実体とその実体の属性情報とに分離する。
【0059】
生成部2は、分離した文書ファイルの実体から文書ファイルの本文情報をテキスト形式で抽出する。生成部2は、一例として、マイクロソフト社が提供するエクセル(登録商標)やパワーポイント(登録商標)やジャストシステム社が提供する一太郎(登録商標)等の各種文書ファイルからテキストデータを特定すると共に、特定したテキストデータをテキスト形式で抽出する。尚、文書ファイルの実体から文書ファイルの本文情報をテキスト形式で抽出する手法については、一般的に知られている技術を採用することができるので本実施形態における詳細な説明は省略する(以下の実施形態においても同様)。
【0060】
次に、生成部2は、文書ファイルの属性情報と装置IDとを基に文書ID発行ルール102に従って、文書IDを生成する。
【0061】
生成部2は、テキスト形式で抽出した文書ファイルの本文情報と属性情報と文書IDとに基づいて、転置インデックス201を生成する。さらに、生成部2は、逆インデックス202を生成する(転置インデックス201および逆インデックス202については、第2の実施形態において後述する)。
【0062】
データ移行管理装置1は、移行データ100に格納された全てのレコードに対して、上述した処理を繰り返し実行する。より具体的に、生成部2は、移行データ100に格納された全てのレコードが読み込まれたか否かを判別する。
【0063】
生成部2は、判別した結果、全てのレコードが読み込まれたと判別した場合、移行データ100に格納されたレコードの読み込みを終了する。
【0064】
一方で、生成部2は、全てのレコードが読み込まれていない(未読み込みのレコードが存在する)と判別した場合、移行データ100に格納されたレコードの読み込みを再実行する。
【0065】
尚、生成部2は、文書ID発行ルール102を外部から取得すると共に、取得した文書ID発行ルール102に従って、文書IDを生成したが、これに限らず、生成部2は、転置インデックスを生成する定義(ルール)を外部から取得するようにしてもよい。これにより、生成部2は、取得した転置インデックスを生成する定義(ルール)に従って、転置インデックスを生成することが可能である。
【0066】
尚、転置インデックスについては、現在では一般的に知られている方式を採用することができるので本実施形態における詳細な説明は省略する(以下の実施形態においても同様)。
【0067】
また、転置インデックスを生成する手法については、一般的に知られている技術を採用することができるので本実施形態における詳細な説明は省略する(以下の実施形態においても同様)。
【0068】
尚、説明の便宜上、一例として、データ移行管理装置1は、検索システム(転置インデックス210と逆インデックス202と不図示の検索エンジン)が搭載されたサーバに設けたが、これに限らず、データ移行管理装置1aは、検索システムと異なるサーバに設けてもよい。
【0069】
尚、説明の便宜上、一例として、本発明の実施形態は、外部装置101に移行データ100を移行する場合について説明するが、これに限らず、本発明の実施形態は、データ管理装置や全文検索装置、データマイニング等に移行データ100を移行してもよい。但し、本発明は、これら情報に限定されない(以下の実施形態においても同様)。
【0070】
このように本実施の形態に係るデータ移行管理装置1によれば、異なる装置間においてデータを移行する際に、移行先の装置において、直ちに検索することができる。その理由は、本実施形態によれば、データの移行先である外部から取得した文書ID発行ルール102に従って、文書IDを生成することができるからである。さらに、データ移行管理装置1は、データの移行先である外部装置101とは、異なるシステム(サーバ)上にデータ移行管理装置1を搭載することによって、外部装置101にデータを移行する前や移行に際して略並行して転置インデックスおよび逆インデックスを作成することができるからである。また、データ移行管理装置1は、転置インデックスおよび逆インデックスの生成を外部装置101と異なるシステム(サーバ)上で行うため、外部装置101に負荷を掛けることなく生成することができる。
【0071】
<第2の実施形態>
次に、上述した本発明の第1の実施形態に係るデータ移行管理装置1を基本とする第2の実施形態について説明する。以下の説明においては、本実施形態に係る特徴的な部分を中心に説明する。その際、上述した各実施形態と同様な構成については、同一の参照番号を付すことにより、重複する説明は省略する。
【0072】
本発明の第2の実施形態におけるデータ移行管理装置1aについて、
図2乃至
図8を参照して説明する。
【0073】
図2は、本発明の第2の実施形態におけるデータ移行管理装置1aの構成を示すブロック図である。
【0074】
図2において、データ移行管理装置1aは、抽出部3、発行部4、インデックス生成部5、文書ID発行ルール102を有する。
【0075】
抽出部3は、受信した移行データ100から実体とその実体の属性情報を取得する。
【0076】
より具体的に、抽出部3は、移行データ100(移行対象のデータ)に格納されたレコードを先頭から順番に読み込む。さらに、抽出部3は、読み込んだ移行データ100に格納されたレコードを文書ファイルの実体と属性情報とに分離する。
【0077】
図3は、本発明の第2の実施形態における移行データ100を例示する図である。
【0078】
図3において、一例として、移行データ100は、1行目に項目名を示す。さらに、移行データ100は、2行目以降に文書ファイルの実体と当該文書ファイルの実体に関する属性情報(文書配置位置情報、登録日、最終更新日、登録者、最終更新日等の情報)をテキスト形式で関連付けられた(紐付けられた)レコードを示す。
【0079】
さらに、移行データ100は、1列目に文書ファイルの実体を示す。移行データ100は、2列目に当該文書ファイルの実体に関する属性情報(文書配置位置情報、登録日、最終更新日、登録者、最終更新日等の情報)を示す。但し、本発明は、これら情報に限定されない(以下の実施形態においても同様)。
【0080】
また、抽出部3は、分離した属性情報を発行部4とインデックス生成部5とに送信する。
【0081】
次に、抽出部3は、分離した文書ファイルの実体から文書ファイルの本文情報をテキスト形式で抽出する(抜き出す)。さらに、抽出部3は、テキスト形式で抽出した文書ファイルの本文情報をインデックス生成部5に送信する。
【0082】
発行部4は、文書管理装置200を一意に特定するための装置IDを文書管理装置200の装置情報を基に生成する。さらに、発行部4は、転置インデックスの作成が完了するまで、装置IDを保持する(転置インデックスについては、本実施形態において後述する)。
【0083】
図4は、本発明の第2の実施形態における装置IDの構成を例示する図である。
【0084】
より具体的に、装置IDは、文書管理装置200におけるサーバをインストールした日時(yyyymmddhhmmss)とそのサーバのホスト名とそのサーバが搭載するネットワークカード等に付与されたマックアドレス(Media Access Controlアドレス;以降「MACアドレス」と称する)とに基づいて生成する。
【0085】
図4において、
図4に示すフィールドAは、サーバをインストールした日時(yyyymmddhhmmss)を示す。
図4に示すフィールドBは、サーバのホスト名を示す。
図4に示すフィールドCは、サーバが搭載するネットワークカード等に付与されたMACアドレスを示す。
【0086】
尚、装置IDは、サーバをインストールした日時とホスト名とMACアドレスとに基づいて生成したが、これに限らず、装置IDは、サーバをインストールした日時とホスト名と装置名と装置の製造号機とに基づいて生成してもよい。このように、装置IDは、文書管理装置200を一意に特定することができる情報によって、生成すればよい。
【0087】
このように、装置IDは、文書管理装置200を構成する装置情報を基に生成するため、サーバ上に複数の文書管理装置を搭載する場合において、装置IDを基に文書管理装置200を特定することが可能となる。
【0088】
また、発行部4は、文書IDを生成するための文書ID発行ルール102を文書管理装置200から取得する(文書IDについては、本実施形態において後述する)。
【0089】
次に、発行部4は、抽出部3から受信(取得)した文書ファイルの属性情報と生成した装置IDとを基に文書ID発行ルール102に従って、文書IDを生成する。
【0090】
さらに、発行部4は、生成した文書IDをインデックス生成部5に送信する。
【0091】
ここで、一例として、文書ID発行ルール102は、文書IDを生成するための方法を定義したものである。
【0092】
図5は、本発明の第2の実施形態における文書ID発行ルール102を例示する説明図である。
【0093】
より具体的に、一例として、文書ID発行ルール102は、ハッシュ関数計算器によって算出したハッシュ値と文書の種別IDに基づいて、文書IDを生成する場合について説明する。
【0094】
図5において、抽出部3によって分離した文書ファイルの属性情報と発行部4によって生成した装置IDとに基づいて、ハッシュ関数計算器によって、ハッシュ値を生成する。
【0095】
さらに、文書ID発行ルール102は、生成したハッシュ値と文書ファイルの種別を2桁の数値で示した文書の種別ID(11:フォルダ、12:ファイル、13:ショートカット)とに基づき所定の演算によって、文書IDを生成する。
【0096】
尚、本実施形態では、説明の便宜上、数値を例に説明したが、これに限定されない。
【0097】
図6は、本発明の第2の実施形態における文書IDの構成を例示する図である。
図6において、
図6に示すフィールドAは、文書の種別IDを示す。
図6に示すフィールドBは、ハッシュ関数計算器によって、求められたハッシュ値を示す。
【0098】
尚、文書ID発行ルール102は、ハッシュ関数によって文書IDを生成する方法を定義したが、これに限定されない。さらに、文書IDを発行する手法については、一般的に知られている技術を採用することができるので本実施形態における詳細な説明は省略する(以下の実施形態においても同様)。
【0099】
インデックス生成部5は、抽出部3から送信されたテキスト形式で抽出した文書ファイルの本文情報と属性情報とを受信する。
【0100】
さらに、インデックス生成部5は、発行部4から送信された文書IDを受信する。
【0101】
インデックス生成部5は、テキスト形式で抽出した文書ファイルの本文情報と属性情報と文書IDとに基づいて、転置インデックス201を生成する。また、インデックス生成部5は、生成した転置インデックス201を再度転置した逆インデックス202を生成する。
【0102】
逆インデックス202は、文書IDから転置インデックスを逆向きに辿るためのポインタデータである。
【0103】
図7は、本発明の第2の実施形態における転置インデックス201を例示する図である。
【0104】
より具体的に、
図7において、一例として、転置インデックス201は、1行目に項目名を示す。さらに、転置インデックス201は、2行目以降に不図示の検索エンジンによって全文検索を行う際に、検索の対象となる文書ファイルに含まれる単語(キー)情報とその単語(キー)情報を識別するためのキーIDと単語(キー)情報が含まれる文書IDとを関連付けられた(紐付けられた)レコードを示す。
【0105】
さらに、転置インデックス201は、1列目にキーIDを示す。転置インデックス201は、2列目にキー情報を示す。転置インデックス201は、3列目に文書IDを示す。但し、本発明は、これら情報に限定されない(以下の実施形態においても同様)。
【0106】
尚、検索エンジンについては、現在では一般的に知られている方式を採用することができるので本実施形態における詳細な説明は省略する(以下の実施形態においても同様)。
【0107】
図8は、本発明の第2の実施形態における逆インデックス202を例示する図である。
【0108】
図8において、一例として、逆インデックス202は、1行目に項目名を示す。さらに、逆インデックス202は、2行目以降に転置インデックスを構成する文書IDとキーIDとを関連付けられた(紐付けられた)レコードを示す。
【0109】
さらに、逆インデックス202は、1列目に文書IDを示す。逆インデックス202は、2列目にキーIDを示す。但し、本発明は、これら情報に限定されない(以下の実施形態においても同様)。
【0110】
逆インデックス202は、転置インデックス201を再転置することによって生成する。
【0111】
以下の説明において、説明の便宜上、移行前の文書管理装置を旧文書管理装置と称する。また、移行後(旧文書管理装置と異なる)文書管理装置を文書管理装置200と称する。ここで、旧文書管理装置と異なる文書管理装置とは、例えば、文書管理装置を構成するハードウェアが異なる場合やOSの種別が異なる場合、データベースのバージョンが異なる場合等とする。(以下の実施形態においても同様)。
【0112】
次に、本発明の第2の実施形態に係るより具体的なデータ移行管理装置1aの動作について説明する。
【0113】
ここでは、一例として、旧文書管理装置を文書管理装置200に装置をリプレイスする際に、旧文書管理装置から文書管理装置200にデータを移行する場合の動作について、詳細に説明する。尚、説明の便宜上、一例として、データ移行管理装置1aは、文書管理装置200および旧文書管理装置とは、異なる検索システム(転置インデックス210と逆インデックス202と不図示の検索エンジン)が搭載されたサーバ上で動作することとする。
【0114】
尚、説明の便宜上、上述した構成を例に説明するが、これに限定されない(以下の実施形態においても同様)。
【0115】
発行部4は、文書管理装置200を一意に特定するための装置IDを生成する。
【0116】
また、発行部4は、文書IDを生成するための文書ID発行ルール102を文書管理装置200から取得する。
【0117】
不図示の旧文書管理装置は、旧文書管理装置に登録されている文書情報を移行データ100として、文書管理装置200と抽出部3とに送信する。
【0118】
文書管理装置200は、受信した移行データ100を文書情報として登録する。
【0119】
抽出部3は、受信した移行データ100から実体とその実体の属性情報を取得する。
【0120】
より具体的に、抽出部3は、受信した移行データ100に格納されたレコードを先頭から順番に読み込む。さらに、抽出部3は、読み込んだ移行データ100に格納されたレコードを文書ファイルの実体と属性情報とに分離する。
【0121】
また、抽出部3は、分離した属性情報を発行部4とインデックス生成部5とに送信する。
【0122】
抽出部3は、分離した文書ファイルの実体から文書ファイルの本文情報をテキスト形式で抽出する。さらに、抽出部3は、テキスト形式で抽出した文書ファイルの本文情報をインデックス生成部5に送信する。
【0123】
次に、発行部4は、抽出部3から受信(取得)した文書ファイルの属性情報と装置IDとを基に文書ID発行ルール102に従って、文書IDを生成する。
【0124】
さらに、発行部4は、生成した文書IDをインデックス生成部5に送信する。
【0125】
インデックス生成部5は、抽出部3から送信されたテキスト形式で抽出した文書ファイルの本文情報と属性情報とを受信する。
【0126】
さらに、インデックス生成部5は、発行部4から送信された文書IDを受信する。
【0127】
インデックス生成部5は、テキスト形式で抽出した文書ファイルの本文情報と属性情報と文書IDとに基づいて、転置インデックス201を生成する。さらに、インデックス生成部5は、逆インデックス202を生成する。
【0128】
データ移行管理装置1aは、移行データ100に格納された全てのレコードに対して、上述した処理を繰り返し実行する。より具体的に、抽出部3は、移行データ100に格納された全てのレコードが読み込まれたか否かを判別する。
【0129】
抽出部3は、判別した結果、全てのレコードが読み込まれたと判別した場合、移行データ100に格納されたレコードの読み込みを終了する。
【0130】
一方で、抽出部3は、全てのレコードが読み込まれていない(未読み込みのレコードが存在する)と判別した場合、移行データ100に格納されたレコードの読み込みを再実行する。
【0131】
このように本実施の形態に係るデータ移行管理装置1aによれば、第1の実施形態において説明した効果を享受できると共に、さらに、効率よく文書IDと転置インデックスを生成することができる。その理由は、データ移行管理装置1aは、抽出部3、発行部4、インデックス生成部5を設けることで、生成部2に集中する処理を分散することができるからである。
【0132】
<第3の実施形態>
次に、上述した本発明の第2の実施形態に係るデータ移行管理装置1aを基本とする第3の実施形態について説明する。以下の説明においては、本実施形態に係る特徴的な部分を中心に説明する。その際、上述した各実施形態と同様な構成については、同一の参照番号を付すことにより、重複する説明は省略する。
【0133】
図9は、本発明の第3の実施形態におけるデータ移行管理装置1bの構成を示すブロック図である。
【0134】
また、
図10は、本発明の第3の実施形態におけるデータ移行管理装置1bが行う動作を示すフローチャートである。係るフローチャートに沿ってデータ移行管理装置1bの動作手順を説明する。
【0135】
図9において、データ移行管理装置1bは、読取部10、テキスト抽出部11、第1の発行部12、第2の発行部13、インデックス生成部5、文書ID発行ルール102を有する。
【0136】
尚、読取部10、テキスト抽出部11は、上述した第2の実施形態における抽出部3に相当する。また、第1の発行部12、第2の発行部13は、上述した第2の実施形態における発行部4に相当する。
【0137】
次に、本発明の第3の実施形態に係るより具体的なデータ移行管理装置1bの動作について説明する。
【0138】
ここでは、一例として、旧文書管理装置から文書管理装置200に装置をリプレイスする際に、データを移行する場合の動作について、詳細に説明する。
【0139】
ステップS1:
第1の発行部12は、文書管理装置200を一意に特定するための装置IDを生成する。
【0140】
ステップS2:
また、第1の発行部12は、文書IDを生成するための文書ID発行ルール102を文書管理装置200から取得する。
【0141】
不図示の旧文書管理装置は、旧文書管理装置に登録されている文書情報を移行データ100(移行対象のデータ)として、文書管理装置200と読取部10とに送信する。
【0142】
文書管理装置200は、受信した移行データ100を文書情報として登録する。
【0143】
ステップS3:
読取部10は、受信した移行データ100に格納されたレコードを先頭から順番に読み込む。
【0144】
ステップS4:
さらに、読取部10は、読み込んだ移行データ100を文書ファイルの実体と属性情報とに分離する。
【0145】
また、読取部10は、分離した属性情報を第2の発行部13とインデックス生成部5とに送信する。
【0146】
さらに、読取部10は、分離した文書ファイルの実体をテキスト抽出部11に送信する。
【0147】
ステップS5:
テキスト抽出部11は、読取部10から受信した文書ファイルの実体から文書ファイルの本文情報をテキスト形式で抽出する。さらに、テキスト抽出部11は、テキスト形式で抽出した文書ファイルの本文情報をインデックス生成部5に送信する。
【0148】
ステップS6:
次に、第2の発行部13は、テキスト抽出部11から受信(取得)した文書ファイルの属性情報と装置IDとを基に文書ID発行ルール102に従って、文書IDを生成する。
【0149】
さらに、第2の発行部13は、生成した文書IDをインデックス生成部5に送信する。
【0150】
インデックス生成部5は、読取部10から送信された属性情報を受信する。
【0151】
さらに、インデックス生成部5は、テキスト抽出部11から送信されたテキスト形式で抽出した文書ファイルの本文情報を受信する。
【0152】
また、インデックス生成部5は、第2の発行部13から送信された文書IDを受信する。
【0153】
ステップS7:
インデックス生成部5は、テキスト形式で抽出した文書ファイルの本文情報と属性情報と文書IDとに基づいて、転置インデックス201を生成する。さらに、インデックス生成部5は、逆インデックス202を生成する。
【0154】
ステップS8:
データ移行管理装置1bは、移行データ100に格納された全てのレコードに対して、上述した処理を繰り返し実行する。より具体的に、読取部10は、移行データ100に格納された全てのレコードが読み込まれたか否かを判別する。
【0155】
ステップS8における「NO」:
読取部10は、判別した結果、全てのレコードが読み込まれたと判別した場合、移行データ100に格納されたレコードの読み込みを終了する。
【0156】
ステップS8における「YES」:
一方で、読取部10は、全てのレコードが読み込まれていない(未読み込みのレコードが存在する)と判別した場合、ステップS3に戻り移行データ100に格納されたレコードの読み込みを再実行する。
【0157】
このように本実施の形態に係るデータ移行管理装置1bによれば、各実施形態において説明した効果を享受できると共に、さらに、効率よく文書IDと転置インデックスを生成することができる。その理由は、データ移行管理装置1bは、読取部10、テキスト抽出部11、第1の発行部12、第2の発行部13を設けることで、抽出部3および発行部4に集中する処理を分散することができるからである。
【0158】
(ハードウェア構成例)
上述した実施形態において図面に示した各部は、ソフトウェアプログラムの機能単位(ソフトウェアモジュール)と捉えることができる。この場合のハードウェア環境の一例を、
図11を参照して説明する。
【0159】
図11は、本発明の模範的な実施形態に係るデータ移行管理装置を実行可能な情報処理装置300(コンピュータ)の構成を例示的に説明する図である。即ち、
図11は、
図1に示したデータ移行管理装置1、或いは、
図2に示したデータ移行管理装置1a、
図9に示したデータ移行管理装置1bの全体または一部のデータ移行管理装置を実現可能なサーバ等のコンピュータ(情報処理装置)の構成であって、上述した実施形態における各機能を実現可能なハードウェア環境を表す。
【0160】
図11に示した情報処理装置300は、CPU(Central Processing Unit)301、ROM(Read Only Memory)302、RAM(Random Access Memory)303、ハードディスク(記憶装置)304、並びに外部装置との通信インタフェース(Interfac;以降、「I/F」と称する)305を備え、これらの構成がバス(通信線)306を介して接続された一般的なコンピュータである。
【0161】
そして、上述した実施形態を例に説明した本発明は、
図11に示した情報処理装置300に対して、その説明において参照したブロック構成図(
図1、
図2、
図9)或いはフローチャート(
図10)の機能を実現可能なコンピュータ・プログラムを供給した後、そのコンピュータ・プログラムを、当該ハードウェアのCPU301に読み出して実行することによって達成される。また、当該装置内に供給されたコンピュータ・プログラムは、読み書き可能な一時記憶メモリ(RAM303)またはハードディスク304等の不揮発性の記憶デバイスに格納すれば良い。
【0162】
また、前記の場合において、当該ハードウェア内へのコンピュータ・プログラムの供給方法は、CD−ROM等の各種記録媒体を介して当該装置内にインストールする方法や、インターネット等の通信回線を介して外部よりダウンロードする方法等のように、現在では一般的な手順を採用することができる。そして、このような場合において、本発明は、係るコンピュータ・プログラムを構成するコード或いは、そのコードが格納された記憶媒体によって構成されると捉えることができる。