JP4419824B2 - レプリケーション制御システム、基幹サーバ、部門サーバ、更新ロック管理装置およびプログラム - Google Patents
レプリケーション制御システム、基幹サーバ、部門サーバ、更新ロック管理装置およびプログラム Download PDFInfo
- Publication number
- JP4419824B2 JP4419824B2 JP2004357554A JP2004357554A JP4419824B2 JP 4419824 B2 JP4419824 B2 JP 4419824B2 JP 2004357554 A JP2004357554 A JP 2004357554A JP 2004357554 A JP2004357554 A JP 2004357554A JP 4419824 B2 JP4419824 B2 JP 4419824B2
- Authority
- JP
- Japan
- Prior art keywords
- lock
- update
- server
- request
- history information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
そこで、本発明の目的は、通信負荷を高くすることなく、マスタテーブルとレプリカテーブルの整合性を保てるようにすることにある。
複数の項目から構成されるレコードを複数格納したマスタテーブルであって、自サーバ内においてそのマスタテーブルを一意に識別するテーブル名が付与されたマスタテーブルを複数格納した基幹側データベース記憶部を有する基幹サーバと、前記基幹側データベース記憶部に格納されている複数のマスタテーブルの内の少なくとも1つが、マスタテーブルと同じテーブル名でレプリカテーブルとして格納された部門側データベース記憶部を有する複数の部門サーバと、更新ロック管理装置とを含み、1つのマスタテーブルに対応するレプリカテーブルは1つしか存在せず、且つ、前記基幹サーバおよび前記部門サーバは自サーバ上のテーブルしかアクセスしないレプリケーション制御システムであって、
前記基幹サーバが、
自サーバ内のマスタテーブル上のレコードに対する更新要求が発生したとき、前記更新ロック管理装置に対して、更新対象とする前記マスタテーブルのテーブル名と更新対象とする前記レコードの項目の内のプライマリキーとなる項目の値とを含んだロック要求を送信して待ち状態となり、該ロック要求に対するロック成功が前記更新ロック管理装置から通知された後、前記更新要求に従って前記マスタテーブル上のレコードを更新すると共に更新内容を示す更新履歴情報を前記更新したマスタテーブルと対応するレプリカテーブルを保持している部門サーバに送信し、部門サーバから更新履歴情報が送られてきたとき、該更新履歴情報に従って自サーバ内のマスタテーブル上のレコードを更新すると共に前記更新ロック管理装置に対して、前記更新したマスタテーブルのテーブル名と、前記更新したレコードの項目の内のプライマリキーとなる項目の値とを含んだロック解除要求を送信する構成を有し、
前記各部門サーバが、
自サーバ内のレプリカテーブル上のレコードに対する更新要求が発生したとき、前記更新ロック管理装置に対して、更新対象とする前記レプリカテーブルのテーブル名と、更新対象とする前記レコードの項目の内のプライマリキーとなる項目の値とを含んだロック要求を送信して待ち状態となり、該ロック要求に対するロック成功が前記更新ロック管理装置から通知された後、前記更新要求に従って前記レプリカテーブル上のレコードを更新すると共に更新内容を示す更新履歴情報を前記基幹サーバに送信し、基幹サーバから更新履歴情報が送られてきたとき、該更新履歴情報に従って自サーバ内のレプリカテーブル上のレコードを更新すると共に前記更新ロック管理装置に対して、前記更新したレプリカテーブルのテーブル名と、前記更新したレコードの項目の内のプライマリキーとなる項目の値とを含んだロック解除要求を送信する構成を有し、
前記更新ロック管理装置が、
ロック要求が送られてきたとき、該ロック要求中のテーブル名とプライマリキーとなる項目の値とによって特定されるレコードがロック状態でない場合には、前記レコードをロック状態にすると共に要求元にロック成功を通知し、ロック状態の場合には、前記ロック要求をロック要求保持部に格納し、ロック解除要求が送られてきたとき、該ロック解除要求中のテーブル名およびプライマリキーとなる項目の値とによって特定されるレコードのロック状態を解除し、前記ロック要求保持部にロック要求が格納されている場合は、該格納されているロック要求の内の、前記ロック解除要求と同一のテーブル名およびプライマリキーとなる項目の値を含んでいるロック要求を1つ選択し、該選択したロック要求中のテーブル名およびプライマリキーとなる項目の値とによって特定されるレコードをロック状態にすると共に前記選択したロック要求の要求元に対してロック成功を通知する構成を有することを特徴とする。
複数の項目から構成されるレコードを複数格納したマスタテーブルであって、自サーバ内においてそのマスタテーブルを一意に識別するテーブル名が付与されたマスタテーブルを複数格納した基幹側データベース記憶部を有する基幹サーバと、前記基幹側データベース記憶部に格納されている複数のマスタテーブルの内の少なくとも1つが、マスタテーブルと同じテーブル名でレプリカテーブルとして格納された部門側データベース記憶部を有する複数の部門サーバと、更新ロック管理装置とを含み、1つのマスタテーブルに対応するレプリカテーブルは1つしか存在せず、且つ、前記基幹サーバおよび前記部門サーバは自サーバ上のテーブルしかアクセスしないレプリケーション制御システムであって、
前記基幹サーバが、
前記基幹側データベース記憶部に格納されているマスタテーブル上のレコードに対する更新要求があったとき、前記更新ロック管理装置に対して、更新対象とする前記マスタテーブルのテーブル名と更新対象とする前記レコードの項目の内のプライマリキーとなる項目の値とを含んだロック要求を送信して待ち状態となり、該ロック要求に応答して前記更新ロック管理装置からロック成功が通知されたとき、前記更新要求に従って前記マスタテーブル上のレコードを更新する基幹側更新手段と、
該基幹側更新手段が行った更新内容を示す更新履歴情報を、前記更新したマスタテーブルと対応するレプリカテーブルが存在する部門サーバへ送信する基幹側更新履歴情報送信手段と、
部門サーバから更新履歴情報が送られてきたとき、該更新履歴情報に従って、前記部門サーバで行われた更新内容を前記基幹側データベース記憶部に格納されている該当するマスタテーブル上のレコードに反映させる基幹側更新履歴情報反映手段と、
該基幹側更新履歴情報反映手段によって部門サーバにおける更新内容を反映させたマスタテーブル及びレコードについてのテーブル名およびプライマリキーとなる項目の値を含んだロック解除要求を前記更新ロック管理装置へ送信する基幹側更新ロック解除手段とを備え、
前記各部門サーバが、
自サーバ内の部門側データベース記憶部に格納されているレプリカテーブル上のレコードに対する更新要求があったとき、前記更新ロック管理装置に対して、更新対象とする前記レプリカテーブルのテーブル名と、更新対象にする前記レコードの項目の内のプライマリキーとなる項目の値を含んだロック要求を送信して待ち状態となり、該ロック要求に応答して前記更新ロック管理装置からロック成功が通知されたとき、前記更新要求に従って前記レプリカテーブル上のレコードを更新する部門側更新手段と、
該部門側更新手段が行った更新内容を示す更新履歴情報を前記基幹サーバへ送信する部門側更新履歴情報送信手段と、
前記基幹サーバから更新履歴情報が送られてきたとき、該更新履歴情報に従って、前記基幹サーバで行われた更新内容を前記部門側データベース記憶部に格納されている該当するレプリカテーブル上のレコードに反映させる部門側更新履歴情報反映手段と、
該部門側更新履歴情報反映手段によって基幹サーバにおける更新内容を反映させたレプリカテーブル及びレコードについてのテーブル名およびプライマリキーとなる項目の値を含んだロック解除要求を前記更新ロック管理装置へ送信する部門側更新ロック解除手段とを備え、
前記更新ロック管理装置が、
ロック状態にあるレコードを特定するロック情報が格納されたロック情報記憶部と、
ロック要求が格納されるロック要求保持部と、
ロック要求が送られてきたとき、前記ロック情報記憶部の内容に基づいて、前記ロック要求中のレコード名およびプライマリキーとなる項目の値によって特定されるレコードがロックされていないと判断した場合は、要求元にロック成功を通知すると共に前記ロック情報記憶部に前記ロック要求と同一のテーブル名および項目の値を含んだロック情報を格納し、ロック要求されたレコードが既にロックされていると判断した場合は、前記ロック要求保持部に前記ロック要求を格納し、ロック解除要求が送られてきたとき、該ロック解除要求と同一のテーブル名およびプライマリキーとなる項目の値を含んでいるロック情報を前記ロック情報記憶部から削除し、前記ロック要求保持部にロック要求が保持されている場合は、前記ロック要求保持部に格納されているロック要求の中から前記ロック解除要求と同一のテーブル名およびプライマリキーとなる項目の値を含んでいるロック要求を1つ選択し、該選択したロック要求中のテーブル名およびプライマリキーとなる項目の値を含んだロック情報を前記ロック情報記憶部に格納すると共に、前記選択したロック要求の要求元に対してロック成功を通知する更新ロック制御手段とを備えたことを特徴とする。
前記基幹サーバが、
基幹側更新履歴情報記憶部と、
前記基幹側更新手段が行った更新内容を前記基幹側更新履歴情報記憶部に格納する基幹側更新履歴情報蓄積手段とを備え、且つ、
前記基幹側更新履歴情報送信手段が、静止点確立時に、前記基幹側更新履歴情報記憶部に格納されている更新履歴情報を該当する部門サーバへ送信する構成を有し、
前記各部門サーバが、
部門側更新履歴情報記憶部と、
前記部門側更新手段が行った更新内容を前記部門側更新履歴情報記憶部に格納する部門側更新履歴情報蓄積手段とを備え、且つ、
前記部門側更新履歴情報送信手段が、静止点確立時に、前記部門側更新履歴情報記憶部に格納されている更新履歴情報を前記基幹サーバへ送信する構成を有することを特徴とする。
複数の項目から構成されるレコードを複数格納したマスタテーブルであって、自サーバ内においてそのマスタテーブルを一意に識別するテーブル名が付与されたマスタテーブルを複数格納した基幹側データベース記憶部と、
前記基幹側データベース記憶部に格納されているマスタテーブル上のレコードに対する更新要求があったとき、更新ロック管理装置に対して、更新対象とする前記マスタテーブルのテーブル名と更新対象とする前記レコードの項目の内のプライマリキーとなる項目の値とを含んだロック要求を送信して待ち状態となり、該ロック要求に応答して前記更新ロック管理装置からロック成功が通知されたとき、前記更新要求に従って前記マスタテーブル上のレコードを更新する基幹側更新手段と、
基幹側更新履歴情報記憶部と、
前記基幹側更新手段が行った更新内容を前記基幹側更新履歴情報記憶部に格納する基幹側更新履歴情報蓄積手段と、
静止点確立時に、前記基幹側更新履歴情報記憶部に格納されている更新履歴情報を該当する部門サーバへ送信する基幹側更新履歴情報送信手段と、
部門サーバから更新履歴情報が送られてきたとき、該更新履歴情報に従って、前記部門サーバで行われた更新内容を前記基幹側データベース記憶部に格納されている該当するマスタテーブル上のレコードに反映させる基幹側更新履歴情報反映手段と、
該基幹側更新履歴情報反映手段によって部門サーバにおける更新内容を反映させたマスタテーブル及びレコードについてのテーブル名およびプライマリキーとなる項目の値を含んだロック解除要求を前記更新ロック管理装置へ送信する基幹側更新ロック解除手段とを備えたことを特徴とする。
基幹サーバ内の基幹側データベースに格納されている複数のマスタテーブルであって、それぞれが複数の項目から構成されるレコードを複数格納しているマスタテーブルの内の、少なくとも1つが前記マスタテーブルと同一のテーブル名でレプリカテーブルとして格納された部門側データベース記憶部と、
自サーバ内の部門側データベース記憶部に格納されているレプリカテーブル上のレコードに対する更新要求があったとき、更新ロック管理装置に対して、更新対象とする前記レプリカテーブルのテーブル名と、更新対象とする前記レコードの項目の内のプライマリキーとなる項目の値とを含んだロック要求を送信して待ち状態となり、該ロック要求に応答して前記更新ロック管理装置からロック成功が通知されたとき、前記更新要求に従って前記レプリカテーブル上のテーブルを更新する部門側更新手段と、
部門側更新履歴情報記憶部と、
前記部門側更新手段が行った更新内容を前記部門側更新履歴情報記憶部に格納する部門側更新履歴情報蓄積手段と、
静止点確立時に、前記部門側更新履歴情報記憶部に格納されている更新履歴情報を前記基幹サーバへ送信する部門側更新履歴情報送信手段と、
前記基幹サーバから更新履歴情報が送られてきたとき、該更新履歴情報に従って、前記基幹サーバで行われた更新内容を前記部門側データベース記憶部に格納されている該当するレプリカテーブル上のレコードに反映させる部門側更新履歴情報反映手段と、
該部門側更新履歴情報反映手段によって基幹サーバにおける更新内容を反映させたレプリカテーブル及びレコードについてのテーブル名およびプライマリキーとなる項目の値を含んだロック解除要求を前記更新ロック管理装置へ送信する部門側更新ロック解除手段とを備えたことを特徴とする。
ロック状態にあるレコードを特定するロック情報が格納されたロック情報記憶部と、
ロック要求が格納されるロック要求保持部と、
ロック要求が送られてきたとき、前記ロック情報記憶部の内容に基づいて、前記ロック要求中のレコード名およびプライマリキーとなる項目の値によって特定されるレコードがロックされていないと判断した場合は、要求元にロック成功を通知すると共に前記ロック情報記憶部に前記ロック要求と同一のテーブル名および項目の値を含んだロック情報を格納し、ロック要求されたレコードが既にロックされていると判断した場合は、前記ロック要求保持部に前記ロック要求を格納し、ロック解除要求が送られてきたとき、該ロック解除要求と同一のテーブル名およびプライマリキーとなる項目の値を含んでいるロック情報を前記ロック情報記憶部から削除し、前記ロック要求保持部にロック要求が保持されている場合は、前記ロック要求保持部に格納されているロック要求の中から前記ロック解除要求と同一のテーブル名およびプライマリキーとなる項目の値を含んでいるロック要求を1つ選択し、該選択したロック要求中のテーブル名およびプライマリキーとなる項目の値を含んだロック情報を前記ロック情報記憶部に格納すると共に、前記選択したロック要求の要求元に対してロック成功を通知する更新ロック制御手段とを備えたことを特徴とする。
複数の項目から構成されるレコードを複数格納したマスタテーブルであって、自サーバ内においてそのマスタテーブルを一意に識別するテーブル名が付与されたマスタテーブルを複数格納した基幹側データベース記憶部と、基幹側更新履歴情報記憶部とを備えたコンピュータを、
前記基幹側データベース記憶部に格納されているマスタテーブル上のレコードに対する更新要求があったとき、更新ロック管理装置に対して、更新対象とする前記マスタテーブルのテーブル名と更新対象とする前記レコードの項目の内のプライマリキーとなる項目の値とを含んだロック要求を送信して待ち状態となり、該ロック要求に応答して前記更新ロック管理装置からロック成功が通知されたとき、前記更新要求に従って前記マスタテーブル上のレコードを更新する基幹側更新手段、
該基幹側更新手段が行った更新内容を前記基幹側更新履歴情報記憶部に格納する基幹側更新履歴情報蓄積手段、
静止点確立時に、前記基幹側更新履歴情報記憶部に格納されている更新履歴情報を該当する部門サーバへ送信する基幹側更新履歴情報送信手段、
部門サーバから更新履歴情報が送られてきたとき、該更新履歴情報に従って、前記部門サーバで行われた更新内容を前記基幹側データベース記憶部に格納されている該当するマスタテーブル上のレコードに反映させる基幹側更新履歴情報反映手段、
該基幹側更新履歴情報反映手段によって部門サーバにおける更新内容を反映させたマスタテーブル及びレコードについてのテーブル名およびプライマリキーとなる項目の値を含んだロック解除要求を前記更新ロック管理装置へ送信する基幹側更新ロック解除手段として機能させる。
基幹サーバ内の基幹側データベース記憶部に格納されている複数のマスタテーブルであって、それぞれが複数の項目から構成されるレコードを複数格納しているマスタテーブルの内の、少なくとも1つが前記マスタテーブルと同一のテーブル名でレプリカテーブルとして格納された部門側データベース記憶部と、部門側更新履歴情報記憶部とを備えたコンピュータを、
自サーバ内の部門側データベース記憶部に格納されているレプリカテーブル上のレコードに対する更新要求があったとき、前記更新ロック管理装置に対して、更新対象とする前記レプリカテーブルのテーブル名と、更新対象にする前記レコードの項目に内のプライマリキーとなる項目の値を含んだロック要求を送信して待ち状態となり、該ロック要求に応答して前記更新ロック管理装置からロック成功が通知されたとき、前記更新要求に従って前記レプリカテーブル上のレコードを更新する部門側更新手段、
前記部門側更新手段が行った更新内容を前記部門側更新履歴情報記憶部に格納する部門側更新履歴情報蓄積手段、
静止点確立時に、前記部門側更新履歴情報記憶部に格納されている更新履歴情報を前記基幹サーバへ送信する部門側更新履歴情報送信手段、
前記基幹サーバから更新履歴情報が送られてきたとき、該更新履歴情報に従って、前記基幹サーバで行われた更新内容を前記部門側データベース記憶部に格納されている該当するレプリカテーブル上のレコードに反映させる部門側更新履歴情報反映手段、
該部門側更新履歴情報反映手段によって基幹サーバにおける更新内容を反映させたレプリカテーブル及びレコードについてのテーブル名およびプライマリキーとなる項目の値を含んだロック解除要求を前記更新ロック管理装置へ送信する部門側更新ロック解除手段として機能させる。
ロック状態にあるレコードを特定するロック情報が格納されたロック情報記憶部と、ロック要求が格納されるロック要求保持部とを備えたコンピュータを、
ロック要求が送られてきたとき、前記ロック情報記憶部の内容に基づいて、前記ロック要求中のレコード名およびプライマリキーとなる項目の値によって特定されるレコードがロックされていないと判断した場合は、要求元にロック成功を通知すると共に前記ロック情報記憶部に前記ロック要求と同一のテーブル名およびプライマリキーとなる項目の値を含んだロック情報を格納し、ロック要求されたレコードが既にロックされていると判断した場合は、前記ロック要求保持部に前記ロック要求を格納し、ロック解除要求が送られてきたとき、該ロック解除要求と同一のテーブル名およびプライマリキーとなる項目の値を含んでいるロック情報を前記ロック情報記憶部から削除し、前記ロック要求保持部にロック要求が保持されている場合は、前記ロック要求保持部に格納されているロック要求の中から前記ロック解除要求と同一のテーブル名およびプライマリキーとなる項目の値を含んでいるロック要求を1つ選択し、該選択したロック要求中のテーブル名およびプライマリキーとなる項目の値を含んだロック情報を前記ロック情報記憶部に格納すると共に、前記選択したロック要求の要求元に対してロック成功を通知する更新ロック制御手段として機能させる。
基幹サーバは、自サーバ内のマスタテーブルであって、且つそのレプリカテーブルが部門サーバ内に存在するマスタテーブルに対する更新要求が発生すると、更新ロック管理装置に対してレプリカテーブル上の該当するレコードのロックを要求するロック要求を送信し、ロック成功が通知されるのを待つ。更新ロック管理装置は、ロック要求されたレコードがロック状態でない場合は、要求元の基幹サーバにロック成功を通知し、ロック状態である場合は、ロック要求をロック要求保持部に格納し、上記レコードに対するロック解除通知が送られてくるのを待って、基幹サーバにロック成功を通知する。基幹サーバは、ロック成功が通知されると、更新要求に従ってマスタテーブルを更新し、更新内容を示す更新履歴情報を、上記マスタテーブルのレプリカテーブルを有する部門サーバへ送信する。部門サーバは、更新履歴情報に従って、基幹サーバにおける更新内容を、自サーバ内のレプリカテーブルに反映させ、その後、更新内容を反映させたレコードについてのロック解除要求を更新ロック管理装置へ送信する。更新ロック管理装置は、ロック要求保持部内に、上記レコードのロック解除を待っているロック要求が存在する場合は、その要求元のロック成功を通知する。
図1は本発明にかかるレプリケーション制御システムの実施の形態の全体構成例を示すブロック図である。同図を参照すると、本実施の形態のレプリケーション制御システムは、基幹サーバ100と、複数台の部門サーバ200−1〜200−nと、更新管理装置300とから構成され、それらはネットワーク400を介して相互に接続されている。
・ロック要求されたレコードがロックされていないと判定した場合は、要求元のサーバにロック成功を通知すると共にロック情報記憶部304にロック情報を格納し、ロック要求されたレコードが既にロックされていると判定した場合は、ロック要求保持部303にロック要求を格納する機能。
・ロック解除要求が送られてきたとき、ロック要求保持部303に格納されているロック要求の中に、上記ロック解除要求が解除対象にしているレコードについてのロック要求が存在する場合には、そのロック要求の要求元に対してロック成功を通知する機能。
次に、本実施の形態の動作について詳細に説明する。
先ず、部門サーバ200−1〜200−nにおいてレプリカテーブルRTが更新された場合の動作を、部門サーバ200−1においてレプリカテーブルRTが更新された場合を例に挙げて説明する。
次に、基幹サーバ100においてマスタテーブルMTが更新された場合の動作を、マスタテーブルMT3が更新された場合を例にとって説明する。
本実施の形態によれば、通信負荷を高くすることなく、基幹サーバ100上のマスタテーブルと部門サーバ200−1〜200−n上のレプリカテーブルの整合性を保つことが可能になる。その理由は、基幹サーバ100,部門サーバ200−1〜200−nからロック要求が送られてきたとき、ロック要求されているレコードが既にロック状態にある場合には、ロック要求をロック要求保持部303に格納し、上記レコードに対するロック解除通知が送られてくるのを待って、要求元のサーバにロック成功を通知する更新ロック管理装置300を設け、ロック要求元がロック成功が通知されるまで、待ち状態でいられるようにしたからである。つまり、従来の技術のように、ロックに成功するまで、基幹サーバや部門サーバが何回もロック要求を出すことがなくなるからである。
101…データベース記憶部
102…レプリケーション定義手段
103…レプリケーション定義記憶部
104…更新手段
105…更新履歴情報作成手段
106…更新履歴情報蓄積手段
107…更新履歴情報記憶部
108…更新履歴情報送信手段
109…更新履歴情報反映手段
110…更新ロック解除手段
111…送受信手段
200−1〜200−n…部門サーバ
201…データベース記憶部
203…レプリケーション定義記憶部
204…更新手段
205…更新履歴情報作成手段
206…更新履歴情報蓄積手段
207…更新履歴情報記憶部
208…更新履歴情報送信手段
209…更新履歴情報反映手段
210…更新ロック解除手段
211…送受信手段
300…更新ロック管理装置
301…送受信手段
302…更新ロック制御手段
303…ロック要求保持部
304…ロック情報記憶部
400…ネットワーク
MT…マスタテーブル
RT…レプリカテーブル
Claims (3)
- 複数の項目から構成されるレコードを複数格納したマスタテーブルであって、自サーバ内においてそのマスタテーブルを一意に識別するテーブル名が付与されたマスタテーブルを複数格納した基幹側データベース記憶部を有する基幹サーバと、前記基幹側データベース記憶部に格納されている複数のマスタテーブルの内の少なくとも1つが、マスタテーブルと同じテーブル名でレプリカテーブルとして格納された部門側データベース記憶部を有する複数の部門サーバと、更新ロック管理装置とを含み、1つのマスタテーブルに対応するレプリカテーブルは1つしか存在せず、且つ、前記基幹サーバおよび前記部門サーバは自サーバ上のテーブルしかアクセスしないレプリケーション制御システムであって、
前記基幹サーバが、
自サーバ内のマスタテーブル上のレコードに対する更新要求が発生したとき、前記更新ロック管理装置に対して、更新対象とする前記マスタテーブルのテーブル名と更新対象とする前記レコードの項目の内のプライマリキーとなる項目の値とを含んだロック要求を送信して待ち状態となり、該ロック要求に対するロック成功が前記更新ロック管理装置から通知された後、前記更新要求に従って前記マスタテーブル上のレコードを更新すると共に更新内容を示す更新履歴情報を前記更新したマスタテーブルと対応するレプリカテーブルを保持している部門サーバに送信し、部門サーバから更新履歴情報が送られてきたとき、該更新履歴情報に従って自サーバ内のマスタテーブル上のレコードを更新すると共に前記更新ロック管理装置に対して、前記更新したマスタテーブルのテーブル名と、前記更新したレコードの項目の内のプライマリキーとなる項目の値とを含んだロック解除要求を送信する構成を有し、
前記各部門サーバが、
自サーバ内のレプリカテーブル上のレコードに対する更新要求が発生したとき、前記更新ロック管理装置に対して、更新対象とする前記レプリカテーブルのテーブル名と、更新対象とする前記レコードの項目の内のプライマリキーとなる項目の値とを含んだロック要求を送信して待ち状態となり、該ロック要求に対するロック成功が前記更新ロック管理装置から通知された後、前記更新要求に従って前記レプリカテーブル上のレコードを更新すると共に更新内容を示す更新履歴情報を前記基幹サーバに送信し、基幹サーバから更新履歴情報が送られてきたとき、該更新履歴情報に従って自サーバ内のレプリカテーブル上のレコードを更新すると共に前記更新ロック管理装置に対して、前記更新したレプリカテーブルのテーブル名と、前記更新したレコードの項目の内のプライマリキーとなる項目の値とを含んだロック解除要求を送信する構成を有し、
前記更新ロック管理装置が、
ロック要求が送られてきたとき、該ロック要求中のテーブル名とプライマリキーとなる項目の値とによって特定されるレコードがロック状態でない場合には、前記レコードをロック状態にすると共に要求元にロック成功を通知し、ロック状態の場合には、前記ロック要求をロック要求保持部に格納し、ロック解除要求が送られてきたとき、該ロック解除要求中のテーブル名およびプライマリキーとなる項目の値とによって特定されるレコードのロック状態を解除し、前記ロック要求保持部にロック要求が格納されている場合は、該格納されているロック要求の内の、前記ロック解除要求と同一のテーブル名およびプライマリキーとなる項目の値を含んでいるロック要求を1つ選択し、該選択したロック要求中のテーブル名およびプライマリキーとなる項目の値とによって特定されるレコードをロック状態にすると共に前記選択したロック要求の要求元に対してロック成功を通知する構成を有することを特徴とするレプリケーション制御システム。 - 複数の項目から構成されるレコードを複数格納したマスタテーブルであって、自サーバ内においてそのマスタテーブルを一意に識別するテーブル名が付与されたマスタテーブルを複数格納した基幹側データベース記憶部を有する基幹サーバと、前記基幹側データベース記憶部に格納されている複数のマスタテーブルの内の少なくとも1つが、マスタテーブルと同じテーブル名でレプリカテーブルとして格納された部門側データベース記憶部を有する複数の部門サーバと、更新ロック管理装置とを含み、1つのマスタテーブルに対応するレプリカテーブルは1つしか存在せず、且つ、前記基幹サーバおよび前記部門サーバは自サーバ上のテーブルしかアクセスしないレプリケーション制御システムであって、
前記基幹サーバが、
前記基幹側データベース記憶部に格納されているマスタテーブル上のレコードに対する更新要求があったとき、前記更新ロック管理装置に対して、更新対象とする前記マスタテーブルのテーブル名と更新対象とする前記レコードの項目の内のプライマリキーとなる項目の値とを含んだロック要求を送信して待ち状態となり、該ロック要求に応答して前記更新ロック管理装置からロック成功が通知されたとき、前記更新要求に従って前記マスタテーブル上のレコードを更新する基幹側更新手段と、
該基幹側更新手段が行った更新内容を示す更新履歴情報を、前記更新したマスタテーブルと対応するレプリカテーブルが存在する部門サーバへ送信する基幹側更新履歴情報送信手段と、
部門サーバから更新履歴情報が送られてきたとき、該更新履歴情報に従って、前記部門サーバで行われた更新内容を前記基幹側データベース記憶部に格納されている該当するマスタテーブル上のレコードに反映させる基幹側更新履歴情報反映手段と、
該基幹側更新履歴情報反映手段によって部門サーバにおける更新内容を反映させたマスタテーブル及びレコードについてのテーブル名およびプライマリキーとなる項目の値を含んだロック解除要求を前記更新ロック管理装置へ送信する基幹側更新ロック解除手段とを備え、
前記各部門サーバが、
自サーバ内の部門側データベース記憶部に格納されているレプリカテーブル上のレコードに対する更新要求があったとき、前記更新ロック管理装置に対して、更新対象とする前記レプリカテーブルのテーブル名と、更新対象にする前記レコードの項目の内のプライマリキーとなる項目の値を含んだロック要求を送信して待ち状態となり、該ロック要求に応答して前記更新ロック管理装置からロック成功が通知されたとき、前記更新要求に従って前記レプリカテーブル上のレコードを更新する部門側更新手段と、
該部門側更新手段が行った更新内容を示す更新履歴情報を前記基幹サーバへ送信する部門側更新履歴情報送信手段と、
前記基幹サーバから更新履歴情報が送られてきたとき、該更新履歴情報に従って、前記基幹サーバで行われた更新内容を前記部門側データベース記憶部に格納されている該当するレプリカテーブル上のレコードに反映させる部門側更新履歴情報反映手段と、
該部門側更新履歴情報反映手段によって基幹サーバにおける更新内容を反映させたレプリカテーブル及びレコードについてのテーブル名およびプライマリキーとなる項目の値を含んだロック解除要求を前記更新ロック管理装置へ送信する部門側更新ロック解除手段とを備え、
前記更新ロック管理装置が、
ロック状態にあるレコードを特定するロック情報が格納されたロック情報記憶部と、
ロック要求が格納されるロック要求保持部と、
ロック要求が送られてきたとき、前記ロック情報記憶部の内容に基づいて、前記ロック要求中のレコード名およびプライマリキーとなる項目の値によって特定されるレコードがロックされていないと判断した場合は、要求元にロック成功を通知すると共に前記ロック情報記憶部に前記ロック要求と同一のテーブル名および項目の値を含んだロック情報を格納し、ロック要求されたレコードが既にロックされていると判断した場合は、前記ロック要求保持部に前記ロック要求を格納し、ロック解除要求が送られてきたとき、該ロック解除要求と同一のテーブル名およびプライマリキーとなる項目の値を含んでいるロック情報を前記ロック情報記憶部から削除し、前記ロック要求保持部にロック要求が保持されている場合は、前記ロック要求保持部に格納されているロック要求の中から前記ロック解除要求と同一のテーブル名およびプライマリキーとなる項目の値を含んでいるロック要求を1つ選択し、該選択したロック要求中のテーブル名およびプライマリキーとなる項目の値を含んだロック情報を前記ロック情報記憶部に格納すると共に、前記選択したロック要求の要求元に対してロック成功を通知する更新ロック制御手段とを備えたことを特徴とするレプリケーション制御システム。 - 請求項2記載のレプリケーション制御システムにおいて、
前記基幹サーバが、
基幹側更新履歴情報記憶部と、
前記基幹側更新手段が行った更新内容を前記基幹側更新履歴情報記憶部に格納する基幹側更新履歴情報蓄積手段とを備え、且つ、
前記基幹側更新履歴情報送信手段が、静止点確立時に、前記基幹側更新履歴情報記憶部に格納されている更新履歴情報を該当する部門サーバへ送信する構成を有し、
前記各部門サーバが、
部門側更新履歴情報記憶部と、
前記部門側更新手段が行った更新内容を前記部門側更新履歴情報記憶部に格納する部門側更新履歴情報蓄積手段とを備え、且つ、
前記部門側更新履歴情報送信手段が、静止点確立時に、前記部門側更新履歴情報記憶部に格納されている更新履歴情報を前記基幹サーバへ送信する構成を有することを特徴とするレプリケーション制御システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004357554A JP4419824B2 (ja) | 2004-12-10 | 2004-12-10 | レプリケーション制御システム、基幹サーバ、部門サーバ、更新ロック管理装置およびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004357554A JP4419824B2 (ja) | 2004-12-10 | 2004-12-10 | レプリケーション制御システム、基幹サーバ、部門サーバ、更新ロック管理装置およびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2006164097A JP2006164097A (ja) | 2006-06-22 |
JP4419824B2 true JP4419824B2 (ja) | 2010-02-24 |
Family
ID=36666024
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004357554A Expired - Fee Related JP4419824B2 (ja) | 2004-12-10 | 2004-12-10 | レプリケーション制御システム、基幹サーバ、部門サーバ、更新ロック管理装置およびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4419824B2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5011965B2 (ja) * | 2006-11-09 | 2012-08-29 | コニカミノルタホールディングス株式会社 | 情報の管理方法及び情報処理装置 |
JP5960798B2 (ja) | 2012-03-08 | 2016-08-02 | 株式会社Murakumo | データベースの管理方法 |
JP5750090B2 (ja) * | 2012-11-14 | 2015-07-15 | ビッグローブ株式会社 | データベース管理システムおよびデータベース管理方法 |
JP6239697B2 (ja) * | 2016-06-22 | 2017-11-29 | 株式会社Murakumo | データベースの管理方法 |
-
2004
- 2004-12-10 JP JP2004357554A patent/JP4419824B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2006164097A (ja) | 2006-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4573277B2 (ja) | データベース矛盾解消方式 | |
CN102770854A (zh) | 自动同步冲突解决 | |
US10931748B2 (en) | Optimistic concurrency utilizing distributed constraint enforcement | |
JP5077430B2 (ja) | 管理装置および管理装置のプログラム | |
JPH1021061A (ja) | クライアントソフトウェア自動バージョンアップシステム | |
JP6940645B2 (ja) | レプリカ処理方法、ノード、ストレージシステム、サーバ及び読み取り可能な記憶媒体 | |
US8019729B2 (en) | System and method for updating file | |
JP4419824B2 (ja) | レプリケーション制御システム、基幹サーバ、部門サーバ、更新ロック管理装置およびプログラム | |
WO2009147846A1 (ja) | データベース並行編集の競合解消方式 | |
JP6395793B2 (ja) | 半導体装置レシピ管理システム | |
US9766949B2 (en) | System and method for locking exclusive access to a divided resource | |
JP4021589B2 (ja) | データ管理方法及びその実施装置 | |
JPH10116293A (ja) | 分散型データベース管理システム | |
WO2007043417A1 (ja) | 命令を用いたデータ同期装置 | |
JP2000284998A (ja) | データ更新制御システム、データ更新制御方法、その方法を実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体 | |
US10657139B2 (en) | Information processing apparatus and non-transitory computer readable medium for distributed resource management | |
JPH11127147A (ja) | 蓄積交換型電子会議システムにおける情報矛盾判定、修正装置及び方法並びに情報矛盾判定、修正プログラムを記録した媒体 | |
JP4160544B2 (ja) | ドキュメント分散処理システムのサーバ管理方法およびサーバプログラムの記録媒体 | |
JP5543918B2 (ja) | データベース並行編集の競合解消方式 | |
AU2020219207A1 (en) | Synchronization of data records | |
JP2008158978A (ja) | データベース同期システム、データベース同期方法、データベースサーバ、データベースサーバの制御方法、およびプログラム | |
WO2015097991A1 (ja) | トランザクション分散処理装置、方法、システム、および、記憶媒体 | |
JP2010015384A (ja) | 情報共有防止方法、情報共有防止装置、及び、情報共有防止プログラム | |
JP2010256942A (ja) | ストレージの操作権限管理を含む計算機システム | |
JP4280919B2 (ja) | 複製管理システム、複製管理方法および複製管理プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090203 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090406 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20090525 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20090525 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20090714 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090918 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20091020 |
|
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: 20091110 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20091123 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121211 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4419824 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121211 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131211 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |