(57)【特許請求の範囲】
【請求項１】
処理対象データを記憶する補助記憶装置と、この補助記憶装置から読み出された前記処理対象データを記憶保持するメモリ装置を装備するサーバ装置と、を備え、
前記サーバ装置は、前記補助記憶装置に記憶されている前記処理対象データの一部を前記メモリ装置に読み出すデータ読み出し手段と、前記メモリ装置上で前記処理対象データに対する処理を行うインメモリデータ管理手段と、前記メモリ装置に記憶保持されている前記処理対象データを前記補助記憶装置に戻して記憶するデータ格納手段と、を備えると共に、
前記補助記憶装置は、前記メモリ装置上の前記処理対象データを前記補助記憶装置に戻して記憶する前における前記処理対象データの格納場所を表す格納場所情報を、当該処理対象データと関連付けて記憶しており、
前記サーバ装置の前記データ読み出し手段は、前記格納場所情報に基づいて、前記処理対象データの格納場所が前記メモリ装置である前記処理対象データを特定して、当該特定した処理対象データを前記補助記憶装置から前記メモリ装置に読み出し、
さらに、前記補助記憶装置は、前記処理対象データ自体と、当該処理対象データを識別する識別情報と、を関連付けて記憶すると共に、前記処理対象データを識別する識別情報と、当該処理対象データの前記格納場所情報と、を関連付けた格納場所管理テーブルを記憶しており、
前記サーバ装置の前記データ読み出し手段は、前記格納場所管理テーブルに基づいて、前記格納場所が前記メモリ装置である前記処理対象データの識別情報を特定して、当該識別情報に対応する前記処理対象データを前記補助記憶装置から前記メモリ装置に読み出す、
情報処理システム。
【請求項２】
請求項１に記載の情報処理システムであって、
前記サーバ装置を複数備えると共に、
前記補助記憶装置は、前記処理対象データの識別情報と、当該処理対象データのマスタデータが記憶されている前記メモリ装置が装備された前記サーバ装置を特定する情報と、を関連付けて記憶しており、
前記サーバ装置の前記データ読み出し手段は、前記格納場所管理テーブルに基づいて、前記格納場所が前記メモリ装置である前記処理対象データの識別情報に対応する前記処理対象データのマスタデータが記憶される前記サーバ装置を特定し、当該サーバ装置が装備する前記メモリ装置に前記処理対象データを格納すると共に、当該処理対象データの複製となるスレーブデータを他の前記サーバ装置が装備する前記メモリ装置にコピーする、
情報処理システム。
【請求項３】
請求項１又は２に記載の情報処理システムであって、
前記サーバ装置の前記インメモリデータ管理手段は、前記データ読み出し手段にて前記補助記憶装置から前記メモリ装置に前記処理対象データの読み出しが完了するまでに受け付けた前記処理対象データに対する処理要求を保持し、当該処理対象データの前記メモリ装置への読み出しが完了した後に前記保持している処理要求に対する処理を前記メモリ装置上で実行する、
情報処理システム。
【請求項４】
請求項３に記載の情報処理システムであって、
前記サーバ装置の前記インメモリデータ管理手段は、前記データ読み出し手段にて前記補助記憶装置から前記メモリ装置に前記処理対象データの読み出しが完了するまでに受け付けた前記処理対象データに対する処理要求のうち、前記補助記憶装置に記憶された前記格納場所情報に基づいて、格納場所が前記メモリ装置である前記処理対象データに対する処理要求を、当該処理対象データの前記メモリ装置への読み出しが完了した後に前記メモリ装置上で処理し、格納場所が前記補助記憶装置である前記処理対象データに対する処理要求を前記補助記憶装置上で処理する、
情報処理システム。
【請求項５】
請求項１乃至４のいずれかに記載の情報処理システムであって、
前記サーバ装置の前記インメモリデータ管理手段は、前記データ格納手段にて前記メモリ装置に保持されていた前記処理対象データを前記補助記憶装置に戻して記憶する処理が完了するまでに受け付けた前記処理対象データに対する処理要求を保持し、当該処理対象データの前記補助記憶装置への格納が完了した後に当該補助記憶装置上で前記処理対象データに対する前記処理要求を処理する、
情報処理システム。
【請求項６】
請求項５に記載の情報処理システムであって、
前記サーバ装置の前記インメモリデータ管理手段は、前記データ格納手段にて前記メモリ装置に記憶保持されている前記処理対象データの前記補助記憶装置への格納が完了するまでに受け付けた前記処理対象データに対する処理要求のうち、更新順序を保つ必要のある処理要求は保持して、前記処理対象データの前記補助記憶装置への格納が完了した後に当該補助記憶装置上で前記処理要求を処理し、更新順序を保つ必要のない処理要求は、前記処理対象データの前記補助記憶装置への格納が完了する前であっても当該補助記憶装置上で処理する、
情報処理システム。
【請求項７】
請求項６に記載の情報処理システムであって、
前記サーバ装置の前記インメモリデータ管理手段は、前記データ格納手段にて前記メモリ装置に記憶保持されている前記処理対象データの前記補助記憶装置への格納が完了するまでに受け付けた前記処理対象データに対する処理要求の処理順序を記憶し、同一の前記処理対象データに対する処理要求のうち、処理順序が早い未処理の処理要求に対して処理順序が遅い処理要求が前記補助記憶装置に対して既に処理されている場合には、前記処理順序が早い処理要求の処理を実行しない、
情報処理システム。
【請求項８】
処理対象データを記憶する補助記憶装置と、この補助記憶装置から読み出された前記処理対象データを記憶保持するメモリ装置を装備するサーバ装置と、を備え、
前記サーバ装置は、前記補助記憶装置に記憶されている前記処理対象データの一部を前記メモリ装置に読み出すデータ読み出し手段と、前記メモリ装置上で前記処理対象データに対する処理を行うインメモリデータ管理手段と、前記メモリ装置に記憶保持されている前記処理対象データを前記補助記憶装置に戻して記憶するデータ格納手段と、を備えると共に、
前記補助記憶装置は、前記メモリ装置上の前記処理対象データを前記補助記憶装置に戻して記憶する前における前記処理対象データの格納場所を表す格納場所情報を、当該処理対象データと関連付けて記憶しており、
前記サーバ装置の前記データ読み出し手段は、前記格納場所情報に基づいて、前記処理対象データの格納場所が前記メモリ装置である前記処理対象データを特定して、当該特定した処理対象データを前記補助記憶装置から前記メモリ装置に読み出し、
前記サーバ装置の前記インメモリデータ管理手段は、前記データ読み出し手段にて前記補助記憶装置から前記メモリ装置に前記処理対象データの読み出しが完了するまでに受け付けた前記処理対象データに対する処理要求を保持し、当該処理対象データの前記メモリ装置への読み出しが完了した後に前記保持している処理要求に対する処理を前記メモリ装置上で実行し、
さらに、前記サーバ装置の前記インメモリデータ管理手段は、前記データ読み出し手段にて前記補助記憶装置から前記メモリ装置に前記処理対象データの読み出しが完了するまでに受け付けた前記処理対象データに対する処理要求のうち、前記補助記憶装置に記憶された前記格納場所情報に基づいて、格納場所が前記メモリ装置である前記処理対象データに対する処理要求を、当該処理対象データの前記メモリ装置への読み出しが完了した後に前記メモリ装置上で処理し、格納場所が前記補助記憶装置である前記処理対象データに対する処理要求を前記補助記憶装置上で処理する、
情報処理システム。
【請求項９】
処理対象データを記憶する補助記憶装置と、この補助記憶装置から読み出された前記処理対象データを記憶保持するメモリ装置を装備するサーバ装置と、を備え、
前記サーバ装置は、前記補助記憶装置に記憶されている前記処理対象データの一部を前記メモリ装置に読み出すデータ読み出し手段と、前記メモリ装置上で前記処理対象データに対する処理を行うインメモリデータ管理手段と、前記メモリ装置に記憶保持されている前記処理対象データを前記補助記憶装置に戻して記憶するデータ格納手段と、を備えると共に、
前記補助記憶装置は、前記メモリ装置上の前記処理対象データを前記補助記憶装置に戻して記憶する前における前記処理対象データの格納場所を表す格納場所情報を、当該処理対象データと関連付けて記憶しており、
前記サーバ装置の前記データ読み出し手段は、前記格納場所情報に基づいて、前記処理対象データの格納場所が前記メモリ装置である前記処理対象データを特定して、当該特定した処理対象データを前記補助記憶装置から前記メモリ装置に読み出し、
前記サーバ装置の前記インメモリデータ管理手段は、前記データ格納手段にて前記メモリ装置に保持されていた前記処理対象データを前記補助記憶装置に戻して記憶する処理が完了するまでに受け付けた前記処理対象データに対する処理要求を保持し、当該処理対象データの前記補助記憶装置への格納が完了した後に当該補助記憶装置上で前記処理対象データに対する前記処理要求を処理する、
情報処理システム。
【請求項１０】
処理対象データを記憶する補助記憶装置から読み出された前記処理対象データを記憶保持するメモリ装置を装備したサーバ装置であって、
前記補助記憶装置に、前記メモリ装置上の前記処理対象データが前記サーバ装置から前記補助記憶装置に戻して記憶される前における前記処理対象データの格納場所を表す格納場所情報が、当該処理対象データと関連付けて記憶されており、
前記補助記憶装置に記憶されている前記処理対象データの一部を前記メモリ装置に読み出すデータ読み出し手段と、前記メモリ装置上で前記処理対象データに対する処理を行うインメモリデータ管理手段と、前記メモリ装置に記憶保持されている前記処理対象データを前記補助記憶装置に戻して記憶するデータ格納手段と、を備え、
前記データ読み出し手段は、前記格納場所情報に基づいて、前記処理対象データの格納場所が前記メモリ装置である前記処理対象データを特定して、当該特定した処理対象データを前記補助記憶装置から前記メモリ装置に読み出し、
前記インメモリデータ管理手段は、前記データ読み出し手段にて前記補助記憶装置から前記メモリ装置に前記処理対象データの読み出しが完了するまでに受け付けた前記処理対象データに対する処理要求を保持し、当該処理対象データの前記メモリ装置への読み出しが完了した後に前記保持している処理要求に対する処理を前記メモリ装置上で実行し、
さらに、前記インメモリデータ管理手段は、前記データ読み出し手段にて前記補助記憶装置から前記メモリ装置に前記処理対象データの読み出しが完了するまでに受け付けた前記処理対象データに対する処理要求のうち、前記補助記憶装置に記憶された前記格納場所情報に基づいて、格納場所が前記メモリ装置である前記処理対象データに対する処理要求を、当該処理対象データの前記メモリ装置への読み出しが完了した後に前記メモリ装置上で処理し、格納場所が前記補助記憶装置である前記処理対象データに対する処理要求を前記補助記憶装置上で処理する、
サーバ装置。
【請求項１１】
処理対象データを記憶する補助記憶装置から読み出された前記処理対象データを記憶保持するメモリ装置を装備したサーバ装置であって、
前記補助記憶装置に、前記メモリ装置上の前記処理対象データが前記サーバ装置から前記補助記憶装置に戻して記憶される前における前記処理対象データの格納場所を表す格納場所情報が、当該処理対象データと関連付けて記憶されており、
前記補助記憶装置に記憶されている前記処理対象データの一部を前記メモリ装置に読み出すデータ読み出し手段と、前記メモリ装置上で前記処理対象データに対する処理を行うインメモリデータ管理手段と、前記メモリ装置に記憶保持されている前記処理対象データを前記補助記憶装置に戻して記憶するデータ格納手段と、を備え、
前記データ読み出し手段は、前記格納場所情報に基づいて、前記処理対象データの格納場所が前記メモリ装置である前記処理対象データを特定して、当該特定した処理対象データを前記補助記憶装置から前記メモリ装置に読み出し、
さらに、前記補助記憶装置は、前記処理対象データ自体と、当該処理対象データを識別する識別情報と、を関連付けて記憶すると共に、前記処理対象データを識別する識別情報と、当該処理対象データの前記格納場所情報と、を関連付けた格納場所管理テーブルを記憶しており、
前記データ読み出し手段は、前記格納場所管理テーブルに基づいて、前記格納場所が前記メモリ装置である前記処理対象データの識別情報を特定して、当該識別情報に対応する前記処理対象データを前記補助記憶装置から前記メモリ装置に読み出す、
サーバ装置。
【請求項１２】
処理対象データを記憶する補助記憶装置から読み出された前記処理対象データを記憶保持するメモリ装置を装備したサーバ装置であって、
前記補助記憶装置に、前記メモリ装置上の前記処理対象データが前記サーバ装置から前記補助記憶装置に戻して記憶される前における前記処理対象データの格納場所を表す格納場所情報が、当該処理対象データと関連付けて記憶されており、
前記補助記憶装置に記憶されている前記処理対象データの一部を前記メモリ装置に読み出すデータ読み出し手段と、前記メモリ装置上で前記処理対象データに対する処理を行うインメモリデータ管理手段と、前記メモリ装置に記憶保持されている前記処理対象データを前記補助記憶装置に戻して記憶するデータ格納手段と、を備え、
前記データ読み出し手段は、前記格納場所情報に基づいて、前記処理対象データの格納場所が前記メモリ装置である前記処理対象データを特定して、当該特定した処理対象データを前記補助記憶装置から前記メモリ装置に読み出し、
前記インメモリデータ管理手段は、前記データ格納手段にて前記メモリ装置に保持されていた前記処理対象データを前記補助記憶装置に戻して記憶する処理が完了するまでに受け付けた前記処理対象データに対する処理要求を保持し、当該処理対象データの前記補助記憶装置への格納が完了した後に当該補助記憶装置上で前記処理対象データに対する前記処理要求を処理する、
サーバ装置。
【請求項１３】
処理対象データを記憶する補助記憶装置から読み出された前記処理対象データを記憶保持するメモリ装置を装備したサーバ装置に組み込まれるプログラムであって、
前記補助記憶装置に、前記メモリ装置上の前記処理対象データが前記サーバ装置から前記補助記憶装置に戻して記憶される前における前記処理対象データの格納場所を表す格納場所情報が、当該処理対象データと関連付けて記憶されている場合に、
前記サーバ装置に、前記補助記憶装置に記憶されている前記処理対象データの一部を前記メモリ装置に読み出すデータ読み出し手段と、前記メモリ装置上で前記処理対象データに対する処理を行うインメモリデータ管理手段と、前記メモリ装置に記憶保持されている前記処理対象データを前記補助記憶装置に戻して記憶するデータ格納手段と、を実現すると共に、
前記データ読み出し手段は、前記格納場所情報に基づいて、前記処理対象データの格納場所が前記メモリ装置である前記処理対象データを特定して、当該特定した処理対象データを前記補助記憶装置から前記メモリ装置に読み出し、
前記インメモリデータ管理手段は、前記データ読み出し手段にて前記補助記憶装置から前記メモリ装置に前記処理対象データの読み出しが完了するまでに受け付けた前記処理対象データに対する処理要求を保持し、当該処理対象データの前記メモリ装置への読み出しが完了した後に前記保持している処理要求に対する処理を前記メモリ装置上で実行し、
さらに、前記インメモリデータ管理手段は、前記データ読み出し手段にて前記補助記憶装置から前記メモリ装置に前記処理対象データの読み出しが完了するまでに受け付けた前記処理対象データに対する処理要求のうち、前記補助記憶装置に記憶された前記格納場所情報に基づいて、格納場所が前記メモリ装置である前記処理対象データに対する処理要求を、当該処理対象データの前記メモリ装置への読み出しが完了した後に前記メモリ装置上で処理し、格納場所が前記補助記憶装置である前記処理対象データに対する処理要求を前記補助記憶装置上で処理する、
プログラム。
【請求項１４】
処理対象データを記憶する補助記憶装置から読み出された前記処理対象データを記憶保持するメモリ装置を装備したサーバ装置による情報処理方法であって、
前記補助記憶装置に、前記メモリ装置上の前記処理対象データが前記サーバ装置から前記補助記憶装置に戻して記憶される前における前記処理対象データの格納場所を表す格納場所情報が、当該処理対象データと関連付けて記憶されており、
前記サーバ装置が、前記補助記憶装置に記憶されている前記処理対象データの一部を前記メモリ装置に読み出し、前記メモリ装置上で前記処理対象データに対する処理を行い、前記メモリ装置に記憶保持されている前記処理対象データを前記補助記憶装置に戻して記憶する処理を行うと共に、
前記サーバ装置が、前記補助記憶装置から前記処理対象データの読み出し時に、前記格納場所情報に基づいて、前記処理対象データの格納場所が前記メモリ装置である前記処理対象データを特定して、当該特定した処理対象データを前記補助記憶装置から前記メモリ装置に読み出し、
前記サーバ装置が、前記メモリ装置上で前記処理対象データに対する処理を行うときに、前記補助記憶装置から前記メモリ装置に前記処理対象データの読み出しが完了するまでに受け付けた前記処理対象データに対する処理要求を保持し、当該処理対象データの前記メモリ装置への読み出しが完了した後に前記保持している処理要求に対する処理を前記メモリ装置上で実行し、
さらに、前記サーバ装置が、前記補助記憶装置から前記メモリ装置に前記処理対象データの読み出しが完了するまでに受け付けた前記処理対象データに対する処理要求のうち、前記補助記憶装置に記憶された前記格納場所情報に基づいて、格納場所が前記メモリ装置である前記処理対象データに対する処理要求を、当該処理対象データの前記メモリ装置への読み出しが完了した後に前記メモリ装置上で処理し、格納場所が前記補助記憶装置である前記処理対象データに対する処理要求を前記補助記憶装置上で処理する、
情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システムにかかり、特に、インメモリにてデータベースを管理することが可能な情報処理システムに関する。
【背景技術】
【０００２】
航空管制システムなど交通機関のデータを扱う基幹業務システムでは、データベースの処理に関しては、「高速性」と「高信頼性」が要求されている。このうち、高信頼性を実現するための技術としては、データベースを二重化することが一般的に行われている。
【０００３】
また、データ処理の高速化を実現する技術としては、インメモリデータベースがある。インメモリデータベースとは、データをディスク上ではなく、メインメモリ上に格納することによって、アプリケーションからデータへのアクセスの高速化を実現している。
【０００４】
ここで、特許文献１に、インメモリデータベースを用いたシステムの一例が開示されている。このシステムでは、インメモリデータベースを装備した現用系のノード装置と待機系のノード装置とを備える。そして、まず、現用系のノード装置が、業務データの更新指示に基づいて更新ログを生成し、メモリに保持する。その後、現用系のノード装置は、生成した更新ログを待機系のノード装置に送信して、これを受信した待機系のノード装置は更新ログをメモリに保持する。さらに、その後、現用系のノード装置は、メモリに保持している更新ログに基づいて業務データを実更新し、これとは非同期に、待機系のノード装置も更新ログに基づいて業務データを実更新する。これにより、現用系と待機系との複数のノード装置のメモリに、同じ業務データを保持することを可能としている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】国際公開ＷＯ２００８／１０５０９８号
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ここで、上述したようにインメモリデータベースを用いたシステムの場合であっても、サービス停止中やサーバの縮退、追加などの際には、インメモリデータベースに展開しているデータベースを、ディスク装置などの補助記憶装置に一時的に記憶する必要が生じる。すると、インメモリデータベースによる処理を再開する時には、補助記憶装置からメモリ装置にデータベースを読み出す必要があるが、データベースのデータ量が膨大である場合には、かかるデータロードに多くの時間がかかり、迅速に処理を開始することができない、という問題が生じる。さらに、データロードに時間がかかると、その間に行われるデータベースに対する更新の正確性が損なわれ、データの信頼性の低下、という問題も生じうる。
【０００７】
このため、本発明の目的は、上述した課題である、インメモリデータベースを搭載した情報処理システムにおける処理開始の速度低下の問題と、データの信頼性低下の問題を解決することにある。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、本発明の一形態である情報処理システムは、
処理対象データを記憶する補助記憶装置と、この補助記憶装置から読み出された前記処理対象データを記憶保持するメモリ装置を装備するサーバ装置と、を備え、
前記サーバ装置は、前記補助記憶装置に記憶されている前記処理対象データの一部を前記メモリ装置に読み出すデータ読み出し手段と、前記メモリ装置上で前記処理対象データに対する処理を行うインメモリデータ管理手段と、前記メモリ装置に記憶保持されている前記処理対象データを前記補助記憶装置に戻して記憶するデータ格納手段と、を備えると共に、
前記補助記憶装置は、前記メモリ装置上の前記処理対象データを前記補助記憶装置に戻して記憶する前における前記処理対象データの格納場所を表す格納場所情報を、当該処理対象データと関連付けて記憶しており、
前記サーバ装置の前記データ読み出し手段は、前記格納場所情報に基づいて、前記処理対象データの格納場所が前記メモリ装置である前記処理対象データを特定して、当該特定した処理対象データを前記補助記憶装置から前記メモリ装置に読み出す、
という構成を採る。
【０００９】
また、本発明の他の形態であるサーバ装置は、
処理対象データを記憶する補助記憶装置から読み出された前記処理対象データを記憶保持するメモリ装置を装備したサーバ装置であって、
前記補助記憶装置に、前記メモリ装置上の前記処理対象データが前記サーバ装置から前記補助記憶装置に戻して記憶される前における前記処理対象データの格納場所を表す格納場所情報が、当該処理対象データと関連付けて記憶されており、
前記補助記憶装置に記憶されている前記処理対象データの一部を前記メモリ装置に読み出すデータ読み出し手段と、前記メモリ装置上で前記処理対象データに対する処理を行うインメモリデータ管理手段と、前記メモリ装置に記憶保持されている前記処理対象データを前記補助記憶装置に戻して記憶するデータ格納手段と、を備え、
前記データ読み出し手段は、前記格納場所情報に基づいて、前記処理対象データの格納場所が前記メモリ装置である前記処理対象データを特定して、当該特定した処理対象データを前記補助記憶装置から前記メモリ装置に読み出す、
という構成を採る。
【００１０】
また、本発明の他の形態であるプログラムは、
処理対象データを記憶する補助記憶装置から読み出された前記処理対象データを記憶保持するメモリ装置を装備したサーバ装置に組み込まれるプログラムであって、
前記補助記憶装置に、前記メモリ装置上の前記処理対象データが前記サーバ装置から前記補助記憶装置に戻して記憶される前における前記処理対象データの格納場所を表す格納場所情報が、当該処理対象データと関連付けて記憶されている場合に、
前記サーバ装置に、前記補助記憶装置に記憶されている前記処理対象データの一部を前記メモリ装置に読み出すデータ読み出し手段と、前記メモリ装置上で前記処理対象データに対する処理を行うインメモリデータ管理手段と、前記メモリ装置に記憶保持されている前記処理対象データを前記補助記憶装置に戻して記憶するデータ格納手段と、を実現すると共に、
前記データ読み出し手段は、前記格納場所情報に基づいて、前記処理対象データの格納場所が前記メモリ装置である前記処理対象データを特定して、当該特定した処理対象データを前記補助記憶装置から前記メモリ装置に読み出す、
という構成を採る。
【００１１】
また、本発明の他の形態である情報処理方法は、
処理対象データを記憶する補助記憶装置から読み出された前記処理対象データを記憶保持するメモリ装置を装備したサーバ装置による情報処理方法であって、
前記補助記憶装置に、前記メモリ装置上の前記処理対象データが前記サーバ装置から前記補助記憶装置に戻して記憶される前における前記処理対象データの格納場所を表す格納場所情報が、当該処理対象データと関連付けて記憶されており、
前記サーバ装置が、前記補助記憶装置に記憶されている前記処理対象データの一部を前記メモリ装置に読み出し、前記メモリ装置上で前記処理対象データに対する処理を行い、前記メモリ装置に記憶保持されている前記処理対象データを前記補助記憶装置に戻して記憶する処理を行うと共に、
前記サーバ装置が、前記補助記憶装置から前記処理対象データの読み出し時に、前記格納場所情報に基づいて、前記処理対象データの格納場所が前記メモリ装置である前記処理対象データを特定して、当該特定した処理対象データを前記補助記憶装置から前記メモリ装置に読み出す、
という構成を採る。
【発明の効果】
【００１２】
本発明は、以上のように構成されることにより、インメモリデータベースを搭載した情報処理システムにおける処理開始の高速化と、データの信頼性の向上を図ることができる。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施形態１における情報処理システムの全体構成を示すブロック図である。
【図２】図１に開示したＡＰサーバとＯＬＴＰサーバの構成を示すブロック図である。
【図３】図２に開示したＤＢサーバが記憶するデータの一例を示す図である。
【図４】図２に開示したＡＰサーバとＯＬＴＰサーバが記憶するデータの一例を示す図である。
【図５】図１に開示した情報システムの動作の概略を示すフローチャートである。
【図６】図２に開示したＡＰサーバとＯＬＴＰサーバの動作を示す説明図である。
【図７】図２に開示したＡＰサーバとＯＬＴＰサーバの動作を示す説明図である。
【図８】図２に開示したＡＰサーバとＯＬＴＰサーバの動作を示す説明図である。
【図９】図２に開示したＡＰサーバとＯＬＴＰサーバの動作を示す説明図である。
【図１０】図２に開示したＡＰサーバとＯＬＴＰサーバの動作を示すフローチャートである。
【図１１】図２に開示したＯＬＴＰサーバの動作を示す説明図である。
【図１２】図２に開示したＯＬＴＰサーバの動作を示す説明図である。
【図１３】図２に開示したＯＬＴＰサーバの動作を示す説明図である。
【図１４】図２に開示したＯＬＴＰサーバの動作を示す説明図である。
【図１５】本発明の付記１における情報処理システムの構成を示すブロック図である。
【発明を実施するための形態】
【００１４】
＜実施形態１＞
本発明の第１の実施形態を、図１乃至図１４を参照して説明する。図１乃至図４は、情報処理システムの構成を示す図であり、図５乃至図１４は、情報処理システムの動作を示す図である。
【００１５】
［構成］
本発明における情報処理システムは、例えば、航空管制システムといった各航空機の状態などを管理するシステムである。そして、情報処理システムは、図１に示すように、各航空機の状態を表す情報などの処理対象データに対して所定の処理を行うよう指示する処理システム１１〜１３と、上記処理対象データをデータベースに格納して管理する現用系システムとしてのフロントシステム２０と、このフロントシステム２０に障害が生じたときに当該フロントシステム２０に代わって作動する待機系システムとしてのバックアップシステム３０と、を備える。
【００１６】
そして、上記各システム１１等，２０，３０は、それぞれが複数台のサーバコンピュータにて構成されていてもよく、あるいは、それぞれが１台のサーバコンピュータにて構成されていてもよい。
【００１７】
なお、本発明における情報処理システムは、必ずしも航空管制システムに適用されるものであることに限定されず、いかなる情報を管理するシステムであってもよく、また、いかなる用途に利用されるシステムであってもよい。
【００１８】
そして、本実施形態における処理システム１１等は、フロントシステム２０に格納されている各処理対象データに対する更新処理や参照処理などの処理要求を、当該フロントシステム２０に対して行う機能を有する。
【００１９】
また、本実施形態におけるフロントシステム２０は、通信サーバ２１と、ＡＰサーバ２２と、ＯＬＴＰサーバ２３と、ＤＢサーバ２４と、を備える。なお、通信サーバ２１と、ＡＰサーバ２２と、ＯＬＴＰサーバ２３とは、それぞれ複数台のサーバコンピュータにて構成されている。また、フロントシステム２０とバックアップシステム３０とは、それぞれほぼ同一構成であるため、以下ではフロントシステム２０についてのみ説明し、バックアップシステム３０の構成についての説明は省略する。
【００２０】
以下、フロントシステム２０の構成について詳細に説明する。通信サーバ２１は、処理システム１１等からフロントシステム２０に対する処理要求メッセージを受信するなど、プロトコル制御を行って通信処理を行う。なお、処理要求メッセージは、例えば、処理対象を特定する識別情報である「ＦＯＩＤ」と、当該処理対象データに対する処理内容を表す「メッセージ」（例えば、「更新」や「参照」など）と、を含むデータである。そして、処理要求メッセージには、例えば、処理対象データを特定する「ＦＯＩＤ」が複数含まれている場合もある。
【００２１】
また、ＡＰサーバ２２は、複数台のサーバコンピュータ、あるいは、単一のサーバコンピュータにて構成されており、主に、処理システム１１等からの処理要求メッセージを、ＯＬＴＰサーバ２３に振り分ける処理を行う振り分け装置として機能する。具体的に、図２に示すように、ＡＰサーバ２００は、装備されたＣＰＵなどの演算装置にプログラムが組み込まれることで構築された、振り分け部２０１を備えている。また、ＡＰサーバ２００は、装備された記憶装置に形成されたデータ管理テーブル２０２を備えている。
【００２２】
ここで、データ管理テーブル２０２に記憶されるデータの一例を図３（１−１）及び図３（１−２）を参照して説明する。まず、データ管理テーブル２０２には、図３（１−１）に示すように、「ハッシュ値」と「グループ」の対応表がある。このハッシュ値は、処理要求メッセージに含まれる処理対象データを特定する「ＦＯＩＤ」をハッシュ処理した値であり、その値によって処理対象データが格納されているグループが特定される。また、データ管理テーブル２０２には、図３（１−２）に示すように、「ＦＩＯＤグループ」と「マスタ」と「スレーブ」との対応表がある。ＦＯＩＤグループは、図３（１−１）で特定された処理対象データが区分けされるグループであり、各グループに属する処理対象データのマスタデータが格納されているＯＬＴＰサーバと、スレーブデータが格納されているＯＬＴＰサーバと、が特定されている。
【００２３】
そして、ＡＰサーバ２００の振り分け部２０１は、処理システム１１等から通信サーバ２１を介して受け付けた処理要求メッセージ内の「ＦＯＩＤ」をハッシュ処理してハッシュ値を算出し、そのハッシュ値に対応するマスタデータの所在を、データ管理テーブルに従って特定する。例えば、処理要求メッセージにて処理要求された処理対象データの「ＦＯＩＤ」のハッシュ値が「１」である場合には、図３（１−１）からグループが「＃１」と特定でき、図３（１−２）からこのグループのマスタデータは、「ＯＬＴＰサーバ＃１」に格納されている、と特定する。そして、振り分け部２０１は、マスタデータが格納されているＯＬＴＰサーバを特定したら、そのＯＬＴＰサーバに、処理要求メッセージを振り分けて送信する。
【００２４】
なお、ＡＰサーバ２００の振り分け部２０１は、処理要求メッセージ内に「ＦＯＩＤ」が複数含まれている場合には、先頭の「ＦＯＩＤ」のハッシュ値のみを算出し、その値に応じて振り分け先となるＯＬＴＰサーバを特定して、当該ＯＬＴＰサーバに処理要求メッセージを振り分ける。
【００２５】
次に、ＯＬＴＰサーバ３００について説明する。図２に示すように、ＯＬＴＰサーバ３００は、後述するＤＢサーバ４００が備えるディスク装置などの補助記憶装置よりも、データの記録再生速度が高速なフラッシュメモリなどにより構成されたメモリ装置３０５を備えている。そして、このメモリ装置３０５は、データ管理テーブル３０６と、メモリテーブル３０７と、を記憶しており、また、後述するように、ＤＢサーバ４００から読み出した処理対象データを記憶保持して構築されたインメモリデータベース３０８を備えている。
【００２６】
また、ＯＬＴＰサーバ３００は、主に、ＡＰサーバ２００から振り分けられた処理要求メッセージを受けて、自サーバのインメモリデータベース３０８に格納されている処理対象データのマスタデータに対して、要求された処理を行う機能を備える。具体的に、図２に示すように、ＯＬＴＰサーバ３００は、装備されたＣＰＵなどの演算装置にプログラムが組み込まれることで構築された、データ読み出し部３０１と、インメモリデータ管理部３０２と、データ格納部３０３と、を備えている。
【００２７】
ここで、データ管理テーブル３０６に記憶されるデータは、上述したＡＰサーバ２００と同様に、図３（１−１）、（１−２）に示すように、「ハッシュ値」と「グループ」の対応表と、「ＦＩＯＤグループ」と「マスタ」と「スレーブ」との対応表と、である。また、メモリテーブル３０７は、図３（２）に示すように、「ＦＯＩＤ」と、そのデータの実際の格納先である「アドレス」との対応表である。
【００２８】
そして、ＯＬＴＰサーバ３００のデータ読み出し部３０１（データ読み出し手段）は、後述するＤＢサーバ４００に格納されている処理対象データの一部を読み出して、メモリ装置３０５に記憶保持する機能を有する。ＤＢサーバ４００からの読み出し処理の詳細については後述するが、読み出した処理対象データは、複数のＯＬＴＰサーバ３００がそれぞれ装備する複数のメモリ装置３０５にそれぞれ格納され、インメモリデータベース３０８が構築される。なお、インメモリデータベース３０８の構成についても後述する。
【００２９】
また、ＯＬＴＰサーバ３００のインメモリデータ管理部３０２（インメモリ管理手段）は、上述したように、各ＯＬＴＰサーバ３００の各メモリ装置３０５に構築されたインメモリデータベース３０８に対して、ＡＰサーバ２００からの処理要求に応じた処理対象データに対する処理を実行する。なお、インメモリデータ管理部３０２の処理の詳細については後述する。
【００３０】
また、ＯＬＴＰサーバ３００のデータ格納部３０３（データ格納手段）は、メモリ装置３０５に記憶保持されてインメモリデータベース３０８を構築している処理対象データを、ＤＢサーバ４００に戻して記憶するバックアップ処理を行う。このバックアップ処理は、例えば、ＯＬＴＰサーバ３００の削除や追加、メンテナンスなど、種々の理由によりＯＬＴＰサーバ３００によるインメモリデータベース３０８に対する処理を一時的に停止させるときに実行される。なお、処理対象データをＤＢサーバ４００に戻す処理の詳細については後述する。
【００３１】
また、上記ＤＢサーバ４００は、ディスク装置などの補助記憶装置を備えたサーバコンピュータであり、補助記憶装置に上述したＯＬＴＰサーバ３００に読み出されてメモリ装置３０５に記憶保持される処理対象データを記憶している。具体的に、ＤＢサーバ４００は、図４（３）に示すように、処理対象データ自体（データ）を、当該処理対象データの識別情報であるＦＯＩＤと関連付けて、データ記憶部４０３に記憶している。また、ＤＢサーバ４００は、補助記憶装置に、所在管理テーブル４０１とマスタ管理テーブル４０２とを記憶している。
【００３２】
上記所在管理テーブル４０１（格納場所管理テーブル）は、後述するようにＯＬＴＰサーバ３００から処理対象データがＤＢサーバ４００に戻して記憶される前における全ての処理対象データの格納場所を表す格納場所情報を、当該処理対象データの識別情報であるＦＯＩＤと関連付けたテーブルである。例えば、図４（１）に示すように、所在（格納場所情報）が「ＴＡＭ＆ＤＢ」である処理対象データは、ＯＬＴＰサーバ３００とＤＢサーバ４００とに記憶されていたことを表しており、所在が「ＤＢ」である処理対象データは、ＤＢサーバ４００のみに記憶されていたことを表している。
【００３３】
また、上記マスタ管理テーブル４０２は、処理対象データがＯＬＴＰサーバ３００のメモリ装置３０５に記憶されているときにおいて、後述するように当該処理対象データのマスタデータが記憶されるＯＬＴＰサーバ３００を特定するサーバ情報と、その処理対象データの識別情報であるＦＯＩＤと、を関連付けたテーブルである。例えば、図４（２）に示すように、サーバが「＃１」と特定されている処理対象データは、ＯＬＴＰサーバ＃１のメモリ装置３０５にマスタデータが格納されることを表している。但し、マスタ管理テーブル４０２は、必ずしもＤＢサーバ４００に装備されていることに限定されない。例えば、ＤＢサーバ４００は、ＯＬＴＰサーバ３００に記憶されている図３（１−１）、（１−２）に示すデータ管理テーブル３０６を利用して、処理対象データのＦＯＩＤのハッシュ値からマスタデータが格納されているＯＬＴＰサーバを特定してもよく、その他の方法にて処理対象データのマスタデータが格納されているＯＬＴＰサーバを特定してもよい。
【００３４】
［動作］
次に、上述したフロントシステム２０の動作を説明する。図５に示すように、フロントシステム２０では、通常は、ＤＢサーバ４００（２４）から処理対象データをＯＬＴＰサーバ３００（２３）のメモリ装置２０５にロードして、インメモリデータベース３０８を構築する。そして、処理システム１１等からの処理要求を、ＡＰサーバ２００（２２）が各ＯＬＴＰサーバ３００（２３）に振り分けることで、当該各ＯＬＴＰサーバ３００（２３）はそれぞれインメモリデータベース３０８上で、処理要求のあった処理対象データの処理を行う。この状態が、ＴＡＭアクセス運用状態であり、図５では、ＯＬＴＰサーバ３００（２３）の再配置直前の状態であることとする（ステップＳ１）。
【００３５】
続いて、フロントシステム２０は、ＯＬＴＰサーバ３００（２３）を追加するなど何らかの理由により、ＯＬＴＰサーバ３００（２３）のメモリ装置３０５に記憶保持されている処理対象データを、ＤＢサーバ４００（２４）に戻して記憶するバックアップ処理を行う。この状態が、ＤＢセーブ状態であることとする（ステップＳ２）。
【００３６】
続いて、フロントシステム２０は、上述したＤＢセーブ状態のときに、処理システム１１からＡＰサーバ２００を介して処理要求があった場合に、ＯＬＴＰサーバ３００（２３）とＤＢサーバ４００（２４３）との間における処理対象データを同期する処理を行う状態となる（ステップＳ３）。
【００３７】
続いて、フロントシステム２０に対してＯＬＴＰサーバ３００（２３）の追加などの処理を実施する（ステップＳ４）。その後、フロントシステム２０にてＯＬＴＰサーバ３００（２３）を用いたサービス提供、つまり、インメモリデータベースを用いた処理を再開するときに、ＤＢサーバ４００（２４）からＯＬＴＰサーバ３００（２３）のメモリ装置３０５に処理対象データを読み出し、ＤＢロード状態となる（ステップＳ５）。
【００３８】
そして、処理対象データの各ＯＬＴＰサーバ３００（２３）の各メモリ装置３０５へのロードが完了してインメモリデータベース３０８が構築されると、処理システム１１等からの処理要求を、ＡＰサーバ２００（２２）が各ＯＬＴＰサーバ３００（２３）に振り分けて、当該各ＯＬＴＰサーバ３００（２３）にてインメモリデータベース３０８上で処理要求のあった処理対象データの処理を行う状態となる（ステップＳ６）。以下、上述した各状態における動作を詳細に説明する。
【００３９】
［インメモリデータ管理］
上記再配置直前状態（図５のステップＳ１）、及び、再配置完了状態（図５のステップＳ６）では、処理システム１１等からの処理要求がＡＰサーバ２００（２２）にて各ＯＬＴＰサーバ３００（２３）に振り分けて、当該各ＯＬＴＰサーバ３００（２３）にてインメモリデータベース３０８上で処理される状態である。このときのフロントシステム２０の動作を、図６乃至図１０を参照して説明する。
【００４０】
まず、図６に示すように、各ＯＬＴＰサーバ３１０，３２０，３３０は、それぞれが装備しているメモリ装置３０５上に、ＤＢサーバ２４に格納されている処理対象データの一部を配置して、インメモリデータベースを構築する。このとき、図６に示すように、処理対象データは３つのＦＯデータ群１，２，３に区分けされている。そして、３つのＦＯデータ群１，２，３からなる処理対象データは、３台のＯＬＴＰサーバ３１０，３２０，３３０にそれぞれ記憶されている。
【００４１】
但し、処理対象データのマスタデータは、１つのＯＬＴＰサーバのみに配置されており、他のＯＬＴＰサーバには、その複製であるスレーブデータが配置される。例えば、ＦＯデータ群１のマスタデータは、ＯＬＴＰサーバ＃１（３１０）のみに配置され、他のＯＬＴＰサーバ＃２（３２０）、＃３（３３０）には、ＦＯデータ群１のスレーブデータが配置される。また、ＦＯデータ群２のマスタデータは、ＯＬＴＰサーバ＃２（３２０）のみに配置され、他のＯＬＴＰサーバ＃１（３１０）、＃３（３３０）には、ＦＯデータ群２のスレーブデータが配置される。また、ＦＯデータ群３のマスタデータは、ＯＬＴＰサーバ＃３（３３０）のみに配置され、他のＯＬＴＰサーバ＃１（３１０）、＃２（３２０）には、ＦＯデータ群３のスレーブデータが配置される。
【００４２】
そして、所定の処理システム１１等からフロントシステム２０に処理要求メッセージが送信されると、通信サーバ２１を介してＡＰサーバ２００にて受信される（図１０のステップＳ１）。
【００４３】
ＡＰサーバ２００は、受け付けた処理要求メッセージ内の「ＦＯＩＤ」をハッシュ処理してハッシュ値を算出し（図１０のステップＳ２）、そのハッシュ値に対応するマスタデータの所在を、データ管理テーブル２０２に従って特定する。例えば、処理要求メッセージにて処理要求された処理対象データの「ＦＯＩＤ」のハッシュ値が「１」である場合には、図３（１−１）からグループが「＃１」と特定でき（図１０のステップＳ３）、図３（１−２）からこのグループのマスタデータは、「ＯＬＴＰサーバ＃１（３１０）」に格納されている、と特定する（図１０のステップＳ４）。そして、ＡＰサーバ２００は、マスタデータが格納されているＯＬＴＰサーバ３１０，３２０，３３０に、処理要求メッセージを振り分けて送信する（図６の矢印Ｙ１，Ｙ２，Ｙ３）。
【００４４】
そして、ＯＬＴＰサーバ３１０，３２０，３３０は、上述したようにＡＰサーバ２００から振り分けられた処理要求メッセージを受けると、当該処理要求メッセージの処理対象データのマスタデータが自サーバのインメモリデータベース３０８に配置されているため、かかるマスタデータに対する処理、例えば、「更新」処理を行う（図１０のステップＳ６）。
【００４５】
その後、ＯＬＴＰサーバ３１０，３２０，３３０は、処理要求メッセージに従って処理を行ったマスタデータを、当該マスタデータの複製である他のＯＬＴＰサーバに配置されているスレーブデータに対してコピー処理を行う（図１０のステップＳ７）。例えば、ＯＬＴＰサーバ３１０で、ＦＯデータ群１内のマスタデータを更新処理した場合には、このマスタデータに対応する他のＯＬＴＰサーバ３２０，３３０に格納されているスレーブデータであるＦＯデータ群１（３２１，３２２）に、コピー処理を行う（図７の矢印Ｙ１１，Ｙ１２）。なお、他のマスタデータが処理された場合も同様である（図７の矢印Ｙ２１，Ｙ２２，Ｙ３１，Ｙ３２参照）。このとき、コピー処理は、ＦＯデータ群単位で行うが、処理対象データ単位で行ってもよい。
【００４６】
これにより、マスタデータが配置されているＯＬＴＰサーバに対して処理要求が振り分けられるため、各ＯＬＴＰサーバの処理負荷が分散される。従って、各ＯＬＴＰサーバの処理負荷を抑制でき、データ処理速度の向上やシステムの動作の安定化を図ることができる。その結果、情報処理システム全体の性能向上を図ることができる。
【００４７】
なお、上述したＡＰサーバ２００では、処理要求メッセージ内に「ＦＯＩＤ」が複数含まれている場合には、先頭の「ＦＯＩＤ」のみに基づいて振り分けが行われる。すると、ＡＰサーバ２００から振り分けられた処理要求メッセージには、ＯＬＴＰサーバ３００にマスタデータが配置されていない「ＦＯＩＤ」が存在していることがあるが、ＯＬＴＰサーバ３００が上述したＡＰサーバ２００の振り分け部２０１と同様に、そのＦＯＩＤのマスタデータを配置している他のＯＬＴＰサーバに、処理要求メッセージを振り分ける処理を行う。
【００４８】
例えば、図８に示すように、ＯＬＴＰサーバ３１０が処理要求メッセージを受けた場合には、まず、処理要求メッセージに含まれるＦＯＩＤのうち、自サーバにマスタデータが配置されているＦＯＩＤの処理対象データを処理し（図８の矢印Ｙ４１参照）、他のＯＬＴＰサーバに格納されているスレーブデータにコピー処理を行う。そして、自サーバにマスタデータが配置されていないＦＯＩＤに対しては、ハッシュ値を算出し、そのハッシュ値に対応するマスタデータの所在を、データ管理テーブルに従って特定する。そして、処理対象データのマスタデータがＦＯデータ群２であるとすると、他のＯＬＴＰサーバ３２０を特定し、当該他のＯＬＴＰサーバ３２０に、処理要求メッセージを振り分けて送信する（図１０のステップＳ５）。
【００４９】
そして、他のＯＬＴＰサーバ３２０は、受け付けた処理要求メッセージに従って、自サーバにマスタデータが配置されているＦＯＩＤの処理対象データを処理し（図８の矢印Ｙ４２参照）、別のＯＬＴＰサーバに格納されているスレーブデータにコピー処理を行う。
【００５０】
このようにすることで、処理要求メッセージに複数の処理対象データに対する処理要求が含まれている場合であっても、マスタデータが配置されているＯＬＴＰサーバに適切に処理を振り分けることができる。従って、上述同様に、各ＯＬＴＰサーバの処理負荷が分散され、データ処理速度の向上やシステムの動作の安定化を図ることができる。
【００５１】
また、図９を参照して、ＯＬＴＰサーバ３１０が受け付けた処理要求メッセージがＦＯデータ群１に含まれるマスタデータの「更新」処理であるが（図９の矢印Ｙ５１参照）、かかる「更新」処理を行うに伴って、自サーバ３１０にマスタデータが無いＦＯデータ群２のデータの内容を「参照」処理する必要がある場合を説明する。この場合には、ＯＬＴＰサーバ３１０は、ＦＯデータ群１に含まれるマスタデータに対する「更新」処理を行うと共に（図９の矢印Ｙ５２参照）、さらに、自サーバ３１０に格納されたＦＯデータ群２のスレーブデータに対して、「参照」処理を行う（図９の矢印Ｙ５３参照）。
【００５２】
このように、「参照」処理などスレーブデータに対して処理を行っても影響の無い処理については、マスタデータを格納している他のＯＬＴＰサーバに処理要求を振り分けずに、特定の処理を行うＯＬＴＰサーバで同時に処理を行うようにする。これにより、ＯＬＴＰサーバの処理負荷の増大を抑制しつつ、処理の高速化を図ることができる。
【００５３】
［ＤＢセーブ状態、ＤＢ同期状態］
次に、ＯＬＴＰサーバ３００のメモリ装置３０５からＤＢサーバ４００に、処理対象データを戻して記憶するときの状態である図５のＤＢセーブ状態（ステップＳ２）と、処理対象データのバックアップが完了したときの状態であるＤＢ同期状態（ステップＳ３）との動作を、図１１を参照して説明する。
【００５４】
まず、ＯＬＴＰサーバ３００は、図１１の矢印Ｙ６１に示すように、メモリ装置３０５にロードしてインメモリデータベースを構築している処理対象データを、ＤＢサーバ４００に戻して記憶する処理を開始する。このとき、ＯＬＴＰサーバ３００は、通常は、メモリ装置３０５上の処理対象データを、一定の時間間隔や任意のタイミングでＤＢサーバ４００にバックアップする処理を行っているが、かかる機能を停止して、バックアップするタイミングでなくても、バックアップを開始する。
【００５５】
そして、上記ＤＢセーブ状態であり、ＯＬＴＰサーバ３００からＤＢサーバ４００への処理対象データのバックアップが完了するまでの間に、処理システム１１等からＡＰサーバ２００を介して、ＯＬＴＰサーバ３００に処理要求が出されることがある（図１１の矢印Ｙ６２参照）。この場合には、基本的には、処理要求をバッファＢに保持し、当該処理要求にかかる処理を保留する。
【００５６】
但し、このとき、ＯＬＴＰサーバ３００は、処理システム１１等からの処理要求が、更新順序を保つ必要がある処理であるであるか否かを、処理要求の内容から判断する。例えば、ＯＬＴＰサーバ３００に、更新順序を保つ必要がある処理を特定する情報を登録しておき、実際に受けた処理要求の内容から、当該処理要求が更新順序を保つ必要がある処理であるかを判定する。そして、受け付けた処理要求が、更新順序を保つ必要がある処理である場合には、上述したように処理要求にかかる処理を保留する。一方で、受け付けた処理要求が、更新順序を保つ必要がない処理である場合には、ＤＢサーバ４００に記憶されている処理対象データに対して、処理要求にかかる処理を実行する（図１１の矢印Ｙ６３）。
【００５７】
なお、ＯＬＴＰサーバ３００は、処理要求を受けたときに、当該処理要求が処理の対象としている処理対象データごとに、処理を行う順番を表す処理順序を記憶しておく。例えば、処理対象データごとに、処理要求を受けた順序を記憶しておく。そして、上述したように、ＤＢサーバ４００に対して処理対象データの処理を行った処理要求については、処理が完了している旨を処理順序と共に登録しておく。
【００５８】
そして、上述したＤＢセーブ状態の終了後、つまり、ＯＬＴＰサーバ３００からＤＢサーバ４００への処理対象データのバックアップが完了した後に、処理を保留した処理要求にかかる処理を、ＤＢサーバ４００に記憶されている処理対象データに対して実行する（図１１の矢印Ｙ６４）。このとき、上述したように記憶している処理対象データ毎の処理順序を参照して、処理が保留されている処理要求に対して、処理順序が遅い同一の処理対象データに対する処理要求が既に処理されていることが登録されていた場合には、処理順序が早い方の処理要求に対する処理は、未処理であっても実行しない。これにより、ＤＢサーバ４００にて処理対象データが最新の状態に保たれる。
【００５９】
［ＤＢロード状態］
次に、ＤＢサーバ４００からＯＬＴＰサーバ３００のメモリ装置３０５に、処理対象データを読み出すときの状態である図５のＤＢロード状態（ステップＳ５）の動作を、図１２乃至図１４を参照して説明する。
【００６０】
まず、ＯＬＴＰサーバ３００は、図１２の矢印Ｙ７１に示すように、ＤＢサーバ４００に記憶されている所在管理テーブル４０１を読み出し、このうち、所在が「ＴＡＭ＆ＤＢ」である処理対象データの識別情報であるＦＯＩＤを抽出する。つまり、ＤＢサーバ４００にバックアップされる前に、ＯＬＴＰサーバ３００のメモリ装置３０５に格納されていた処理対象データのＦＯＩＤを抽出する。図１２の例では、まず、「キー（１）」、「キー（３）」、「キー（４）」のＦＯＩＤが抽出される。
【００６１】
そして、この抽出したＦＯＩＤにて特定される処理対象データのマスタデータが、ＤＢサーバ４００にバックアップされる前に格納されていたＯＬＴＰサーバ３００を、マスタ管理テーブル４０２から特定する（図１２の矢印Ｙ７２）。図１２の例では、ＦＯＩＤが「キー（１）」のマスタデータは、「＃１」のＯＬＴＰサーバ３００に読み出されることが特定される。
【００６２】
その後、ＯＬＴＰサーバ３００は、自サーバがマスタデータを記憶していた処理対象データを、ＦＯＩＤを参照してＤＢサーバ４００から読み出し、自サーバのメモリ装置３０５に記憶保持する（図１２の矢印Ｙ７３）。図１２の例では、例えば、「＃１」のＯＬＴＰサーバ３００が、ＦＯＩＤが「キー（１）」である処理対象データを、ＤＢサーバ４００から自サーバ３００のメモリ装置３０５にロードする。
【００６３】
続いて、ＯＬＴＰサーバ３００は、メモリ装置３０５にマスタデータをロードした後に、当該マスタデータを他のＯＬＴＰサーバのメモリ装置にコピーする。例えば、図１３の例では、ＯＬＴＰサーバ３１０が処理対象データのマスタデータ（ＦＯデータ）からなる「ＦＯデータ群１」３１１をメモリ装置にＤＢサーバ４００からロードした場合には、この「ＦＯデータ群１」３１１を他のＯＬＴＰサーバ３２０，３３０のメモリ装置に、符号３２１，３３１に示すようコピーする（矢印Ｙ８１，Ｙ８２）。他のＦＯデータ群についても同様に、マスタデータをロードしたＯＬＴＰサーバが、他のＯＬＴＰサーバにコピーする（矢印Ｙ８３，Ｙ８４，Ｙ８５，Ｙ８６）。
【００６４】
これにより、ＤＢサーバ４００からＯＬＴＰサーバ３００に処理対象データをロードするときに、当該ＯＬＴＰサーバ３００によるＤＢサーバ４００に対するアクセス回数を抑制でき、迅速にインメモリデータベースを構築でき、フロントシステム２０におけるインメモリデータベースを用いた処理再開の高速化を図ることができる。そして、複数のＯＬＴＰサーバ３００にて処理対象データのインメモリデータベースを構築した後には、当該インメモリデータベース上で、後にＡＰサーバ２００から振り分けられた処理要求にかかる処理を実行する。
【００６５】
なお、上記ＤＢロード状態であり、ＤＢサーバ４００からＯＬＴＰサーバ３００への処理対象データの読み出し、つまり、インメモリデータベースの構築が完了するまでの間に（図１４の矢印Ｙ９１）、処理システム１１等からＡＰサーバ２００を介して、ＯＬＴＰサーバ３００に処理要求が出されることがある（図１４の矢印Ｙ９２）。この場合に、ＯＬＴＰサーバ３００は、処理要求をバッファＢに保持し、当該処理要求にかかる処理を保留する。
【００６６】
但し、このとき、ＯＬＴＰサーバ３００は、ＤＢサーバ４００から所在管理テーブル３０３を読み出して、処理要求にかかる処理対象データの所在を確認する。そして、処理要求にかかる処理対象データの所在が、「ＤＢ」のみである場合には、ＤＢロード状態であっても、ＤＢサーバ４００に対して処理要求にかかる処理を実行する。これは、処理要求の対象となっている処理対象データは、そもそもＯＬＴＰサーバ３００には読み出されないため、当該ＯＬＴＰサーバ３００によるロードを待つ必要が無く、ＤＢサーバ４００に記憶されている処理対象データに対して処理を行っても影響はないことによる。
【００６７】
そして、ＯＬＴＰサーバ３００は、ＤＢサーバ４００からＯＬＴＰサーバ３００への処理対象データの読み出しが完了した後に、バッファＢに保持している処理要求を、ＯＬＴＰサーバ３００のメモリ装置３０５上、つまり、インメモリデータベース上で処理する。
【００６８】
＜付記＞
上記実施形態の一部又は全部は、以下の付記のようにも記載されうる。以下、本発明における情報処理システムの構成の概略を、図１５のブロック図を参照して説明する。また、本発明におけるサーバ装置、プログラム、情報処理方法の構成の概略について説明する。但し、本発明は、以下の構成に限定されない。
【００６９】
（付記１）
処理対象データ２１００を記憶する補助記憶装置２０００と、この補助記憶装置２０００から読み出された前記処理対象データを記憶保持するメモリ装置１１００を装備するサーバ装置１０００と、を備え、
前記サーバ装置１０００は、前記補助記憶装置２０００に記憶されている前記処理対象データ２１００の一部を前記メモリ装置１１００に読み出すデータ読み出し手段１００１と、前記メモリ装置１１００上で前記処理対象データに対する処理を行うインメモリデータ管理手段１００２と、前記メモリ装置１１００に記憶保持されている前記処理対象データを前記補助記憶装置２０００に戻して記憶するデータ格納手段１００３と、を備えると共に、
前記補助記憶装置２０００は、前記メモリ装置１１００上の前記処理対象データを前記補助記憶装置２０００に戻して記憶する前における前記処理対象データの格納場所を表す格納場所情報２００１を、当該処理対象データと関連付けて記憶しており、
前記サーバ装置１０００の前記データ読み出し手段１００１は、前記格納場所情報２００１に基づいて、前記処理対象データの格納場所が前記メモリ装置１１００である前記処理対象データを特定して、当該特定した処理対象データ２１００を前記補助記憶装置２０００から前記メモリ装置１１００に読み出す、
情報処理システム。
【００７０】
（付記２）
付記１に記載の情報処理システムであって、
前記補助記憶装置は、前記処理対象データ自体と、当該処理対象データを識別する識別情報と、を関連付けて記憶すると共に、前記処理対象データを識別する識別情報と、当該処理対象データの前記格納場所情報と、を関連付けた格納場所管理テーブルを記憶しており、
前記サーバ装置の前記データ読み出し手段は、前記格納場所管理テーブルに基づいて、前記格納場所が前記メモリ装置である前記処理対象データの識別情報を特定して、当該識別情報に対応する前記処理対象データを前記補助記憶装置から前記メモリ装置に読み出す、
情報処理システム。
【００７１】
（付記３）
付記２に記載の情報処理システムであって、
前記サーバ装置を複数備えると共に、
前記補助記憶装置は、前記処理対象データの識別情報と、当該処理対象データのマスタデータが記憶されている前記メモリ装置が装備された前記サーバ装置を特定する情報と、を関連付けて記憶しており、
前記サーバ装置の前記データ読み出し手段は、前記格納場所管理テーブルに基づいて、前記格納場所が前記メモリ装置である前記処理対象データの識別情報に対応する前記処理対象データのマスタデータが記憶される前記サーバ装置を特定し、当該サーバ装置が装備する前記メモリ装置に前記処理対象データを格納すると共に、当該処理対象データの複製となるスレーブデータを他の前記サーバ装置が装備する前記メモリ装置にコピーする、
情報処理システム。
【００７２】
（付記４）
付記１乃至３のいずれかに記載の情報処理システムであって、
前記サーバ装置の前記インメモリデータ管理手段は、前記データ読み出し手段にて前記補助記憶装置から前記メモリ装置に前記処理対象データの読み出しが完了するまでに受け付けた前記処理対象データに対する処理要求を保持し、当該処理対象データの前記メモリ装置への読み出しが完了した後に前記保持している処理要求に対する処理を前記メモリ装置上で実行する、
情報処理システム。
【００７３】
（付記５）
付記４に記載の情報処理システムであって、
前記サーバ装置の前記インメモリデータ管理手段は、前記データ読み出し手段にて前記補助記憶装置から前記メモリ装置に前記処理対象データの読み出しが完了するまでに受け付けた前記処理対象データに対する処理要求のうち、前記補助記憶装置に記憶された前記格納場所情報に基づいて、格納場所が前記メモリ装置である前記処理対象データに対する処理要求を、当該処理対象データの前記メモリ装置への読み出しが完了した後に前記メモリ装置上で処理し、格納場所が前記補助記憶装置である前記処理対象データに対する処理要求を前記補助記憶装置上で処理する、
情報処理システム。
【００７４】
（付記６）
付記１乃至５のいずれかに記載の情報処理システムであって、
前記サーバ装置の前記インメモリデータ管理手段は、前記データ格納手段にて前記メモリ装置に保持されていた前記処理対象データを前記補助記憶装置に戻して記憶する処理が完了するまでに受け付けた前記処理対象データに対する処理要求を保持し、当該処理対象データの前記補助記憶装置への格納が完了した後に当該補助記憶装置上で前記処理対象データに対する前記処理要求を処理する、
情報処理システム。
【００７５】
（付記７）
付記６に記載の情報処理システムであって、
前記サーバ装置の前記インメモリデータ管理手段は、前記データ格納手段にて前記メモリ装置に記憶保持されている前記処理対象データの前記補助記憶装置への格納が完了するまでに受け付けた前記処理対象データに対する処理要求のうち、更新順序を保つ必要のある処理要求は保持して、前記処理対象データの前記補助記憶装置への格納が完了した後に当該補助記憶装置上で前記処理要求を処理し、更新順序を保つ必要のない処理要求は、前記処理対象データの前記補助記憶装置への格納が完了する前であっても当該補助記憶装置上で処理する、
情報処理システム。
【００７６】
（付記８）
付記７に記載の情報処理システムであって、
前記サーバ装置の前記インメモリデータ管理手段は、前記データ格納手段にて前記メモリ装置に記憶保持されている前記処理対象データの前記補助記憶装置への格納が完了するまでに受け付けた前記処理対象データに対する処理要求の処理順序を記憶し、同一の前記処理対象データに対する処理要求のうち、処理順序が早い未処理の処理要求に対して処理順序が遅い処理要求が前記補助記憶装置に対して既に処理されている場合には、前記処理順序が早い処理要求の処理を実行しない、
情報処理システム。
【００７７】
（付記９）
処理対象データを記憶する補助記憶装置から読み出された前記処理対象データを記憶保持するメモリ装置を装備したサーバ装置であって、
前記補助記憶装置に、前記メモリ装置上の前記処理対象データが前記サーバ装置から前記補助記憶装置に戻して記憶される前における前記処理対象データの格納場所を表す格納場所情報が、当該処理対象データと関連付けて記憶されており、
前記補助記憶装置に記憶されている前記処理対象データの一部を前記メモリ装置に読み出すデータ読み出し手段と、前記メモリ装置上で前記処理対象データに対する処理を行うインメモリデータ管理手段と、前記メモリ装置に記憶保持されている前記処理対象データを前記補助記憶装置に戻して記憶するデータ格納手段と、を備え、
前記データ読み出し手段は、前記格納場所情報に基づいて、前記処理対象データの格納場所が前記メモリ装置である前記処理対象データを特定して、当該特定した処理対象データを前記補助記憶装置から前記メモリ装置に読み出す、
サーバ装置。
【００７８】
（付記１０）
付記９に記載のサーバ装置であって、
前記インメモリデータ管理手段は、前記データ読み出し手段にて前記補助記憶装置から前記メモリ装置に前記処理対象データの読み出しが完了するまでに受け付けた前記処理対象データに対する処理要求を保持し、当該処理対象データの前記メモリ装置への読み出しが完了した後に前記保持している処理要求に対する処理を前記メモリ装置上で実行する、
サーバ装置。
【００７９】
（付記１１）
処理対象データを記憶する補助記憶装置から読み出された前記処理対象データを記憶保持するメモリ装置を装備したサーバ装置に組み込まれるプログラムであって、
前記補助記憶装置に、前記メモリ装置上の前記処理対象データが前記サーバ装置から前記補助記憶装置に戻して記憶される前における前記処理対象データの格納場所を表す格納場所情報が、当該処理対象データと関連付けて記憶されている場合に、
前記サーバ装置に、前記補助記憶装置に記憶されている前記処理対象データの一部を前記メモリ装置に読み出すデータ読み出し手段と、前記メモリ装置上で前記処理対象データに対する処理を行うインメモリデータ管理手段と、前記メモリ装置に記憶保持されている前記処理対象データを前記補助記憶装置に戻して記憶するデータ格納手段と、を実現すると共に、
前記データ読み出し手段は、前記格納場所情報に基づいて、前記処理対象データの格納場所が前記メモリ装置である前記処理対象データを特定して、当該特定した処理対象データを前記補助記憶装置から前記メモリ装置に読み出す、
プログラム。
【００８０】
（付記１２）
付記１１に記載のプログラムであって、
前記インメモリデータ管理手段は、前記データ読み出し手段にて前記補助記憶装置から前記メモリ装置に前記処理対象データの読み出しが完了するまでに受け付けた前記処理対象データに対する処理要求を保持し、当該処理対象データの前記メモリ装置への読み出しが完了した後に前記保持している処理要求に対する処理を前記メモリ装置上で実行する、
プログラム。
【００８１】
（付記１３）
処理対象データを記憶する補助記憶装置から読み出された前記処理対象データを記憶保持するメモリ装置を装備したサーバ装置による情報処理方法であって、
前記補助記憶装置に、前記メモリ装置上の前記処理対象データが前記サーバ装置から前記補助記憶装置に戻して記憶される前における前記処理対象データの格納場所を表す格納場所情報が、当該処理対象データと関連付けて記憶されており、
前記サーバ装置が、前記補助記憶装置に記憶されている前記処理対象データの一部を前記メモリ装置に読み出し、前記メモリ装置上で前記処理対象データに対する処理を行い、前記メモリ装置に記憶保持されている前記処理対象データを前記補助記憶装置に戻して記憶する処理を行うと共に、
前記サーバ装置が、前記補助記憶装置から前記処理対象データの読み出し時に、前記格納場所情報に基づいて、前記処理対象データの格納場所が前記メモリ装置である前記処理対象データを特定して、当該特定した処理対象データを前記補助記憶装置から前記メモリ装置に読み出す、
情報処理方法。
【００８２】
（付記１４）
付記１３に記載の情報処理方法であって、
前記サーバ装置が、前記メモリ装置上で前記処理対象データに対する処理を行うときに、前記補助記憶装置から前記メモリ装置に前記処理対象データの読み出しが完了するまでに受け付けた前記処理対象データに対する処理要求を保持し、当該処理対象データの前記メモリ装置への読み出しが完了した後に前記保持している処理要求に対する処理を前記メモリ装置上で実行する、
情報処理方法。
【符号の説明】
【００８３】
１１〜１３  処理システム
２０  フロントシステム
２１，３１  通信サーバ
２２，３２，２００  ＡＰサーバ
２３，３３，３００，３１０，３２０，３３０  ＯＬＴＰサーバ
２４，３４，４００  ＤＢサーバ
３０  バックアップシステム
２０１  振り分け部
２０２，３０６  データ管理テーブル
３０１  データ読み出し部
３０２  インメモリデータ管理部
３０３  データ格納部
３０５  メモリ装置
３０７  メモリテーブル
３０８  インメモリデータベース
３１１，３１２，３１３，３２１，３２２，３２３，３３１，３３２，３３３  ＦＯデータ群
４０１  所在管理テーブル
４０２  マスタ管理テーブル
４０３  データ記憶部
１０００  サーバ装置
１００１  データ読み出し手段
１００２  インメモリデータ管理手段
１００３  データ格納手段
１１００  メモリ装置
２０００  補助記憶装置
２００１  格納場所情報
２１００  処理対象データ
【図１】
0005691306.tif 000002
【図２】
0005691306.tif 000003
【図３】
0005691306.tif 000004
【図４】
0005691306.tif 000005
【図５】
0005691306.tif 000006
【図６】
0005691306.tif 000007
【図７】
0005691306.tif 000008
【図８】
0005691306.tif 000009
【図９】
0005691306.tif 000010
【図１０】
0005691306.tif 000011
【図１１】
0005691306.tif 000012
【図１２】
0005691306.tif 000013
【図１３】
0005691306.tif 000014
【図１４】
0005691306.tif 000015
【図１５】
0005691306.tif 000016