JP5232814B2 - Cache system and cache access method - Google Patents

Cache system and cache access method Download PDF

Info

Publication number
JP5232814B2
JP5232814B2 JP2010026759A JP2010026759A JP5232814B2 JP 5232814 B2 JP5232814 B2 JP 5232814B2 JP 2010026759 A JP2010026759 A JP 2010026759A JP 2010026759 A JP2010026759 A JP 2010026759A JP 5232814 B2 JP5232814 B2 JP 5232814B2
Authority
JP
Japan
Prior art keywords
cache
unit
original data
transfer
data
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.)
Active
Application number
JP2010026759A
Other languages
Japanese (ja)
Other versions
JP2011164919A (en
Inventor
雅裕 田畑
純一 中原
千静 佐野
卓哉 林
吉隆 志平
敏昭 堤
真一 平田
磨人 堀惠
朋宏 内田
Original Assignee
エヌ・ティ・ティ・コムウェア株式会社
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 エヌ・ティ・ティ・コムウェア株式会社 filed Critical エヌ・ティ・ティ・コムウェア株式会社
Priority to JP2010026759A priority Critical patent/JP5232814B2/en
Publication of JP2011164919A publication Critical patent/JP2011164919A/en
Application granted granted Critical
Publication of JP5232814B2 publication Critical patent/JP5232814B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)

Description

本発明は、キャッシュシステム及びキャッシュアクセス方法に関する。   The present invention relates to a cache system and a cache access method.

従来、ユーザの端末から、ネットワークを介して接続されるサーバにアクセスし、このサーバから提供されるウェブ画面を用いて、ネットワーク上のデータベース(以下、「データベース」を「DB」と記載)に対して、データ参照等のデータアクセスを行なうシステムが実現されている。   Conventionally, a user's terminal accesses a server connected via a network, and uses a web screen provided from this server to a database on the network (hereinafter referred to as “DB”). Thus, a system for performing data access such as data reference is realized.

図25(a)は、このような既存システムの一例であるサービスオーダシステムの構成を示す図である。同図に示すサービスオーダシステムにおいて、ウェブサービスオーダ装置は、ネットワークを介して接続される端末へ、サービスオーダ管理装置が管理対象としている顧客DB内のデータへのアクセスを行なうためのウェブ画面を提供する。ユーザが、このウェブ画面を利用してデータ参照要求を端末に入力すると、ウェブサービスオーダ装置は、端末に入力されたデータ参照要求を受信し、受信したデータ参照要求をコマンド等に形式変換してサービスオーダ管理装置に送信する。受信したコマンドに従ってサービスオーダ管理装置が顧客DBから読み出したデータは、ウェブサービスオーダシステムを介して端末へ通知される。   FIG. 25A is a diagram showing a configuration of a service order system which is an example of such an existing system. In the service order system shown in the figure, the web service order device provides a web screen for accessing data in the customer DB managed by the service order management device to a terminal connected via the network. To do. When the user inputs a data reference request to the terminal using this web screen, the web service order device receives the data reference request input to the terminal, converts the format of the received data reference request into a command or the like. Sent to the service order management device. Data read from the customer DB by the service order management device according to the received command is notified to the terminal via the web service order system.

図25(a)に示すようなサービスオーダシステムでは、サービスオーダ管理装置がメンテナンス等により停止している間、ユーザの端末は、顧客DB内のデータを取得することはできない。そこで、図25(b)に示すように、ウェブサービスオーダ装置と、サービスオーダ管理装置の間に、顧客DBと同期してデータを記憶するキャッシュシステムを設けることが考えられる。これにより、サービスオーダ管理装置が停止している間も、ウェブサービスオーダ装置は参照が要求されたデータをキャッシュシステムから読み出して端末に提供することができる。   In the service order system as shown in FIG. 25A, the user terminal cannot acquire the data in the customer DB while the service order management apparatus is stopped due to maintenance or the like. Therefore, as shown in FIG. 25B, it is conceivable to provide a cache system for storing data in synchronization with the customer DB between the web service order apparatus and the service order management apparatus. Thereby, even while the service order management apparatus is stopped, the web service order apparatus can read the data requested to be referenced from the cache system and provide it to the terminal.

しかし、上記のように、キャッシュシステムを設けた場合であっても、キャッシュシステム自体が停止してしまった場合には、端末へデータを提供できなくなってしまう。そのため、キャッシュシステムのリダンダンシを確保することが必要である。   However, as described above, even if the cache system is provided, if the cache system itself stops, data cannot be provided to the terminal. Therefore, it is necessary to ensure the redundancy of the cache system.

リダンダンシを確保する場合、装置を多重化することが一般的である。図26に、キャッシュサーバを多重化してリダンダンシを確保した従来のシステム構成を示す。
図26(a)は、クラスタを利用し、待機系のキャッシュサーバをコールドスタンバイ(Cold.SBY)とした構成を示す。同図に示す構成のシステムでは、アクト(ACT)系とスタンバイ系のキャッシュサーバにおいてDBをSAN(Storage Area Network)により共有し、クラスタリングソフトウェアを利用して系切り替えを行なう。
図26(b)は、クラスタを利用し、待機系のキャッシュサーバをホットスタンバイ(Hot.SBY)とした構成を示す。同図に示す構成のシステムも同様に、アクト系とスタンバイ系のキャッシュサーバにおいてDBをSANにより共有し、クラスタリングソフトウェアを利用して系切り替えを行なう。
図26(c)は、各系のキャッシュサーバにDAS(Direct Attached Storage)のDBを配備し、待機系のキャッシュサーバをコールドスタンバイとした構成を示す。図26(c)においては、クォーラムサーバが各系の状態を保持し、系切り替えを行なう。
When ensuring redundancy, it is common to multiplex devices. FIG. 26 shows a conventional system configuration in which redundancy is ensured by multiplexing cache servers.
FIG. 26A shows a configuration in which a cluster is used and the standby cache server is cold standby (Cold.SBY). In the system having the configuration shown in the figure, a DB is shared by a storage area network (SAN) in an ACT system and a standby system cache server, and system switching is performed using clustering software.
FIG. 26B shows a configuration in which a cluster is used and the standby cache server is set to hot standby (Hot.SBY). Similarly, in the system having the configuration shown in the figure, the DB is shared by the SAN between the act and standby cache servers, and the system is switched using the clustering software.
FIG. 26C illustrates a configuration in which a DAS (Direct Attached Storage) DB is provided in each system cache server and the standby cache server is a cold standby. In FIG. 26C, the quorum server holds the state of each system and performs system switching.

また、データアクセスを無停止で提供することを目的とする技術が特許文献1、2に開示されている。特許文献1には、同じデータが割り当てられている複数のノードがロードバランサを介して外部と接続されており、ロードバランサは、ノードの状態を監視して最適なノードを選ぶことが記載されている。また、特許文献2には、主系、従系として動作する冗長構成のコンピュータそれぞれが、自身の状態をチェックした結果であるヘルシーチェック情報を相互に交換し、主系、従系の切り替えを行なうことが記載されている。   Further, Patent Documents 1 and 2 disclose techniques for providing data access without interruption. Patent Document 1 describes that a plurality of nodes to which the same data is assigned are connected to the outside via a load balancer, and the load balancer selects the optimum node by monitoring the state of the node. Yes. Also, in Patent Document 2, each of redundant computers operating as a primary system and a secondary system exchanges healthy check information as a result of checking their own state, and switches between the primary system and the secondary system. It is described.

特開2004−30204号公報JP 2004-30204 A 特開2008−226153号公報JP 2008-226153 A

上述したリダンダンシを確保するための既存の技術には、以下のような問題がある。
すなわち、図26(a)の構成において系切り替えを行なう場合、待機系はコールドスタンバイ起動となるため、系切り替えに数十分を要する場合があり、この間はデータを提供できない。また、SANのファームアップ中は、SANにアクセスするDBMS(DataBase Management System)を数十分間停止させる必要があり、やはり、この間は、データの提供できない。加えて、DBの共有ディスクがSPOF(Single Point of Failure)となってしまい、共有ディスク故障時には、全体が障害に陥ってしまう。
The existing technology for ensuring redundancy as described above has the following problems.
That is, when system switching is performed in the configuration of FIG. 26A, since the standby system is cold standby activated, it may take several tens of minutes for system switching, and data cannot be provided during this time. Further, during SAN firmware upgrade, it is necessary to stop a DBMS (DataBase Management System) accessing the SAN for several tens of minutes, and data cannot be provided during this time. In addition, the DB shared disk becomes a single point of failure (SPOF), and when the shared disk fails, the entire system falls into a failure.

また、図26(b)の構成において系切り替えを行なう場合、図26(a)と同様に、SANのファームアップ中は、SANにアクセスするDBMSを数十分間停止する必要があるとともに、共有ディスクがSPOFとなる。また、冗長構成を拡張する場合は各系の関係を解除する必要がある。つまり、両系のDBMSや、クラスタリングソフトウェアを停止し、設定変更の作業を行うため、その間はデータアクセスサービスが提供できない。
このように、上記の図26(a)、(b)のように、系間でDBを共有する形態では、恒常的に継続してデータを提供することは困難である。
Further, when system switching is performed in the configuration of FIG. 26B, it is necessary to stop the DBMS accessing the SAN for several tens of minutes during the SAN firmware upgrade, as in FIG. The disk becomes SPOF. In addition, when extending the redundant configuration, it is necessary to cancel the relationship between the systems. That is, the DBMS and clustering software of both systems are stopped and the setting change operation is performed, so that the data access service cannot be provided during that time.
As described above, in the form in which the DB is shared between the systems as shown in FIGS. 26A and 26B, it is difficult to provide data continuously.

また、図26(c)の構成においては系切り替えを行なう場合、待機系はコールドスタンバイ起動となるため、系切り替えに数十分を要する場合があり、この間はデータアクセスサービスが提供できないことに加え、各系の状態を保持し、系切り替えを行なうクォーラムサーバがSPOFとなってしまう。   In the configuration of FIG. 26 (c), when system switching is performed, the standby system is cold standby activated, so it may take several tens of minutes for system switching. During this time, the data access service cannot be provided. The quorum server that maintains the state of each system and performs system switching becomes SPOF.

特許文献1の技術は、ロードバランサが、外部から受信したリクエストを二重化されたノードコンピュータの両方に送信し、リクエストに対する仮実行結果を早く返送したノードコンピュータに対して本実行を行なうよう指示し、他方のノードコンピュータには無効を指示するものであり、ノードコンピュータにリクエストを受信する都度、仮実行を行わせその結果を破棄するという処理を実装しなければならない。また、特許文献2の技術は、冗長構成のコンピュータにおいて主系、従系の切り替えを行なうものであり、冗長構成のコンピュータが常に他方のコンピュータの状態を意識しなければならない。   In the technology of Patent Document 1, the load balancer transmits a request received from the outside to both of the duplicated node computers, and instructs the node computer that has returned the temporary execution result for the request to perform the main execution, The other node computer is instructed to be invalid, and each time a request is received by the node computer, a process of executing a temporary execution and discarding the result must be implemented. The technique of Patent Document 2 is for switching between a primary system and a secondary system in a redundant computer, and the redundant computer must always be aware of the state of the other computer.

本発明は、このような事情を考慮してなされたもので、その目的は、多重化されたキャッシュ装置を用い、キャッシュ装置に系切り替えのための負荷をかけることなく、恒常的に継続してデータ提供を可能とするキャッシュシステム及びキャッシュアクセス方法を提供することにある。   The present invention has been made in consideration of such circumstances, and the object thereof is to use a multiplexed cache device and continue constantly without applying a load for system switching to the cache device. To provide a cache system and a cache access method capable of providing data.

本発明は、上記の課題を解決すべくなされたもので、原本データをキャッシュする複数のキャッシュ装置と、受信信号を複数の前記キャッシュ装置のいずれに振り分けるかを管理するアクセス振分装置とを備えるキャッシュシステムであって、複数の前記キャッシュ装置それぞれは、前記アクセス振分装置から振り分けられたデータアクセス要求を受信し、受信したデータアクセス要求に応じて自キャッシュ装置がキャッシュしている原本データへのアクセス処理を行う参照部と、原本データ管理装置から原本データを読み出して自キャッシュ装置がキャッシュしている前記原本データを更新する転送部とを備え、前記アクセス振分装置は、アクト状態の複数の前記キャッシュ装置の前記参照部及び前記転送部それぞれの運用状態を取得するサービスチェック部と、前記サービスチェック部が取得した複数の前記キャッシュ装置の前記参照部及び前記転送部の運用状態に基づいて、複数の前記キャッシュ装置の中から受信信号の振分先となる前記キャッシュ装置を判定する運用系判断処理部とを備える、ことを特徴とするキャッシュシステムである。
上記発明によれば、それぞれが1台のサーバ(筐体)によって実現される複数のキャッシュ装置を、上位アプリケーションからのデータアクセス要求に応じて自身がキャッシュしている原本データへのアクセス処理を行う参照部と、原本データ管理装置が保持している原本データにより自身がキャッシュしている原本データを更新する転送部とに分離した構成とし、振分装置は、各キャッシュ装置内の参照部及び転送部が両方とも正常であるか、いずれかあるいは両方に障害が発生しているかなどの状況に従って信号の振分先、すなわち、運用系のキャッシュ装置を判断する。
これによって、振分装置は、上位アプリケーションからのデータアクセス要求を受信した場合、まずは参照部が正常に動作しているキャッシュ装置を選択し、選択したキャッシュ装置が1台であればその選択したキャッシュ装置を振り分け先とし、選択したキャッシュ装置が複数であれば、選択した中でも同一筐体内の転送部が正常であるキャッシュ装置の中から振り分け先を選択したり、選択したキャッシュ装置の転送部がいずれも障害である場合には、選択した中から任意に振り分け先を選択したりすることができる。従って、複数のキャッシュシステム装置の中から、恒常的に継続して原本データへのアクセスを提供すること可能となるとともに、できるだけ最新の原本データを提供することが可能となる。
また、参照部と転送部を分離しているため、将来的に参照部と転送部をそれぞれ別の筐体に実装した構成に移行することが容易となる。参照部のトラフィックは、上位サービスアプリケーションを使用するユーザの増加や、上位サービスアプリケーションの種類の増加に伴って増加する一方、転送部のトラフィックは、上位サービスアプリケーションから参照されるデータ項目が追加されたときに増加することを勘案すると、将来的には、参照部を実行するサーバをn台構成の全運用方式へ、転送部を実行するサーバを1+1台構成の運用待機方式へと移行することが望ましく、その縮退した構成として本発明のキャッシュシステムを用いることが可能となる。
なお、n台構成とは、同一のシステム、機能部を複数台用意し、全て運用系とする冗長化構成であり、1+1台構成とは、同一のシステム、機能部を2台用意し、一方は運用系、もう一方は待機系とする冗長化構成であり、運用待機方式とは、ある機能部を複数台のサーバに分散配置した際、機能部を運用系と待機系に分けて稼動する方式である。
The present invention has been made to solve the above-described problem, and includes a plurality of cache devices that cache original data, and an access distribution device that manages to which of the plurality of cache devices a received signal is distributed. In the cache system, each of the plurality of cache devices receives a data access request distributed from the access distribution device, and responds to the original data cached by the own cache device according to the received data access request. A reference unit that performs access processing; and a transfer unit that reads the original data from the original data management device and updates the original data cached by the own cache device, and the access distribution device includes a plurality of act states. Acquire the operational status of each of the reference unit and the transfer unit of the cache device And a cache check device to which a received signal is allocated from among the plurality of cache devices based on the operating states of the reference unit and the transfer unit of the plurality of cache devices acquired by the service check unit. An operating system determination processing unit for determining
According to the above invention, a plurality of cache devices, each realized by a single server (casing), perform access processing to the original data cached in response to a data access request from a higher-level application. The reference unit and the transfer unit that updates the original data cached by the original data held by the original data management device are separated, and the distribution device is configured to transfer the reference unit and the transfer in each cache device. The distribution destination of the signal, that is, the active cache device is determined according to the situation such as whether both of the units are normal or whether one or both of them has failed.
As a result, when the distribution apparatus receives a data access request from a higher-level application, the distribution apparatus first selects a cache apparatus in which the reference unit operates normally, and if the selected cache apparatus is one, the selected cache apparatus is selected. If the device is the distribution destination and there are multiple cache devices selected, you can select the distribution destination from among the cache devices that have the normal transfer unit in the same chassis, and the transfer unit of the selected cache device If there is also a failure, a sorting destination can be arbitrarily selected from the selected ones. Therefore, it is possible to provide access to the original data continuously from a plurality of cache system devices, and to provide the latest original data as much as possible.
In addition, since the reference unit and the transfer unit are separated, it becomes easy to shift to a configuration in which the reference unit and the transfer unit are mounted in separate cases in the future. The traffic of the reference unit increases with the increase in the number of users who use the upper service application and the types of upper service applications, while the traffic item of the transfer unit is added with data items that are referenced from the upper service application. In view of the increase in the number of servers, in the future, the server that executes the reference unit may be shifted to the entire operation system having n units, and the server that executes the transfer unit may be shifted to the operation standby system having 1 + 1 unit. Desirably, the cache system of the present invention can be used as the degenerated configuration.
The n-unit configuration is a redundant configuration in which a plurality of identical systems and functional units are prepared, and all are active. The 1 + 1 configuration is a configuration in which two identical systems and functional units are prepared, Is a redundant configuration with the active system, and the other is a standby system. The active standby system operates when a functional unit is distributed to multiple servers and the functional unit is divided into an active system and a standby system. It is a method.

また本発明は、上述するキャッシュシステムであって、前記運用系判断処理部は、前記参照部の運用状態に基づいて複数の前記参照部が正常であると判断した場合、正常な前記参照部を備える複数の前記キャッシュ装置の中から、前記転送部の運用状態に基づいて正常であると判断される前記転送部を備える前記キャッシュ装置を振分先と判定する、ことを特徴とする。
上記発明によれば、振分装置は、参照部が正常に動作しているということだけではなく、原本データの同期を行なう転送部が正常に動作しているかも判断して運用系のキャッシュ装置を選択する。
転送部が正常に動作していれば、そのキャッシュ装置にキャッシュされている原本データは正しく同期されているため、参照部が正常に動作しているキャッシュ装置の中から、転送部も正常に動作しているキャッシュ装置を振り分け先として選択することにより、データアクセスが可能な原本データの中から常に最新の原本データを上位アプリケーションに提供することができる。
Also, the present invention is the above-described cache system, wherein the operational system determination processing unit determines that the reference unit is normal when a plurality of the reference units are determined to be normal based on an operational state of the reference unit. The cache device including the transfer unit that is determined to be normal based on an operation state of the transfer unit is determined as a distribution destination from the plurality of cache devices provided.
According to the above invention, the allocating device determines not only that the reference unit is operating normally but also whether the transfer unit that synchronizes the original data is operating normally, so that the operational cache device Select.
If the transfer unit is operating normally, the original data cached in the cache device is correctly synchronized, so the transfer unit also operates normally from among the cache devices in which the reference unit is operating normally. By selecting the cache device as the distribution destination, it is possible to always provide the latest original data among the original data that can be accessed to the upper application.

また本発明は、上述するキャッシュシステムであって、複数の前記キャッシュ装置それぞれの転送部は、前記振分装置に系状態識別信号を送信する系状態識別部と、前記振分装置から自身が送信した前記系状態識別信号を受信した場合に、原本データ管理装置から原本データを読み出して自キャッシュ装置がキャッシュしている前記原本データを更新する情報転送処理部と、他のキャッシュ装置がキャッシュしている原本データを前記情報転送処理部が読み出した前記原本データにより更新する系間転送処理部とをさらに備え、前記アクセス振分装置の前記運用系判断処理部は、振分先として判定した前記キャッシュ装置へ受信した前記系状態識別信号を送信する、ことを特徴とする。
上記発明によれば、各キャッシュ装置の転送部は系状態識別信号を送信し、送信された系状態識別信号は、振分装置が運用系と判断したキャッシュ装置へ振り分けられる。自身が送信した系状態識別信号を受信した転送部は自系が運用系であると判断し、原本データ管理装置が保持している原本データによって自系がキャッシュしている原本データを更新し、さらに他のキャッシュ装置がキャッシュしている原本データも更新する。
振分装置は、信号の種類や宛先ではなく、各キャッシュ装置内の参照部及び転送部の運用状態によって信号の振分先を判断するため、上位アプリケーションからのデータアクセス要求と同じ振分先に系状態識別信号も振り分けられる。そこで、自身の送信した系状態識別信号を受信した、すなわち、データアクセス要求を処理するキャッシュ装置の転送部がまず、原本データ管理装置が保持している原本データとの同期を行なうことで、常に最新の原本データを上位アプリケーションに提供することが可能となる。例えば、待機系のキャッシュ装置の転送部が原本データ管理装置と同期を行い、続いて、運用系のキャッシュ装置との系間同期を行なうような同期手順と比較すると、運用系のキャッシュ装置がキャッシュしている原本データが更新されるタイミングが早く、また、系間同期中の障害等によって、運用系のキャッシュ装置がキャッシュしている原本データの更新が行なえずに、古い原本データへのアクセスを提供してしまうようなこともない。また、原本データ管理装置との同期の後、他系のキャッシュ装置とも系間同期を行なうため、キャッシュ装置間での原本データの不整合も発生しない。
Further, the present invention is the above-described cache system, wherein each of the transfer units of the plurality of cache devices transmits a system state identification signal to the distribution device, and is transmitted from the distribution device by itself. When the system status identification signal is received, an information transfer processing unit that reads the original data from the original data management device and updates the original data cached by the own cache device, and another cache device caches And an intersystem transfer processing unit that updates the original data read from the original data read by the information transfer processing unit, wherein the operational system determination processing unit of the access distribution device determines the cache determined as the distribution destination The system state identification signal received is transmitted to the apparatus.
According to the above invention, the transfer unit of each cache device transmits a system state identification signal, and the transmitted system state identification signal is distributed to the cache device that the distribution device determines to be the active system. The transfer unit that has received the system state identification signal transmitted by itself determines that the own system is the active system, updates the original data cached by the own system with the original data held by the original data management device, Furthermore, the original data cached by another cache device is also updated.
Since the allocating device determines the signal allocating destination according to the operation status of the reference unit and the transfer unit in each cache device, not the signal type or destination, the allocating device uses the same allocation destination as the data access request from the upper application. A system state identification signal is also distributed. Therefore, when the system state identification signal transmitted by itself is received, that is, the transfer unit of the cache device that processes the data access request first synchronizes with the original data held by the original data management device, so The latest original data can be provided to the host application. For example, when compared with a synchronization procedure in which the transfer unit of the standby cache device synchronizes with the original data management device and subsequently performs intersystem synchronization with the active cache device, the active cache device caches The original data being updated is early and the original data cached by the active cache device cannot be updated due to a failure during synchronization between systems. There is no such thing as offering. Further, after synchronization with the original data management device, inter-system synchronization is performed with other cache devices, so that inconsistency of the original data between the cache devices does not occur.

また本発明は、上述するキャッシュシステムであって、前記情報転送処理部は、自身が送信した前記系状態識別信号を受信した場合に、前記原本データ管理装置から、自キャッシュ装置がキャッシュしている前記原本データよりも、前記原本データ管理装置における更新日時が新しい原本データを読み出し、自キャッシュ装置がキャッシュしている前記原本データを更新し、前記系間転送処理部は、自キャッシュ装置がキャッシュしている前記原本データのうち、前記他のキャッシュ装置がキャッシュしている前記原本データよりも前記原本データ管理装置における更新日時が新しい原本データにより、前記他のキャッシュ装置がキャッシュしている原本データを更新する、ことを特徴とする。
上記発明によれば、運用系のキャッシュ装置の転送部は、原本データ管理装置における更新日時に基づいて、自身がキャッシュしている原本データの更新と、他のキャッシュ装置がキャッシュしている原本データの更新を行なう。
これにより、運用系のキャッシュ装置が切り替わり、新たにデータアクセス要求の振分先となったキッシュ装置において原本データ管理装置と同期を行なう際や、他系の原本データとの同期を行なう際にも更新もれが発生することがない。よって、一元性を確保しながら、最新の原本データを提供することが可能となる。
Also, the present invention is the above-described cache system, wherein the information transfer processing unit caches itself from the original data management device when receiving the system state identification signal transmitted by itself. Read the original data whose update date and time in the original data management device is newer than the original data, update the original data cached by the own cache device, and the inter-system transfer processing unit is cached by the own cache device. Of the original data, the original data cached by the other cache device is updated by the original data having a newer update date and time in the original data management device than the original data cached by the other cache device. It is characterized by updating.
According to the above invention, the transfer unit of the active cache device updates the original data cached by itself and the original data cached by another cache device based on the update date and time in the original data management device. Update.
As a result, the active cache device is switched, and the Kish device that is the new allocation destination of the data access request synchronizes with the original data management device or when synchronizing with the original data of another system. There is no update leak. Therefore, it is possible to provide the latest original data while ensuring unity.

また本発明は、上述するキャッシュシステムであって、前記転送部は、自キャッシュ装置がキャッシュしている前記原本データを記憶する転送データ記憶部をさらに備え、前記情報転送処理部は、前記原本データ管理装置から読み出した前記原本データを前記転送データ記憶部に書き込み、前記参照部は、自キャッシュ装置がキャッシュしている前記原本データを記憶する参照データ記憶部と、前記転送データ記憶部から読み出した前記原本データを前記参照データ記憶部に書き込む系内同期処理部と、受信した前記データアクセス要求に応じて前記参照データ記憶部に記憶している前記原本データへのアクセス処理を行う参照データアクセス部とを備える、ことを特徴とする。
上記発明によれば、参照部及び転送部それぞれにキャッシュした原本データを記憶する記憶部を備えておき、転送部は、自身の備える記憶部に原本データ管理装置から読み出した原本データを書き込んでキャッシュし、参照部は自身の備える記憶部にキャッシュしている原本データを、転送部の記憶部にキャッシュしている原本データによって更新する。
上記構成により、参照部と転送部を完全に分離することが可能となるため、将来的に、参照部を実行するサーバをn台構成の全運用方式へ、転送部を実行するサーバを1+1台構成の運用待機方式へと移行することが容易になる。
The present invention is the above-described cache system, wherein the transfer unit further includes a transfer data storage unit that stores the original data cached by the own cache device, and the information transfer processing unit includes the original data The original data read from the management device is written to the transfer data storage unit, and the reference unit reads the reference data storage unit that stores the original data cached by the own cache device and the transfer data storage unit. An in-system synchronization processing unit that writes the original data to the reference data storage unit, and a reference data access unit that performs an access process to the original data stored in the reference data storage unit in response to the received data access request It is characterized by comprising.
According to the above invention, each of the reference unit and the transfer unit includes the storage unit that stores the cached original data, and the transfer unit writes the original data read from the original data management device to the storage unit that the transfer unit has and caches the original data. Then, the reference unit updates the original data cached in its own storage unit with the original data cached in the storage unit of the transfer unit.
With the above configuration, it is possible to completely separate the reference unit and the transfer unit. Therefore, in the future, the server that executes the reference unit will be changed to all operation systems having n units, and the server that executes the transfer unit will be 1 + 1 in the future. It becomes easy to shift to a configuration standby system.

また本発明は、原本データをキャッシュする複数のキャッシュ装置と、受信信号を複数の前記キャッシュ装置のいずれに振り分けるかを管理するアクセス振分装置とを備えるキャッシュシステムに用いられるキャッシュアクセス方法であって、複数の前記キャッシュ装置それぞれは、前記アクセス振分装置から振り分けられたデータアクセス要求を受信し、受信したデータアクセス要求に応じて自キャッシュ装置がキャッシュしている原本データへのアクセス処理を行う参照部と、原本データ管理装置から原本データを読み出して自キャッシュ装置がキャッシュしている前記原本データを更新する転送部とを備えており、前記アクセス振分装置において、サービスチェック部が、アクト状態の複数の前記キャッシュ装置の前記参照部及び前記転送部それぞれの運用状態を取得する状態取得過程と、運用系判断処理部が、前記状態取得過程において取得した複数の前記キャッシュ装置の前記参照部及び前記転送部の運用状態に基づいて、複数の前記キャッシュ装置の中から受信信号の振分先となる前記キャッシュ装置を判定する運用系判断処理過程と、を有することを特徴とするキャッシュアクセス方法である。   The present invention is also a cache access method used in a cache system including a plurality of cache devices that cache original data and an access distribution device that manages to which of the plurality of cache devices a received signal is distributed. Each of the plurality of cache devices receives the data access request distributed from the access distribution device, and performs access processing to the original data cached by the own cache device according to the received data access request And a transfer unit that reads the original data from the original data management device and updates the original data cached by the own cache device. In the access distribution device, the service check unit is in an act state. A plurality of the reference units of the cache device; A status acquisition process for acquiring the operating status of each of the sending units, and an active system determination processing unit, based on the operating statuses of the reference unit and the transfer unit of the cache devices acquired in the status acquiring process, And an operational system determination process for determining the cache device to which a received signal is allocated from among the cache devices.

本発明によれば、振分装置は、各キャッシュ装置内の参照部及び転送部が両方とも正常であるか、いずれかあるいは両方に障害が発生しているかなどの状況に従って信号の振分先、すなわち、運用系のキャッシュ装置を判断するため、恒常的に継続して原本データへのアクセスを提供することが可能となるとともに、できるだけ最新の原本データを提供することが可能となる。
また、本発明によれば、参照部が正常に動作しているキャッシュ装置の中から、転送部も正常に動作しているキャッシュ装置を振り分け先として選択するため、アクセス可能な原本データの中から常に最新の原本データを上位アプリケーションに提供することが可能となる。
また、本発明によれば、データアクセス要求を処理する参照系と同じキャッシュ装置の転送部がまず、原本データ管理装置が保持している原本データとの同期を行なうため、常に最新の原本データを上位アプリケーションに提供することが可能となり、原本データ管理装置との同期後、他系との同期を行なうため、キャッシュ装置間での原本データの不整合も発生しない。
また、本発明によれば、データアクセス要求の振分先となるキャッシュ装置は、原本データ管理装置における更新日時に基づいて、自身がキャッシュしている原本データの更新と、他のキャッシュ装置がキャッシュしている原本データとの同期を行なうため、一元性を確保した、最新の原本データを提供することが可能となる。
また、本発明によれば、参照部と転送部を分離しているため、将来的に参照部と転送部をそれぞれ別の筐体に実装した構成に移行することが容易となり、参照部及び転送部にそれぞれ記憶部を有することによって、さらに、この分離が容易となる。従って、参照部を実行するサーバをn台構成の全運用方式に、転送部を実行するサーバを1+1台構成の運用待機方式へと移行する場合の縮退構成として本発明のキャッシュシステムを用いることが可能となる。
According to the present invention, the allocating device is configured to distribute the signal according to a situation such as whether both the reference unit and the transfer unit in each cache device are normal, or a failure has occurred in either or both, In other words, since the operating cache device is determined, it is possible to continuously provide access to the original data and to provide the latest original data as much as possible.
Further, according to the present invention, the cache device in which the transfer unit also operates normally is selected as the distribution destination from among the cache devices in which the reference unit operates normally. It is possible to always provide the latest original data to the upper application.
Further, according to the present invention, the transfer unit of the same cache device as the reference system that processes the data access request first synchronizes with the original data held by the original data management device. It can be provided to a host application, and synchronization with the other system is performed after synchronization with the original data management apparatus, so that inconsistency of the original data between the cache apparatuses does not occur.
Further, according to the present invention, the cache device to which the data access request is distributed can update the original data cached by the cache device based on the update date and time in the original data management device, and the other cache device can Since the synchronization with the original data is performed, it is possible to provide the latest original data that ensures unity.
In addition, according to the present invention, since the reference unit and the transfer unit are separated, it becomes easy to move to a configuration in which the reference unit and the transfer unit are mounted in different cases in the future. This separation is further facilitated by having a storage part in each part. Therefore, the cache system according to the present invention can be used as a degenerate configuration when the server that executes the reference unit shifts to the entire operation system of n units and the server that executes the transfer unit shifts to the operation standby system of 1 + 1 unit. It becomes possible.

本発明の一実施形態によるキャッシュシステムの接続構成を示す図である。It is a figure which shows the connection structure of the cache system by one Embodiment of this invention. 同実施形態によるキャッシュシステムの動作概要を示す図である。It is a figure which shows the operation | movement outline | summary of the cache system by the embodiment. 同実施形態による各装置の内部構成を示すブロック図である。It is a block diagram which shows the internal structure of each apparatus by the embodiment. 同実施形態によるキャッシュシステムの系状態確認シーケンスを示す図である。It is a figure which shows the system state confirmation sequence of the cache system by the embodiment. 同実施形態による系状態確認における各装置の機能部間の処理の流れを示す図である。It is a figure which shows the flow of a process between the function parts of each apparatus in the system state confirmation by the embodiment. 同実施形態による両系のキャッシュサーバ1の参照部11及び転送部15における自系内状態監視処理フローを示す図である。It is a figure which shows the own system state monitoring process flow in the reference part 11 and the transfer part 15 of the cache server 1 of both systems by the same embodiment. 同実施形態による両系のキャッシュサーバ1の参照部11及び転送部15における自系内状態監視結果返却処理フローを示す図である。It is a figure which shows the self-system state monitoring result return process flow in the reference part 11 and the transfer part 15 of the cache server 1 of both systems by the embodiment. 同実施形態によるロードバランサ2のヘルスチェック処理フローを示す図である。It is a figure which shows the health check processing flow of the load balancer 2 by the embodiment. 同実施形態によるデータ参照要求受信時の振分処理シーケンスを示す図である。It is a figure which shows the distribution process sequence at the time of the data reference request reception by the embodiment. 同実施形態による系状態識別信号受信時の振分処理シーケンスを示す図である。It is a figure which shows the distribution process sequence at the time of the system state identification signal reception by the embodiment. 同実施形態によるロードバランサ2aにおける振分処理フローを示す図である。It is a figure which shows the distribution processing flow in the load balancer 2a by the embodiment. 同実施形態による振分け状態表を示す図である。It is a figure which shows the distribution state table | surface by the embodiment. 同実施形態によるロードバランサ2bにおける振分処理の処理フローを示す図である。It is a figure which shows the processing flow of the distribution process in the load balancer 2b by the embodiment. 同実施形態への適用を検討した原本データ同期方法を示す図である。It is a figure which shows the original data synchronization method which considered application to the embodiment. 同実施形態への適用を検討した系間同期方法を示す図である。It is a figure which shows the system synchronization method which considered application to the same embodiment. 同実施形態によるキャッシュシステムのデータ同期シーケンスを示す図である。It is a figure which shows the data synchronization sequence of the cache system by the embodiment. 同実施形態によるデータ同期処理に用いられる各装置のデータ例を示す図である。It is a figure which shows the example of data of each apparatus used for the data synchronous process by the embodiment. 同実施形態による原本データ同期処理におけるデータ更新の流れを示す図である。It is a figure which shows the flow of the data update in the original data synchronous process by the embodiment. 同実施形態による系間データ同期処理におけるデータ更新の流れを示す図である。It is a figure which shows the flow of the data update in the data synchronization process between systems by the same embodiment. 同実施形態による両系のキャッシュサーバ1の転送部15における系状態識別処理フローを示す図である。It is a figure which shows the system state identification processing flow in the transfer part 15 of the cache server 1 of both systems by the same embodiment. 同実施形態による両系のキャッシュサーバ1の転送部15における原本データとの同期処理フローを示す図である。It is a figure which shows the synchronous processing flow with the original data in the transfer part 15 of the cache server 1 of both systems by the embodiment. 同実施形態による運用系のキャッシュサーバ1の転送部15における系間データ同期処理フローを示す図である。It is a figure which shows the data synchronization processing flow in the system in the transfer part 15 of the active system cache server 1 by the embodiment. 同実施形態による汎用インタフェースを用いた動作概要を示す図である。It is a figure which shows the operation | movement outline | summary using the general purpose interface by the embodiment. 同実施形態によるキャッシュサーバ1の汎用インタフェース処理フローを示す図である。It is a figure which shows the general purpose interface processing flow of the cache server 1 by the embodiment. 従来のデータアクセスシステムを示す図である。It is a figure which shows the conventional data access system. 二重化によりリダンダンシを確保した従来のシステム構成を示す図である。It is a figure which shows the conventional system structure which ensured the redundancy by duplication.

以下、図面を参照しながら本発明の実施形態を詳細に説明する。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.

[1. 構成]
図1は、本発明の一実施形態によるキャッシュシステムの接続構成を示す図である。同図において、キャッシュシステムは、キャッシュサーバ1により多重化されたキャッシュインタフェース装置と、キャッシュサーバ1それぞれに接続されるロードバランサ2a、2bとからなる。ロードバランサ2aはさらに、原本データを使用して上位サービスアプリケーションを実行するアプリケーション装置4と接続され、ロードバランサ2bはさらに、上位サービスアプリケーションが参照する原本データを記憶する原本データ管理装置3と接続される。同図においては、アプリケーション装置4を1台のみ示しているが、複数台が接続されうる。
[1. Constitution]
FIG. 1 is a diagram showing a connection configuration of a cache system according to an embodiment of the present invention. In the figure, the cache system includes a cache interface device multiplexed by the cache server 1 and load balancers 2a and 2b connected to the cache server 1 respectively. The load balancer 2a is further connected to an application device 4 that executes the higher level service application using the original data, and the load balancer 2b is further connected to an original data management device 3 that stores the original data referred to by the higher level service application. The Although only one application device 4 is shown in the figure, a plurality of devices can be connected.

キャッシュサーバ1は、原本データ管理装置3が記憶する原本データのうち、上位サービスアプリケーションに必要な情報を内部にキャッシュする。キャッシュサーバ1は、上位サービスアプリケーションの実行に伴ってアプリケーション装置4から送信されたデータ参照要求に対して、原本データ管理装置3から読み出してキャッシュした原本データを検索し、その結果を返却する。キャッシュサーバ1は多重化構成の形態をとっているため、上位サービスアプリケーションに対して、サービスの恒常的継続が可能である。   The cache server 1 internally caches information necessary for the higher-level service application among the original data stored in the original data management device 3. In response to the data reference request transmitted from the application apparatus 4 in accordance with the execution of the higher-level service application, the cache server 1 retrieves the original data read and cached from the original data management apparatus 3 and returns the result. Since the cache server 1 takes the form of a multiplexed configuration, the service can be continuously maintained for the upper service application.

以下、キャッシュサーバ1のうち一方を0系、他方を1系とし、0系のキャッシュサーバ1をキャッシュサーバ1−0、1系のキャッシュサーバ1をキャッシュサーバ1−1と記載し、0系と1系をあわせて「両系」と記載する。また、ロードバランサ2a、2bを総称してロードバランサ2と記載する。なお、ロードバランサ2は二重化されており、障害等が発生した場合でも短い時間での系切り替えが可能である。   Hereinafter, one of the cache servers 1 is a 0 system, the other is a 1 system, the 0 system cache server 1 is referred to as a cache server 1-0, and the 1 system cache server 1 is referred to as a cache server 1-1. One system is collectively referred to as “both systems”. Further, the load balancers 2a and 2b are collectively referred to as a load balancer 2. Note that the load balancer 2 is duplicated, and system switching can be performed in a short time even when a failure or the like occurs.

図2は、図1に示すキャッシュシステムの動作概要を示す図である。
本実施形態において、両系のキャッシュサーバ1は、アクト系、スタンバイ系という系状態を持たず、キャッシュサーバ1−0、1−1ともアクト系として動作しており、ネットワーク装置としてのロードバランサ2が、受信した信号をキャッシュサーバ1−0、1−1のいずれに振り分けるかを判断する。ここでは、ロードバランサ2が信号を振り分ける側のキャッシュサーバ1を運用系、運用系ではない側のキャッシュサーバ1を待機系と記載する。
FIG. 2 is a diagram showing an outline of the operation of the cache system shown in FIG.
In this embodiment, the cache servers 1 of both systems do not have an act system and a standby system, and both the cache servers 1-0 and 1-1 operate as an act system, and a load balancer 2 as a network device. Determines whether the received signal is distributed to the cache servers 1-0 and 1-1. Here, the cache server 1 on which the load balancer 2 distributes signals is described as the active system, and the cache server 1 on the non-active system side is described as the standby system.

各キャッシュサーバ1は、参照部11及び転送部15を備えた1台のサーバである。すなわち、同じ筐体において参照部11及び転送部15が動作する。参照部11は、該参照部11が備えるデータベース(以下、「DB」と記載)にキャッシュされている原本データを用い、上位サービスアプリケーションの実行によりアプリケーション装置4から送信されたデータ参照要求に対応して応答する。転送部15は、ロードバランサ2から自系が運用系と判断されているかを識別し、運用系であると判断されている場合は、該転送部15が備えるDBにキャッシュされている原本データと、原本データ管理装置3に記憶されている原本データとのデータ同期を行い、さらに、他系の転送部15のDBにキャッシュされている原本データとの同期を行なう。参照部11は、定期的に転送部15のDBから同期が行われた原本データを読み出し、該参照部11が備えるDBを更新することにより、転送部15のDBとデータ同期を行なっている。   Each cache server 1 is a single server including a reference unit 11 and a transfer unit 15. That is, the reference unit 11 and the transfer unit 15 operate in the same casing. The reference unit 11 uses original data cached in a database (hereinafter referred to as “DB”) provided in the reference unit 11 and responds to a data reference request transmitted from the application device 4 by executing a higher-level service application. Respond. The transfer unit 15 identifies whether the own system is determined to be the active system from the load balancer 2, and if it is determined to be the active system, the original data cached in the DB included in the transfer unit 15 and Data synchronization with the original data stored in the original data management device 3 is performed, and further synchronization with the original data cached in the DB of the transfer unit 15 of the other system is performed. The reference unit 11 periodically reads the original data synchronized from the DB of the transfer unit 15 and updates the DB included in the reference unit 11 to perform data synchronization with the DB of the transfer unit 15.

ロードバランサ2は、定期的にキャッシュサーバ1にヘルスチェック信号を送信して各系の参照部11及び転送部15の状態を監視するヘルスチェックを行っており、その監視結果に基づいて運用系と待機系を決定する。
ロードバランサ2aは、アプリケーション装置4側の仮想IPアドレスAを持つとともに、キャッシュサーバ1−0の物理IPアドレスC0、キャッシュサーバ1−1の物理IPアドレスC1を記憶しており、仮想IPアドレスAを宛先とした信号を受信すると、運用側のキャッシュサーバ1の物理IPアドレスC0またはC1を宛先として受信した信号を送出する。このとき、物理IPアドレスには、参照部11に対応したポート番号が付加される。キャッシュサーバ1−0、1−1の参照部11それぞれのポート番号をPS0、PS1とする。
同様に、ロードバランサ2bは、原本データ管理装置3側の仮想IPアドレスBを持つとともに、キャッシュサーバ1−0の物理IPアドレスC0、キャッシュサーバ1−1の物理IPアドレスC1を記憶しており、仮想IPアドレスBを宛先とした信号を受信すると、運用側のキャッシュサーバ1の物理IPアドレスC0またはC1を宛先として受信した信号を送出する。このとき、物理IPアドレスには、転送部15に対応したポート番号が付加される。キャッシュサーバ1−0、1−1の転送部15それぞれのポート番号をPT0、PT1とする。
The load balancer 2 periodically sends a health check signal to the cache server 1 to perform a health check that monitors the state of the reference unit 11 and the transfer unit 15 of each system. Based on the monitoring result, the load balancer 2 Determine the standby system.
The load balancer 2a has a virtual IP address A on the application device 4 side, and stores a physical IP address C0 of the cache server 1-0 and a physical IP address C1 of the cache server 1-1. When the destination signal is received, the received signal is sent with the physical IP address C0 or C1 of the cache server 1 on the operation side as the destination. At this time, a port number corresponding to the reference unit 11 is added to the physical IP address. The port numbers of the reference units 11 of the cache servers 1-0 and 1-1 are PS0 and PS1, respectively.
Similarly, the load balancer 2b has a virtual IP address B on the original data management device 3 side, and stores the physical IP address C0 of the cache server 1-0 and the physical IP address C1 of the cache server 1-1. When a signal destined for the virtual IP address B is received, a signal received with the physical IP address C0 or C1 of the cache server 1 on the operation side as the destination is transmitted. At this time, a port number corresponding to the transfer unit 15 is added to the physical IP address. The port numbers of the transfer units 15 of the cache servers 1-0 and 1-1 are PT0 and PT1, respectively.

なお、同じキャッシュサーバ1内において参照部11、転送部15が異なる物理IPアドレスを用いるようにすることもできる。この場合、ロードバランサ2aは、仮想IPアドレスAを宛先とした信号を受信すると、運用側のキャッシュサーバ1の参照部11に対応した物理IPアドレスを宛先として受信した信号を送出する。同様に、ロードバランサ2bは、仮想IPアドレスBを宛先とした信号を受信すると、運用側のキャッシュサーバ1の転送部15に対応した物理IPアドレスを宛先として受信した信号を送出する。   In the same cache server 1, the reference unit 11 and the transfer unit 15 can use different physical IP addresses. In this case, when the load balancer 2a receives a signal destined for the virtual IP address A, the load balancer 2a transmits a signal received with the physical IP address corresponding to the reference unit 11 of the cache server 1 on the operation side as the destination. Similarly, when the load balancer 2b receives a signal destined for the virtual IP address B, the load balancer 2b transmits a signal received with the physical IP address corresponding to the transfer unit 15 of the cache server 1 on the operation side as the destination.

上記により、ロードバランサ2aは、運用系と判断しているキャッシュサーバ1の参照部11にアプリケーション装置4から受信したデータ参照要求を送信する。そのため、キャッシュサーバ1は、系を意識せずとも、データ参照要求を受信したときに、自身の参照部11が備えるDAS(Direct Attached Storage)のDBに記憶されているデータを読み出して応答すればよい。ロードバランサ2aに待機系と判断されているキャッシュサーバ1も、運用系と判断されているキャッシュサーバ1と同じ状態で動作しているため、ロードバランサ2aによって運用系の切り替え判断がなされた場合にもそれを意識する必要はなく、受信したデータ参照要求に応答すればよい。このように、独立した2つのキャッシュサーバ1が外部からはあたかも1つの装置のように見え、サービスルートの決定はロードバランサ2に制御をゆだねている。   As described above, the load balancer 2a transmits the data reference request received from the application device 4 to the reference unit 11 of the cache server 1 determined to be the active system. Therefore, when the cache server 1 receives a data reference request without being aware of the system, the cache server 1 reads and stores data stored in a DAS (Direct Attached Storage) DB included in its reference unit 11. Good. Since the cache server 1 that is determined to be the standby system by the load balancer 2a is also operating in the same state as the cache server 1 that is determined to be the active system, when the load balancer 2a determines to switch the active system However, it is not necessary to be aware of this, and it is sufficient to respond to the received data reference request. Thus, the two independent cache servers 1 look as if they are one device from the outside, and the determination of the service route is left to the load balancer 2 to be controlled.

ただし、本実施の形態のキャッシュシステムにおいて、原本データ管理装置3が記憶する原本データとの同期や、待機系のキャッシュサーバ1とのデータ同期は、運用系のキャッシュサーバ1の転送部15から起動する。そのため、キャッシュサーバ1の転送部15は、ロードバランサ2bに自系の系状態を問い合わせる系状態識別処理を行なう。系状態識別処理では、ロードバランサ2が仮想IPアドレスを宛先とした信号を、運用系のキャッシュサーバ1に振り分けることを利用する。つまり、キャッシュサーバ1の転送部15は、仮想IPアドレスB宛に系状態識別信号を送信し、ロードバランサ2bからその信号を受信した場合には運用系であると判断する。   However, in the cache system of the present embodiment, synchronization with the original data stored in the original data management device 3 and data synchronization with the standby cache server 1 are started from the transfer unit 15 of the active cache server 1. To do. Therefore, the transfer unit 15 of the cache server 1 performs a system state identification process that inquires the load balancer 2b about its own system state. In the system state identification process, the load balancer 2 uses the distribution of a signal destined for the virtual IP address to the active cache server 1. That is, when the transfer unit 15 of the cache server 1 transmits a system state identification signal to the virtual IP address B and receives the signal from the load balancer 2b, the transfer unit 15 determines that the system is an active system.

ロードバランサ2は、ヘルスチェックによる各系の参照部11及び転送部15の状態の監視結果に基づいて運用系と待機系を決定しているが、両系のキャッシュサーバ1の参照部11とも運用可能(障害が発生していない)である場合、同じ筐体に備えられている転送部15が運用可能であるキャッシュサーバ1を運用系と判断する。   The load balancer 2 determines the active system and the standby system based on the monitoring results of the statuses of the reference unit 11 and the transfer unit 15 of each system based on the health check, but both the reference unit 11 of the cache server 1 of both systems operate. When it is possible (no failure has occurred), the cache server 1 in which the transfer unit 15 provided in the same casing can be operated is determined as the active system.

例えば、ある機能部を複数台のサーバに分散配置した際に、ロードバランスにより全サーバ上の該当機能部を全て運用系として稼動する全運用方式のように、転送部15の運用状態に関わらず、参照部11が運用可能であれば、上位サービスアプリケーションからキャッシュサーバ1にアクセス可能としたとする。この場合、転送部15の運用状態が待機系のキャッシュサーバ1では、原本データ管理装置3から取得される原本データとの同期が遅れてしまったり(系間同期の遅れ)、キャッシュされている原本データが更新されなかったりする(系間同期故障)可能性がある。このときに、転送部15が待機系であるキャッシュサーバ1に、データ参照要求が振り分けられてしまうと、古いデータを返却するという不具合が生じてしまう。
そこで、ロードバランサ2aは、両系のキャッシュサーバ1の参照部11が運用可能かどうかを確認し、同時に、両系のキャッシュサーバ1の転送部15が運用可能かどうかを確認する。そして、両系のキャッシュサーバ1の参照部11とも運用可能である場合、同じ筐体に備えられている転送部15が正常に動作している参照部11にアプリケーション装置4から受信したデータ参照要求を振り分ける。
For example, when a certain function unit is distributed to multiple servers, regardless of the operation status of the transfer unit 15 as in all operation methods in which all relevant function units on all servers operate as active systems by load balancing. If the reference unit 11 is operable, it is assumed that the cache server 1 can be accessed from the upper service application. In this case, in the cache server 1 in which the operation state of the transfer unit 15 is the standby system, synchronization with the original data acquired from the original data management apparatus 3 may be delayed (synchronization delay between systems), or the cached original data Data may not be updated (intersystem synchronization failure). At this time, if the data reference request is distributed to the cache server 1 in which the transfer unit 15 is a standby system, a problem of returning old data occurs.
Therefore, the load balancer 2a confirms whether or not the reference unit 11 of the cache servers 1 of both systems is operable, and at the same time confirms whether or not the transfer unit 15 of the cache servers 1 of both systems is operable. When the reference unit 11 of both cache servers 1 is operable, the data reference request received from the application device 4 to the reference unit 11 in which the transfer unit 15 provided in the same casing is operating normally. Sort out.

ロードバランサ2aが上記のように振り分け先を決定することにより、例えば、キャッシュサーバ1−0の参照部11及び転送部15が運用状態であり、キャッシュサーバ1−1の参照部11が運用状態、転送部15が待機状態である場合、アプリケーション装置4からのデータ参照要求はキャッシュサーバ1−0の参照部11に振り分けられる。このとき、キャッシュサーバ1−0の参照部11においてアプリケーション障害、DB障害、ロードバランサとの間のネットワーク障害等の障害が発生した場合、系切替が行なわれる。従来方式を適用した場合、キャッシュサーバ1は、参照部11の運用状態に関わらず、転送部15が運用状態であればデータの同期を行なうことが考えられる。しかし、データ参照要求の振分先がキャッシュサーバ1−1の参照部11となっても、キャッシュサーバ1−0の転送部15については運用状態のまま系切替が行なわれないと、正常時と比較して、原本DBから取得された原本データとの同期が遅れてしまったり(系間同期の遅れ)、キャッシュされている原本データが更新されなかったりする(系間同期故障)可能性があり、サービス提供レベルが下がってしまう。   When the load balancer 2a determines the distribution destination as described above, for example, the reference unit 11 and the transfer unit 15 of the cache server 1-0 are in the operating state, and the reference unit 11 of the cache server 1-1 is in the operating state. When the transfer unit 15 is in a standby state, a data reference request from the application device 4 is distributed to the reference unit 11 of the cache server 1-0. At this time, when a failure such as an application failure, a DB failure, or a network failure with the load balancer occurs in the reference unit 11 of the cache server 1-0, system switching is performed. When the conventional method is applied, it is conceivable that the cache server 1 synchronizes data if the transfer unit 15 is in an operation state regardless of the operation state of the reference unit 11. However, even if the data reference request is assigned to the reference unit 11 of the cache server 1-1, if the system switching is not performed in the operation state of the transfer unit 15 of the cache server 1-0, In comparison, there is a possibility that synchronization with the original data acquired from the original DB may be delayed (lag in intersystem synchronization), or cached original data may not be updated (intersystem synchronization failure). The service provision level will be lowered.

そこで、本実施の形態では、キャッシュサーバ1の転送部15は、原本データ管理装置3との間の原本データ同期処理の開始時に、データ参照要求の振分先が同一筐体内の参照部11であるかを確認する。そのため、キャッシュサーバ1の転送部15は、系状態識別信号を送信し、ロードバランサ2bは、ロードバランサ2aと同様に振り分け先を決定する。自身が送信した系状態識別信号をロードバランサ2bから受信した、すなわち、データ参照要求の振分先のキャッシュサーバ1と同一の筐体内の転送部15は、原本データ管理装置3から原本データを取得し、同期を行う。このようにして、運用状態の転送部15は、同一筐体内の参照部11が振り分け先の場合は原本データ同期処理を実施し、別筐体内の参照部11が振り分け先の場合は、転送部15の系切替を実施する。   Therefore, in the present embodiment, the transfer unit 15 of the cache server 1 uses the reference unit 11 in the same housing as the distribution destination of the data reference request at the start of the original data synchronization process with the original data management device 3. Check if it exists. Therefore, the transfer unit 15 of the cache server 1 transmits a system state identification signal, and the load balancer 2b determines a distribution destination in the same manner as the load balancer 2a. The system status identification signal transmitted by itself is received from the load balancer 2b, that is, the transfer unit 15 in the same housing as the cache server 1 to which the data reference request is allocated acquires the original data from the original data management device 3. And synchronize. In this way, the transfer unit 15 in the operating state performs the original data synchronization process when the reference unit 11 in the same casing is the distribution destination, and transfers when the reference unit 11 in another casing is the distribution destination. 15 system switching is performed.

図3は、キャッシュサーバ1、ロードバランサ2及び原本データ管理装置3の内部構成を示すブロック図である。
参照部11は、ロードバランサ2との間でヘルスチェックを実行するとともに、上位サービスアプリケーションからのデータ参照要求に応答し、同一系内、つまり、同一のキャッシュサーバ1が備える転送部15との間でデータ同期を行なう。参照部11は、タイマ111、監視処理部112、監視結果通知処理部113、参照データ管理部114、情報参照処理部115、及び、系内同期処理部116を備える。
FIG. 3 is a block diagram showing the internal configuration of the cache server 1, the load balancer 2, and the original data management device 3.
The reference unit 11 performs a health check with the load balancer 2 and responds to a data reference request from a higher-level service application, and within the same system, that is, between the transfer unit 15 included in the same cache server 1 To synchronize data. The reference unit 11 includes a timer 111, a monitoring processing unit 112, a monitoring result notification processing unit 113, a reference data management unit 114, an information reference processing unit 115, and an in-system synchronization processing unit 116.

監視処理部112は、タイマ111により定期的に起動され、自系の参照部11内の各プロセスの生起確認、参照データ管理部114が備えるDBの死活確認など、自系の参照部11についての系内状態監視を実施し、その結果を内部に備える監視結果記憶部121に保持する。監視結果通知処理部113は、ロードバランサ2から定期的にヘルスチェック信号を受信し、監視結果記憶部121に保持されている自参照部11の系内状態監視結果に応じて応答を送信する。   The monitoring processing unit 112 is periodically started by the timer 111, and confirms the occurrence of each process in the own reference unit 11, and checks whether the DB included in the reference data management unit 114 is active or not. The system state monitoring is performed, and the result is stored in the monitoring result storage unit 121 provided inside. The monitoring result notification processing unit 113 periodically receives a health check signal from the load balancer 2 and transmits a response according to the in-system state monitoring result of the own reference unit 11 held in the monitoring result storage unit 121.

参照データ管理部114は、参照データアクセス部122と、参照データ記憶部123を備える。参照データアクセス部122は、既存のDBMS(DataBase Management System)ソフトウェアにより実現することができ、DBとしての参照データ記憶部123に記憶されているキャッシュデータの読み出しや書き込みを行なう。
系内同期処理部116は、参照データ記憶部123に記憶されている原本データと、転送部15のDBに記憶されている原本データとのデータ同期を行なう。
The reference data management unit 114 includes a reference data access unit 122 and a reference data storage unit 123. The reference data access unit 122 can be realized by existing DBMS (DataBase Management System) software, and reads and writes cache data stored in a reference data storage unit 123 as a DB.
The intra-system synchronization processing unit 116 performs data synchronization between the original data stored in the reference data storage unit 123 and the original data stored in the DB of the transfer unit 15.

情報参照処理部115は、アプリケーション装置4が送信したデータ参照要求を受信して参照データ管理部114に出力し、参照データ管理部114がデータ参照要求に基づいて読み出したデータを返送する。   The information reference processing unit 115 receives the data reference request transmitted by the application apparatus 4 and outputs the data reference request to the reference data management unit 114, and returns the data read by the reference data management unit 114 based on the data reference request.

転送部15は、ロードバランサ2との間でヘルスチェックを実行するとともに、自系が運用系かどうかを確認し、運用系であれば原本データ管理装置3との間でデータ同期を実施する。さらに、転送部15は、同一系内、つまり、同一のキャッシュサーバ1内の転送部15との間でデータ同期を行なう。転送部15は、タイマ151、監視処理部152、監視結果通知処理部153、転送データ管理部154、系状態識別部155、同期情報記憶部156、情報転送処理部157、系間転送処理部158、及び、系内同期処理部159を備える。   The transfer unit 15 performs a health check with the load balancer 2, confirms whether the own system is an active system, and performs data synchronization with the original data management device 3 if the system is an active system. Further, the transfer unit 15 performs data synchronization with the transfer unit 15 in the same system, that is, in the same cache server 1. The transfer unit 15 includes a timer 151, a monitoring processing unit 152, a monitoring result notification processing unit 153, a transfer data management unit 154, a system state identification unit 155, a synchronization information storage unit 156, an information transfer processing unit 157, and an intersystem transfer processing unit 158. And an in-system synchronization processing unit 159.

監視処理部152は、タイマ151により定期的に起動され、自系の転送部15内の各プロセスの生起確認、転送データ管理部154が備えるDBの死活確認など、自系の転送部15についての系内状態監視を実施し、その結果を内部に備える監視結果記憶部161に保持する。監視結果通知処理部153は、ロードバランサ2から定期的にヘルスチェック信号を受信し、監視結果記憶部161に保持されている自転送部15内の系内状態監視結果に応じて応答を送信する。   The monitoring processing unit 152 is periodically started by the timer 151, and confirms the occurrence of each process in the transfer unit 15 of the own system and the alive check of the DB included in the transfer data management unit 154. System state monitoring is performed, and the result is stored in the monitoring result storage unit 161 provided therein. The monitoring result notification processing unit 153 periodically receives a health check signal from the load balancer 2 and transmits a response according to the in-system state monitoring result in the own transfer unit 15 held in the monitoring result storage unit 161. .

転送データ管理部154は、転送データアクセス部162と、転送データ記憶部163を備える。転送データアクセス部162は、既存のDBMSソフトウェアにより実現することができ、DBとしての転送データ記憶部163に記憶されているキャッシュデータの読み出しや書き込みを行なう。
系内同期処理部159は、転送データ記憶部163に記憶されているデータと、参照部11が保持するデータとの原本データ同期を行なう。
The transfer data management unit 154 includes a transfer data access unit 162 and a transfer data storage unit 163. The transfer data access unit 162 can be realized by existing DBMS software, and reads and writes cache data stored in the transfer data storage unit 163 as a DB.
The intra-system synchronization processing unit 159 performs original data synchronization between the data stored in the transfer data storage unit 163 and the data held by the reference unit 11.

同期情報記憶部156は、原本データ管理装置3から読み出した原本のデータのうち、転送データ記憶部163には書き込んだが、まだ他のキャッシュサーバ1との同期更新を行なっていないデータと、そのデータが原本データ管理装置3において更新された日時の情報とを対応づけた更新情報テーブル(以下、テーブルを「TBL」と記載)を記憶する。さらに、同期情報記憶部156は、転送データ記憶部163への書き込みが終了した原本データの原本データ管理装置3における更新日時のうち、最新の更新日時であるラストルックを示す最終更新情報TBLを記憶する。   The synchronization information storage unit 156 writes the original data read from the original data management device 3 to the transfer data storage unit 163 but has not yet been synchronized with the other cache server 1 and the data. Stores an update information table (hereinafter referred to as “TBL”) in association with the date and time information updated in the original data management apparatus 3. Further, the synchronization information storage unit 156 stores final update information TBL indicating the last look, which is the latest update date / time, of the update date / time in the original data management device 3 of the original data that has been written to the transfer data storage unit 163. To do.

系状態識別部155は、ロードバランサ2が自系を運用系として認識しているか、待機系と判断しているかを問い合わせる。情報転送処理部157は、自系が運用系と認識されている場合、同期情報記憶部156内の最終更新情報TBLに設定されているラストルック以降が更新日時である原本データを原本データ管理装置3から読み出し、読み出した原本データを同期情報記憶部156内の更新情報TBLに書き込むとともに、読み出した原本データを書き込んで転送データ記憶部163を更新するよう転送データ管理部154に指示する。系間転送処理部158は、同期情報記憶部156内の更新情報TBLに記憶されている原本データのうち、他系のキャッシュサーバ1の最終更新情報TBLに設定されているラストルック以降が更新日時である原本のデータを他系のキャッシュサーバ1の転送データ記憶部163に書き込むとともに、書き込みが成功した場合、書き込みが成功した原本データの原本データ管理装置3における更新日時のうち最新の更新日時をラストルックとして他系のキャッシュサーバ1の最終更新情報TBLに書き込む。   The system state identification unit 155 inquires whether the load balancer 2 recognizes its own system as an active system or determines that it is a standby system. When the local system is recognized as the active system, the information transfer processing unit 157 converts the original data whose update date and time is after the last look set in the last update information TBL in the synchronization information storage unit 156 to the original data management device 3 and writes the read original data to the update information TBL in the synchronization information storage unit 156 and writes the read original data to instruct the transfer data management unit 154 to update the transfer data storage unit 163. Among the original data stored in the update information TBL in the synchronization information storage unit 156, the inter-system transfer processing unit 158 updates the date and time after the last look set in the final update information TBL of the cache server 1 of the other system. Is written to the transfer data storage unit 163 of the cache server 1 of the other system, and when the writing is successful, the latest update date / time of the original data management device 3 of the original data that has been successfully written is The last look-up information TBL of the other cache server 1 is written as the last look.

以下、キャッシュサーバ1−0が備えるキャッシュサーバ1の各部には符号に「−0」を付加して記載し、キャッシュサーバ1−1が備えるキャッシュサーバ1の各部には符号に「−1」を付加して記載する。また、各部が0系のキャッシュサーバ1−0に備えられている旨を単に「0系の」、1系のキャッシュサーバ1−1に備えられている旨を単に「1系の」とも記載する。例えば、キャッシュサーバ1−0の備える監視処理部112は、「監視処理部112−0」、または、「0系の監視処理部112−0」と記載し、キャッシュサーバ1−1の備える監視処理部112は、「監視処理部112−1」、または、「1系の監視処理部112−1」と記載する。   Hereinafter, “−0” is added to each part of the cache server 1 included in the cache server 1-0, and “−1” is added to the part of the cache server 1 included in the cache server 1-1. Add and describe. Further, the fact that each unit is provided in the 0-system cache server 1-0 is simply referred to as “0-system”, and the fact that each unit is provided in the 1-system cache server 1-1 is also simply referred to as “1-system”. . For example, the monitoring processing unit 112 included in the cache server 1-0 is described as “monitoring processing unit 112-0” or “0-system monitoring processing unit 112-0”, and the monitoring processing included in the cache server 1-1. The unit 112 is described as “monitoring processing unit 112-1” or “system 1 monitoring processing unit 112-1”.

同図において、ロードバランサ2は、タイマ21、サービスチェック部22、及び、運用系判断処理部23を含んで構成される。
サービスチェック部22は、タイマ21により定期的に起動され、両系のキャッシュサーバ1の物理IPアドレス及び参照部11のポート番号、両系のキャッシュサーバ1の物理IPアドレス及び転送部15のポート番号を宛先に用いてヘルスチェック信号を送信し、両系のキャッシュサーバ1の参照部11及び転送部15から応答が返送されたか否かの結果を内部に備える記憶部221に書き込む。応答が返送されたか否かによって、正常か異常かの状態が識別できる。
In the figure, the load balancer 2 includes a timer 21, a service check unit 22, and an active system determination processing unit 23.
The service check unit 22 is periodically started by the timer 21, and the physical IP address of both systems cache server 1 and the port number of the reference unit 11, the physical IP address of both systems cache server 1 and the port number of the transfer unit 15. Is used as a destination, and a health check signal is transmitted, and a result indicating whether or not a response is returned from the reference unit 11 and the transfer unit 15 of the cache servers 1 of both systems is written in the storage unit 221 provided therein. Whether the response is returned or not can be identified as normal or abnormal.

運用系判断処理部23は、自ロードバランサ2の仮想IPアドレスを宛先とした信号を受信した場合に、記憶部221に記憶されている両系のキャッシュサーバ1の参照部11及び転送部15のヘルスチェックの応答受信状態、つまり、正常か異常かの状態に基づいて運用系のキャッシュサーバ1を判断する。運用系判断処理部23は、運用系と判断したキャッシュサーバ1の物理IPアドレスを宛先として受信信号を送信することにより、運用系のキャッシュサーバ1の参照部11または転送部15へ振り分ける。   When receiving a signal whose destination is the virtual IP address of the own load balancer 2, the active system determination processing unit 23 stores both the reference unit 11 and the transfer unit 15 of the cache servers 1 of both systems stored in the storage unit 221. The active cache server 1 is determined based on the health check response reception status, that is, the normal or abnormal status. The active system determination processing unit 23 distributes the received signal to the reference unit 11 or the transfer unit 15 of the active cache server 1 by transmitting the received signal to the physical IP address of the cache server 1 determined to be the active system.

以下、ロードバランサ2aが備えるロードバランサ2の各部には符号に「a」を付加して記載し、ロードバランサ2bが備えるロードバランサ2の各部には符号に「b」を付加して記載する。例えば、ロードバランサ2aが備えるサービスチェック部22はサービスチェック部22a、ロードバランサ2bが備えるサービスチェック部22はサービスチェック部22bと記載する。
なお、ロードバランサ2aとロードバランサ2bは異なるネットワーク装置によって実現してもよく、同一のネットワーク装置によって実現してもよい。
Hereinafter, each part of the load balancer 2 included in the load balancer 2a is described by adding “a” to the reference numeral, and each part of the load balancer 2 included in the load balancer 2b is described by adding “b” to the reference numeral. For example, the service check unit 22 included in the load balancer 2a is described as a service check unit 22a, and the service check unit 22 included in the load balancer 2b is described as a service check unit 22b.
Note that the load balancer 2a and the load balancer 2b may be realized by different network devices or may be realized by the same network device.

同図において、原本データ管理装置3は、データ管理部31、更新履歴記憶部32、及び、原本データ記憶部33を含んで構成される。データ管理部31は、原本データ記憶部33に記憶されている原本データの読み書きを行ない、原本データの更新を行なったときには、更新した原本データと、その原本データの更新日時の情報とを対応付けた更新履歴を更新履歴記憶部32に書き込む。   In FIG. 1, the original data management device 3 includes a data management unit 31, an update history storage unit 32, and an original data storage unit 33. When the original data stored in the original data storage unit 33 is read / written and the original data is updated, the data management unit 31 associates the updated original data with the update date / time information of the original data. The update history is written into the update history storage unit 32.

[2. 系状態確認処理]
本実施形態のキャッシュシステムにおける系状態確認処理の動作について説明する。
[2. System status confirmation process]
The operation of the system state confirmation process in the cache system of this embodiment will be described.

[2.1 系状態確認シーケンス]
図4は、キャッシュシステムの系状態確認シーケンスを示す図である。同図において、キャッシュサーバ1−0、1−1の参照部11及び転送部15は、定期的に自機能部の自系内状態監視処理を行っている(ステップS105−1〜S105−4)。なお、参照部11−0、11−1、転送部15−0、15−1の間でタイミングを同期させる必要はない。
[2.1 System status check sequence]
FIG. 4 is a diagram showing a system state confirmation sequence of the cache system. In the figure, the reference unit 11 and the transfer unit 15 of the cache servers 1-0 and 1-1 periodically perform in-system state monitoring processing of the own function unit (steps S105-1 to S105-4). . Note that it is not necessary to synchronize the timing between the reference units 11-0 and 11-1 and the transfer units 15-0 and 15-1.

一方、ロードバランサ2は、定期的にヘルスチェックを起動する。つまり、ロードバランサ2は、キャッシュサーバ1−0の物理IPアドレスC0及び参照部11−0のポート番号PS0、キャッシュサーバ1−0の物理IPアドレスC0及び転送部15−0のポート番号PT0、キャッシュサーバ1−1の物理IPアドレスC1及び参照部11−1のポート番号PS1、キャッシュサーバ1−1の物理IPアドレスC1及び転送部15−1のポート番号PT1を宛先としてヘルスチェック信号を送信する(ステップS110、S115−1〜S115−4)。   On the other hand, the load balancer 2 periodically starts a health check. That is, the load balancer 2 has the physical IP address C0 of the cache server 1-0 and the port number PS0 of the reference unit 11-0, the physical IP address C0 of the cache server 1-0 and the port number PT0 of the transfer unit 15-0, the cache A health check signal is transmitted with the physical IP address C1 of the server 1-1 and the port number PS1 of the reference unit 11-1, the physical IP address C1 of the cache server 1-1 and the port number PT1 of the transfer unit 15-1 as destinations ( Steps S110 and S115-1 to S115-4).

0系の参照部11−0は、系内状態監視結果返却処理を実行し(ステップS120−1)、ステップS105−1により確認した自系の参照部11−0についての系内状態監視結果に応じてロードバランサ2へ応答を返送する(ステップS125−1)。0系の転送部15−0は、系内状態監視結果返却処理を実行し(ステップS120−2)、ステップS105−2により確認した自系の転送部15−0についての系内状態監視結果に応じてロードバランサ2へ応答を返送する(ステップS125−2)。同様に、1系の参照部11−1は、系内状態監視結果返却処理を実行し(ステップS120−3)、ステップS105−3により確認した自系の参照部11−1についての系内状態監視結果に応じてロードバランサ2へ応答を返送する(ステップS125−3)。また、1系の転送部15−1は、系内状態監視結果返却処理を実行し(ステップS120−4)、ステップS105−4により確認した自系の転送部15−1についての系内状態監視結果に応じてロードバランサ2へ応答を返送する(ステップS125−4)。
ロードバランサ2は、両系のキャッシュサーバ1の参照部11及び転送部15それぞれからのヘルスチェック信号への応答状態を確認し、その確認結果を保持する(ステップS130)。
The 0-system reference unit 11-0 executes an in-system state monitoring result return process (step S120-1), and the internal system state monitoring result for the own system reference unit 11-0 confirmed in step S105-1 is obtained. In response, a response is returned to the load balancer 2 (step S125-1). The 0-system transfer unit 15-0 executes an in-system state monitoring result return process (step S120-2), and the in-system state monitoring result for the own-system transfer unit 15-0 confirmed in step S105-2. In response, a response is returned to the load balancer 2 (step S125-2). Similarly, the 1-system reference unit 11-1 executes an in-system state monitoring result return process (step S120-3), and the in-system state regarding the own system reference unit 11-1 confirmed in step S105-3. A response is returned to the load balancer 2 according to the monitoring result (step S125-3). Further, the 1-system transfer unit 15-1 executes an in-system state monitoring result return process (step S120-4), and the in-system state monitoring of the own system transfer unit 15-1 confirmed in step S105-4. A response is returned to the load balancer 2 according to the result (step S125-4).
The load balancer 2 confirms the response state to the health check signal from each of the reference unit 11 and the transfer unit 15 of the cache servers 1 of both systems, and holds the confirmation result (step S130).

その後も、キャッシュサーバ1−0、1−1の参照部11、転送部15は、ステップS105−1〜S105−4と同様に各機能部の自系内状態監視処理を定期的に起動する(ステップS135−1〜S135−4、S140−1〜S140−4)。また、ロードバランサ2は、ステップS110、S115−1〜S115−4の処理と同様に、キャッシュサーバ1−0、1−1の参照部11及び転送部15にヘルスチェック信号を定期的に送信する(ステップS145、S150−1〜S150−4)。これにより、ステップS120−1〜S120−4、S125−1〜S125−4、S130と同様の処理が行なわれる(ステップS155−1〜S155−4、S160−1〜S160−4、S165)。   Thereafter, the reference unit 11 and the transfer unit 15 of the cache servers 1-0 and 1-1 periodically start the in-system state monitoring process of each functional unit as in Steps S105-1 to S105-4 ( Steps S135-1 to S135-4, S140-1 to S140-4). Further, the load balancer 2 periodically transmits a health check signal to the reference unit 11 and the transfer unit 15 of the cache servers 1-0 and 1-1 in the same manner as the processes of steps S110 and S115-1 to S115-4. (Steps S145, S150-1 to S150-4). Thereby, processing similar to steps S120-1 to S120-4, S125-1 to S125-4, and S130 is performed (steps S1555-1 to S155-4, S160-1 to S160-4, S165).

上述したロードバランサ2の処理は、ロードバランサ2a、2bそれぞれについて行なわれる。   The processing of the load balancer 2 described above is performed for each of the load balancers 2a and 2b.

[2.2 系状態確認処理における各装置の機能部間の処理の流れ]
図5は、系状態確認処理における各装置の機能部間の処理の流れを示す図である。
両系のキャッシュサーバ1の参照部11において、監視処理部112は、各プロセスの生起を確認してその結果を監視結果記憶部121に保持し(ステップS305−1)、続いて、ダミーのSQLを発行して参照データ管理部114の動作確認を行い、確認結果を監視結果記憶部121に保持する(ステップS310−1)。同様に、両系のキャッシュサーバ1の転送部15において、監視処理部152は、各プロセスの生起を確認してその結果を監視結果記憶部161に保持し(ステップS305−2)、続いて、ダミーのSQLを発行して転送データ管理部154の動作確認を行い、確認結果を監視結果記憶部161に保持する(ステップS310−2)。
[2.2 Process flow between functional units of each device in system status confirmation processing]
FIG. 5 is a diagram illustrating a process flow between functional units of each device in the system state confirmation process.
In the reference unit 11 of the cache servers 1 of both systems, the monitoring processing unit 112 confirms the occurrence of each process, holds the result in the monitoring result storage unit 121 (step S305-1), and then performs dummy SQL. Is issued to confirm the operation of the reference data management unit 114, and the confirmation result is held in the monitoring result storage unit 121 (step S310-1). Similarly, in the transfer unit 15 of the cache servers 1 of both systems, the monitoring processing unit 152 confirms the occurrence of each process and holds the result in the monitoring result storage unit 161 (step S305-2). A dummy SQL is issued to confirm the operation of the transfer data management unit 154, and the confirmation result is held in the monitoring result storage unit 161 (step S310-2).

ロードバランサ2のサービスチェック部22は、両系のキャッシュサーバ1の参照部11及び転送部15それぞれにヘルスチェック信号を送信する(ステップS315−1、S315−2)。両系のキャッシュサーバ1の監視結果通知処理部113は、ヘルスチェック信号を受信すると、監視処理部112から監視結果記憶部121に保持されている系状態の監視結果を取得し(ステップS320−1)、取得した監視結果が「正常」である場合は応答を返送する(ステップS325−1)。同様に、両系のキャッシュサーバ1の監視結果通知処理部153は、ヘルスチェック信号を受信すると、監視処理部152から監視結果記憶部161に保持されている系状態の監視結果を取得し(ステップS320−2)、取得した監視結果が「正常」である場合は応答を返送する(ステップS325−2)。ロードバランサ2のサービスチェック部22は、両系のキャッシュサーバ1の参照部11及び転送部15からの応答の有無を記憶部221に保持する。   The service check unit 22 of the load balancer 2 transmits a health check signal to each of the reference unit 11 and the transfer unit 15 of the cache servers 1 of both systems (steps S315-1 and S315-2). Upon receiving the health check signal, the monitoring result notification processing unit 113 of both cache servers 1 acquires the monitoring result of the system state held in the monitoring result storage unit 121 from the monitoring processing unit 112 (step S320-1). ) If the acquired monitoring result is “normal”, a response is returned (step S325-1). Similarly, upon receiving the health check signal, the monitoring result notification processing unit 153 of the cache servers 1 of both systems acquires the monitoring result of the system state held in the monitoring result storage unit 161 from the monitoring processing unit 152 (Step S1). S320-2) When the acquired monitoring result is “normal”, a response is returned (step S325-2). The service check unit 22 of the load balancer 2 holds in the storage unit 221 the presence / absence of responses from the reference unit 11 and the transfer unit 15 of the cache servers 1 of both systems.

[2.3 キャッシュサーバ1における自系内状態監視処理]
図6は、図4のステップS105−1〜S105−4、S135−1〜S135−4、S140−1〜S140−4において、両系のキャッシュサーバ1の参照部11及び転送部15が実行する自系内状態監視処理フローを示す図である。
[2.3 Internal State Monitoring Processing in Cache Server 1]
FIG. 6 is executed by the reference unit 11 and the transfer unit 15 of the cache servers 1 in both systems in steps S105-1 to S105-4, S135-1 to S135-4, and S140-1 to S140-4 in FIG. It is a figure which shows a self-system state monitoring process flow.

まず、参照部11における自系内状態監視処理フローを説明する。同図において、キャッシュサーバ1のタイマ111は、所定の時間毎に監視処理部112を起動する(ステップS405)。これにより、監視処理部112は、自系内の参照部11の各プロセスの生起を確認する(ステップS410)。各プロセスが生起されている場合(ステップS415:正常)、正常であると判断し、続いて、DBの死活状態を確認するためダミーのSQLを参照データ管理部114に発行する(ステップS420)。参照データ管理部114の参照データアクセス部122は、ダミーのSQLに基づいて参照データ記憶部123に記憶されているデータに対するデータ操作を行なった結果を監視処理部112に返送する。参照データ管理部114から正常にダミーSQLの応答を受信した場合(ステップS425:正常)、監視処理部112は、監視結果「正常」を自系の備える監視結果記憶部121に書き込む(ステップS430)。   First, an internal system state monitoring process flow in the reference unit 11 will be described. In the figure, the timer 111 of the cache server 1 activates the monitoring processing unit 112 every predetermined time (step S405). Thereby, the monitoring processing unit 112 confirms the occurrence of each process of the reference unit 11 in its own system (step S410). If each process has occurred (step S415: normal), it is determined that the process is normal, and then a dummy SQL is issued to the reference data management unit 114 in order to confirm the alive state of the DB (step S420). The reference data access unit 122 of the reference data management unit 114 returns to the monitoring processing unit 112 a result of performing a data operation on the data stored in the reference data storage unit 123 based on the dummy SQL. When the dummy SQL response is normally received from the reference data management unit 114 (step S425: normal), the monitoring processing unit 112 writes the monitoring result “normal” in the monitoring result storage unit 121 of the own system (step S430). .

一方、プロセスが生起されていない場合(ステップS415:異常)、あるいは、参照データ管理部114から正常にダミーSQLの応答を受信しなかった場合(ステップS425:異常)、監視処理部112は、監視結果「異常」を自系の備える監視結果記憶部121に書き込む(ステップS435)。   On the other hand, when the process has not occurred (Step S415: Abnormal), or when the dummy SQL response is not normally received from the reference data management unit 114 (Step S425: Abnormal), the monitoring processing unit 112 performs monitoring. The result “abnormal” is written in the monitoring result storage unit 121 provided in the own system (step S435).

転送部15における自系内状態監視処理フローの場合、参照部11を転送部15に、タイマ111をタイマ151に、監視処理部112を監視処理部152に、参照データ管理部114を転送データ管理部154に、監視結果記憶部121を監視結果記憶部161に、参照データアクセス部122を転送データアクセス部162に、参照データ記憶部123を転送データ記憶部163に読み替え、上記と同様の処理を行なう。   In the case of the own system state monitoring process flow in the transfer unit 15, the reference unit 11 is transferred to the transfer unit 15, the timer 111 is set to the timer 151, the monitor processing unit 112 is set to the monitor processing unit 152, and the reference data management unit 114 is transferred to the transfer data management. In this case, the monitoring result storage unit 121 is replaced with the monitoring result storage unit 161, the reference data access unit 122 is replaced with the transfer data access unit 162, the reference data storage unit 123 is replaced with the transfer data storage unit 163, and the same processing as described above is performed. Do.

[2.4 キャッシュサーバ1における自系内状態監視結果返却処理]
図7は、図4のステップS120−1〜120−4、155−1〜155−4において、両系のキャッシュサーバ1の参照部11及び転送部15が実行する自系内状態監視結果返却処理フローを示す図である。
[2.4 In-system status monitoring result return processing in cache server 1]
7 shows the in-system state monitoring result return process executed by the reference unit 11 and the transfer unit 15 of the cache servers 1 in both systems in steps S120-1 to 120-4 and 155-1 to 155-4 in FIG. It is a figure which shows a flow.

まず、参照部11における自系内状態監視結果返却処理フローを説明する。同図において、キャッシュサーバ1の監視結果通知処理部113は、ロードバランサ2からヘルスチェック信号を受信する(ステップS505)。監視結果通知処理部113は、監視処理部112から監視結果記憶部121に記憶されている系内状態の監視結果を取得する(ステップS510)。監視結果通知処理部113は、取得した系内状態監視結果が「正常」である場合は(ステップS515:正常)、ヘルスチェック信号送信元のロードバランサ2に正常を設定した応答を返送し(ステップS520)、系内状態監視結果が「異常」である場合は(ステップS515:異常)、受信したヘルスチェック信号を廃棄し、応答を返送しない(ステップS525)。   First, the internal system state monitoring result return processing flow in the reference unit 11 will be described. In the figure, the monitoring result notification processing unit 113 of the cache server 1 receives a health check signal from the load balancer 2 (step S505). The monitoring result notification processing unit 113 acquires the monitoring result of the in-system state stored in the monitoring result storage unit 121 from the monitoring processing unit 112 (step S510). If the acquired in-system status monitoring result is “normal” (step S515: normal), the monitoring result notification processing unit 113 returns a response indicating normality to the load balancer 2 that is the source of the health check signal (step S515). S520) When the system state monitoring result is “abnormal” (step S515: abnormal), the received health check signal is discarded and no response is returned (step S525).

転送部15における自系内状態監視結果返却処理フローの場合、監視処理部112を監視処理部152に、監視結果通知処理部113を監視結果通知処理部153に、監視結果記憶部121を監視結果記憶部161に読み替え、上記と同様の処理を行なう。   In the case of the own system state monitoring result return processing flow in the transfer unit 15, the monitoring processing unit 112 is the monitoring processing unit 152, the monitoring result notification processing unit 113 is the monitoring result notification processing unit 153, and the monitoring result storage unit 121 is the monitoring result. The memory 161 is replaced with the same processing as described above.

[2.5 ロードバランサ2におけるヘルスチェック]
図8は、図4のステップS110及びS130、S145及びS155において実行される、ロードバランサ2のヘルスチェック処理フローを示す図である。
同図において、ロードバランサ2のタイマ21は、所定の時間毎にサービスチェック部22を起動する(ステップS605)。まず、0系の参照部11についてのヘルスチェックが起動された場合について説明する。サービスチェック部22は、キャッシュサーバ1−0の物理IPアドレスC0、参照部11−0のポート番号PS0を宛先としてヘルスチェック信号を送信する(ステップS610)。
[2.5 Health check in load balancer 2]
FIG. 8 is a diagram showing a health check process flow of the load balancer 2 executed in steps S110 and S130, S145 and S155 of FIG.
In the figure, the timer 21 of the load balancer 2 activates the service check unit 22 every predetermined time (step S605). First, a case where a health check for the 0-system reference unit 11 is activated will be described. The service check unit 22 transmits a health check signal with the physical IP address C0 of the cache server 1-0 and the port number PS0 of the reference unit 11-0 as destinations (step S610).

サービスチェック部22は、ステップS610において送信したヘルスチェック信号に対して、図7のステップS520においてキャッシュサーバ1の監視結果通知処理部113が送信した応答を受信した場合(ステップS615:応答あり)、参照部11−0の識別情報と対応付けて「応答あり」を記憶部221に書き込む(ステップS620)。
一方、ステップS610において送信したヘルスチェック信号に対して所定時間内に応答を受信しなかった場合(ステップS615:応答なし)、参照部11−0の識別情報と対応付けて「応答なし」を記憶部221に書き込む(ステップS625)。
When the service check unit 22 receives a response transmitted by the monitoring result notification processing unit 113 of the cache server 1 in step S520 of FIG. 7 in response to the health check signal transmitted in step S610 (step S615: response is present), “Respond” is written in the storage unit 221 in association with the identification information of the reference unit 11-0 (step S620).
On the other hand, if no response is received within a predetermined time with respect to the health check signal transmitted in step S610 (step S615: no response), “no response” is stored in association with the identification information of the reference unit 11-0. The data is written in the part 221 (step S625).

ステップS605において、0系の転送部15−0についてのヘルスチェックが起動された場合、ステップS610において、サービスチェック部22は、キャッシュサーバ1−0の物理IPアドレスC0、転送部15−0のポート番号PT0を宛先としてヘルスチェック信号を送信する。そして、ステップS620においては、転送部15−0の識別情報と対応付けて「応答あり」を、ステップS625においては、転送部15−0の識別情報と対応付けて「応答なし」を記憶部221に書き込む。   When the health check for the 0-system transfer unit 15-0 is activated in step S605, in step S610, the service check unit 22 determines the physical IP address C0 of the cache server 1-0 and the port of the transfer unit 15-0. A health check signal is transmitted with the number PT0 as the destination. In step S620, “with response” is associated with the identification information of the transfer unit 15-0, and “no response” is associated with the identification information of the transfer unit 15-0 in step S625. Write to.

同様に、ステップS605において、1系の参照部11−1についてのヘルスチェックが起動された場合、ステップS610において、サービスチェック部22は、キャッシュサーバ1−1の物理IPアドレスC1、参照部11−1のポート番号PS1を宛先としてヘルスチェック信号を送信する。そして、ステップS620においては、参照部11−1の識別情報と対応付けて「応答あり」を、ステップS625においては、参照部11−1の識別情報と対応付けて「応答なし」を記憶部221に書き込む。   Similarly, when the health check for the 1-system reference unit 11-1 is activated in step S605, in step S610, the service check unit 22 determines that the physical IP address C1 of the cache server 1-1 and the reference unit 11- A health check signal is transmitted with the port number PS1 of 1 as the destination. In step S620, “with response” is associated with the identification information of the reference unit 11-1, and in step S625, “no response” is associated with the identification information of the reference unit 11-1. Write to.

また、ステップS605において、1系の転送部15−1についてのヘルスチェックが起動された場合、ステップS610において、サービスチェック部22は、キャッシュサーバ1−1の物理IPアドレスC1、転送部15−1のポート番号PT1を宛先としてヘルスチェック信号を送信する。そして、ステップS620においては、転送部15−1の識別情報と対応付けて「応答あり」を、ステップS625においては、転送部15−1の識別情報と対応付けて「応答なし」を記憶部221に書き込む。   In step S605, when the health check for the 1-system transfer unit 15-1 is activated, in step S610, the service check unit 22 determines that the physical IP address C1 of the cache server 1-1, the transfer unit 15-1. The health check signal is transmitted with the port number PT1 as the destination. In step S620, “with response” is associated with the identification information of the transfer unit 15-1, and “no response” is associated with the identification information of the transfer unit 15-1 in step S625. Write to.

[3. 振分処理]
ロードバランサ2a、2bは、上述したヘルスチェックにより、キャッシュサーバ1−0、1−1の参照部11及び転送部15それぞれが正常であるか異常であるかを判定するためのヘルスチェック結果を保持する。つまり、応答が返送された場合は運用状態が正常、応答が返送されなかった場合は異常であると判断することができる。そして、ロードバランサ2aは、アプリケーション装置4からのデータ参照要求を受信するたびに、ヘルスチェック結果を利用して運用系のキャッシュサーバ1を決定し、データ参照要求の振分処理を行なう。また、ロードバランサ2bは、キャッシュサーバ1から系状態識別信号を受信するたびに、同様の振分処理を行う。以下、振分処理の動作について説明する。
[3. Sorting process]
The load balancers 2a and 2b hold the health check result for determining whether the reference unit 11 and the transfer unit 15 of the cache servers 1-0 and 1-1 are normal or abnormal by the health check described above. To do. That is, it is possible to determine that the operation state is normal when a response is returned and abnormal when the response is not returned. Then, every time a data reference request is received from the application apparatus 4, the load balancer 2a uses the health check result to determine the active cache server 1, and performs a data reference request distribution process. The load balancer 2b performs the same distribution process every time it receives a system state identification signal from the cache server 1. Hereinafter, the operation of the distribution process will be described.

[3.1 振分処理シーケンス]
図9は、アプリケーション装置4からのデータ参照要求受信時の振分処理シーケンスを示す図である。
同図において、ロードバランサ2aは、アプリケーション装置4から、ロードバランサ2aの仮想IPアドレスAを宛先としたデータ参照要求を受信する(ステップS705)。ロードバランサ2は、ヘルスチェック処理結果を参照して、運用系のキャッシュサーバ1を判断する(ステップS710)。ここでは、キャッシュサーバ1−0が運用系であると判断したと仮定する。ロードバランサ2は、データ参照要求の宛先を、運用系であるキャッシュサーバ1−0の物理IPアドレスC0及び参照部11−0のポート番号PS0として送信する(ステップS715)。0系の参照部11−0は、受信したデータ参照要求に対する応答を返送すると(ステップS720)、ロードバランサ2aは、データ参照要求の送信元であるアプリケーション装置4へ応答を送信する(ステップS725)。
[3.1 Sorting processing sequence]
FIG. 9 is a diagram illustrating a distribution processing sequence when a data reference request is received from the application apparatus 4.
In the figure, the load balancer 2a receives a data reference request addressed to the virtual IP address A of the load balancer 2a from the application device 4 (step S705). The load balancer 2 determines the active cache server 1 with reference to the health check processing result (step S710). Here, it is assumed that the cache server 1-0 is determined to be an active system. The load balancer 2 transmits the destination of the data reference request as the physical IP address C0 of the active cache server 1-0 and the port number PS0 of the reference unit 11-0 (step S715). When the 0-system reference unit 11-0 returns a response to the received data reference request (step S720), the load balancer 2a transmits a response to the application device 4 that is the transmission source of the data reference request (step S725). .

ロードバランサ2aは、アプリケーション装置4から、ロードバランサ2aの仮想IPアドレスAを宛先としたデータ参照要求を受信するたびに、ヘルスチェック処理結果を参照して、運用系のキャッシュサーバ1を判断する。つまり、同図に示すように、ロードバランサ2aは、再びアプリケーション装置4からデータ参照要求を受信すると(ステップS730)、ヘルスチェック処理結果を参照して、運用系のキャッシュサーバ1を判断する(ステップS735)。以降のステップS745〜S750の処理は、ステップS715〜S720の処理と同様である。   Each time the load balancer 2a receives a data reference request addressed to the virtual IP address A of the load balancer 2a from the application device 4, the load balancer 2a refers to the health check processing result to determine the active cache server 1. In other words, as shown in the figure, when the load balancer 2a receives the data reference request from the application device 4 again (step S730), the load balancer 2a refers to the health check processing result to determine the active cache server 1 (step S730). S735). The subsequent steps S745 to S750 are the same as the steps S715 to S720.

なお、振分処理において、ロードバランサ2aが、運用系はキャッシュサーバ1−1であると判断した場合、アプリケーション装置4から受信したデータ参照要求の宛先を、運用系であるキャッシュサーバ1−1の物理IPアドレスC1及び参照部11−1のポート番号PS1として送信する。そして、1系の参照部11−1がデータ参照要求に対する応答を返送すると、ロードバランサ2aは、データ参照要求の送信元であるアプリケーション装置4へ応答を送信する。   In the distribution process, when the load balancer 2a determines that the active system is the cache server 1-1, the destination of the data reference request received from the application apparatus 4 is the destination of the cache server 1-1 that is the active system. Transmission is performed as the physical IP address C1 and the port number PS1 of the reference unit 11-1. When the 1-system reference unit 11-1 returns a response to the data reference request, the load balancer 2a transmits the response to the application device 4 that is the transmission source of the data reference request.

図10は、キャッシュサーバ1からの系状態識別信号受信時の振分処理シーケンスを示す図である。
同図において、ロードバランサ2bは、0系の転送部15−0からロードバランサ2bの仮想IPアドレスBを宛先とした系状態識別信号を受信する(ステップS805)。ロードバランサ2bは、ヘルスチェック処理結果を参照して、運用系のキャッシュサーバ1を判断する(ステップS810)。ここでは、キャッシュサーバ1−0が運用系であると判断したと仮定する。ロードバランサ2bは、系状態識別信号の宛先を、運用系であるキャッシュサーバ1−0の物理IPアドレスC0及び転送部15−0のポート番号PT0として送信する(ステップS815)。0系の転送部15−0は、自系が送信した系状態識別信号を受信するため、運用系であることを認識する。
FIG. 10 is a diagram illustrating a distribution processing sequence when a system state identification signal is received from the cache server 1.
In the figure, the load balancer 2b receives a system state identification signal destined for the virtual IP address B of the load balancer 2b from the 0-system transfer unit 15-0 (step S805). The load balancer 2b refers to the health check process result to determine the active cache server 1 (step S810). Here, it is assumed that the cache server 1-0 is determined to be an active system. The load balancer 2b transmits the destination of the system state identification signal as the physical IP address C0 of the cache server 1-0 that is the active system and the port number PT0 of the transfer unit 15-0 (step S815). The 0-system transfer unit 15-0 recognizes that it is an active system in order to receive the system state identification signal transmitted by the own system.

同様に、ロードバランサ2bは、1系の転送部15−1からロードバランサ2bの仮想IPアドレスBを宛先とした系状態識別信号を受信する(ステップS820)。ロードバランサ2bは、ヘルスチェック処理結果を参照し、キャッシュサーバ1−0が運用系であると判断したと仮定する(ステップS825)。ロードバランサ2bは、系状態識別信号の宛先を、運用系であるキャッシュサーバ1−0の物理IPアドレスC0及びポート番号PT0として送信する(ステップS830)。1系の転送部15−1は、自系が送信した系状態識別信号を受信できないため、待機系であることを認識する。   Similarly, the load balancer 2b receives a system state identification signal destined for the virtual IP address B of the load balancer 2b from the 1-system transfer unit 15-1 (step S820). It is assumed that the load balancer 2b refers to the health check processing result and determines that the cache server 1-0 is the active system (step S825). The load balancer 2b transmits the destination of the system state identification signal as the physical IP address C0 and the port number PT0 of the cache server 1-0 that is the active system (step S830). The 1-system transfer unit 15-1 recognizes that it is a standby system because it cannot receive the system state identification signal transmitted by its own system.

なお、振分処理において、ロードバランサ2bが、運用系はキャッシュサーバ1−1であると判断した場合、キャッシュサーバ1−0、1−1から受信した系状態識別信号の宛先を、運用系であるキャッシュサーバ1−1の物理IPアドレスC1及び転送部15−1のポート番号PT1として送信する。これにより、1系の転送部15−1は、自系が送信した系状態識別信号を受信するため、運用系であることを認識し、0系の転送部15−0は、自系が送信した系状態識別信号を受信できないため、待機系であることを認識する。   In the distribution process, when the load balancer 2b determines that the active system is the cache server 1-1, the destination of the system state identification signal received from the cache servers 1-0 and 1-1 is set to the active system. It is transmitted as the physical IP address C1 of a certain cache server 1-1 and the port number PT1 of the transfer unit 15-1. As a result, the 1-system transfer unit 15-1 receives the system state identification signal transmitted by the own system, and thus recognizes that it is the active system, and the 0-system transfer unit 15-0 transmits the own system. Since the received system state identification signal cannot be received, it is recognized that the system is a standby system.

[3.2 ロードバランサ2における振分処理]
図11は、ロードバランサ2aにおける振分処理フローを示す図である。
同図においてロードバランサ2aは、ロードバランサ2aの仮想IPアドレスAを宛先としたデータ参照要求をアプリケーション装置4から受信したことを契機に、運用系判断処理部23aを起動する(ステップS905)。運用系判断処理部23aは、サービスチェック部22aの記憶部221aから、0系の参照部11−0及び転送部15−0、1系の参照部11−1及び転送部15−1それぞれからのヘルスチェック信号の応答ありなしの結果を読み出すとともに(ステップS910)、運用フラグを読み出し、保持する(ステップS915)。なお、運用フラグとは、0系及び1系の参照部11の応答状態が同じであり、かつ、0系及び1系の転送部15の応答状態が同じである場合など、応答の状態からは運用系を決定することができない場合に参照するフラグであり、0系を振分先とする場合は「0」、1系を振分先とする場合は「1」、0系及び1系とも振分不可である場合は「3」の値をとる。通常は、システム開始時に初期値として「0」か「1」を設定する。
[3.2 Distributing process in load balancer 2]
FIG. 11 is a diagram showing a distribution processing flow in the load balancer 2a.
In the figure, the load balancer 2a activates the operational system determination processing unit 23a when receiving a data reference request addressed to the virtual IP address A of the load balancer 2a from the application device 4 (step S905). The operational system determination processing unit 23a receives from the storage unit 221a of the service check unit 22a from the 0-system reference unit 11-0 and the transfer unit 15-0, and the 1-system reference unit 11-1 and the transfer unit 15-1. A result of no health check signal response is read (step S910), and an operation flag is read and held (step S915). Note that the operation flag indicates that the response state of the 0-system and 1-system reference unit 11 is the same and the response state of the 0-system and 1-system transfer unit 15 is the same, for example, from the response state. This flag is referred to when the active system cannot be determined. When the 0 system is the distribution destination, “0”, when the 1 system is the distribution destination, “1”, both the 0 system and the 1 system When distribution is impossible, the value “3” is taken. Normally, “0” or “1” is set as an initial value when the system is started.

続いて、運用系判断処理部23aは、図12に示す振分け状態表に従い、振分け状態を判断する(ステップS920)。
すなわち、運用系判断処理部23aは、0系及び1系の参照部11の両方から応答があり、かつ、0系及び1系の転送部15の応答有無の状態が同じであった場合は振分状態「2」とする。また、0系の参照部11−0から応答があり、1系の参照部11−1から応答がなかった場合、あるいは、0系及び1系の参照部11、ならびに、0系の転送部15−0から応答があり、1系の転送部15−1から応答がなかった場合は振分状態「0」とする。また、0系の参照部11−0から応答がなく、1系の参照部11−1から応答があった場合、あるいは、0系及び1系の参照部11、ならびに、1系の転送部15−1から応答があり、0系の転送部15−0から応答がなかった場合は振分状態「1」とする。また、0系及び1系の参照部11の両方から応答がなかった場合は振分け状態「3」と判断する。
Subsequently, the active system determination processing unit 23a determines the distribution state according to the distribution state table shown in FIG. 12 (step S920).
In other words, the active system determination processing unit 23a receives a response from both the 0-system and the 1-system reference unit 11, and the response status of the 0-system and the 1-system transfer unit 15 is the same. The minute state is “2”. Also, when there is a response from the 0-system reference unit 11-0 and no response from the 1-system reference unit 11-1, or the 0-system and 1-system reference unit 11 and the 0-system transfer unit 15 When there is a response from −0 and no response is received from the 1-system transfer unit 15-1, the distribution state is set to “0”. Also, when there is no response from the 0-system reference unit 11-0 and there is a response from the 1-system reference unit 11-1, or the 0-system and 1-system reference units 11 and the 1-system transfer unit 15 If there is a response from -1 and no response from the 0-system transfer unit 15-0, the distribution state is set to "1". Further, when there is no response from both the 0-system and 1-system reference units 11, it is determined that the distribution state is “3”.

振分け状態が「0」であると判断した場合(ステップS920:振分け状態0)、運用系判断処理部23aは、ステップS905において受信したデータ参照要求の宛先をキャッシュサーバ1−0の物理IPアドレスC0及び参照部11−0のポート番号PS0として送信し(ステップS925)、記憶部221aに記憶されている運用フラグに振分け状態の値を設定する(ステップS930)。これにより、運用フラグには「0」が設定される。   When it is determined that the distribution state is “0” (step S920: distribution state 0), the active system determination processing unit 23a sets the destination of the data reference request received in step S905 as the physical IP address C0 of the cache server 1-0. The port number PS0 of the reference unit 11-0 is transmitted (step S925), and the value of the distribution state is set in the operation flag stored in the storage unit 221a (step S930). Thereby, “0” is set in the operation flag.

振分け状態が「1」であると判断した場合(ステップS920:振分け状態1)、運用系判断処理部23aは、ステップS905において受信したデータ参照要求の宛先をキャッシュサーバ1−1の物理IPアドレスC1及び参照部11−1のポート番号PS1として送信し(ステップS935)、記憶部221aに記憶されている運用フラグに振分け状態の値を設定する(ステップS930)。これにより、運用フラグには「1」が設定される。   When it is determined that the distribution state is “1” (step S920: distribution state 1), the active system determination processing unit 23a sets the destination of the data reference request received in step S905 as the physical IP address C1 of the cache server 1-1. The port number PS1 of the reference unit 11-1 is transmitted (step S935), and the value of the distribution state is set in the operation flag stored in the storage unit 221a (step S930). Thereby, “1” is set in the operation flag.

振分け状態が「2」であると判断した場合(ステップS920:振分け状態2)、0系1系とも正常に動作しているため、応答の状態からはどちらのキャッシュサーバ1を運用系、待機系とするかを判断することはできない。そこで、運用系判断処理部23aは、さらに、ステップS915にお保持していた運用フラグを取得し(ステップS940)、値が「0」または「1」であるかを判断する(ステップS945)。
運用フラグが「0」または「1」である場合(ステップS945:真)、運用系判断処理部23aは、運用フラグにおいて示される系のキャッシュサーバ1にステップS905において受信したデータ参照要求を送信する(ステップS950)。つまり、運用フラグが「0」である場合は、データ参照要求の宛先アドレスをキャッシュサーバ1−0の物理IPアドレスC0及び参照部11−0のポート番号PS0に変換して送信し、運用フラグが「1」である場合は、データ参照要求の宛先アドレスをキャッシュサーバ1−1の物理IPアドレスC1及び参照部11−1のポート番号PS1に変換して送信する。これにより、0系1系の両方が正常に動作している間は同じ系が振分先となる。
When it is determined that the distribution state is “2” (step S920: distribution state 2), since both the 0 system and the 1 system are operating normally, whichever of the cache servers 1 is the active system and the standby system from the response state It cannot be judged whether or not. Therefore, the active system determination processing unit 23a further acquires the operation flag held in step S915 (step S940), and determines whether the value is “0” or “1” (step S945).
When the operation flag is “0” or “1” (step S945: true), the active system determination processing unit 23a transmits the data reference request received in step S905 to the cache server 1 of the system indicated by the operation flag. (Step S950). That is, when the operation flag is “0”, the destination address of the data reference request is converted into the physical IP address C0 of the cache server 1-0 and the port number PS0 of the reference unit 11-0 and transmitted, and the operation flag is set. In the case of “1”, the destination address of the data reference request is converted into the physical IP address C1 of the cache server 1-1 and the port number PS1 of the reference unit 11-1 and transmitted. As a result, while both the 0 system and the 1 system are operating normally, the same system becomes the distribution destination.

一方、運用フラグが「0」でも「1」でもない場合(ステップS945:偽)、運用系判断処理部23aは、0系を振分先とする。運用系判断処理部23aは、ステップS905において受信したデータ参照要求の宛先アドレスをキャッシュサーバ1−0の物理IPアドレスC0及び参照部11−0のポート番号PS0に変換して送信し(ステップS955)、運用フラグへ「0」を設定する(ステップS960)。従って、0系及び1系の両方に異常が発生した後、同時に正常に戻った場合には、0系を振分先とする。   On the other hand, when the operation flag is neither “0” nor “1” (step S945: false), the operation system determination processing unit 23a sets the system 0 as the distribution destination. The active system determination processing unit 23a converts the destination address of the data reference request received in step S905 into the physical IP address C0 of the cache server 1-0 and the port number PS0 of the reference unit 11-0 and transmits the converted address (step S955). Then, “0” is set in the operation flag (step S960). Therefore, if an abnormality occurs in both the 0 system and the 1 system and then returns to normal at the same time, the 0 system is the distribution destination.

振分け状態「3」であると判断した場合(ステップS920:振分け状態3)、0系、1系ともに異常が発生しているため、運用系判断処理部23aは、ステップS905において受信したデータ参照要求に対するエラー応答をアプリケーション装置4へ返送し(ステップS965)、運用フラグへ「3」を設定する(ステップS970)。   When it is determined that the distribution state is “3” (step S920: distribution state 3), since both the 0-system and the 1-system are abnormal, the operational system determination processing unit 23a receives the data reference request received in step S905. Is returned to the application device 4 (step S965), and “3” is set in the operation flag (step S970).

図13は、ロードバランサ2bにおける振分処理の処理フローを示す図である。
同図においてロードバランサ2bは、ロードバランサ2bの仮想IPアドレスBを宛先とした系状態識別信号をキャッシュサーバ1から受信したことを契機に、運用系判断処理部23bを起動する(ステップS1005)。
ステップS1010以降の処理は、図11に示すステップS910以降の処理と同様であり、振分け状態表も同じ設定内容である。ただし、運用系判断処理部23a、記憶部221a、参照部11−0のポート番号PS0、参照部11−1のポート番号PS1はそれぞれ、運用系判断処理部23b、記憶部221b、転送部15−0のポート番号PT0、転送部15−1のポート番号PT1と読み替え、ステップS905においてアプリケーション装置4から受信したデータ参照要求は、ステップS1005においてキャッシュサーバ1から受信した系状態識別信号と読み替える。よって、ステップS1065においてはエラー応答を系状態識別信号の送信元のキャッシュサーバ1の転送部15に返送することになる。
FIG. 13 is a diagram illustrating a processing flow of distribution processing in the load balancer 2b.
In the figure, the load balancer 2b activates the active system determination processing unit 23b in response to receiving from the cache server 1 a system state identification signal destined for the virtual IP address B of the load balancer 2b (step S1005).
The processing after step S1010 is the same as the processing after step S910 shown in FIG. 11, and the distribution status table has the same setting contents. However, the operational system determination processing unit 23a, the storage unit 221a, the port number PS0 of the reference unit 11-0, and the port number PS1 of the reference unit 11-1 are respectively the operational system determination processing unit 23b, the storage unit 221b, and the transfer unit 15-. The port number PT0 of 0 and the port number PT1 of the transfer unit 15-1 are read, and the data reference request received from the application apparatus 4 in step S905 is read as the system state identification signal received from the cache server 1 in step S1005. Therefore, in step S1065, an error response is returned to the transfer unit 15 of the cache server 1 that is the transmission source of the system state identification signal.

[4. データ同期処理]
キャッシュシステムでは、原本データ管理装置3が記憶する実データとの同期をとりつつ、キャッシュサーバ1−0、1−1間でデータの同期をとる必要がある。以下では、本実施形態のデータ同期方法を採用した理由について説明した後、本実施の形態によるキャッシュシステムにおける同期処理の動作について説明する。
[4. Data synchronization processing]
In the cache system, it is necessary to synchronize data between the cache servers 1-0 and 1-1 while synchronizing with actual data stored in the original data management device 3. In the following, the reason for adopting the data synchronization method of this embodiment will be described, and then the operation of the synchronization processing in the cache system according to this embodiment will be described.

[4.1 データ同期方法の検討過程]
図14は、本実施の形態によるキャッシュシステムへの適用を検討した原本データ同期方法を示す図である。
図14(a)は、原本データ管理装置3から両系のキャッシュサーバ1それぞれに対して実データを反映させる方法である。この方法では、両系のキャッシュサーバ1間でデータの同期を行なう必要がない。しかし、原本データ管理装置3に負荷がかかるとともに、同期のための機能を追加しなければならず、また、原本データ管理装置3からの実データの転送時にミスが発生した場合、キャッシュサーバ1では実データとの差分を反映できないままとなるという問題がある。加えて、両系のキャッシュサーバ1が記憶するデータの整合性が担保できず、系切り替え時にデータの同期がとれなくなってしまうおそれがあり、リダンダンシそのものが実現できないという問題もある。
[4.1 Data synchronization method review process]
FIG. 14 is a diagram showing an original data synchronization method for which application to the cache system according to the present embodiment has been studied.
FIG. 14A shows a method of reflecting actual data from the original data management apparatus 3 to the cache servers 1 of both systems. In this method, it is not necessary to synchronize data between the cache servers 1 of both systems. However, the load on the original data management device 3 is increased, and a function for synchronization must be added. If a mistake occurs during transfer of actual data from the original data management device 3, the cache server 1 There is a problem that the difference from the actual data cannot be reflected. In addition, the consistency of the data stored in the cache servers 1 of both systems cannot be ensured, and there is a risk that the data may not be synchronized at the time of system switching, and there is a problem that the redundancy itself cannot be realized.

図14(b)は、原本データ管理装置3から一方のキャッシュサーバ1のみ対して実データを反映させ、その後、キャッシュサーバ1の系間でデータの同期をとる方法である。この方法では、原本データ管理装置3に原本データ書き込みのための機能を追加しなければならず、また、原本データ管理装置3からの実データの転送時に時にミスが発生した場合、キャッシュサーバ1では実データとの差分を反映できないままとなるという問題がある。さらには、原本データ管理装置3において、キャッシュサーバ1に系切替えが発生している場合についての動作を考慮しなければならず、系切り替え時データの同期がとれなくなってしまうおそれがあり、リダンダンシそのものが実現できないという問題もある。   FIG. 14B shows a method of reflecting the actual data from the original data management apparatus 3 to only one cache server 1 and then synchronizing the data between the systems of the cache server 1. In this method, a function for writing original data must be added to the original data management apparatus 3, and if a mistake occurs during transfer of actual data from the original data management apparatus 3, the cache server 1 There is a problem that the difference from the actual data cannot be reflected. Furthermore, in the original data management apparatus 3, the operation when the system switching has occurred in the cache server 1 must be taken into account, and there is a possibility that data may not be synchronized at the time of system switching. There is also a problem that cannot be realized.

図14(c)は、一方のキャッシュサーバ1が定期的に原本データ管理装置3から原本データを読み出し、系間でデータの同期をとる方法である。この方法の場合、考慮すべき点はあるものの、系切り替えに伴うデータロストの最小化といったリダンダンシの根幹に係る条件をクリアしている。
そこで、本実施形態では、図14(c)の方法をベースとして、運用系、待機系を認識せずに動作しているキャッシュサーバ1のどちらが原本データとの同期を行なうかを決定する処理を追加するとともに、系間においてデータ同期がどこまで行なわれたかを管理可能な系間同期方法を追加した。
FIG. 14C shows a method in which one cache server 1 periodically reads original data from the original data management apparatus 3 to synchronize data between the systems. In the case of this method, although there are points to be considered, the conditions related to the basics of redundancy such as minimization of data lost due to system switching are cleared.
Therefore, in the present embodiment, based on the method of FIG. 14C, a process for determining which of the cache server 1 operating without recognizing the active system and the standby system performs synchronization with the original data. In addition to this, an inter-system synchronization method that can manage how much data synchronization has been performed between systems has been added.

独立した2つのキャッシュサーバ1のどちらが原本データとの同期を行なうかについては、図10等においても説明したように、各々のキャッシュサーバ1がロードバランサ2bの仮想IPアドレス宛てにダミーリクエスト、つまり、系状態識別信号を送信し、そのリクエストの応答返却をもって同期を行なう側であることを認識し、データ同期処理を起動する。   As to which of the two independent cache servers 1 synchronizes with the original data, as described in FIG. 10 and the like, each cache server 1 sends a dummy request to the virtual IP address of the load balancer 2b, that is, A system state identification signal is transmitted, and when a response is returned from the request, it is recognized that the synchronization is performed, and data synchronization processing is started.

図15は、本実施の形態によるキャッシュシステムへの適用を検討した系間の同期方法を示す図である。
図15(a)は、既存のDBMSが持つデータ同期機能を用いる方法を示す図である。本実施の形態においては、両系のキャッシュサーバ1は自系の状態、他系の系状態とも意識せず、外部のネットワーク装置であるロードバランサ2によって系が切り替えられる。つまり、ロードバランサ2による切り替えは、既存のDBMSのリンク機能が持つ系間同期の状態とは無関係に行なわれることになる。よって、既存のDBMSのリンク機能自体は系が切り替えを行なわれたことを認識できず、正しくデータ同期を行なうことはできない。また、既存のDBSMでは、障害時のデータ紛失を回復する機能が適用されておらず、DBインスタンスの再起動が必要となることがあり、適切ではない。
FIG. 15 is a diagram showing a synchronization method between systems that are examined for application to the cache system according to the present embodiment.
FIG. 15A is a diagram illustrating a method of using the data synchronization function of an existing DBMS. In this embodiment, the cache servers 1 of both systems are not aware of the status of their own system or the status of the other system, and the systems are switched by the load balancer 2 that is an external network device. That is, switching by the load balancer 2 is performed regardless of the state of synchronization between systems possessed by the link function of the existing DBMS. Therefore, the link function itself of the existing DBMS cannot recognize that the system has been switched, and cannot perform data synchronization correctly. Further, in the existing DBSM, the function of recovering data loss at the time of failure is not applied, and it may be necessary to restart the DB instance, which is not appropriate.

図15(b)は、原本データとは同期しない系のキャッシュサーバ1が、原本データと同期する側のキャッシュサーバ1から更新されたデータを吸い上げる方法である。この方法の場合、原本データとの同期の処理、系間の同期の処理が両系に分散しているため、系切り替え時にデータの不整合が発生する可能性があるとともに、系障害時、旧サービスルート側に残ったデータの消去ができないという問題がある。また、両系のキャッシュサーバ1において系の状態を意識しなくてはならず、本実施形態にはそぐわない。   FIG. 15B shows a method in which the cache server 1 that is not synchronized with the original data sucks up the updated data from the cache server 1 that is synchronized with the original data. In this method, the synchronization processing with the original data and the synchronization processing between the systems are distributed to both systems. There is a problem that data remaining on the service route side cannot be erased. Further, the cache server 1 of both systems must be aware of the status of the system and is not suitable for the present embodiment.

図15(c)は、原本データと同期する系のキャッシュサーバ1が、原本データと同期しない側のキャッシュサーバ1へ更新されたデータを書き込む方法である。この方法の場合、原本データとの同期を行なう系のキャッシュサーバ1において、系間の同期の処理も行なうためにデータ同期処理が片方の系に集約され、系切り替え時にデータの不整合が発生することを防ぐことができる。
そこで、図15(c)の方法を系間の同期方法として採用し、以下のようにデータ同期がどこまで行なわれたかの管理方法を追加した。
FIG. 15C shows a method in which the cache server 1 of the system synchronized with the original data writes the updated data to the cache server 1 on the side not synchronized with the original data. In the case of this method, in the cache server 1 of the system that performs synchronization with the original data, the synchronization processing between the systems is also performed, so that the data synchronization processing is concentrated in one system, and data inconsistency occurs during system switching. Can be prevented.
Therefore, the method shown in FIG. 15C is adopted as a synchronization method between systems, and a management method of how far data synchronization has been performed is added as follows.

つまり、図15(c)の方法では、系間でデータの転送中に系切り替えが発生するなどして、新しく原本データと同期する側になった系は、どの時点から原本データとの同期を行なえばよいかを把握することができない。そこで、データ同期がどこまで行なわれたかを、原本データ管理装置3において原本データが更新されたときに付与されたタイムスタンプを利用して管理する。具体的には、原本データと同期する系のキャッシュサーバ1は、原本データ管理装置3から更新された原本データを読み出すときは、その各原本データの更新日時とともに読み出し、その中で最新の更新日時を同期日時として保持する。そして、原本データと同期しない側のキャッシュサーバ1へ更新された原本データを書き込むときには、同期日時も同時に通知する。これにより、次に同期を行なうタイミングのときに、原本データと同期する系のキャッシュサーバ1は、自系が保持している同期日時以降が更新日時である原本データを原本データ管理装置3から読み出せばよい。   In other words, in the method shown in FIG. 15C, the system that newly synchronizes with the original data, such as when a system switch occurs during data transfer between the systems, synchronizes with the original data from any point in time. I can't figure out what to do. Therefore, the extent to which data synchronization has been performed is managed in the original data management device 3 using the time stamp given when the original data was updated. Specifically, when the cache data 1 of the system synchronized with the original data reads the original data updated from the original data management device 3, it reads together with the update date and time of each original data, and the latest update date and time among them Is stored as the synchronization date. When the updated original data is written to the cache server 1 on the side that is not synchronized with the original data, the synchronization date is also notified at the same time. As a result, at the next synchronization timing, the cache server 1 of the system that synchronizes with the original data reads the original data that is updated after the synchronization date and time held by the own system from the original data management device 3. Just put it out.

[4.2 データ同期シーケンス]
図16は、キャッシュシステムのデータ同期シーケンスを示す図である。
同図は、キャッシュサーバ1−0が運用系、キャッシュサーバ1−1が待機系であるとロードバランサ2bに判断されている場合の例を示す。
両系のキャッシュサーバ1の転送部15は、定期的に系状態識別処理を起動し、系状態識別信号をロードバランサ2bに送信している。同図において、0系の転送部15−0が、ロードバランサ2bに対して系状態識別信号を送信すると、図10のステップS805〜S815の処理が行なわれる(ステップS1105)。
[4.2 Data synchronization sequence]
FIG. 16 is a diagram showing a data synchronization sequence of the cache system.
This figure shows an example in which the load balancer 2b determines that the cache server 1-0 is the active system and the cache server 1-1 is the standby system.
The transfer units 15 of the cache servers 1 of both systems periodically start the system state identification process and transmit a system state identification signal to the load balancer 2b. In FIG. 10, when the 0-system transfer unit 15-0 transmits a system state identification signal to the load balancer 2b, the processes in steps S805 to S815 in FIG. 10 are performed (step S1105).

ロードバランサ2bが、キャッシュサーバ1−0を運用系と判断しているため、0系の転送部15−0は自系の送信した系状態識別信号を受信する。これにより、転送部15−0は、自系が運用系であると判断し、処理を継続することを決定して(ステップS1110)、原本データとの同期処理を起動する(ステップS1115)。転送部15−0は、原本データ管理装置3に原本データ取得を送信し(ステップS1120)、原本データ管理装置3のデータ管理部31は、原本データ記憶部33から原本データを読み出して(ステップS1125)、転送部15−0に返送する(ステップS1130)。転送部15−0は、受信した原本データにより、転送データ記憶部163−0に記憶されているデータを更新した後(ステップS1135)、系間同期処理を行なう(ステップS1140)。すなわち0系の転送部15−0は、1系の転送部15−1に更新対象の原本データを送信し(ステップS1145)、転送部15−1は、受信した原本データにより転送データ記憶部163−1に記憶されているデータを更新する(ステップS1150)。更新が正常に終了した場合、1系の転送部15−1は、0系の転送部15−0に正常応答を返送する(ステップS1155)。   Since the load balancer 2b determines that the cache server 1-0 is the active system, the 0-system transfer unit 15-0 receives the system status identification signal transmitted by the own system. Thereby, the transfer unit 15-0 determines that the own system is the active system, determines to continue the process (step S1110), and starts the synchronization process with the original data (step S1115). The transfer unit 15-0 transmits acquisition of original data to the original data management device 3 (step S1120), and the data management unit 31 of the original data management device 3 reads the original data from the original data storage unit 33 (step S1125). ) And returns to the transfer unit 15-0 (step S1130). The transfer unit 15-0 updates the data stored in the transfer data storage unit 163-0 with the received original data (step S1135), and then performs intersystem synchronization processing (step S1140). That is, the 0-system transfer unit 15-0 transmits the original data to be updated to the 1-system transfer unit 15-1 (step S1145), and the transfer unit 15-1 uses the received original data to transfer the transfer data storage unit 163. The data stored in -1 is updated (step S1150). When the update is normally completed, the 1-system transfer unit 15-1 returns a normal response to the 0-system transfer unit 15-0 (step S1155).

一方、1系の転送部15−1も、ロードバランサ2bに対して系状態識別信号を送信している。これにより、同様に、図10のステップS820〜S830の処理が行なわれる(ステップS1160)。上述したように、ロードバランサ2bはキャッシュサーバ1−0を運用系と判断しているため、系状態識別信号は0系の転送部15−0へ送信される。転送部15−1は自系が送信した系状態識別信号を受信できないため、自系が待機系であると判断して処理を終了する(ステップS1165)。   On the other hand, the 1-system transfer unit 15-1 also transmits a system state identification signal to the load balancer 2b. Thereby, similarly, the processing of steps S820 to S830 in FIG. 10 is performed (step S1160). As described above, since the load balancer 2b determines that the cache server 1-0 is the active system, the system status identification signal is transmitted to the 0-system transfer unit 15-0. Since the transfer unit 15-1 cannot receive the system state identification signal transmitted by the own system, the transfer unit 15-1 determines that the own system is a standby system and ends the process (step S1165).

両系のキャッシュサーバ1の転送部15はステップS1105、S1160の処理を定期的に起動し、運用系と待機系の入れ替えがない間は、上述したステップS1105〜S1165の処理を繰り返す。系状態が入れ替わり、キャッシュサーバ1−1が運用系となったときには、上記処理における0系の転送部15−0と1系の転送部15−1の動作が入れ替わる。   The transfer unit 15 of both cache servers 1 periodically starts the processes of steps S1105 and S1160, and repeats the processes of steps S1105 to S1165 described above while the active system and the standby system are not switched. When the system state is switched and the cache server 1-1 becomes the active system, the operations of the 0-system transfer unit 15-0 and the 1-system transfer unit 15-1 in the above processing are switched.

[4.3 データ同期処理に用いられるデータ]
図17は、データ同期処理に用いられる各装置のデータ例を示す図である。ここでは、キャッシュサーバ1−0が運用系、キャッシュサーバ1−1が待機系であるとロードバランサ2bに判断されている場合の例を示す。
[4.3 Data used for data synchronization processing]
FIG. 17 is a diagram illustrating an example of data of each device used for data synchronization processing. In this example, the load balancer 2b determines that the cache server 1-0 is the active system and the cache server 1-1 is the standby system.

原本データ管理装置3は、原本データ記憶部33に、アプリケーション装置4が利用する各種情報の原本データである「情報1」、「情報2」、「情報3」、「情報4」、・・・を記憶している。また、更新履歴記憶部32には、更新された原本データである「情報1」、「情報2」、「情報3」、「情報4」と、それらの更新日時「00:00:01」、「00:00:02」、「00:00:03」、「00:00:04」とを対応付けた更新履歴TBLを記憶している。なお、原本データ管理装置3のデータ管理部31は、原本データ記憶部33に記憶されている原本データが更新されると、随時、更新履歴記憶部32内の更新履歴TBLに更新された原本データとその更新日時とを対応付けて書き込んでいる。   The original data management device 3 stores, in the original data storage unit 33, “information 1”, “information 2”, “information 3”, “information 4”, which are original data of various types of information used by the application device 4. Is remembered. In the update history storage unit 32, the updated original data “information 1”, “information 2”, “information 3”, “information 4”, their update date and time “00:00:01”, An update history TBL in which “00:00:02”, “00:00:03”, and “00:00:04” are associated is stored. The data management unit 31 of the original data management device 3 updates the original data updated to the update history TBL in the update history storage unit 32 whenever the original data stored in the original data storage unit 33 is updated. And its update date are written in association with each other.

運用系であるとみなされている0系の転送部15−0が備える転送データ記憶部163−0には、原本データ管理装置3から読み出された原本データのコピー(キャッシュデータ)である「情報1」、「情報2」が記憶されている。また、同期情報記憶部156−0の更新情報TBLには、転送データ記憶部163−0には書き込んだが、まだキャッシュサーバ1−1との同期更新を行なっていない原本データ「情報2」とその更新日時「00:00:02」とが対応付けて設定されている。さらに、同期情報記憶部156−0が記憶する最終更新情報TBLには、転送データ記憶部163−0に書き込みが終了した原本データの更新日時のうち、最新の更新日時であるラストルック「00:00:02」が設定されている。   The transfer data storage unit 163-0 included in the 0-system transfer unit 15-0 considered to be the active system is a copy (cache data) of the original data read from the original data management device 3. Information 1 ”and“ Information 2 ”are stored. In addition, in the update information TBL of the synchronous information storage unit 156-0, the original data “information 2” that has been written in the transfer data storage unit 163-0 but has not yet been synchronously updated with the cache server 1-1, and its data The update date and time “00:00:02” is set in association with each other. Furthermore, in the last update information TBL stored in the synchronization information storage unit 156-0, the last look “00: which is the latest update date / time among the update date / time of the original data that has been written to the transfer data storage unit 163-0. 00:02 "is set.

待機系であるとみなされている1系の転送部15−1が備える転送データ記憶部163−1には、原本データ管理装置3から読み出された原本データのコピー(キャッシュデータ)である「情報1」が記憶されている。また、同期情報記憶部156−1が記憶する最終更新情報TBLには、転送データ記憶部163−1に書き込みが終了した原本データの更新日時のうち、最新の更新日時であるラストルック「00:00:01」が設定されている。待機系の場合、原本データ管理装置3から直接原本データを読み出さないため、通常、同期情報記憶部156−1の更新情報TBLは空である。   The transfer data storage unit 163-1 included in the transfer unit 15-1 of the first system that is regarded as the standby system is a copy (cache data) of the original data read from the original data management device 3. Information 1 "is stored. Further, in the last update information TBL stored in the synchronization information storage unit 156-1, the last look “00: which is the latest update date / time among the update date / time of the original data that has been written to the transfer data storage unit 163-1. 00:01 "is set. In the case of the standby system, since the original data is not read directly from the original data management device 3, the update information TBL in the synchronization information storage unit 156-1 is normally empty.

[4.4 データ更新の流れ]
図18は、原本データ同期処理におけるデータ更新の流れを示す図であり、図17の状態から更新を行なう例を示す。
同図において、自系が運用系であることを認識した0系の転送部15−0は、最終更新情報TBLに設定されているラストルックを取得し、この取得したラストルックと原本データ取得要求とを原本データ管理装置3に送信する(ステップS1205)。原本データ管理装置3のデータ管理部31は、更新履歴記憶部32内の更新履歴TBLを検索してラストルック以降が更新日時である原本データを特定し、特定した原本データとその更新日時をキャッシュサーバ1−0へ返送する。同図においては、原本データ管理装置3は、キャッシュサーバ1−0からラストルック「00:00:02」を受信し、原本データ「情報3」とその更新日時「00:00:03」、原本データ「情報4」とその更新日時「00:00:04」を返送している。
[4.4 Data update flow]
FIG. 18 is a diagram showing the flow of data update in the original data synchronization process, and shows an example in which the update is performed from the state of FIG.
In the figure, the 0-system transfer unit 15-0, which has recognized that the own system is the active system, acquires the last look set in the last update information TBL, and acquires the acquired last look and original data acquisition request. Are transmitted to the original data management apparatus 3 (step S1205). The data management unit 31 of the original data management device 3 searches the update history TBL in the update history storage unit 32 to identify original data whose update date and time is after the last look, and caches the specified original data and its update date and time. Return to server 1-0. In the figure, the original data management apparatus 3 receives the last look “00:00:02” from the cache server 1-0, and the original data “information 3” and its update date “00:00:03”. Data “information 4” and its update date “00:00:04” are returned.

0系の転送部15−0は、原本データ管理装置3から受信した原本データ「情報3」及び「情報4」を転送データ記憶部163−0に書き込むと(ステップS1210)、更新したこれらの原本データの更新日時のうち、最新の更新日時「00:00:04」により最終更新情報TBLのラストルックを上書きする(ステップS1215)。   When the original data “information 3” and “information 4” received from the original data management apparatus 3 are written in the transfer data storage unit 163-0 (step S1210), the 0-system transfer unit 15-0 updates these originals. Of the data update dates and times, the last update date TBL is overwritten with the latest update date and time “00:00:04” (step S1215).

なお、上記においては、0系の転送部15−0は、最終更新情報TBLに設定されているラストルックを原本データ取得要求とともに原本データ管理装置3に送信しているが、ラストルックから所定の時間だけ遡った日時を送信してもよい。原本データ管理装置3のデータ管理部31は、更新履歴TBLを検索して受信した日時以降が更新日時である原本データを特定し、特定した原本データとその更新日時を返送する。   In the above description, the 0-system transfer unit 15-0 transmits the last look set in the final update information TBL to the original data management apparatus 3 together with the original data acquisition request. You may send the date and time which goes back by time. The data management unit 31 of the original data management device 3 searches for the update history TBL, specifies original data whose update date is after the received date, and returns the specified original data and its update date.

図19は、系間データ同期処理におけるデータ更新の流れを示す図であり、図18に示す処理に続いて実行する場合の例を示す。
図18のステップS1215の処理の前または後、0系の転送部15−0は、更新情報TBLに、ステップS1210において受信した原本データ「情報3」とその更新日時「00:00:03」、原本データ「情報4」とその更新日時「00:00:04」を追加して書き込む(ステップS1305)。
FIG. 19 is a diagram showing the flow of data update in the intersystem data synchronization processing, and shows an example in the case of executing following the processing shown in FIG.
Before or after the process of step S1215 in FIG. 18, the 0-system transfer unit 15-0 adds the original data “information 3” received in step S1210 and its update date and time “00:00:03” to the update information TBL. Original data “information 4” and its update date “00:00:04” are additionally written (step S1305).

0系の転送部15−0は、1系の転送部15−1が保持する最終更新情報TBLからラストルック「00:00:01」を読み出すと、自系が保持する更新情報TBLに設定されている更新日時と比較する(ステップS1310)。0系の転送部15−0は、1系の転送部15−1から読み出したラストルック以降が更新日時である更新情報TBL内の原本データを特定し、特定した原本データにより1系の転送部15−1が備える転送データ記憶部163−1に記憶されている情報を更新する。これにより、キャッシュサーバ1−1の転送データ記憶部163−1に、「情報2」、「情報3」、「情報4」が書き込まれる(ステップS1315)。   When the last look “00:00:01” is read from the last update information TBL held by the 1-system transfer unit 15-1, the 0-system transfer unit 15-0 is set to the update information TBL held by the own system. It is compared with the update date and time (step S1310). The 0-system transfer unit 15-0 specifies the original data in the update information TBL whose update date and time is after the last look read from the 1-system transfer unit 15-1, and the 1-system transfer unit is determined based on the specified original data. Information stored in the transfer data storage unit 163-1 included in 15-1 is updated. Thereby, “information 2”, “information 3”, and “information 4” are written in the transfer data storage unit 163-1 of the cache server 1-1 (step S1315).

0系の転送部15−0は、ステップS1315において1系の転送データ記憶部163−1に書き込んだ原本データの更新日時のうち、最新の更新日時「00:00:04」をラストルックとして1系の転送部15−1が記憶している最終更新情報TBLに書き込む(ステップS1320)。0系の転送部15−0は、1系の転送部15−1に書き込んだ原本データである「情報2」、「情報3」、「情報4」を更新情報TBLから削除する。   The 0-system transfer unit 15-0 uses the latest update date and time “00:00:04” among the update dates and times of the original data written in the 1-system transfer data storage unit 163-1 in step S1315 as the last look. The final transfer information TBL stored in the system transfer unit 15-1 is written (step S1320). The 0-system transfer unit 15-0 deletes “information 2”, “information 3”, and “information 4”, which are the original data written in the 1-system transfer unit 15-1, from the update information TBL.

[4.5 キャッシュサーバ1における更新処理]
図20は、図16のステップS1105、S1160において、両系のキャッシュサーバ1の転送部15が実行する系状態識別処理フローを示す。
同図において、キャッシュサーバ1のタイマ151は、所定の時間毎に系状態識別処理を起動し、これにより、系状態識別部155は、ロードバランサ2bの仮想IPアドレスB宛に系状態識別信号を送信する(ステップS1405)。ロードバランサ2bは、図13に示す振分処理を行い、受信した系状態識別信号を運用系と判断しているキャッシュサーバ1に送信する。
[4.5 Update processing in cache server 1]
FIG. 20 shows a system state identification process flow executed by the transfer unit 15 of the cache servers 1 of both systems in steps S1105 and S1160 of FIG.
In the same figure, the timer 151 of the cache server 1 starts the system state identification process every predetermined time, whereby the system state identification unit 155 sends a system state identification signal to the virtual IP address B of the load balancer 2b. Transmit (step S1405). The load balancer 2b performs the distribution process shown in FIG. 13 and transmits the received system state identification signal to the cache server 1 that is determined to be the active system.

ステップS1405において系状態識別信号を送信した後、自系が送信したこの系状態識別信号を受信できなかった場合(ステップS1410:到達しない)、系状態識別部155は、自系が現在待機系であると判断し、その系状態を保持する(ステップS1415)。   After transmitting the system state identification signal in step S1405, if the system state identification signal transmitted by the own system cannot be received (step S1410: not reached), the system state identifying unit 155 determines that the own system is the current standby system. It is determined that there is, and the system state is held (step S1415).

ステップS1405において系状態識別信号を送信した後、自系が送信したこの系状態識別信号を受信した場合(ステップS1410:到達した)、系状態識別部155は、自系が現在運用系であると判断してその系状態を保持する(ステップS1420)。なお、自系が送信した系状態識別信号を受信したかについては、受信した系状態識別信号に設定されている送信元IPアドレスが自系の物理IPアドレスであるかにより判断することができる。   After transmitting the system state identification signal in step S1405, if this system state identification signal transmitted by the own system is received (step S1410: reached), the system state identification unit 155 determines that the own system is the current operating system. The system state is determined and held (step S1420). Whether or not the system status identification signal transmitted by the own system has been received can be determined based on whether or not the source IP address set in the received system status identification signal is the physical IP address of the own system.

図21は、図16のステップS1110〜S1135、S1165において、両系のキャッシュサーバ1の転送部15が実行する原本データとの同期処理フローを示す。
両系のキャッシュサーバ1の転送部15は、図20に示す系状態識別処理が終了すると、原本データとの同期処理を起動する。これにより、情報転送処理部157は、系状態識別部155が保持している自系の系状態を判断する(ステップS1505)。自系の系状態が待機系である場合(ステップS1505:待機系)、情報転送処理部157は処理を終了する。
FIG. 21 shows a synchronization processing flow with the original data executed by the transfer unit 15 of the two cache servers 1 in steps S1110 to S1135 and S1165 of FIG.
When the system state identification process shown in FIG. 20 ends, the transfer unit 15 of both cache servers 1 starts a synchronization process with the original data. Thereby, the information transfer processing unit 157 determines the system state of the own system held by the system state identification unit 155 (step S1505). When the system status of the own system is the standby system (step S1505: standby system), the information transfer processing unit 157 ends the process.

自系の系状態が運用系である場合(ステップS1505:運用系)、情報転送処理部157は、自系の同期情報記憶部156に記憶されている最終更新情報TBLからラストルックを読み出す(ステップS1510)。続いて、情報転送処理部157は、取得したラストルックと、原本データ取得要求を原本データ管理装置3に送信することにより、原本データ管理装置3からラストルック以降が更新日時である原本データとその更新日時の情報を取得する(ステップS1515)。情報転送処理部157が、ステップS1515において取得した原本データの書き込みを自系の転送データ管理部154に指示すると、転送データアクセス部162は、転送データ記憶部163に取得した原本データを書き込む(ステップS1520)。情報転送処理部157は、書き込みが終了した原本データと、原本データ管理装置3から受信したその原本データの更新日時とを対応づけて、自系の同期情報記憶部156が記憶している更新情報TBLに登録する(ステップS1525)。情報転送処理部157は、ステップS1525において登録した情報に対応した更新日時のうち最も新しい更新日時をラストルックとして、自系の同期情報記憶部156が記憶している最終更新情報TBLに書き込む(ステップS1530)。   When the own system state is the active system (step S1505: active system), the information transfer processing unit 157 reads the last look from the last update information TBL stored in the own synchronization information storage unit 156 (step S1505: active system). S1510). Subsequently, the information transfer processing unit 157 transmits the acquired last look and the original data acquisition request to the original data management device 3, so that the original data having the update date and time after the last look is transmitted from the original data management device 3 and its original data. Information on the update date is acquired (step S1515). When the information transfer processing unit 157 instructs the transfer data management unit 154 to write the original data acquired in step S1515, the transfer data access unit 162 writes the acquired original data in the transfer data storage unit 163 (step S1515). S1520). The information transfer processing unit 157 associates the original data for which writing has been completed with the update date and time of the original data received from the original data management device 3, and stores the update information stored in the own synchronization information storage unit 156. Register in the TBL (step S1525). The information transfer processing unit 157 writes the latest update date / time corresponding to the information registered in step S1525 as the last look in the last update information TBL stored in the own synchronization information storage unit 156 (step S1525). S1530).

図22は、図16のステップS1140において、運用系のキャッシュサーバ1の転送部15が実行する系間データ同期処理フローを示す。
図21のステップS1505において自系の系状態が運用系であると判断したキャッシュサーバ1の転送部15は、図21に示す原本データとの同期処理が終了すると、続いて系間データ同期処理を起動する。これにより、運用系のキャッシュサーバ1の系間転送処理部158は、自系の同期情報記憶部156に記憶されている更新情報TBLから原本データとその更新日時とを取得する(ステップS1605)。さらに、系間転送処理部158は、他系、つまり、現在待機系であるキャッシュサーバ1の同期情報記憶部156に記憶されている最終更新情報TBLからラストルックを読み出す(ステップS1610)。
FIG. 22 shows an inter-system data synchronization processing flow executed by the transfer unit 15 of the active cache server 1 in step S1140 of FIG.
The transfer unit 15 of the cache server 1 that has determined that its own system state is the active system in step S1505 in FIG. 21, when the synchronization process with the original data shown in FIG. to start. As a result, the inter-system transfer processing unit 158 of the active cache server 1 acquires the original data and its update date and time from the update information TBL stored in the local synchronization information storage unit 156 (step S1605). Further, the inter-system transfer processing unit 158 reads the last look from the final update information TBL stored in the synchronization information storage unit 156 of the cache server 1 that is the other system, that is, the current standby system (step S1610).

ステップS1605において取得した、転送データ記憶部163に反映済みの原本データの更新日時が、ステップS1610において取得した待機系のラストルックよりも新しい場合(ステップS1615:運用系のほうが新しい)、運用系の系間転送処理部158は、待機系のキャッシュサーバ1の転送データ管理部154に、ステップS1605において取得した原本データの書き込みを指示する(ステップS1620)。これにより、待機系のキャッシュサーバ1の転送データアクセス部162は、自系の転送データ記憶部163に指示された原本データを書き込む。   If the update date and time of the original data reflected in the transfer data storage unit 163 acquired in step S1605 is newer than the standby last look acquired in step S1610 (step S1615: the active system is newer), The inter-system transfer processing unit 158 instructs the transfer data management unit 154 of the standby cache server 1 to write the original data acquired in step S1605 (step S1620). As a result, the transfer data access unit 162 of the standby cache server 1 writes the original data instructed to the own transfer data storage unit 163.

続いて運用系のキャッシュサーバ1の系間転送処理部158は、ステップS1620で待機系のキャッシュサーバ1に書き込んだ原本データに対応した原本データ管理装置3における更新日時のうち、最新の更新日時をラストルックとして待機系のキャッシュサーバ1の同期情報記憶部156が記憶する最終更新情報TBLに書き込む(ステップS1625)。運用系のキャッシュサーバ1の系間転送処理部158は、ステップS1620において、待機系のキャッシュサーバ1の転送データ記憶部163に書き込んだ原本データ及びその更新日時を、自系の転送データ記憶部163に記憶されている更新情報TBLから削除する(ステップS1630)。   Subsequently, the inter-system transfer processing unit 158 of the active cache server 1 sets the latest update date and time among the update dates and times in the original data management device 3 corresponding to the original data written to the standby cache server 1 in step S1620. The last look-up information TBL stored in the synchronization information storage unit 156 of the standby cache server 1 is written as the last look (step S1625). In step S1620, the inter-system transfer processing unit 158 of the active cache server 1 uses the original data written in the transfer data storage unit 163 of the standby cache server 1 and its update date and time as its own transfer data storage unit 163. Is deleted from the update information TBL stored in (step S1630).

なお、ステップS1610において取得した待機系のラストルックが、ステップS1605において取得した、自系の転送データ記憶部163に反映済みの原本データの更新日時よりも新しい場合(ステップS1615:待機系のほうが新しい)、処理を終了する。   If the last look of the standby system acquired in step S1610 is newer than the update date and time of the original data already reflected in the local transfer data storage unit 163 acquired in step S1605 (step S1615: the standby system is newer). ), The process is terminated.

両系のキャッシュサーバ1は、以下のように定期的に系内データ同期処理を行う。
キャッシュサーバ1の参照部11において、タイマ111により系内同期処理部116が定期的に起動される。起動された系内同期処理部116は、転送部15へ系内データ同期を要求する。転送部15の系内同期処理部159は、参照部11の系内同期処理部116から系内データ同期を受信すると、転送データアクセス部162が転送データ記憶部163から読み出した原本データを返送する。参照部11の系内同期処理部116は、転送部15の系内同期処理部159から受信した原本データの書き込みを参照データアクセス部122へ指示し、参照データアクセス部122は、系内同期処理部116が受信した原本データを参照データ記憶部123へ書き込む。
Both cache servers 1 periodically perform in-system data synchronization processing as follows.
In the reference unit 11 of the cache server 1, the in-system synchronization processing unit 116 is periodically activated by the timer 111. The activated intra-system synchronization processing unit 116 requests intra-system data synchronization to the transfer unit 15. When the intra-system synchronization processing unit 159 of the transfer unit 15 receives the intra-system data synchronization from the intra-system synchronization processing unit 116 of the reference unit 11, the transfer data access unit 162 returns the original data read from the transfer data storage unit 163. . The intra-system synchronization processing unit 116 of the reference unit 11 instructs the reference data access unit 122 to write the original data received from the intra-system synchronization processing unit 159 of the transfer unit 15, and the reference data access unit 122 The original data received by the unit 116 is written into the reference data storage unit 123.

[5.汎用インタフェース]
本実施の形態のキャッシュシステムは、複数のアプリケーション装置4からデータ参照要求を受信する。しかし、アプリケーション装置4において実行されている上位サービスアプリケーションそれぞれに対して独自のインタフェース(以下、IFと記載)を定義すると、上位サービスアプリケーションの追加のたびにIFの実装が必要となってしまう。そこで、汎用的なIF定義によりデータアクセスを行なう機能を実装し、上位サービスアプリケーションの追加に伴う開発を不要にする。
[5. General-purpose interface]
The cache system according to the present embodiment receives data reference requests from a plurality of application apparatuses 4. However, if a unique interface (hereinafter referred to as IF) is defined for each higher-level service application executed in the application apparatus 4, it is necessary to implement the IF every time a higher-level service application is added. Therefore, a function for performing data access by a general-purpose IF definition is implemented, and development accompanying the addition of a higher-level service application is unnecessary.

汎用IF定義では、1つのIF定義によって、複数の上位サービスアプリケーションが用いる複数パターンのデータ参照要求及びその応答、すなわち、INパラメータ及びOUTパラメータに対応する。従って、新たなデータ参照要求及び応答のパターンが発生した場合でも設定ファイルの変更を行なうのみでよく、IF開発は不要である。   In the general-purpose IF definition, one IF definition corresponds to a plurality of patterns of data reference requests and responses used by a plurality of higher-level service applications, that is, an IN parameter and an OUT parameter. Therefore, even when a new data reference request and response pattern is generated, it is only necessary to change the setting file, and IF development is unnecessary.

図23は、汎用IFの動作概要を示す図である。同図において、アプリケーション装置4は、データ参照要求を送信する。データ参照要求は、汎用インタフェースを用いて記述したIN電文であり、変換ルールを特定する識別子と、検索キーとして用いられるIN項目とが設定され、HTTP(Hypertext Transfer Protocol)−SOAP(Simple Object Access Protocol)により送信される。ロードバランサ2aによってデータ参照要求が運用系のキャッシュサーバ1に振り分けられ、運用系のキャッシュサーバ1の情報参照処理部115は、データ参照要求に設定されている識別子により特定される変換ルールを、情報参照処理部115が備えるルール記憶部124から取得する(ステップS1705)。   FIG. 23 is a diagram showing an operation outline of the general-purpose IF. In the figure, the application apparatus 4 transmits a data reference request. The data reference request is an IN message described using a general-purpose interface, and an identifier for specifying a conversion rule and an IN item used as a search key are set. The HTTP (Hypertext Transfer Protocol) -SOAP (Simple Object Access Protocol) is set. ). The load balancer 2a distributes the data reference request to the active cache server 1, and the information reference processing unit 115 of the active cache server 1 determines the conversion rule specified by the identifier set in the data reference request as the information Obtained from the rule storage unit 124 included in the reference processing unit 115 (step S1705).

ルール記憶部124は、識別子毎に変換ルールを記憶しており、変換ルールには、正常性チェック用データ、DBアクセス文変換ルール、OUT電文生成ルールが含まれる。
正常性チェック用データは、IN電文の正常性をチェックするための条件を示す。正常性チェック用データは、例えば、XML(extensible markup language)スキーマにより記述され、IN項目のパラメータのデータ型や長さ、設定値などについての正常性をチェックするための条件を記述したXSDファイルである。
DBアクセス文変換ルールは、汎用インタフェースのIN項目をパラメータとしたDBアクセス文を生成するための変換ルールを示す。DBアクセス文変換ルールは、例えば、XSLT(XML Stylesheet Language Transformations)により記述され、IN項目を検索キーとしたSQL文を生成するための変換ルールを記述したSQL導出用XSLTファイルである。
OUT電文生成ルールは、参照データ管理部114から読み出されたデータをOUT項目として設定した汎用インタフェースのOUT電文を生成するための変換ルールを示す。OUT電文生成ルールは、例えば、XSLTにより記述され、読み出されたデータをOUT項目としてXML形式に整形するための変換ルールを記述したOUT電文生成用XSLTファイルである。
The rule storage unit 124 stores conversion rules for each identifier, and the conversion rules include normality check data, DB access statement conversion rules, and OUT message generation rules.
The normality check data indicates a condition for checking the normality of the IN message. The normality check data is described in, for example, an XML (extensible markup language) schema, and is an XSD file that describes conditions for checking the normality of the data type, length, setting value, etc. of IN item parameters. is there.
The DB access statement conversion rule indicates a conversion rule for generating a DB access statement using the IN item of the general-purpose interface as a parameter. The DB access statement conversion rule is, for example, an XSLT file for deriving SQL that describes a conversion rule for generating an SQL statement using an IN item as a search key, which is described in XML Stylesheet Language Transformations (XSLT).
The OUT message generation rule indicates a conversion rule for generating an OUT message of a general-purpose interface in which data read from the reference data management unit 114 is set as an OUT item. The OUT message generation rule is, for example, an OUT message generation XSLT file that describes a conversion rule that is described in XSLT and that formats the read data into an XML format as an OUT item.

情報参照処理部115は、読み出した変換ルールを用いて、データ参照要求に設定されているIN項目の正常性をチェックした後、IN項目をキーとして原本データの検索を行うDBアクセス文を生成し、転送データ管理部154へ出力する(ステップS1710)。情報参照処理部115は、読み出した汎用IF定義を用いて、参照データ管理部123からDBアクセス文によって読み出された原本データをOUT項目に設定したXMLのOUT電文を生成し、アプリケーション装置4へ返送する(ステップS1715)。   The information reference processing unit 115 uses the read conversion rule to check the normality of the IN item set in the data reference request, and then generates a DB access statement that searches the original data using the IN item as a key. The data is output to the transfer data management unit 154 (step S1710). Using the read general-purpose IF definition, the information reference processing unit 115 generates an XML OUT message in which the original data read by the DB access statement from the reference data management unit 123 is set as an OUT item, and sends it to the application apparatus 4. Return it (step S1715).

上記によって、データアクセス要求及び応答の追加時には、変換ルールを追加するのみでよく、上位サービスアプリケーションに追加に伴うIF開発が不要となる。   As described above, when adding a data access request and a response, it is only necessary to add a conversion rule, and IF development associated with the addition to the higher-level service application becomes unnecessary.

図24は、情報参照処理部115における汎用インタフェース処理フローを示す図である。同図において情報参照処理部115は、アプリケーション装置4から送信されたデータ参照要求であるIN電文から識別子を抽出する。情報参照処理部115は、読み出した識別子によってルール記憶部124に記憶されている変換ルール、すなわち、適用すべき電文正常性確認用XSDファイル、SQL導出用XSLTファイル、OUT電文生成用XSLTファイルを特定する(ステップS1805)。情報参照処理部115は、ステップS1805において特定した電文正常性確認用XSDファイルを適用し、IN電文に設定されているパラメータであるIN項目の正常性を確認する(ステップS1810)。情報参照処理部115は、ステップS1805において特定したSQL導出用XSLTファイルを用いて、OUT項目として必要な要素となる原本データを読み出すためのSQLを生成する(ステップS1815)。   FIG. 24 is a diagram illustrating a general-purpose interface processing flow in the information reference processing unit 115. In the figure, the information reference processing unit 115 extracts an identifier from an IN message that is a data reference request transmitted from the application apparatus 4. The information reference processing unit 115 identifies the conversion rule stored in the rule storage unit 124 by the read identifier, that is, the message normality confirmation XSD file, the SQL derivation XSLT file, and the OUT message generation XSLT file to be applied. (Step S1805). The information reference processing unit 115 applies the message normality confirmation XSD file specified in step S1805 and confirms the normality of the IN item, which is a parameter set in the IN message (step S1810). The information reference processing unit 115 uses the SQL derivation XSLT file specified in step S1805 to generate SQL for reading original data that is a necessary element as an OUT item (step S1815).

情報参照処理部115は、参照データ管理部114へステップS1815において生成したSQL文を出力する。参照データ管理部114の参照データアクセス部122は、受信したSQL文に従って参照データ記憶部123から原本データを読み出し、情報参照処理部115へ出力する(ステップS1820)。情報参照処理部115は、ステップS1820において取得した原本データに対して、ステップS1805において特定したOUT電文生成用XSLTファイルを適用し、OUT電文を作成する(ステップS1825)。情報参照処理部115は、ステップS1825において生成したOUT電文をアプリケーション装置4へ返送する。   The information reference processing unit 115 outputs the SQL sentence generated in step S1815 to the reference data management unit 114. The reference data access unit 122 of the reference data management unit 114 reads the original data from the reference data storage unit 123 according to the received SQL sentence, and outputs it to the information reference processing unit 115 (step S1820). The information reference processing unit 115 applies the OUT message generation XSLT file specified in step S1805 to the original data acquired in step S1820, and creates an OUT message (step S1825). The information reference processing unit 115 returns the OUT message generated in step S1825 to the application device 4.

[6. 効果]
上述した本実施形態のキャッシュシステムによれば、原本データ管理装置3が故障したり、計画停止等を行なったりする場合であっても、アプリケーション装置4に最新、かつ、一元性を確保した原本データを継続して提供することができる。
[6. effect]
According to the cache system of the present embodiment described above, even if the original data management device 3 breaks down or performs planned stoppage, the original data that ensures the latest and unity in the application device 4 Can be provided continuously.

本実施形態のキャッシュシステムでは、両系のキャッシュサーバ1は、自系が運用系か待機系かを意識することなく、独立に非同期で動作しており、外部のネットワーク装置であるロードバランサ2に系切り替えを委ねている。そのため、キャッシュサーバ1は、データアクセス要求を受信したときに、自系の備える参照データ記憶部123に記憶しているキャッシュデータへのアクセスを提供すればよい。従って、従来技術のように共有ディスクを使用した場合の単一障害点の問題を解決することができ、さらには、ロードバランサ2において系切り替えの必要性を判断した場合に、迅速に系切り替えを行なうことができる。   In the cache system of the present embodiment, both cache servers 1 operate independently and asynchronously without being conscious of whether the own system is an active system or a standby system, and are connected to the load balancer 2 that is an external network device. I am entrusting the system switchover. Therefore, when the cache server 1 receives the data access request, the cache server 1 may provide access to the cache data stored in the reference data storage unit 123 included in the own system. Therefore, it is possible to solve the problem of a single point of failure when a shared disk is used as in the prior art. Furthermore, when the load balancer 2 determines the necessity of system switching, the system can be switched quickly. Can be done.

また、キャッシュサーバ1は、ロードバランサ2が有する系切り替えの機能を利用して、自系が同期を行なう系か否かを問合せることができ、問合せの結果に応じて原本データ管理装置3とのデータ同期、及び、他系のキャッシュサーバ1との系間データ同期を起動する。よって、独立した系間でもデータの整合性を保った同期を実現することができる。
また、原本データ管理装置において付与された原本データの更新日時を利用することにより、系切り替えが行なわれた場合や、系間においてデータ転送中にエラーが発生した場合であっても、原本データ管理装置とのデータの同期もれや、系間の同期もれを防ぐことが可能になる。
Further, the cache server 1 can make an inquiry as to whether or not the own system is a synchronized system by using the system switching function of the load balancer 2, and the cache server 1 communicates with the original data management apparatus 3 according to the inquiry result. Data synchronization and intersystem data synchronization with the other cache server 1 are started. Therefore, it is possible to realize synchronization while maintaining data consistency even between independent systems.
In addition, even if a system switchover is performed or an error occurs during data transfer between systems by using the update date and time of the original data assigned in the original data management apparatus, the original data management It is possible to prevent data synchronization with the apparatus and synchronization between systems.

キャッシュシステムは、上位サービスアプリケーションを実行するアプリケーション装置4と、原本データを保持する原本データ管理装置3との中間層に位置するシステムである。そのため、参照部11と転送部15とでは、トラフィックの増加要因やタイミングが必ずしも一致しない。例えば、参照部11のトラフィックは、上位サービスアプリケーションを使用するユーザの増加や、上位サービスアプリケーションの種類の増加に伴って増加する。一方、転送部15のトラフィックは、上位サービスアプリケーションから参照されるデータ項目が追加されたときに増加する。本実施の形態では、1台の筐体(サーバ)において参照部11と転送部15が分離されているため、将来的に、参照部11を実行するサーバと、転送部15を実行するサーバとに分離し、それぞれをトラフィックに応じた台数とする構成に移行することが容易となる。一般的には、上位サービスアプリケーションからのトラフィックの増加の割合のほうが高いと考えられることから、例えば、参照部11の性能拡張及びスケールアウトによる負荷分散を可能とするために、参照部11を実行するサーバをn台構成の全運用方式に、転送部15を実行するサーバを1+1台構成の運用待機方式へと移行するようなことも容易である。   The cache system is a system located in an intermediate layer between the application device 4 that executes the higher-level service application and the original data management device 3 that holds the original data. For this reason, the reference unit 11 and the transfer unit 15 do not necessarily match the traffic increase factors and timing. For example, the traffic of the reference unit 11 increases with an increase in the number of users who use the upper service application and an increase in the types of upper service applications. On the other hand, the traffic of the transfer unit 15 increases when a data item referred to by the upper service application is added. In the present embodiment, since the reference unit 11 and the transfer unit 15 are separated in one housing (server), a server that executes the reference unit 11 and a server that executes the transfer unit 15 in the future. It is easy to shift to a configuration in which the number of units is set in accordance with traffic. In general, since the rate of increase in traffic from the higher-level service application is considered to be higher, for example, the reference unit 11 is executed in order to enable load distribution by expanding the performance of the reference unit 11 and scaling out. It is easy to shift the server to be operated to an all-operation system having n units and the server to execute the transfer unit 15 to an operation standby system having 1 + 1 units.

[7. その他]
上記実施形態においては、キャッシュインタフェース装置を2台のキャッシュサーバ1により多重化しているが、3台以上により多重化してもよい。キャッシュインタフェース装置を3台以上のキャッシュサーバ1により多重化する場合、そのうち少なくとも2台以上がアクト系として動作しているものとし、ロードバランサ2は、アクト系のキャッシュサーバ1について上述した処理を行ない、アクト系のキャッシュサーバ1の中の1台を運用系として判断する。
また、キャッシュサーバ1として動作する1台の筐体(サーバ)に、複数の参照部11を備える構成としてもよい。
[7. Others]
In the above embodiment, the cache interface apparatus is multiplexed by two cache servers 1, but may be multiplexed by three or more. When the cache interface device is multiplexed by three or more cache servers 1, at least two of them are assumed to be operating as an act system, and the load balancer 2 performs the above-described processing for the act cache server 1. Then, one of the act cache servers 1 is determined as the active system.
Moreover, it is good also as a structure provided with the some reference part 11 in the one housing | casing (server) which operate | moves as the cache server 1. FIG.

なお、上述のキャッシュサーバ1、ロードバランサ2、原本データ管理装置3、アプリケーション装置4は、内部にコンピュータシステムを有している。そして、キャッシュサーバ1の監視処理部112、監視結果通知処理部113、参照データ管理部114、情報参照処理部115、系内同期処理部116、監視処理部152、監視結果通知処理部153、転送データ管理部154、系状態識別部155、情報転送処理部157、系間転送処理部158及び系内同期処理部159、ロードバランサ2のサービスチェック部22及び運用系判断処理部23、原本データ管理装置3のデータ管理部31、ならびに、アプリケーション装置4の動作の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータシステムが読み出して実行することによって、上記処理が行われる。ここでいうコンピュータシステムとは、CPU及び各種メモリやOS、周辺機器等のハードウェアを含むものである。   Note that the cache server 1, the load balancer 2, the original data management device 3, and the application device 4 described above have a computer system therein. Then, the monitoring processing unit 112, the monitoring result notification processing unit 113, the reference data management unit 114, the information reference processing unit 115, the intra-system synchronization processing unit 116, the monitoring processing unit 152, the monitoring result notification processing unit 153 of the cache server 1, transfer Data management unit 154, system state identification unit 155, information transfer processing unit 157, inter-system transfer processing unit 158 and intra-system synchronization processing unit 159, service check unit 22 and operational system determination processing unit 23 of load balancer 2, original data management The operation process of the data management unit 31 of the apparatus 3 and the application apparatus 4 is stored in a computer-readable recording medium in the form of a program, and the computer system reads out and executes this program, whereby the above processing is performed. Is done. The computer system here includes a CPU, various memories, an OS, and hardware such as peripheral devices.

また、「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
Further, the “computer system” includes a homepage providing environment (or display environment) if a WWW system is used.
The “computer-readable recording medium” refers to a storage device such as a flexible medium, a magneto-optical disk, a portable medium such as a ROM and a CD-ROM, and a hard disk incorporated in a computer system. Furthermore, the “computer-readable recording medium” dynamically holds a program for a short time like a communication line when transmitting a program via a network such as the Internet or a communication line such as a telephone line. In this case, a volatile memory in a computer system serving as a server or a client in that case, and a program that holds a program for a certain period of time are also included. The program may be a program for realizing a part of the functions described above, and may be a program capable of realizing the functions described above in combination with a program already recorded in a computer system.

1、1−0、1−1…キャッシュサーバ
11、11−0、11−1…参照部
111、151…タイマ
112、152…監視処理部
113、153…監視結果通知処理部
114…参照データ管理部
115…情報参照処理部
116、159…系内同期処理部
121、161…監視結果記憶部
122…参照データアクセス部
123…参照データ記憶部
15、15−0、15−1…転送部
154…転送データ管理部
155…系状態識別部
156…同期情報記憶部
157…情報転送処理部
158…系間転送処理部
162…転送データアクセス部
163…転送データ記憶部
2、2a、2b…ロードバランサ
21…タイマ
22…サービスチェック部
221…記憶部
23…運用系判断処理部
3…原本データ管理装置
31…データ管理部
32…更新履歴記憶部
33…原本データ記憶部
4…アプリケーション装置
DESCRIPTION OF SYMBOLS 1, 1-0, 1-1 ... Cache server 11, 11-0, 11-1 ... Reference part 111, 151 ... Timer 112, 152 ... Monitoring processing part 113, 153 ... Monitoring result notification processing part 114 ... Reference data management Unit 115 ... information reference processing unit 116, 159 ... intra-system synchronization processing unit 121, 161 ... monitoring result storage unit 122 ... reference data access unit 123 ... reference data storage unit 15, 15-0, 15-1 ... transfer unit 154 ... Transfer data management unit 155 ... System state identification unit 156 ... Synchronization information storage unit 157 ... Information transfer processing unit 158 ... Inter-system transfer processing unit 162 ... Transfer data access unit 163 ... Transfer data storage units 2, 2a, 2b ... Load balancer 21 ... Timer 22 ... Service check part 221 ... Storage part 23 ... Active system judgment processing part 3 ... Original data management device 31 ... Data management part 32 ... Update history storage part 3 ... original data storage unit 4 ... application device

Claims (6)

原本データをキャッシュする複数のキャッシュ装置と、受信信号を複数の前記キャッシュ装置のいずれに振り分けるかを管理するアクセス振分装置とを備えるキャッシュシステムであって、
複数の前記キャッシュ装置それぞれは、
前記アクセス振分装置から振り分けられたデータアクセス要求を受信し、受信したデータアクセス要求に応じて自キャッシュ装置がキャッシュしている原本データへのアクセス処理を行う参照部と、
原本データ管理装置から原本データを読み出して自キャッシュ装置がキャッシュしている前記原本データを更新する転送部とを備え、
前記アクセス振分装置は、
アクト状態の複数の前記キャッシュ装置の前記参照部及び前記転送部それぞれの運用状態を取得するサービスチェック部と、
前記サービスチェック部が取得した複数の前記キャッシュ装置の前記参照部及び前記転送部の運用状態に基づいて、複数の前記キャッシュ装置の中から受信信号の振分先となる前記キャッシュ装置を判定する運用系判断処理部とを備える、
ことを特徴とするキャッシュシステム。
A cache system comprising: a plurality of cache devices that cache original data; and an access distribution device that manages to which of the plurality of cache devices a received signal is distributed,
Each of the plurality of cache devices
A reference unit that receives the data access request distributed from the access distribution device, and performs access processing to the original data cached by the own cache device according to the received data access request;
A transfer unit that reads the original data from the original data management device and updates the original data cached by the own cache device;
The access distribution device
A service check unit that obtains an operation state of each of the reference unit and the transfer unit of the plurality of cache devices in an act state;
Operation for determining the cache device that is a distribution destination of the received signal from among the plurality of cache devices based on the operation states of the reference unit and the transfer unit of the plurality of cache devices acquired by the service check unit A system determination processing unit,
A cache system characterized by that.
前記運用系判断処理部は、前記参照部の運用状態に基づいて複数の前記参照部が正常であると判断した場合、正常な前記参照部を備える複数の前記キャッシュ装置の中から、前記転送部の運用状態に基づいて正常であると判断される前記転送部を備える前記キャッシュ装置を振分先と判定する、
ことを特徴とする請求項1に記載のキャッシュシステム。
When the operational system determination processing unit determines that the plurality of reference units are normal based on the operational state of the reference unit, the transfer unit from among the plurality of cache devices including the normal reference unit The cache device including the transfer unit that is determined to be normal based on the operation state of
The cache system according to claim 1.
複数の前記キャッシュ装置それぞれの転送部は、
前記振分装置に系状態識別信号を送信する系状態識別部と、
前記振分装置から自身が送信した前記系状態識別信号を受信した場合に、原本データ管理装置から原本データを読み出して自キャッシュ装置がキャッシュしている前記原本データを更新する情報転送処理部と、
他のキャッシュ装置がキャッシュしている原本データを前記情報転送処理部が読み出した前記原本データにより更新する系間転送処理部とをさらに備え、
前記アクセス振分装置の前記運用系判断処理部は、振分先として判定した前記キャッシュ装置へ受信した前記系状態識別信号を送信する、
ことを特徴とする請求項1または請求項2に記載のキャッシュシステム。
The transfer unit of each of the plurality of cache devices is
A system state identification unit for transmitting a system state identification signal to the distribution device;
An information transfer processing unit that reads the original data from the original data management device and updates the original data cached by the own cache device when the system state identification signal transmitted from the distribution device is received;
An intersystem transfer processing unit that updates original data cached by another cache device with the original data read by the information transfer processing unit;
The operational system determination processing unit of the access distribution device transmits the received system state identification signal to the cache device determined as a distribution destination.
The cache system according to claim 1, wherein the cache system is a cache system.
前記情報転送処理部は、自身が送信した前記系状態識別信号を受信した場合に、前記原本データ管理装置から、自キャッシュ装置がキャッシュしている前記原本データよりも、前記原本データ管理装置における更新日時が新しい原本データを読み出し、自キャッシュ装置がキャッシュしている前記原本データを更新し、
前記系間転送処理部は、自キャッシュ装置がキャッシュしている前記原本データのうち、前記他のキャッシュ装置がキャッシュしている前記原本データよりも前記原本データ管理装置における更新日時が新しい原本データにより、前記他のキャッシュ装置がキャッシュしている原本データを更新する、
ことを特徴とする請求項3に記載のキャッシュシステム。
When the information transfer processing unit receives the system state identification signal transmitted by itself, the information transfer processing unit updates the original data management device from the original data management device rather than the original data cached by the own cache device. Read the original data with the new date and time, update the original data cached by its own cache device,
The inter-system transfer processing unit uses the original data cached by the own cache device based on the original data whose update date and time in the original data management device is newer than the original data cached by the other cache device. Updating the original data cached by the other cache device;
The cache system according to claim 3.
前記転送部は、自キャッシュ装置がキャッシュしている前記原本データを記憶する転送データ記憶部をさらに備え、
前記情報転送処理部は、前記原本データ管理装置から読み出した前記原本データを前記転送データ記憶部に書き込み、
前記参照部は、
自キャッシュ装置がキャッシュしている前記原本データを記憶する参照データ記憶部と、
前記転送データ記憶部から読み出した前記原本データを前記参照データ記憶部に書き込む系内同期処理部と、
受信した前記データアクセス要求に応じて前記参照データ記憶部に記憶している前記原本データへのアクセス処理を行う参照データアクセス部とを備える、
ことを特徴とする請求項1から請求項4のいずれかの項に記載のキャッシュシステム。
The transfer unit further includes a transfer data storage unit that stores the original data cached by the own cache device,
The information transfer processing unit writes the original data read from the original data management device to the transfer data storage unit,
The reference section is
A reference data storage unit for storing the original data cached by the own cache device;
An in-system synchronization processing unit that writes the original data read from the transfer data storage unit to the reference data storage unit;
A reference data access unit that performs access processing to the original data stored in the reference data storage unit in response to the received data access request,
The cache system according to any one of claims 1 to 4, characterized in that:
原本データをキャッシュする複数のキャッシュ装置と、受信信号を複数の前記キャッシュ装置のいずれに振り分けるかを管理するアクセス振分装置とを備えるキャッシュシステムに用いられるキャッシュアクセス方法であって、
複数の前記キャッシュ装置それぞれは、
前記アクセス振分装置から振り分けられたデータアクセス要求を受信し、受信したデータアクセス要求に応じて自キャッシュ装置がキャッシュしている原本データへのアクセス処理を行う参照部と、
原本データ管理装置から原本データを読み出して自キャッシュ装置がキャッシュしている前記原本データを更新する転送部とを備えており、
前記アクセス振分装置において、
サービスチェック部が、アクト状態の複数の前記キャッシュ装置の前記参照部及び前記転送部それぞれの運用状態を取得する状態取得過程と、
運用系判断処理部が、前記状態取得過程において取得した複数の前記キャッシュ装置の前記参照部及び前記転送部の運用状態に基づいて、複数の前記キャッシュ装置の中から受信信号の振分先となる前記キャッシュ装置を判定する運用系判断処理過程と、
を有することを特徴とするキャッシュアクセス方法。
A cache access method used in a cache system including a plurality of cache devices that cache original data and an access distribution device that manages to which of the plurality of cache devices a received signal is distributed,
Each of the plurality of cache devices
A reference unit that receives the data access request distributed from the access distribution device, and performs access processing to the original data cached by the own cache device according to the received data access request;
A transfer unit that reads the original data from the original data management device and updates the original data cached by the own cache device;
In the access distribution device,
A service check unit that acquires an operation state of each of the reference unit and the transfer unit of the plurality of cache devices in an act state; and
Based on the operational states of the reference unit and the transfer unit of the plurality of cache devices acquired in the state acquisition process, the active system determination processing unit becomes a distribution destination of the received signal from the plurality of cache devices. An operational determination process for determining the cache device;
A cache access method comprising:
JP2010026759A 2010-02-09 2010-02-09 Cache system and cache access method Active JP5232814B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010026759A JP5232814B2 (en) 2010-02-09 2010-02-09 Cache system and cache access method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010026759A JP5232814B2 (en) 2010-02-09 2010-02-09 Cache system and cache access method

Publications (2)

Publication Number Publication Date
JP2011164919A JP2011164919A (en) 2011-08-25
JP5232814B2 true JP5232814B2 (en) 2013-07-10

Family

ID=44595529

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010026759A Active JP5232814B2 (en) 2010-02-09 2010-02-09 Cache system and cache access method

Country Status (1)

Country Link
JP (1) JP5232814B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115061816A (en) * 2022-06-24 2022-09-16 深圳前海微众银行股份有限公司 Method and device for processing data in cache

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003090089A1 (en) * 2002-04-22 2003-10-30 Fujitsu Limited Cache device
JP4677482B2 (en) * 2008-03-27 2011-04-27 西日本電信電話株式会社 Access distribution system, server device, common management device, access distribution device, access distribution method, and computer program
JP2011086230A (en) * 2009-10-19 2011-04-28 Ntt Comware Corp Cache system and cache access method

Also Published As

Publication number Publication date
JP2011164919A (en) 2011-08-25

Similar Documents

Publication Publication Date Title
CN105814544B (en) System and method for supporting persistent partition recovery in a distributed data grid
CN101673283B (en) Management terminal and computer system
JP4648447B2 (en) Failure recovery method, program, and management server
US8938604B2 (en) Data backup using distributed hash tables
US20060064441A1 (en) Storage apparatus, storage control method, and computer product
JP2008542887A (en) Virtualization network storage system, network storage apparatus and virtualization method thereof
JP2007079885A (en) Data input and output load distribution method, data input and output load distribution program, computer system, and management server
US8745342B2 (en) Computer system for controlling backups using wide area network
US20120117131A1 (en) Information processing device, file management method, and recording medium for file management program
CN105278882A (en) Disk management method of distributed file system
CN109407975B (en) Data writing method, computing node and distributed storage system
US9396076B2 (en) Centralized version control system having high availability
JP2011086230A (en) Cache system and cache access method
CN113254275A (en) MySQL high-availability architecture method based on distributed block device
JP5232814B2 (en) Cache system and cache access method
US20110282923A1 (en) File management system, method, and recording medium of program
WO2020135889A1 (en) Method for dynamic loading of disk and cloud storage system
JP2009151677A (en) Storage control device, storage control program, and storage control method
EP4198701A1 (en) Active-active storage system and data processing method based on same
JP7179810B2 (en) Cluster system, cluster system failover control method
WO2016046951A1 (en) Computer system and file management method therefor
JP6720250B2 (en) Storage system and configuration information control method
JP5956364B2 (en) Cluster system
JP2016009216A (en) Redundant system and redundancy method
JP7332488B2 (en) Storage system and storage system control method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120111

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130206

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: 20130226

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130325

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

Free format text: PAYMENT UNTIL: 20160329

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5232814

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250