JP5331050B2 - データ同期システム、データ同期方法、情報処理装置、情報処理方法、およびプログラム - Google Patents
データ同期システム、データ同期方法、情報処理装置、情報処理方法、およびプログラム Download PDFInfo
- Publication number
- JP5331050B2 JP5331050B2 JP2010097249A JP2010097249A JP5331050B2 JP 5331050 B2 JP5331050 B2 JP 5331050B2 JP 2010097249 A JP2010097249 A JP 2010097249A JP 2010097249 A JP2010097249 A JP 2010097249A JP 5331050 B2 JP5331050 B2 JP 5331050B2
- Authority
- JP
- Japan
- Prior art keywords
- synchronization
- data
- request
- storage unit
- processing
- 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
Links
Images
Description
IP技術を用いて遠隔地間でデータ通信を行う場合、一般には、パケットの送信から受信までにかかる転送時間が大きい、転送経路の変更などにより送信順序と受信順序が異なることがある、という条件を考慮する必要がある。
これにより、アプリケーションに対するデータ同期のための処理負担を大幅に削減でき、アプリケーションの高速応答性と、他方の拠点でのサービス停止に対する柔軟性を得ることが可能となる。
[第1の実施の形態]
まず、図1を参照して、本発明の第1の実施の形態にかかるデータ同期システムについて説明する。図1は、第1の実施の形態にかかるデータ同期システムの構成を示すブロック図である。
データ同期システム1は、これら情報処理装置10,20間で通信ネットワーク30を介してパケットデータ通信を行うことにより、情報処理装置10に設けられた記憶部(第1の記憶部)12で記憶する記憶データ(第1の記憶データ)12Aと、情報処理装置20に設けられた記憶部(第2の記憶部)22で記憶する記憶データ(第2の記憶データ)22Aとを同期させる機能を有している。
次に、図1を参照して、本実施の形態にかかるデータ同期システムの構成について詳細に説明する。
情報処理装置10は、全体としてサーバー装置やワークステーションなど、コンピュータを含む情報処理装置から構成されており、主な機能部として、アプリケーション処理部11、記憶部12、メッセージキュー処理部13、およびデータ同期送信処理部14が設けられている。
なお、情報処理装置10には、データ通信インターフェース部、キーボードやマウスなどを用いた操作入力部、LCDなどを用いた画面表示部など、一般的な情報処理装置と同様の構成が設けられているものとする。
なお、情報処理装置20には、データ通信インターフェース部、キーボードやマウスなどを用いた操作入力部、LCDなどを用いた画面表示部など、一般的な情報処理装置と同様の構成が設けられているものとする。
次に、図2および図3を参照して、本実施の形態にかかるデータ同期システムの動作について説明する。図2は、第1の実施の形態にかかるデータ同期システムの動作を示すシーケンス図である。図3は、第1の実施の形態にかかるデータ同期システムの動作を示すフロー図である。
ここで、記憶データ12Aの更新が発生した場合、アプリケーション処理部11は、同期要求と前後して、アプリケーションから出力された更新要求を、記憶部12に対して出力する(ステップ101)。
記憶部12は、この更新要求を受け取って記憶データ12Aを更新し(ステップ102)、その更新結果をアプリケーション処理部11へ返送する(ステップ103)。
メッセージキュー処理部13は、この同期要求を受け取って、メッセージキューへ順次保存し、保存した旨の同期要求受領結果を直ちにアプリケーション処理部11へ返送する(ステップ105)。
アプリケーション処理部11は、記憶部12からの更新結果やメッセージキュー処理部13での同期結果、さらにはアプリケーションでの情報処理結果に基づいて、ステップ100で入力された要求に対する応答を出力する(ステップ106)。
メッセージキュー処理部13は、データ同期送信処理部14からの取得要求に応じて、メッセージキューに保存されている同期要求を、それぞれの保存順序に応じて順に取得して、データ同期送信処理部14へ出力する(ステップ111)。
情報処理装置20のデータ同期受信処理部25は、情報処理装置10からの同期要求を受信して受信キューへ一旦保存し、当該同期要求に基づいてデータ同期受信処理を実行して記憶部22の記憶データ22Aの更新を要求する。
情報処理装置20の記憶部22は、データ同期受信処理部25により受け取った、情報処理装置10からの同期要求に基づいて、記憶データ22Aを更新する(ステップ121)。これにより、記憶データ12A,22Aがデータ同期される。
この後、記憶部22は、当該同期要求による同期結果を、データ同期受信処理部25により、通信ネットワーク30を介して情報処理装置10へ返送する(ステップ122)。
このように、本実施の形態は、情報処理装置10において、アプリケーション処理部11により、記憶部12で記憶する記憶データ12Aを更新するアプリケーションを実行し、メッセージキュー処理部13により、当該更新前後における記憶データ12Aの差分に相当する差分情報を含む、アプリケーションからの同期要求を、順次保存し、データ同期送信処理部14により、メッセージキュー処理部13から同期要求をそれぞれが保存された順序で順に取得し、通信ネットワーク30を介して情報処理装置20へ送信し、情報処理装置20において、データ同期受信処理部25により、通信ネットワーク30を介して情報処理装置10からの同期要求を受信し、当該同期要求に含まれる差分情報に基づいて、記憶部22で記憶する第2の記憶データ22Aを更新することにより、記憶データ12A,22Aを同期させている。
これにより、アプリケーションに対するデータ同期のための処理負担を大幅に削減でき、他方の拠点でのサービス停止に対する柔軟性を得ることが可能となる。
しかし、稀に系切り替え動作の前後において、順序を制御すべき要求が両系に到着する場合があり得る。これに対し厳密な制御を行うことは、例えば前述した非特許文献1の技術を用いれば可能であるが、レアケースに対応するために全体の性能を落としてしまう問題がある。
データ不整合が検知された場合は、これを検知しアプリケーションも含めてロールバックする公知の技術や、自動的にデータ不整合を復旧する公知の技術を用いればよい。
これにより、情報処理装置20の記憶データ22Aを、同期要求の送信順序に従って、記憶データ12Aと同一の順序で更新することができ、各同期要求間において処理順序の制御を必要とする場合でも、データ同期処理を正確に実施することが可能となる。
次に、図4および図5を参照して、本発明の第2の実施の形態にかかるデータ同期システムについて説明する。図4は、第2の実施の形態にかかるデータ同期システムの動作を示すシーケンス図である。図5は、第2の実施の形態にかかるデータ同期システムの動作を示すフロー図である。
本実施の形態では、データ同期システム1におけるデータ同期処理を並列化して、処理効率を向上させる場合について説明する。
前述したように、処理Aによって記憶データを保存した後、処理Bによって記憶データを更新した場合、処理A,Bの処理順序に基づき記憶データに対する更新順序を制御する必要がある。この際、ユーザごとに別個の記憶データが用いられる場合、ユーザ間では競合が発生せず、ユーザごとに記憶データに対する更新順序を制御する必要がある。
排他制御機能としては、一般的な情報処理装置で利用されている、mutexなどの公知の処理制御技術を用いればよい。このような排他制御機能では、排他制御すべき複数の処理ごとに排他制御資源を割り当て、排他制御資源間では排他制御することなく処理を実行するものとなっている。
あるいは、これら識別情報に対する排他制御の要否を示す管理情報を予め記憶部に設定しておき、同期要求で通知された識別情報に基づき、排他制御の要否を確認するようにしてもよい。
通常、排他制御資源は、排他制御資源プールとして予め用意されており、いずれかの処理に排他制御資源を割り当てた時点で、その処理の負担が小さくてもある程度の処理負担が情報処理装置内で発生する。このため、排他制御資源を複数の処理で有効利用することで、情報処理装置の処理効率を高めることが可能となる。
なお、本実施の形態にかかる情報処理装置10,20におけるその他の構成については、前述した第1の実施の形態と同じであり、ここでの詳細な説明は省略する。
次に、図4および図5を参照して、本実施の形態にかかるデータ同期システムの動作について説明する。図4および図5において、前述した図2および図3と同じまたは同等部分については、同一符号を付してある。
このため、これら機能部間でやり取りされる同期要求(ステップ104)、同期結果(ステップ105)、取得要求(ステップ110)、同期要求(ステップ111)、およびアプリケーション処理部11と記憶部12との間でやり取りされる更新要求(ステップ101)、および更新結果(ステップ103)は、それぞれ並列してやり取りされる。
メッセージキュー処理部13は、データ同期送信処理部14からの取得要求に応じて、メッセージキューに保存されている同期要求を、それぞれの保存順序に応じて順に取得して、データ同期送信処理部14へ出力する(ステップ111)。
データ同期送信処理部14は、データ同期送信処理を並列的に実行することにより、メッセージキュー処理部13から同期要求を順次受け取るとともに、これら同期要求を並列的に通信ネットワーク30を介して情報処理装置20へ送信する(ステップ220)。
図4の例では、データ同期受信処理部25から記憶部22に対して、2回に分けて同期要求が通知されて、記憶部22の記憶データ22Aが更新されている。すなわち、データ同期受信処理部25は、1回目の通知でデータ同期受信処理を並列的に実行することにより複数の同期要求を並列的に通知し(ステップ222)、これに応じて記憶部22は、記憶データ22Aをデータ更新した後(ステップ223)、同期結果を返送し(ステップ224)、データ同期受信処理部25は、この同期結果を通信ネットワーク30を介して情報処理装置10へ返送する。
このように、本実施の形態では、アプリケーション処理部11で、記憶部12の更新を含む複数の処理を並列的に実行し、データ同期受信処理部25に、並列的に実行する複数の処理を排他的に制御する排他制御機能を含み、この排他制御機能を用いて、データ同期送信処理部14から受信した同期要求の処理順序を確保しつつ、複数のデータ同期送信処理を並列的に実行し、データ同期受信処理部25で、複数のデータ同期受信処理を並列的に実行するようにしたので、データ同期順序を確保しつつ、データ同期処理の処理効率を向上させることが可能となる。
これにより、情報処理装置10,20間の同期要求や同期結果の送達遅延が大きな環境でも、応答を待つことなく実行できる処理数が増えるため、スループットを大幅に向上させることができる。
但し、情報処理装置10は、障害等によってサービス停止が起こる前に、いち早くデータを情報処理装置20へ送信することが望ましいため、つまり、情報処理装置10はデータ送信の処理負荷が小さい方が望ましいため、この排他制御は情報処理装置20が備えることが望ましい。このようにすることで、情報処理装置10が早々にデータを送信することで、その後で情報処理装置10がサービス停止になったとしても、データを受信した情報処理装置20が適切にデータを同期することができる。
これにより、データ同期送信処理部14は、データ同期受信処理部25でのデータ同期受信処理の終了を待つことなく、送信した同期要求が上記メッセージキュー処理部に保存された時点で、次の同期要求を送信することが可能となる。このため、情報処理装置10における同期要求の送信処理負荷を低減できる。
次に、図6および図7を参照して、本発明の第3の実施の形態にかかるデータ同期システムについて説明する。図6は、第3の実施の形態にかかるデータ同期システムの動作を示すシーケンス図である。図7は、第3の実施の形態にかかるデータ同期システムの動作を示すフロー図である。
本実施の形態では、データ同期システム1におけるデータ同期処理を一括化して、処理効率を向上させる場合について説明する。
データ同期送信処理部14では、このような公知の技術を利用して、複数のデータ同期処理を一括化している。
これにより更新処理命令を含む同期要求を送信する場合と比較して、データ同期受信処理部25における更新処理命令の解釈などの処理が不要となり、記憶データ22Aに対する更新処理時間を短縮できる。
したがって、メッセージキュー処理部13におけるメッセージキューのサイズは、情報処理装置20での処理時間を見込む必要がなくなり、同期要求の送達に関する遅延時間に応じたサイズまで削減することが可能となり、設計の容易性、さらにはリソースの有効利用を実現できる。
なお、本実施の形態にかかる情報処理装置10,20におけるその他の構成については、前述した第1の実施の形態と同じであり、ここでの詳細な説明は省略する。
次に、図6および図7を参照して、本実施の形態にかかるデータ同期システムの動作について説明する。図6および図7において、前述した図2および図3と同じまたは同等部分については、同一符号を付してある。
ここでは、第2の実施の形態と同様に、アプリケーション処理部11は、マルチスレッド機能に基づき、複数のアプリケーション処理を並列的に実行する機能を有し、データ同期送信処理部14も、マルチスレッド機能に基づき、複数のデータ同期送信処理を並列的に実行する機能を有する場合を例として説明する。
メッセージキュー処理部13は、これら同期要求を受け取って、メッセージキューへ順次保存する。
したがって、ステップ302,305で2つの同期要求がメッセージキューに保存された場合、データ同期送信処理スレッド14A,14Bは、これら同期要求を取得する(ステップ310,311)。
情報処理装置20の記憶部22は、データ同期受信処理部25により受け取った、情報処理装置10からの同期要求に基づいて、記憶データ22Aを更新する(ステップ321)。これにより、記憶データ12A,22Aがデータ同期される。
この後、記憶部22は、当該同期要求による同期結果を、データ同期受信処理部25により、通信ネットワーク30を介して情報処理装置10へ返送する(ステップ322)。
このように、本実施の形態では、データ同期送信処理部14で、メッセージキュー処理部13から取得した複数の同期要求に含まれる差分情報を1つの新たな差分情報に一括し、当該新たな差分情報を含む新たな同期要求を、通信ネットワーク30を介して情報処理装置20へ送信するようにしたので、情報処理装置10,20間でのデータ同期処理でやり取りする通信量、さらには記憶部22に対するアクセス回数を削減することができ、通信ネットワーク30に対する通信負荷や、情報処理装置10,20での処理負荷を削減することが可能となる。
次に、図8を参照して、本発明の第4の実施の形態にかかるデータ同期システムについて説明する。図8は、第4の実施の形態にかかるデータ同期システムの動作を示すフロー図である。
本実施の形態では、情報処理装置10の記憶部12および情報処理装置20の記憶部22を、冗長化する場合について説明する。
なお、本実施の形態にかかる情報処理装置10,20におけるその他の構成については、前述した第1の実施の形態と同じであり、ここでの詳細な説明は省略する。
このように、本実施の形態によれば、記憶部12,22を冗長化するようにしたので、DBMSアプリケーション障害など、記憶部12,22に関する何らかの小規模な故障が発生しても、保守者が即時に故障を復旧しなくても自動的にシステムを切り替えてサービスを継続できる。
これにより、激甚災害など大規模な故障が発生しても、拠点を切り替えてサービスを継続できるため、あらゆるタイプの故障に対しても保守運用の手間を軽減できるシステムを構成することが可能となる。
次に、図9を参照して、本発明の第5の実施の形態にかかるデータ同期システムについて説明する。図9は、第5の実施の形態にかかるデータ同期システムの構成を示すブロック図である。
本実施の形態では、汎用化した情報処理装置10,20について説明する。
情報処理装置10には、主な機能として、アプリケーション処理部11、記憶部12、メッセージキュー処理部13、データ同期送信処理部14、およびデータ同期受信処理部15が設けられている。
このうち、データ同期受信処理部15は、前述した情報処理装置20におけるデータ同期受信処理部25と同等である。
このうち、メッセージキュー処理部23およびデータ同期送信処理部24は、前述した情報処理装置10におけるメッセージキュー処理部13、およびデータ同期送信処理部14と同等である。
なお、本実施の形態にかかる情報処理装置10,20におけるその他の構成については、前述した第1の実施の形態と同じであり、ここでの詳細な説明は省略する。
このように、本実施の形態によれば、情報処理装置10,20を、同期要求を指示する情報処理装置、またはこの同期要求に応じてデータ同期を行う情報処理装置のいずれにも使用することが可能となる。
次に、図10〜図12を参照して、本発明の第6の実施の形態にかかるデータ同期システムについて説明する。図10は、第6の実施の形態にかかるデータ同期システムの構成を示すブロック図である。図11は、第6の実施の形態にかかるデータ同期システムの動作を示すシーケンス図である。図12は、第6の実施の形態にかかるデータ同期システムの動作を示すフロー図である。
本実施の形態では、このような情報処理装置10でのデータ更新順序と情報処理装置20でのデータ同期順序との逆転を回避する構成について説明する。
また、アプリケーション処理部11は、同期要求をメッセージキュー処理部13へ保存する際、当該同期要求と対応する排他情報として当該同期要求の処理種別を示す処理種別情報を含む排他情報を、同期排他処理部16へ登録する機能を有している。
なお、本実施の形態にかかる情報処理装置10,20におけるその他の構成については、前述した第2の実施の形態と同じであり、ここでの詳細な説明は省略する。また、情報処理装置10,20で計時される時刻について、公知の技術により同期されているものとする。
次に、図11および図12を参照して、本実施の形態にかかるデータ同期システムの動作について説明する。
本実施の形態では、アプリケーション処理部11、メッセージキュー処理部13、およびデータ同期送信処理部14において、マルチスレッド機能によりそれぞれの処理が並列的に実行される。
ここで、記憶データ12Aの更新が発生した場合、アプリケーション処理部11は、同期要求と前後して、アプリケーションから出力された更新要求を、記憶部12に対して出力する(ステップ401)。
記憶部12は、この更新要求を受け取って記憶データ12Aを更新するデータ更新処理を実行し(ステップ402)、その更新結果をアプリケーション処理部11へ返送する(ステップ403)。
同期排他処理部16は、この排他情報登録要求に応じて、指定された排他情報を保存し(ステップ405)、排他情報登録結果をアプリケーション処理部11へ返送する(ステップ406)。
メッセージキュー処理部13は、この同期要求を受け取って、メッセージキューへ順次保存し(ステップ408)、保存した旨のエンキュー結果(同期要求受領結果)を直ちにアプリケーション処理部11へ返送する(ステップ409)。
アプリケーション処理部11は、記憶部12からの更新結果やメッセージキュー処理部13での同期結果、さらにはアプリケーションでの情報処理結果に基づいて、ステップ100で入力された要求に対する応答を出力する(ステップ410)。
メッセージキュー処理部13は、データ同期送信処理部14からのデキュー要求に応じて、メッセージキューに保存されている同期要求を、それぞれの保存順序に応じて順に取得して(ステップ421)、データ同期送信処理部14へデキュー結果として出力する(ステップ422)。
同期排他処理部16は、この排他確認要求に応じて、保存されている排他情報のうちから、当該同期要求の処理種別に該当する同期未完了の排他情報を検索することにより、当該同期要求より先にデータ同期処理すべき同期未完了の同期要求と対応する排他情報の存在有無を確認する(ステップ424)。
また、当該同期要求より先にデータ同期処理すべき同期要求の排他情報が存在しない場合、当該同期要求によるデータ同期処理が最先であることが確認されたことから、同期排他処理部16は、当該排他確認要求に対する排他確認結果を出力する(ステップ425)。
情報処理装置20のデータ同期受信処理部25は、情報処理装置10からの同期要求を受信して受信キューへ一旦保存し、当該同期要求に基づいてデータ同期受信処理を実行して記憶部22の記憶データ22Aの更新を要求する。
情報処理装置20の記憶部22は、データ同期受信処理部25により受け取った、情報処理装置10からの同期要求に基づいて、記憶データ22Aを更新する(ステップ427)。これにより、記憶データ12A,22Aがデータ同期される。
情報処理装置10のデータ同期送信処理部14は、この同期結果を受信して、当該同期要求に対応する排他情報の無効化を行うための無効化要求を同期排他処理部16へ出力する(ステップ429)。
同期排他処理部16は、この無効化要求に応じて当該同期要求と対応する排他情報を無効化する(ステップ430)。
次に、図13〜図17を参照して、同期排他処理部16で排他情報を登録する際の排他情報登録処理について説明する。図13は、同期要求の構成例である。図14は、排他情報の構成例である。図15は、排他情報登録処理を示すフローチャートである。図16は、排他情報の登録状態を示す説明図である。図17は、排他情報の他の登録状態を示す説明図である。
ロックは、当該排他情報に対する更新可否を示すフラグ情報であり、当該排他情報と対応する同期要求による更新処理が未完了で当該排他情報の更新が不可の場合にはロック(Loched)を示し、更新処理が完了して当該排他情報の更新が可能な場合にはアンロック(Unlocked)を示す。
まず、同期排他処理部16は、同期排他テーブル16AをWriteロックすることにより、他のスレッドによる同期排他テーブル16Aでの書込動作を禁止し(ステップ440)、同期排他テーブル16Aに保存されている排他情報レコードのうち、次にレコードを登録すべき位置を示す次レコードインデックスを基点として、次レコードインデックス以降のレコードからデータフラグが「無効」を示す無効化レコードを検索する(ステップ441)。この際、Writeロック状態において、当該スレッドではRead/Writeいずれも可とし、他のスレッドではRead/Writeいずれも不可でブロック(処理待ち)とする。
この後、同期排他処理部16は、同期排他テーブル16AのWriteロックを開放し(ステップ444)、一連の排他情報登録処理を終了する。
図16の場合、レコード4が無効化レコードであることから、レコード4が更新対象として選択される。そして、図17に示すように、レコード4に新たな排他情報が登録されて、当該レコードのデータフラグが「有効」に更新され、次レコードインデックスはレコード5に設定される。なお、図16および図17は、RADIUSプロトコルの場合における同期排他テーブルの状態例であり、このうちロック欄における「Locked」および「Unlocked」は、個々のレコードに対するReadロックの有無を示している。
次に、図18〜図21を参照して、同期排他処理部16における排他情報確認処理について説明する。図18は、排他情報確認処理を示すフローチャートである。図19は、更新種別の詳細を示す説明図である。図20は、排他確認要求での同期要求指定例である。図21は、排他情報確認処理時における同期排他テーブルの検索状態を示す説明図である。なお、図19〜図21には、RADIUSプロトコルの場合の例が示されている。
まず、同期排他処理部16は、同期排他テーブル16Aから、排他確認要求で指定された同期要求に関連するレコード、すなわち当該同期要求と処理種別が一致するレコードであって、データフラグが「有効」を示すレコードを、関連レコードとして検索し(ステップ450)、検索した関連レコードをReadロックすることにより、他のスレッドによる読出動作を禁止する(ステップ451)。この際、Readロック状態において、当該スレッドではReadのみ可とし、他のスレッドではReadのみ可でWriteはブロック(処理待ち)とする。
ここで、優先処理レコードが含まれている場合(ステップ452:YES)、同期排他処理部16は、関連レコードのReadロックを開放した後(ステップ453)、これらすべての優先処理レコードのデータフラグが「無効」となるまで待機し(ステップ454)、これら優先処理のすべてのレコードのデータフラグが「無効」となった時点でステップ450へ移行する。
例えば、更新種別「1.Access-Accept」の同期要求については、レルム番号とユーザIDの両方が同一の場合に当該同期要求と処理種別が一致していると判断される。また、更新種別「8.Accounnting-On」の排他情報については、RADIUSクライアントIPアドレスが同一の場合に当該同期要求と処理種別が一致していると判断される。
この場合、レルム番号が「12345」でユーザIDが「User03」であることから、図21に示す同期排他テーブル16Aでは、レコード2,3,4の3つが当該同期要求に関連する関連レコードとして検索される。なお、図21のロック欄における「Locked」および「Unlocked」は、個々のレコードに対するReadロックの有無を示している。
次に、図22〜図24を参照して、同期排他処理部16で排他情報を無効化する際の排他情報無効化処理について説明する。図22は、排他情報無効化処理を示すフローチャートである。図23は、無効化要求での同期要求指定例である。図24は、排他情報無効化処理時における同期排他テーブルの検索状態を示す説明図である。なお、図23、図24には、RADIUSプロトコルの場合の例が示されている。
まず、同期排他処理部16は、同期排他テーブル16AをWriteロックすることにより、他のスレッドによる同期排他テーブル16Aでの書込動作を禁止し(ステップ460)、無効化要求で指定された同期要求と対応するレコードを検索する(ステップ461)。
続いて、同期排他処理部16は、検索したレコードのデータフラグを「無効」に更新して(ステップ462)、同期排他テーブル16AのWriteロックを開放し(ステップ463)、一連の排他情報無効化処理を終了する。
このように本実施の形態は、情報処理装置10に、同期要求ごとに、当該同期要求と対応する排他情報を記憶する同期排他処理部16をさらに設けて、アプリケーション処理部11で、同期要求をメッセージキュー処理部13へ保存する際、当該同期要求と対応する排他情報として当該同期要求の処理種別を示す処理種別情報を含む排他情報を、同期排他処理部16へ登録し、データ同期送信処理部14で、メッセージキュー処理部13から同期要求を取得して情報処理装置20へ送信する際、同期排他処理部16により、当該同期要求の処理種別に該当する排他情報のうち、データ同期処理が未完了で当該同期要求より先にデータ同期処理すべき同期要求に関する排他情報がないことを確認した後、当該同期要求を情報処理装置20へ送信するようにしたものである。
したがって、情報処理装置20のデータ同期受信処理部25では、情報処理装置10の記憶部12に対するデータ更新処理と同じ順序で、記憶部22に対するデータ同期処理を実行することが可能となり、情報処理装置10でのデータ更新順序と情報処理装置20でのデータ同期順序との逆転を回避することができる。
次に、図25〜図27を参照して、本発明の第7の実施の形態にかかるデータ同期システムについて説明する。図25は、第7の実施の形態にかかるデータ同期システムの構成を示すブロック図である。図26は、第7の実施の形態にかかるデータ同期システムの動作を示すフロー図である。図27は、第7の実施の形態にかかるデータ同期システムの動作を示すシーケンス図である。
本実施の形態では、情報処理装置20により、情報処理装置10でのデータ更新順序に基づいて、記憶部22へのデータ同期処理を行う場合について説明する。
なお、本実施の形態にかかる情報処理装置10,20におけるその他の構成については、前述した第2の実施の形態と同じであり、ここでの詳細な説明は省略する。
次に、図26および図27を参照して、本実施の形態にかかるデータ同期システムの動作について説明する。
まず、情報処理装置10のアプリケーション処理部11は、アプリケーションを起動し、入力された認証要求などの要求に応じて(ステップ500)、記憶部12の記憶データ12Aを用いた情報処理を実行する。
記憶部12は、この更新要求を受け取って記憶データ12Aを更新するデータ更新処理を実行し(ステップ502)、その更新結果をアプリケーション処理部11へ返送する(ステップ503)。
メッセージキュー処理部13は、この同期要求を受け取って、メッセージキューへ順次保存し(ステップ505)、保存した旨のエンキュー結果(同期要求受領結果)を直ちにアプリケーション処理部11へ返送する(ステップ506)。
アプリケーション処理部11は、記憶部12からの更新結果やメッセージキュー処理部13での同期結果、さらにはアプリケーションでの情報処理結果に基づいて、ステップ500で入力された要求に対する応答を出力する(ステップ507)。
メッセージキュー処理部13は、データ同期送信処理部14からのデキュー要求に応じて、メッセージキューに保存されている同期要求を、それぞれの保存順序に応じて順に取得して(ステップ511)、データ同期送信処理部14へデキュー結果として出力する(ステップ512)。
情報処理装置20の同期要求記憶部26は、通信ネットワーク30を介してデータ同期送信処理部14からの登録要求を受信し、この登録要求で通知された同期要求を同期テーブル26Aへ登録し(ステップ514)、登録した旨の登録結果を、通信ネットワーク30を介して情報処理装置10へ返送する(ステップ515)。
同期要求記憶部26は、データ同期受信処理部25からの取得要求に応じて、登録されている同期要求のうちから、記憶部12に対して実行したデータ更新処理の順序と一致した順序にしたがって、記憶部22に対して最も先にデータ同期処理すべき同期要求を取得し(ステップ521)、データ同期受信処理部25へ取得結果として出力する(ステップ522)。
情報処理装置20の記憶部22は、データ同期受信処理部25により受け取った、情報処理装置10からの同期要求に基づいて、記憶データ22Aを更新する(ステップ524)。これにより、記憶データ12A,22Aがデータ同期される。
データ同期受信処理部25は、この同期結果に応じて、同期要求記憶部26のうちデータ同期処理が完了した同期要求を削除するための削除要求を同期要求記憶部26へ出力する(ステップ526)。
これに応じて、同期要求記憶部26は、データ同期受信処理部25の削除要求で指定された同期要求を同期テーブル26Aから削除し(ステップ527)、その削除結果をデータ同期受信処理部25へ出力する(ステップ528)。
次に、図28および図29を参照して、同期要求記憶部26における同期要求取得処理について説明する。図28は、同期要求取得処理を示すフローチャートである。図29は、同期要求取得処理を示す説明図である。
同期要求記憶部26は、データ同期受信処理部25からの取得要求に応じて図28の同期要求取得処理を実行する。
これにより、同期要求記憶部26において、記憶部22に対して最も先にデータ同期処理すべき同期要求を選択して、データ同期受信処理部25へ通知することができる。
これにより、通信ネットワーク30における同期要求の遅延ばらつきが同期要求記憶部26で吸収されて、同期要求Aが到着していない時点で、同期要求Aより先に同期要求Bが同期要求記憶部26から読み出されることを回避することができる。
例えば、すべての同期要求をソートする方法で、最も先にデータ同期処理すべき同期要求を選択する場合、典型的なソートアルゴリズムによれば、N個のレコードすべてをソートするのに必要となる計算量(回数)は、最善値でNlogN、最悪値でN2となる。N=1000個の場合、最善値で3000回、最悪値で100万回となり、非常に計算コストが高い。
例えば、これら比較により抽出したレコード数が100個の場合、これらレコードをソートするのに必要となる計算量(回数)は、最善値で200回、最悪値で1万回であるから、N=1000個のレコードのパケット受信日時を処理除外時刻と比較する処理の計算量=1000回を加算しても、最善値で1200回、最悪値で11000回となる。したがって、前述したすべてのレコード1000個をソートする場合と比較して、最善値で約1/3、最悪値約1/100となり、計算コストを大幅に削減できる。
このように、本実施の形態は、情報処理装置20に、第1の情報処理装置から受信した同期要求を順次保存する同期要求記憶部26をさらに設け、データ同期受信処理部25で、記憶部22のデータ同期処理を行う際、同期要求記憶部26で保存している同期要求のうちから、記憶部12に対して実行したデータ更新処理の順序と一致した順序にしたがって、記憶部22に対して最も先にデータ同期処理すべき同期要求を取得し、当該同期要求に含まれる、更新の前後における記憶データ12Aの差分に相当する差分情報に基づいて記憶部22のデータ同期処理を行うようにしたものである。
これにより、通信ネットワーク30における同期要求の遅延ばらつきが同期要求記憶部26で吸収されて、データ同期受信処理部25が同期要求記憶部26から取得する同期要求の順序の逆転を回避することができる。
この場合、データ同期受信処理部25が、記憶部22のデータ同期処理を行う際、取得要求を同期要求記憶部26へ出力して、同期テーブル26Aに登録されているすべての同期要求を取得し、これら同期要求に対して図28に示した同期要求取得処理を実行すればよい。
次に、図30および図31を参照して、本発明の第8の実施の形態にかかるデータ同期システムについて説明する。図30は、第8の実施の形態にかかるデータ同期システムの構成を示すブロック図である。図31は、第8の実施の形態にかかるデータ同期システムの動作を示すフロー図である。
この際、同期要求記憶部26では、一般的なデータベースシステムで使用されているインデックス(索引)を構築して、同期要求に対してより高速にアクセス可能とすることにより、データ同期処理の完了までの時間を短縮することが想定される。
これに対して、X(10,50)、Y1(10,30),Y2(50,70)、Z1(10,20)、Z2(30,40)、Z3(50,60)、Z4(70,80)というインデックス構造を持っている場合、検索キー「70」は、X→Y2→Z4という3回目の処理で見つかることになり、計算量を削減できる。
また、実データテーブルのデータを削除する際、それぞれのノードで管理するデータがすべて削除されてもノード自体は削除されない。
したがって、極めて短い間隔でデータ同期処理を実行する必要がある場合、同期要求記憶部26に対して同期要求の登録や削除が頻繁に実行されるため、同期要求記憶部26で構築したインデックスが断片化してしまい、同期要求に対するアクセス速度が低下する可能性がある。
なお、本実施の形態にかかる情報処理装置10,20におけるその他の構成については、前述した第7の実施の形態と同じであり、ここでの詳細な説明は省略する。
次に、図30および図31を参照して、本実施の形態にかかるデータ同期システムの動作について説明する。以下では、情報処理装置20の同期要求記憶部26に、同期テーブル26Aとして同期テーブルAと同期テーブルBの2つの同期テーブルが設けられている場合を例として説明する。また、全体的な動作の流れについては、第7の実施の形態と同様であることから、前述した図27を参照して説明する。
したがって、データ同期送信処理部14は、「00:00〜12:00」の期間については、同期テーブルAに同期要求を登録し、「12:00〜24:00」の期間については、同期テーブルBに同期要求を登録することになる。
同期要求記憶部26は、データ同期受信処理部25からの取得要求に応じて、各同期テーブル26Aに登録されているすべての同期要求のうちから、記憶部12に対して実行したデータ更新処理の順序と一致した順序にしたがって、記憶部22に対して最も先にデータ同期処理すべき同期要求を1つだけ、同期処理対象として取得し(ステップ521)、データ同期受信処理部25へ取得結果として出力する(ステップ522)。
したがって、本実施の形態では、各同期テーブル26Aを参照して、これら同期テーブル26Aのうちから最も先にデータ同期処理すべき同期要求を取得している。
これ以降、前述と同様に、記憶部22の記憶データ22Aが更新されてデータ同期処理が行われた後、同期要求記憶部26の同期テーブル26Aに登録されている同期要求が削除される。
これにより、同期テーブル26Aに対して、間欠的にテーブル初期化処理が行われるため、同期テーブル26Aのインデックスの断片化か解消されて、同期要求に対するアクセス速度の低下を回避することができる。
このように、本実施の形態は、情報処理装置20の同期要求記憶部26に複数の同期テーブル26Aを設け、これら同期テーブル26Aを切り替えて運用することにより、待機中の同期テーブル26Aに対するインデックスの再構築や、さらには不要レコードの削除などのテーブル初期化処理を行うようにしたので、これら同期テーブル26Aの切替に応じて、同期テーブル26Aのインデックスの断片化を解消することができ、同期要求に対するアクセス速度の低下を回避することが可能となる。
例えば、図32で示したように、同期テーブルの切替時点において、切替元テーブルと切替先テーブルが確定している。このため、最も先にデータ同期処理すべき同期要求を取得する際、これら切替元テーブルと切替先テーブルに登録されている同期要求のみを検索対象として絞り込みすることができる。
この際、前述したように、通信ネットワーク30における同期要求の最大遅延時間を用いて、切替時刻から最大遅延時間に相当する時間以上経過した後、切替元テーブルに同期要求が残存していないことを確認してから、切替先テーブルのみを検索対象とするようにしてもよい。これにより、切替元テーブルの同期要求に関するデータ同期処理の終了を確認する処理を実行する必要がなくなり、検索処理に要する計算量を削減できる。
例えば、図32では、時刻12:00に同期テーブルAから同期テーブルBへ切り替えられることから、時刻12:00から一定の待機時間経過後に、待機中の同期テーブルAを初期化処理すればよい。この際、待機時間としては、通信ネットワーク30における同期要求の最大遅延時間より長く、次の切替時刻までの切替間隔より短い時間長を用いればよい。
以上、実施形態を参照して本発明を説明したが、本発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解しうる様々な変更をすることができる。また、これら実施形態を任意に組み合わせ実施してもよい。
これにより、アプリケーションが同期要求を出力する機能を持つ必要がなくなり、データ同期処理に対応していないアプリケーションについてもデータ同期処理を適用することができる。
Claims (5)
- 通信ネットワークを介して接続された第1および第2の情報処理装置を含み、これら情報処理装置間で前記通信ネットワークを介してデータ通信を行うことにより、前記第1の情報処理装置に設けられた第1の記憶部で記憶する第1の記憶データと、前記第2の情報処理装置に設けられた第2の記憶部で記憶する第2の記憶データとを同期させるデータ同期システムであって、
前記第1の情報処理装置は、
前記第1の記憶部で記憶する前記第1の記憶データを更新するアプリケーションを実行するアプリケーション処理部と、
前記更新の前後における前記第1の記憶データの差分に相当する差分情報を含む、前記アプリケーションからの同期要求を、順次保存するメッセージキュー処理部と、
データ同期送信処理として、前記メッセージキュー処理部から前記同期要求をそれぞれが保存された順序で順に取得し、前記メッセージキュー処理部から取得した同期要求を前記第2の情報処理装置へ送信する際、期間ごとに登録先となる同期テーブルを定めた切替データに基づいて、登録処理時点における同期テーブルを前記同期要求の登録先として指定して前記通信ネットワークを介して前記第2の情報処理装置へ送信する、処理を実行するデータ同期送信処理部と
を備え、
前記第2の情報処理装置は、
前記第1の情報処理装置から受信した前記同期要求を記憶するための複数の同期テーブルを有し、前記第1の情報処理装置から受信した前記同期要求を、前記各同期テーブルのうち当該同期要求で登録先として指定された同期テーブルへ登録し、順次保存する同期要求記憶部と、
データ同期受信処理として、前記通信ネットワークを介して前記第1の情報処理装置からの前記同期要求を受信し、当該同期要求に含まれる前記差分情報に基づいて、前記第2の記憶部で記憶する前記第2の記憶データを更新することにより、前記第1および第2の記憶データを同期させる、処理を実行するデータ同期受信処理部と
を備え、
前記データ同期受信処理部は、前記第2の記憶部のデータ同期処理を行う際、前記同期要求記憶部の各同期テーブルで保存している前記同期要求のうちから、前記第1の記憶部に対して実行したデータ更新処理の順序と一致した順序にしたがって、前記第2の記憶部に対して最も先にデータ同期処理すべき同期要求を取得し、当該同期要求に含まれる前記差分情報に基づいて前記第2の記憶部のデータ同期処理を行い、最も先にデータ同期処理すべき同期要求を取得する際、前記通信ネットワークにおける前記同期要求の最大遅延時間より長い待機時間だけ前記同期要求記憶部で待機させた同期要求のうちから、前記第1の記憶部に対して実行した前記データ更新処理の順序と一致した順序にしたがって、前記最も先にデータ同期処理すべき同期要求を取得し、
前記第2の情報処理装置は、前記各同期テーブルのうち、当該同期テーブルで記憶するすべての同期要求について前記データ同期処理が完了した同期テーブルについて、当該テーブルで記憶するデータの検索に用いるインデックスの再構築、または当該テーブルで記憶する不要レコードの削除を行うテーブル初期化処理部をさらに備える
ことを特徴とするデータ同期システム。 - 通信ネットワークを介して接続された第1および第2の情報処理装置を含み、これら情報処理装置間で前記通信ネットワークを介してデータ通信を行うことにより、前記第1の情報処理装置に設けられた第1の記憶部で記憶する第1の記憶データと、前記第2の情報処理装置に設けられた第2の記憶部で記憶する第2の記憶データとを同期させるデータ同期システムで用いられるデータ同期方法であって、
前記第1の情報処理装置において、
アプリケーション処理部が、前記第1の記憶部で記憶する前記第1の記憶データを更新するアプリケーションを実行するアプリケーション処理ステップと、
メッセージキュー処理部が、前記更新の前後における前記第1の記憶データの差分に相当する差分情報を含む、前記アプリケーションからの同期要求を、順次保存するメッセージキュー処理ステップと、
データ同期送信処理部が、データ同期送信処理として、前記メッセージキュー処理部から前記同期要求をそれぞれが保存された順序で順に取得し、前記メッセージキュー処理部から取得した同期要求を前記第2の情報処理装置へ送信する際、期間ごとに登録先となる同期テーブルを定めた切替データに基づいて、登録処理時点における同期テーブルを前記同期要求の登録先として指定して前記通信ネットワークを介して前記第2の情報処理装置へ送信する、処理を実行するデータ同期送信処理ステップと
を備え、
前記第2の情報処理装置において、
同期要求記憶部が、前記第1の情報処理装置から受信した前記同期要求を、前記同期要求記憶部が有する、前記同期要求を記憶するための複数の同期テーブルのうち、登録先として指定された同期テーブルへ順次保存する同期要求記憶ステップと
データ同期受信処理部が、データ同期受信処理として、前記通信ネットワークを介して前記第1の情報処理装置からの前記同期要求を受信し、当該同期要求に含まれる前記差分情報に基づいて、前記第2の記憶部で記憶する前記第2の記憶データを更新することにより、前記第1および第2の記憶データを同期させる、処理を実行するデータ同期受信処理ステップとを備え、
前記データ同期受信処理ステップは、前記第2の記憶部のデータ同期処理を行う際、前記同期要求記憶部の各同期テーブルで保存している前記同期要求のうちから、前記第1の記憶部に対して実行したデータ更新処理の順序と一致した順序にしたがって、前記第2の記憶部に対して最も先にデータ同期処理すべき同期要求を取得し、当該同期要求に含まれる前記差分情報に基づいて前記第2の記憶部のデータ同期処理を行い、最も先にデータ同期処理すべき同期要求を取得する際、前記通信ネットワークにおける前記同期要求の最大遅延時間より長い待機時間だけ前記同期要求記憶部で待機させた同期要求のうちから、前記第1の記憶部に対して実行した前記データ更新処理の順序と一致した順序にしたがって、前記最も先にデータ同期処理すべき同期要求を取得するステップと、
前記第2の情報処理装置において、テーブル初期化処理部が、前記各同期テーブルのうち、当該同期テーブルで記憶するすべての同期要求について前記データ同期処理が完了した同期テーブルについて、当該テーブルで記憶するデータの検索に用いるインデックスの再構築、または当該テーブルで記憶する不要レコードの削除を行うテーブル初期化処理ステップを備える
ことを特徴とするデータ同期方法。 - 通信ネットワークを介して他の情報処理装置と接続されて、前記他の情報処理装置との間で前記通信ネットワークを介してデータ通信を行うことにより、前記他の情報処理装置で記憶する第1の記憶データと、自己に設けられた記憶部で記憶する第2の記憶データとを同期させる情報処理装置であって、
前記他の情報処理装置から受信した前記同期要求を記憶するための複数の同期テーブルを有し、前記他の情報処理装置から受信した前記同期要求を、前記各同期テーブルのうち当該同期要求で登録先として指定された同期テーブルへ順次保存する同期要求記憶部と、
前記同期要求記憶部の同期要求に含まれる、前記第1の記憶データに対する更新の前後における前記第1の記憶データの差分に相当する差分情報に基づいて、前記記憶部で記憶する前記第2の記憶データを更新することにより、前記第1および第2の記憶データを同期させるデータ同期処理を実行するデータ同期受信処理部と
を備え、
前記データ同期受信処理部は、前記第2の記憶部のデータ同期処理を行う際、前記同期要求記憶部の前記各同期テーブルで保存している前記同期要求のうちから、前記1の記憶データに対して実行されたデータ更新処理と一致した順序にしたがって、前記記憶部に対して最も先にデータ同期処理すべき同期要求を取得し、当該同期要求に含まれる前記差分情報に基づいて前記記憶部のデータ同期処理を行い、最も先にデータ同期処理すべき同期要求を取得する際、前記通信ネットワークにおける前記同期要求の最大遅延時間より長い待機時間だけ前記同期要求記憶部で待機させた同期要求のうちから、前記第1の記憶部に対して実行した前記データ更新処理の順序と一致した順序にしたがって、前記最も先にデータ同期処理すべき同期要求を取得し、前記各同期テーブルのうち、当該同期テーブルで記憶するすべての同期要求について前記データ同期処理が完了した同期テーブルについて、当該テーブルで記憶するデータの検索に用いるインデックスの再構築、または当該テーブルで記憶する不要レコードの削除を行うテーブル初期化処理部をさらに備える
ことを特徴とする情報処理装置。 - 通信ネットワークを介して他の情報処理装置と接続されて、前記他の情報処理装置との間で前記通信ネットワークを介してデータ通信を行うことにより、前記他の情報処理装置で記憶する第1の記憶データと、自己に設けられた記憶部で記憶する第2の記憶データとを同期させる情報処理装置で用いられる情報処理方法であって、
同期要求記憶部が、前記他の情報処理装置から受信した前記同期要求を、前記同期要求記憶部が有する前記同期要求を記憶するための複数の同期テーブルのうち、当該同期要求で登録先として指定された同期テーブルに順次保存する同期要求記憶ステップと、
データ同期受信処理部が、前記同期要求記憶部の同期要求に含まれる、前記第1の記憶データに対する更新の前後における前記第1の記憶データの差分に相当する差分情報に基づいて、前記記憶部で記憶する前記第2の記憶データを更新することにより、前記第1および第2の記憶データを同期させるデータ同期処理を実行するデータ同期受信処理ステップと
を備え、
前記データ同期受信処理ステップは、前記第2の記憶部のデータ同期処理を行う際、前記同期要求記憶部の前記各同期テーブルで保存している前記同期要求のうちから、前記1の記憶データに対して実行されたデータ更新処理の順序と一致した順序にしたがって、前記記憶部に対して最も先にデータ同期処理すべき同期要求を取得し、当該同期要求に含まれる前記差分情報に基づいて前記記憶部のデータ同期処理を行い、最も先にデータ同期処理すべき同期要求を取得する際、前記通信ネットワークにおける前記同期要求の最大遅延時間より長い待機時間だけ前記同期要求記憶部で待機させた同期要求のうちから、前記第1の記憶部に対して実行した前記データ更新処理の順序と一致した順序にしたがって、前記最も先にデータ同期処理すべき同期要求を取得するステップと、
テーブル初期化処理部が、前記各同期テーブルのうち、当該同期テーブルで記憶するすべての同期要求について前記データ同期処理が完了した同期テーブルについて、当該テーブルで記憶するデータの検索に用いるインデックスの再構築、または当該テーブルで記憶する不要レコードの削除を行うテーブル初期化処理ステップをさらに備える
ことを特徴とする情報処理方法。 - コンピュータを、請求項3に記載の情報処理装置を構成する各部として機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010097249A JP5331050B2 (ja) | 2009-08-27 | 2010-04-20 | データ同期システム、データ同期方法、情報処理装置、情報処理方法、およびプログラム |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009196742 | 2009-08-27 | ||
JP2009196742 | 2009-08-27 | ||
JP2010097249A JP5331050B2 (ja) | 2009-08-27 | 2010-04-20 | データ同期システム、データ同期方法、情報処理装置、情報処理方法、およびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011070636A JP2011070636A (ja) | 2011-04-07 |
JP5331050B2 true JP5331050B2 (ja) | 2013-10-30 |
Family
ID=44015814
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010097249A Active JP5331050B2 (ja) | 2009-08-27 | 2010-04-20 | データ同期システム、データ同期方法、情報処理装置、情報処理方法、およびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5331050B2 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6083268B2 (ja) * | 2013-03-14 | 2017-02-22 | 日本電気株式会社 | レプリケーションシステム |
JP6508894B2 (ja) | 2014-07-28 | 2019-05-08 | キヤノン株式会社 | サーバ装置、サーバ装置の制御方法及びプログラム |
CN105989123A (zh) * | 2015-02-13 | 2016-10-05 | 阿里巴巴集团控股有限公司 | 一种数据同步方法、装置和系统 |
JP6602177B2 (ja) | 2015-11-27 | 2019-11-06 | キヤノン株式会社 | 情報処理装置及びその制御方法、システム、プログラム |
JP7249038B2 (ja) * | 2020-04-23 | 2023-03-30 | 旭精工株式会社 | 自動サービス機器用サーバー管理型ポイント管理システム |
JP2023104403A (ja) * | 2022-01-17 | 2023-07-28 | 富士通株式会社 | 制御方法、制御プログラム及び情報処理装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3788697B2 (ja) * | 1998-11-18 | 2006-06-21 | 富士通株式会社 | メッセージ制御装置 |
JP4546629B2 (ja) * | 2000-05-25 | 2010-09-15 | 株式会社日立製作所 | 記憶システム、記憶システムの応答方法及び記録媒体 |
JP3797328B2 (ja) * | 2003-01-15 | 2006-07-19 | 株式会社日立製作所 | 記憶制御装置 |
JP4331970B2 (ja) * | 2003-05-07 | 2009-09-16 | 株式会社日立製作所 | データベースのスナップショット方法及びシステム |
-
2010
- 2010-04-20 JP JP2010097249A patent/JP5331050B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2011070636A (ja) | 2011-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10860612B2 (en) | Parallel replication across formats | |
CN107977376B (zh) | 分布式数据库系统及事务处理方法 | |
JP7038710B2 (ja) | データ管理方法及びシステム | |
US9201742B2 (en) | Method and system of self-managing nodes of a distributed database cluster with a consensus algorithm | |
Lin et al. | Towards a non-2pc transaction management in distributed database systems | |
US9959178B2 (en) | Transactional and parallel log replay for asynchronous table replication | |
US9367346B2 (en) | Accelerating distributed transactions on key-value stores through dynamic lock localization | |
US10503699B2 (en) | Metadata synchronization in a distrubuted database | |
US10157108B2 (en) | Multi-way, zero-copy, passive transaction log collection in distributed transaction systems | |
US10296371B2 (en) | Passive two-phase commit system for high-performance distributed transaction execution | |
US20130117307A1 (en) | Snapshot isolation support for distributed query processing in a shared disk database cluster | |
US10599677B2 (en) | Methods and systems of splitting database indexes and digests | |
JP5331050B2 (ja) | データ同期システム、データ同期方法、情報処理装置、情報処理方法、およびプログラム | |
JP5686034B2 (ja) | クラスタシステム、同期制御方法、サーバ装置および同期制御プログラム | |
US11263236B2 (en) | Real-time cross-system database replication for hybrid-cloud elastic scaling and high-performance data virtualization | |
KR101296778B1 (ko) | NoSQL 데이터베이스를 위한 결과적 트랜잭션 처리 방법 | |
US11615068B2 (en) | Methods and systems of managing deletes in a database node of a NoSQL database | |
US11003550B2 (en) | Methods and systems of operating a database management system DBMS in a strong consistency mode | |
JP6586174B2 (ja) | データベースシステム、トランザクション管理ノード、方法およびプログラム | |
US10970177B2 (en) | Methods and systems of managing consistency and availability tradeoffs in a real-time operational DBMS | |
Sciascia et al. | RAM-DUR: In-memory deferred update replication | |
Fan et al. | ALOHA-KV: high performance read-only and write-only distributed transactions | |
Ghandeharizadeh et al. | Rejig: a scalable online algorithm for cache server configuration changes | |
Shin et al. | Parqua: Online reconfigurations in virtual ring-based nosql systems | |
US20110214130A1 (en) | Data processing system, data processing method, and data processing program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20111031 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20111031 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120606 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120619 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120820 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20130312 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130528 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20130604 |
|
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: 20130723 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130726 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5331050 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |