JP2015064850A - データベース監視装置、データベース監視方法、並びにコンピュータ・プログラム - Google Patents

データベース監視装置、データベース監視方法、並びにコンピュータ・プログラム Download PDF

Info

Publication number
JP2015064850A
JP2015064850A JP2013199741A JP2013199741A JP2015064850A JP 2015064850 A JP2015064850 A JP 2015064850A JP 2013199741 A JP2013199741 A JP 2013199741A JP 2013199741 A JP2013199741 A JP 2013199741A JP 2015064850 A JP2015064850 A JP 2015064850A
Authority
JP
Japan
Prior art keywords
log
serial number
database
update
storage unit
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.)
Granted
Application number
JP2013199741A
Other languages
English (en)
Other versions
JP6225606B2 (ja
Inventor
祥人 中西
Yoshito Nakanishi
祥人 中西
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2013199741A priority Critical patent/JP6225606B2/ja
Publication of JP2015064850A publication Critical patent/JP2015064850A/ja
Application granted granted Critical
Publication of JP6225606B2 publication Critical patent/JP6225606B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】 マスタデータベースからレプリカデータベースへの非同期レプリケーション処理において、レプリケーション処理に遅延が発生した場合でも、マスタデータベースの更新に与える影響を少なく、その遅延を解消することができるデータベース監視装置等を提供する。【解決手段】 データベース監視装置10は、マスタデータベース20に対する更新内容を蓄積可能なログ記憶部40に、その更新内容をログとして保存するログ保存部11と、前記ログ記憶部40に保存された更新内容を、前記マスタデータベース20に対する更新内容を反映可能なレプリカデータベース30に反映するログ反映部12と、前記ログ反映部12による前記レプリカデータベース30への前記更新内容の反映状態を所定の条件に従って監視し、その反映状態に遅延が生じている場合には、前記ログ記憶部40に保存されたログのうち、更新が必要な特定ログを選択し、その特定ログを反映するよう前記ログ反映部12に指示する監視部13とを備える。【選択図】 図1

Description

本発明は、データベース監視装置、データベース監視方法、並びにコンピュータ・プログラムに関する。
マスタデータベースへの更新内容を更新ログとして蓄積し、その更新ログをレプリカデータベースへ非同期に随時反映することでデータベースのレプリケーションを行う方式がある。
図14は、非同期にデータベースのレプリケーションを行うデータベースシステムを説明する図である。図14に示すデータベースシステムは、マスタデータベース1101と、レプリカデータベース1102と、アプリケーション1103と、更新ログ格納領域1104とを含む。このデータベースシステムは、マスタデータベース1101へのアプリケーション1103による更新内容を、更新ログとして更新ログ格納領域1104に蓄積し、その更新ログを基に、レプリカデータベースに非同期に反映する。
この方式を用いたオンライントランザクションシステムにおいて、図14に示すように、マスタデータベース1101にはインメモリデータベースを使用し、レプリカデータベース1102にはディスクストレージのデータベースを使用する場合がある。この場合、メモリとディスクストレージとのレコードの書き込み処理速度には大きな差があるため、オンライン処理の処理速度が向上すると、非同期レプリケーション処理が追い付けなくなる可能性がある。そのため、非同期レプリケーション処理の性能を向上する方法およびレプリケーション処理の遅延を解消するための方法を考える必要がある。
ここで、本願出願に先だって存在する関連技術としては、例えば以下の特許文献がある。
特許文献1では、レプリケーション処理の遅延を検出すると、マスタデータベースの更新を保留して、遅延解消を図る技術が開示されている。
特許文献2では、マスタデータベースの更新頻度が多くなった場合に、レプリカデータベース側に差分データを送信する頻度を多くすることにより、遅延が大きくなるのを防ごうとする技術が開示されている。
特許文献3では、マスタデータベースで行われた更新をレプリカデータベースに対して、一定時間ごとに行う技術が開示されている。
特開2006−53737号公報 特開2006−318020号公報 特開2009−277187号公報
しかしながら、特許文献1から3に提案されている技術を用いても、即時に変更が要求されるマスタデータベースにおいて、大量のデータ更新が発生した場合には、レプリカデータベースの更新に遅延が発生し、その遅延を解消することは難しい。
そこで、本発明は、マスタデータベースからレプリカデータベースへの非同期レプリケーション処理において、レプリケーション処理に遅延が発生した場合でも、マスタデータベースの更新に与える影響を少なく、その遅延を解消することができるデータベース監視装置等を提供することを主たる目的とする。
上記の目的を達成すべく、本発明に係るデータベース監視装置は、以下の構成を備えることを特徴とする。
即ち、本発明に係るデータベース監視装置は、
マスタデータベースに対する更新内容を蓄積可能なログ記憶部に、その更新内容をログとして保存するログ保存部と、
前記ログ記憶部に保存された更新内容を、前記マスタデータベースに対する更新内容を反映可能なレプリカデータベースに反映するログ反映部と、
前記ログ反映部による前記レプリカデータベースへの前記更新内容の反映状態を所定の条件に従って監視し、その反映状態に遅延が生じている場合には、前記ログ記憶部に保存されたログのうち、更新が必要な特定ログを選択し、その特定ログを反映するよう前記ログ反映部に指示する監視部と、
を備える
ことを特徴とする。
同目的を達成する本発明に係るデータベース監視方法は、
情報処理装置によって、マスタデータベースに対する更新内容を蓄積可能なログ記憶部に、その更新内容をログとして保存し、
前記ログ記憶部に保存した更新内容を、前記マスタデータベースに対する更新内容を反映可能なレプリカデータベースに反映するに際して、
前記レプリカデータベースへの前記更新内容の反映状態を所定の条件に従って監視し、その反映状態に遅延が生じている場合には、前記ログ記憶部に保存されたログのうち、更新が必要な特定ログを選択し、その特定ログを反映する
ことを特徴とする。 更に、同目的は、上記構成を有するデータベース監視方法、並びにデータベース監視装置を、コンピュータによって実現するコンピュータ・プログラム、及びそのコンピュータ・プログラムが格納されている、コンピュータ読み取り可能な記憶媒体によっても達成される。
上記の本発明によれば、マスタデータベースからレプリカデータベースへの非同期レプリケーション処理において、レプリケーション処理に遅延が発生した場合でも、マスタデータベースの更新に与える影響を少なく、その遅延を解消することができる。
本発明の第1の実施形態に係るデータベース監視装置の構成を示すブロック図である。
本発明の第2の実施形態に係るデータベースシステムの構成を示すブロック図である。 本発明の第2の実施形態に係る更新ログ格納表を説明する図である。 本発明の第2の実施形態に係る処理済通番管理表を説明する図である。 本発明の第2の実施形態に係る最新登録通番管理表を説明する図である。 本発明の第2の実施形態に係る更新ログ保存部における更新ログ登録処理を示すフローチャートである。 本発明の第2の実施形態に係る更新ログを登録した後の更新ログ格納表を説明する図である。 本発明の第2の実施形態に係る最新の登録通番を更新した後の最新登録通番管理表を説明する図である。 本発明の第2の実施形態に係る更新ログ監視部における更新ログの反映状況を監視する処理のフローチャートである。 本発明の第2の実施形態に係る更新ログ反映部における遅延解消のための更新ログ反映処理のフローチャートである。 本発明の第2の実施形態に係る更新ログ格納表の一例を説明する図である 本発明の第3の実施形態に係るデータベースシステムの構成を示すブロック図である。 本発明の第3の実施形態に係る処理済通番管理表601を説明する図である。 非同期にデータベースのレプリケーションを行うデータベースシステムを説明する図である。 本発明の第1乃至第3の実施形態を実現可能なコンピュータ(情報処理装置)のハードウェア構成を例示的に説明する図である。
次に、本発明を実施する形態について図面を参照して詳細に説明する。
<第1の実施形態>
図1は、本発明の第1の実施形態に係るデータベース監視装置の構成を示すブロック図である。
本実施形態に係るデータベースシステムは、データベース監視装置10と、マスタデータベース20と、レプリカデータベース30と、ログ記憶部40とを有する。
マスタデータベース20は、アプリケーションが更新するデータが格納されたデータベースである。
レプリカデータベース30は、マスタデータベース20の上記更新に伴うレプリケーション先となるデータベースである。
ログ記憶部40は、マスタデータベース20に対する更新内容を蓄積可能な装置である。
データベース監視装置10は、ログ保存部11と、ログ反映部12と、監視部13とを含む。
ログ保存部11は、マスタデータベース20に対する更新内容をログとして、ログ記憶部40に保存する。
ログ反映部12は、ログ記憶部40に保存された更新内容をレプリカデータベース30に反映する。
監視部13は、所定の条件に従って、ログ反映部12によるレプリカデータベース30への更新内容の反映状態を監視する。遅延が生じている場合には、監視部13は、ログ記憶部40に保存されたログのうち、更新が必要な特定ログを選択する。監視部13は、その特定ログを反映するようにログ反映部12に指示する。
以上、説明したように、第1の実施形態には、マスタデータベースからレプリカデータベースへの非同期レプリケーション処理において、レプリケーション処理に遅延が発生した場合でも、マスタデータベースの更新に与える影響を少なく、その遅延を解消することができるという効果がある。
その理由は、本実施形態に係るデータベース監視装置10は、レプリケーション処理に遅延が発生していると判定した場合には、ログ記憶部40に保存されたログのうち、更新が必要な特定ログを選択して、その特定ログをレプリカデータベースに反映するためである。
<第2の実施形態>
図2は、本発明の第2の実施形態に係るデータベースシステムの構成を示すブロック図である。
本実施形態に係るデータベースシステムは、マスタデータベース100と、レプリカデータベース200と、アプリケーション300と、更新ログ格納表500と、処理済通番管理表600と、最新登録通番管理表700と、更新ログ反映部800と、更新ログ監視部900とを有する。
マスタデータベース100は、アプリケーション300が参照および更新するデータが格納されたデータベースである。
レプリカデータベース200は、マスタデータベース100に対する更新内容のレプリケーション先となるデータベースである。
アプリケーション300は、少なくともマスタデータベース100を参照および更新する機能を有するプログラムである。アプリケーション300は、1つ以上存在する。
アプリケーション300は、更新ログ保存部400を有する。
アプリケーション300によるマスタデータベース100の更新時に、更新ログ保存部400は、更新ログを更新ログ格納表500に格納する。更新ログは、更新後のレコードイメージ全体と通番とを含む。更新ログ保存部400は、処理済通番管理表600を参照して、更新ログに付加する通番を決定する。更新ログ保存部400は、更新ログの保存時に、最新登録通番管理表700へ決定した通番を記録する。
図3は、本発明の第2の実施形態に係る更新ログ格納表を説明する図である。
更新ログ格納表500は、更新ログを格納するテーブルであり、通番510と、更新内容520とを含む。通番510と、更新内容520は、更新ログ格納表500において、図3に概念的に示すテーブルの如く関連付けされていることとする。
通番510は、更新内容520の更新が発生した順番を表す連番である。通番510は、アプリケーション300を実行するトランザクション単位に決定される。1トランザクションで複数個のレコードを更新した場合、更新ログ保存部400は、それらの更新を1つの通番の更新内容として更新ログ格納表500に格納する。
本実施形態において、すべてのアプリケーション300の更新ログ保存部400は、1つの更新ログ格納表500を共有しているものとして説明する。更新ログ格納表500は、実際には、複数個存在しても構わない。
図4は、本発明の第2の実施形態に係る処理済通番管理表を説明する図である。
処理済通番管理表600は、処理済の通番を管理するテーブルであり、登録済通番610と、反映済通番620とを含む。登録済通番610と、反映済通番620は、処理済通番管理表600において、図4に概念的に示すテーブルの如く関連付けされていることとする。
登録済通番610の値は、更新ログ保存部400が直近に更新ログを更新ログ格納表500に保存したときの通番を表している。反映済通番620の値は、更新ログ反映部800が直近にレプリカデータベース200に反映した更新ログの通番を表している。各アプリケーション300の更新ログ保存部400は、1つの処理済通番管理表600を共有している。
図5は、本発明の第2の実施形態に係る最新登録通番管理表を説明する図である。
最新登録通番管理表700は、マスタデータベースに格納されたレコードに対応する最新の通番を管理するテーブルであり、更新先管理表710と、通番管理表a(通番管理表720)と、通番管理表b(通番管理表730)とを含む。更新先管理表710と、通番管理表aと、通番管理表bは、最新登録通番管理表700において、図5に概念的に示すテーブルの如く関連付けされていることとする。
更新先管理表710の表識別名は、2つの通番管理表(通番管理表aと、通番管理表b)のうちでどちらの通番管理表に、更新ログ保存部400が更新ログの通番を格納するかを表している。表識別名の値が「a」の場合、更新ログ保存部400は、通番管理表aを更新する。また、表識別名の値が「b」の場合、更新ログ保存部400は、通番管理表bを更新する。
通番管理表aは、ユーザテーブルと、キーと、最新登録通番とを含む。ユーザテーブルと、キーと、最新登録通番は、通番管理表aにおいて、図5に概念的に示すテーブルの如く関連付けされていることとする。
ユーザテーブルは、マスタデータベース100に作成したユーザテーブルの識別子である。キーは、そのユーザテーブル内のレコードを一意に決定するための情報である。最新登録通番は、ユーザテーブルと、キーで一意に決定されるレコードを、最新に登録した時の通番である。図5に示す通番管理表aで一行に示されるユーザテーブルと、キーと、最新登録通番を管理レコードという。
通番管理表bは、通番管理表aと同じ形式である。
各アプリケーション300の更新ログ保存部400は、1つの最新登録通番管理表700を共有している。
更新ログ反映部800は、更新ログをレプリカデータベース200へ反映する。更新ログ反映部800は、例えば、あらかじめ定めた一定時間ごとに処理済通番管理表600を参照して更新ログが登録されたことを検知すると、更新ログ格納表500から該当の更新ログを取得する。更新ログ反映部800は、取得した更新ログをレプリカデータベース200へ反映する。更新ログを反映したら、更新ログ反映部800は、最後に反映した更新ログの通番を処理済通番管理表600の反映済通番620に記録する。また、更新ログ反映部800は、複数の更新ログをレプリカデータベース200へ反映後に、コミットして反映を確定する機能を有する。
更新ログ監視部900は、例えば、あらかじめ定めた一定時間ごとに処理通番管理表500を参照し、更新ログ反映部800の処理に遅延が発生していないかを監視する。更新ログ監視部900は、例えば、登録済通番と、反映済通番との差について、あらかじめ閾値を決定しておく。そして、更新ログ監視部900は、その閾値を超えたことを検知した場合に、対応が必要な遅延が発生したと判定する。
対応が必要な遅延を検知した場合には、更新ログ監視部900は、遅延解消処理を行う。更新ログ監視部900は、最新登録通番管理表700を参照し、レプリケーションを行うために必要な更新ログの通番リストを作成する。更新ログ監視部900は、作成した通番リストを更新ログ反映部800に通知する。更新ログ反映部800は、通知された通番リストに基づいて、更新ログをレプリカデータベース200へ反映する。反映完了が確認できれば、更新ログ監視部900は、最新登録通番管理表700から反映完了で不要になった情報を削除する。
次に、本発明の第2の実施形態の動作について詳細に説明する。
図6は、本発明の第2の実施形態に係る更新ログ保存部における更新ログ登録処理を示すフローチャートである。
図7は、本発明の第2の実施形態に係る更新ログを登録した後の更新ログ格納表を説明する図である。
図8は、本発明の第2の実施形態に係る最新の登録通番を更新した後の最新登録通番管理表を説明する図である。
アプリケーション300がマスタデータベース100に作成されたユーザテーブルに対して更新を行った際に、更新ログ保存部400は、その更新内容を受け取り、動作する。
更新ログ保存部400は、処理済通番管理表600の登録済通番610を参照し、最新の更新ログの登録通番を取得する。更新ログ保存部400は、取得した登録通番に1を加算して今回の通番の値を求める(ステップS11)。図4に示す処理済通番管理表600の状態では、更新ログ保存部400は、登録済通番610の値である「1000」に1を加算して、今回の通番の値である「1001」を求める。
次に、更新ログ保存部400は、求めた通番を通番510と、アプリケーション300の更新内容を更新内容520として、更新ログ格納表500に登録する(ステップS12)。
登録前の更新ログ格納表500が図3に示す内容であった場合には、登録後の更新ログ格納表500は、図7に示す内容となる。
更新ログ保存部400は、更新ログを登録後、更新先管理表710の表識別名を参照し、通番管理表のその時点での更新先を取得する(ステップS13)。最新登録通番管理表700が図5に示す内容の場合、通番管理表の更新先は、「通番管理表a」になる。表識別名の参照時には共有ロックを行い、更新ログ監視部900が表識別名を更新する処理との排他を行う。共有ロックは、以降の通番管理表更新処理がすべて完了するまでを排他区間とする。
更新ログ保存部400は、更新先の通番管理表において、今回更新したユーザテーブル内のレコードに対応する管理レコードを検索する(ステップS14)。
ここで、管理レコードが見つかった(ステップS15で「Yes」)場合、更新ログ保存部400は、その管理レコードに含まれる最新登録通番を今回登録した通番で更新する(ステップS16)。管理レコードが見つからない(ステップS15で「No」)場合には、更新ログ保存部400は、通番管理表に新たに管理レコードを追加する(ステップS17)。1つのトランザクション内で複数のレコードを更新している場合、更新ログ保存部400は、すべての更新に対して管理レコードの追加または更新を行う。
具体的に、テーブルAのキー「3」に関連付けされたレコードと、テーブルBのキー「1」に関連付けされたレコードとの2つのレコードを更新する場合を例に説明する。
テーブルAのキー「3」に関連付けされたレコードの管理レコードについて、更新ログ保存部400は、通番管理表aを検索する(ステップS14)。更新ログ保存部400は、通番管理表aに該当する管理レコードが存在しないため(ステップS15で「No」)、新たに、テーブルAのキー「3」に関連付けされた管理レコードを通番管理表aに追加する(ステップS17)。すなわち、図5の通番管理表は、ユーザテーブルが「テーブルA」で、キーが「キー3」で、最新登録通番が「1001」の管理レコードが追加され、図8に示すようになる。
テーブルBのキー「1」に関連付けされた管理レコードについては処理していない(ステップS18で「No」)ので、 テーブルBのキー「1」に関連付けされたレコードの管理レコードについても、更新ログ保存部400は、通番管理表aを検索する(ステップS14)。更新ログ保存部400は、通番管理表aに該当するレコードが存在するため(ステップS15で「Yes」)、通番管理表aにおけるテーブルBのキー「1」に関連付けされた管理レコードの最新登録通番を「1001」に更新する(ステップS16)。すなわち、図5の通番管理表aは、ユーザテーブルが「テーブルB」で、キーが「キー1」の管理レコードに対し、最新登録通番が「1001」に更新され、図8に示すようになる。
テーブルAのキー「3」に関連付けされた管理レコードと、テーブルBのキー「1」に関連付けされた管理レコードとの2つのレコードについて処理した(ステップS18で「Yes」)ので、更新ログ保存部400は、処理を終了する。
更新ログ保存部400が行った更新ログ格納表500、処理済通番管理表600および、最新登録通番管理表700への更新は、マスタデータベース100に対する更新がコミットされることにより、内容が確定する。マスタデータベース100のコミットに失敗してロールバックが発生した場合には、更新ログ格納表500、処理済通番管理表600および最新登録通番管理表700への更新は、取り消される。
なお、管理レコードを更新するときは、他のアプリケーション300の更新との排他を行うために管理レコード単位の占有ロックが必要である。しかし、通常は、ユーザテーブルのレコードを更新する際に排他が行われているはずなので、その排他が管理レコードの更新時点でも有効であれば管理レコード更新の排他制御は行わなくてもよい。
次に、レプリケーション処理が大幅に遅延した場合に実行する遅延解消処理について説明する。
図9は、本発明の第2の実施形態に係る更新ログ監視部における更新ログの反映状況を監視する処理のフローチャートである。
更新ログ監視部900(図2)には、遅延解消処理の実行を判断するための条件があらかじめ設定されている。例えば、本実施形態では、登録済通番と反映済通番との間の差が、決められた閾値以上であった場合に、反映処理が遅延していると判断して遅延解消処理を実行することとする。ここでは、閾値を「500」に設定する。なお、ここで記述した条件は、一例であり、本発明を限定するものではない。
更新ログ監視部900は、あらかじめ定めた一定時間ごとに処理済通番管理表600を参照し、登録済通番と反映済通番との間に閾値以上の差がないかを監視する(ステップS21)。
閾値を超えていないとき(ステップS22で「No」)、更新ログ監視部900は、処理を終了する。
更新ログ監視部900は、反映処理の遅延が閾値以上であることを検知すると(ステップS22で「Yes」)、更新先管理表710の表識別名を、現在の更新先でない通番管理表を表す値に変更する(ステップS23)。ステップS23における表識別名の更新は、占有ロックを行い、更新ログ保存部400による参照との排他を行う。この変更により、更新ログ保存部400は、更新ログの登録時に、切り替え後の通番管理表を更新することができる。
ステップS23における処理による通番管理表の切り替え後、更新ログ監視部900は、切り替え前に更新先だった方の通番管理表にあるすべての管理レコードの最新登録通番を参照する。更新ログ監視部900は、管理レコードに存在するすべての最新登録通番の値から、処理済通番管理表600の反映済通番の値より大きい通番を抽出する。更新ログ監視部900は、抽出した通番を基に、通番リストを作成する(ステップS24)。例えば、図4に示す反映済通番が「500」と図8に示す通番管理表aを基に、通番リストを作成した場合、通番リストは、「510、600、1000、1001」となる。
更新ログ監視部900は、作成した通番リストを更新ログ反映部800に送信する(ステップS25)。
更新ログ反映部800で行う処理については、後で説明する。
更新ログ監視部900は、処理済通番管理表600を参照し、反映済通番620を確認する(ステップS26)。
更新ログ監視部900は、更新ログ反映部800へ通知した通番すべてが反映されたことを確認すると(ステップS27で「Yes」)、最新登録通番管理表700の更新先管理表の表識別名に対応する通番管理表でない方の通番管理表(すなわち、未反映通番リストを作成時に参照した通番管理表)内の管理レコードをすべて削除する(ステップS28)。なお、本実施形態では更新ログ監視部900が削除処理を行う例で説明したが、通番管理表内の管理レコードの削除は反映処理完了後に行われればいいので、更新ログ反映部800が反映済通番更新時に同時に行ってもよい。
次に、更新ログ反映部800で行う処理について説明する。
図10は、本発明の第2の実施形態に係る更新ログ反映部における遅延解消のための更新ログ反映処理のフローチャートである。
図11は、本発明の第2の実施形態に係る更新ログ格納表の一例を説明する図である。
更新ログ反映部800は、更新ログ監視部900から通番リストを受信する(ステップS31)。受信した通番リストと処理済通番管理表600の反映済通番620とを比較することにより、更新ログ反映部800は、通番リスト内に含まれる通番について、未処理状態の通番を確認する(ステップS32)。例えば、更新ログ監視部900が通番リストを作成してから通知するまでの間に、更新ログ反映部800が通番520までの更新ログの反映を行っていたとすると、未処理状態の通番リスト(以下、「未反映通番リスト」ともいう)は、「600、1000、1001」となる。
未反映の通番がある(ステップS33で「Yes」)場合、更新ログ反映部800は、未反映通番リストにあるすべての通番の更新ログを更新ログ格納表500から取得する。その後、更新ログ反映部800は、通番の小さい更新ログから順にレプリカデータベース200へ一括更新し、コミットして反映する(ステップS34)。反映完了後、更新ログ反映部800は、処理済通番管理表600の反映済通番620を、通番リスト内の最も大きい通番の値に更新する。
もし受信した通番リストがすべて反映済であれば(ステップS33で「No」)、更新ログ反映部800は、反映処理を行わない。
今回の例では、更新ログ反映部800は、通番600、1000、1001の更新ログのみを更新ログ格納表500から取得する。更新ログ反映部800は、取得した更新ログを基に、レプリカデータベース200に反映する。この時、更新ログ格納表500が図11に示す内容であったとする。この場合、通番1001以下の未反映の更新ログのうちで、更新ログ反映部800は、通番600、1000、1001以外の更新ログを反映する必要がなくなる。通番600、1000、1001の更新ログを反映することで、レプリカデータベース200は、通番1001の更新ログを生成した時点のマスタデータベース100と同等の内容になる。よって、反映することを省略した更新ログを反映するのに必要な時間の分だけ、更新ログ反映部800は、反映処理に要する時間を短縮することができる。
なお、更新ログ反映部800が未反映通番リストを基に更新ログを反映する際、レプリカデータベース200に更新対象レコードが存在しない場合がある。これは、未反映通番リストにない更新ログに対応する処理で、アプリケーション300がマスタデータベース100にレコードを追加していた場合に発生する。更新ログ反映部800は、更新対象レコードが見つからない場合は、レコードの追加を行う。例えば、図11の更新ログ管理表における通番550の更新でテーブルBのキー「2」に関連付けされたレコードを追加した場合、通番600の更新ログを反映する際にレプリカデータベース200にテーブルBキー「2」に関連付けされたレコードは存在しない。そのため、更新ログ反映部800は、レプリカデータベース200にテーブルBのキー「2」に関連付けされたレコードを追加する。
更新ログ反映部800は、未反映通番リストにあるすべての通番について、更新ログの反映を行ったら(ステップS33で「No」)、処理を終了する。
本実施形態では、登録済通番と反映済通番との間に決められた閾値以上の差が生じたことを条件にして、その条件に従って、遅延解消処理が実行される例を示した。このような閾値の設定は、決められた更新数以上のレプリケーション処理の遅延を発生させないという要求がシステムの要件にある場合に有効である。
ただし、時間に対する平均的なレプリケーション処理の遅延量を抑えたいような場合は、本実施形態の条件設定はあまり効果的ではない。なぜなら、例えば、登録済通番と反映済通番との差分が「500」を閾値とした場合、登録処理と反映処理との差分が「490」となった状態が継続する(すなわち、マスタデータベース100への更新速度とレプリケーション処理速度とが平衡状態になる)場合を仮定すると、この場合は、遅延解消処理が実行されないからである。時間に対する平均的なレプリケーション処理の遅延量を抑えたいような場合は、単位時間あたりの処理遅延量の累積値に対して実行条件を設定することが望ましい。例えば、1秒間隔で処理遅延量を監視した際に、処理遅延量の累積加算した値が「5000」以上であれば遅延解消処理を実行するように条件を設定する。このような設定を行えば、登録済通番と反映済通番との差分が「490」で平衡状態になったとしても、少なくとも11秒後には遅延解消処理が実行される。
また、本実施形態および前述の条件設定では、レプリケーション処理の遅延量が閾値未満に収まっていれば遅延解消処理は実行されない。この場合、最新登録通番管理表700の更新先となっている通番管理表の管理レコードが増大したままになるため、更新ログ保存部400が通番管理表を更新する際の処理性能が低下する可能性がある。その結果、オンライン処理性能が低下する懸念が発生する。更新ログ監視部900は、あらかじめ設定した時間を超えたら、遅延解消処理を実行し、通番管理表を切り替えて管理レコードの削除を実行することで、このような状況を回避できる。そのためには、前回の遅延解消処理実行からの経過時間に対する閾値を設定し、更新ログ監視部900は、その閾値を越えた場合にも遅延解消処理を実行すればよい。
また、本実施形態では未反映の更新ログの通番数を、遅延解消処理を実行するか否かの判断に利用する例を示したが、通番以外に判断できる管理情報が存在するならばそれを使用して判断を行ってもいい。例えば未反映の更新ログの総データサイズに対して判断を行いたい場合は、更新ログ格納領域のサイズを管理する表を別途作成し、その値で遅延解消処理を実行すべきか否か判断すればよい。また、例えば最新登録通番管理表700の更新先通番管理表の管理レコードのレコード数を一定数以下に抑えたい場合は、定期的にそのレコード数を参照して、判断を行えばよい。
最新登録通番管理表700の通番管理表に対する更新方法として、本実施形態では、更新対象の管理レコードがない場合にのみ管理レコードを追加する例を示したが、更新ログ保存部400は、常に管理レコードを追加するようにしてもよい。この場合、更新ログ監視部900は、通番リストを作成する際に、ユーザテーブルとキーとが共に一致する管理レコードが複数存在しても、通番が最大のもののみを通番リストに追加する。このようにした場合、最新登録通番管理表700を構成する通番管理表に、本実施形態よりも大きな領域が必要になる。しかし、管理レコードの検索処理が省略できるため、オンライン処理の性能が向上する。また、更新ログ監視部900もしくは他の構成が、例えば、定期的に古い管理レコードを削除するようなことを行って、領域サイズの増大を抑制するようにしてもよい。
以上、説明したように、第2の実施形態には、マスタデータベースからレプリカデータベースへの非同期レプリケーション処理において、レプリケーション処理に遅延が発生した場合でも、マスタデータベースの更新に与える影響を少なく、その遅延を解消することができるという効果がある。
その理由は、本実施形態に係るデータベースシステムは、レプリケーション処理に遅延が発生していると判定した場合には、更新ログ格納表500に保存された更新ログの中から、反映する必要がある更新ログを選択して、その選択した更新ログをレプリカデータベース200に反映するためである。
また、本実施形態による遅延解消処理においてオンライン処理に与える影響は、最新登録通番管理表700の更新先管理表710の表識別名を切り替える際の排他待ちのみである。そのため、遅延解消処理中でもオンライントランザクション処理を継続させることが可能である。
本実施形態は、短時間で少量のレコードに対して大量更新処理を行うようなオンライントランザクション処理システムにおいては非常に有効である。このようなシステムの場合、遅延解消処理を行うことで大部分の更新ログの反映を省略することができる。
また、1日の間で特定の時間帯だけ大量の更新処理が動作するようなオンライントランザクション処理システムにおいても有効である。通常のレプリケーション処理速度でレプリケーションが間に合う時間帯では、レプリケーション処理は随時実行されるため、マスタデータベース100とレプリカデータベース200との間のデータの差異はほとんど生じない。そのため、マスタデータベース100とレプリカデータベース200とのデータの差異を安定して抑えることが可能である。一時的にマスタデータベース100への更新が増大する時間帯では、本実施形態の遅延解消処理が行われることで、レプリケーション処理を継続させることが可能である。
<第3の実施形態>
次に上述した第2の実施形態に係るデータベースシステムを基本とする第3の実施形態について説明する。
第2の実施形態では、マスタデータベースに対してレプリカデータベースが1つの構成で説明したが、レプリカデータベースは2つ以上であっても本発明は有効である。ここで、第3の実施形態として、レプリカデータベースを2つにした場合について説明する。
図12は、本発明の第3の実施形態に係るデータベースシステムの構成を示すブロック図である。本実施形態のシステム構成は、第2の実施形態のシステム構成に、レプリカデータベース201と、レプリカデータベース201に対して更新ログを反映する更新ログ反映部801とを追加した構成になっている。
図13は、本発明の第3の実施形態に係る処理済通番管理表601を説明する図である。処理済通番管理表601は、更新ログ反映部800と801の各々についての反映済通番の値を管理する。
更新ログ格納表500は、更新ログ反映部800と801で共有する。
本実施形態において、更新ログ監視部900は、更新ログ反映部800と801のうちで、処理が遅れている方に対して閾値以上の差が生じているかを確認する。閾値以上の差が生じている場合には、更新ログ監視部900は、未反映通番リストを作成する。作成した未反映通番リストを、更新ログ監視部900は、更新ログ反映部800と801の両方に向けて、送信する。
更新ログ反映部800と801は、受信した未反映通番リストから自装置が未反映の通番を抽出する。更新ログ反映部800と801は、抽出した通番に相当する更新ログを、自装置のレプリカデータベース(200または201)に反映する。
更新ログ監視部900は、更新ログ反映部800と801の両方が未反映の更新ログを反映したことを確認後、最新登録通番管理表700の通番管理表(720または730)内の管理レコードを削除する。
以上、説明したように、第3の実施形態には、マスタデータベースに対して、複数のレプリカデータベースを有するシステムにおいても、マスタデータベースからレプリカデータベースへの非同期レプリケーション処理において、レプリケーション処理に遅延が発生した場合でも、マスタデータベースの更新に与える影響を少なく、その遅延を解消することができるという効果がある。
その理由は、本実施形態に係るデータベースシステムは、レプリケーション処理に遅延が発生していると判定した場合には、更新ログ格納表500に保存された更新ログの中から、反映する必要がある更新ログを選択して、その選択した更新ログをレプリカデータベース(200、201)に反映するためである。
(ハードウェア構成)
上述した実施形態において図1、図2および図12に示した各部は、専用の装置によって実践してもよいが、ソフトウェアプログラムの機能(処理)単位(ソフトウェアモジュール)と捉えることができる。但し、これらの図面に示した各部の区分けは、説明の便宜上の構成であり、実装に際しては、様々な構成が想定され得る。このような場合のハードウェア環境の一例を、図15を参照して説明する。
図15は、本発明の第1乃至第3の実施形態を実現可能なコンピュータ(情報処理装置)のハードウェア構成を例示的に説明する図である。即ち、図1、図2および図12に示したデータベースシステムの全体または一部を実現可能なコンピュータ(情報処理装置)の構成であって、上述した実施形態における各機能を実現可能なハードウェア環境を表す。
図15に示した情報処理装置9000は、CPU(Central Processing Unit)9001、ディスプレイ9002、通信インタフェース(I/F)9003、ROM(Read Only Memory)9004、RAM(Random Access Memory)9005、ハードディスク装置(HD)9006を備え、これらがバス9007を介して接続された構成を有する。ハードディスク装置(HD)9006には、プログラム群9006Aと、各種の記憶情報9006Bとが格納されている。プログラム群9006Aは、例えば、上述した図1、図2および図12に示した各ブロック(各部)に対応する機能を実現するためのコンピュータ・プログラムである。各種の記憶情報9006Bは、例えば、図1に示したログ記憶部40、図2に示した更新ログ格納表500、処理済通番管理表600、最新登録通番管理表700等である。通信インタフェース9003は、ネットワーク9100を介して外部装置と通信を実現する一般的な通信手段である。
そして、上述した実施形態を例に説明した本発明は、その実施形態の説明において参照したブロック構成図、あるいは、フローチャートの機能を実現可能なコンピュータ・プログラムを供給した後、そのコンピュータ・プログラムを、当該ハードウェアのCPU9001に読み出して、図15に示す情報処理装置9000のハードウェア資源を用いて実行することによって達成される。具体的には、更新ログ保存部400を、情報処理装置9000によって実現する場合、情報処理装置9000は、図6に示すフローチャートに対応するコンピュータ・プログラムを実現すればよい。更新ログ監視部900を、情報処理装置9000によって実現する場合、情報処理装置9000は、図9に示すフローチャートに対応するコンピュータ・プログラムを実現すればよい。更新ログ反映部800を、情報処理装置9000によって実現する場合、情報処理装置9000は、図10に示すフローチャートに対応するコンピュータ・プログラムを実現すればよい。また、情報処理装置9000内に供給されたコンピュータ・プログラムは、読み書き可能な一時記憶メモリ(9005)またはハードディスク装置9006等の不揮発性の記憶デバイス(記憶媒体)に格納すれば良い。
また、前記の場合において、当該装置内へのコンピュータ・プログラムの供給方法は、CD−ROM等の各種記憶媒体を介して当該装置内にインストールする方法や、インターネット等の通信回線を介して外部からダウンロードする方法等のように、現在では一般的な手順を採用することができる。そして、このような場合において、本発明は、係るコンピュータ・プログラムを構成するコード或いは、そのコードが記録されたところの、コンピュータ読み取り可能な記憶媒体によって構成されると捉えることができる。
10 データベース監視装置
11 ログ保存部
12 ログ反映部
13 監視部
20 マスタデータベース
30 レプリカデータベース
40 ログ記憶部
100 マスタデータベース
200 レプリカデータベース
201 レプリカデータベース
300 アプリケーション
400 更新ログ保存部
500 更新ログ格納表
510 通番
520 更新内容
600 処理済通番管理表
601 処理済通番管理表
610 登録済通番
620 反映済通番
700 最新登録通番管理表
710 更新先管理表
720 通番管理表
730 通番管理表
800 更新ログ反映部
801 更新ログ反映部
900 更新ログ監視部
1101 マスタデータベース
1102 レプリカデータベース
1103 アプリケーション
1104 更新ログ格納領域
9000 情報処理装置(コンピュータ)
9001 CPU
9002 ディスプレイ
9003 通信インタフェース(I/F)
9004 ROM
9005 RAM
9006 ハードディスク装置(HD)
9006A プログラム群
9006B 各種の記憶情報
9007 バス
9100 ネットワーク

Claims (8)

  1. マスタデータベースに対する更新内容を蓄積可能なログ記憶部に、その更新内容をログとして保存するログ保存部と、
    前記ログ記憶部に保存された更新内容を、前記マスタデータベースに対する更新内容を反映可能なレプリカデータベースに反映するログ反映部と、
    前記ログ反映部による前記レプリカデータベースへの前記更新内容の反映状態を所定の条件に従って監視し、その反映状態に遅延が生じている場合には、前記ログ記憶部に保存されたログのうち、更新が必要な特定ログを選択し、その特定ログを反映するよう前記ログ反映部に指示する監視部と、
    を備えることを特徴とするデータベース監視装置。
  2. 前記監視部は、前記ログ記憶部に保存された前記ログのうち、
    前記マスタデータベースに格納されている同じレコードに対応するログについては最新の前記ログを前記特定ログとして選択する
    ことを特徴とする請求項1記載のデータベース監視装置。
  3. 前記監視部は、
    前記レプリカデータベースへの前記ログの反映状態に遅延が生じていることを判断する条件として、前記ログを保存したときに付与した通番と、前記レプリカデータベースに反映済の前記ログの通番の差に関する閾値を利用する
    ことを特徴とする請求項1または請求項2記載のデータベース監視装置。
  4. 前記監視部は、
    前記マスタデータベースに格納されているレコードと前記通番を関連付けて管理するテーブルについて、前記マスタデータベースを更新する処理における当該テーブルの変更処理を、更新内容の反映に際して生じた遅延を解消する処理における当該テーブルの参照処理が妨げることがないように、当該テーブルを複数用いて切り替える
    ことを特徴とする請求項1乃至請求項3の何れかに記載のデータベース監視装置。
  5. 前記ログ保存部は、
    前記ログ記憶部に、前記通番と、更新内容とを関連付けて記憶するときに、
    前記レコードを識別する情報と、記憶した最新の前記通番とを関連付けて格納する第1のテーブルを更新し、
    最新の前記通番と、前記ログ反映部により行われた反映済の最新ログに対応する通番とを格納する第2のテーブルを更新し、
    前記ログ監視部は、
    前記第2のテーブルを参照することにより遅延が生じていることを判定したときには、
    前記第1のテーブルを参照することにより更新が必要なログを選択して、更新が必要なログの通番リストを作成して前記ログ反映部に通知し、
    前記ログ反映部は、
    前記通番リストを基に前記ログ記憶部を参照して、前記レプリカデータベースに必要なログを反映する
    ことを特徴とする請求項1乃至請求項4の何れかに記載のデータベース監視装置。
  6. 情報処理装置によって、マスタデータベースに対する更新内容を蓄積可能なログ記憶部に、その更新内容をログとして保存し、
    前記ログ記憶部に保存した更新内容を、前記マスタデータベースに対する更新内容を反映可能なレプリカデータベースに反映するに際して、
    前記レプリカデータベースへの前記更新内容の反映状態を所定の条件に従って監視し、その反映状態に遅延が生じている場合には、前記ログ記憶部に保存されたログのうち、更新が必要な特定ログを選択し、その特定ログを反映する
    ことを特徴とするデータベース監視方法。
  7. 情報処理装置によって、
    前記ログ記憶部に、マスタデータベースに格納されたレコードを更新するアプリケーションプログラムごとに付与する通番と、更新内容とを関連付けて記憶するときに、
    前記レコードを識別する情報と、記憶した最新の前記通番とを関連付けて格納する第1のテーブルを更新し、
    最新の前記通番と、最新の反映済の通番とを関連付けて格納する第2のテーブルを更新し、
    前記第2のテーブルを参照することにより遅延が生じていることを判定したときには、
    前記第1のテーブルを参照することにより更新が必要なログを選択して、更新が必要なログの通番リストを作成し、
    前記通番リストを基に前記ログ記憶部を参照して、前記レプリカデータベースに必要なログを反映する
    ことを特徴とする請求項6記載のデータベース監視方法。
  8. マスタデータベースに対する更新内容を蓄積可能なログ記憶部に、その更新内容をログとして保存するログ保存機能と、
    前記ログ記憶部に保存された更新内容を、前記マスタデータベースに対する更新内容を反映可能なレプリカデータベースに反映するログ反映機能と、
    前記レプリカデータベースへの前記更新内容の反映状態を所定の条件に従って監視し、その反映状態に遅延が生じている場合には、前記ログ記憶部に保存されたログのうち、更新が必要な特定ログを選択し、その特定ログを反映するよう前記ログ反映機能の動作を制御する監視機能とを、
    コンピュータに実現させる
    ことを特徴とするコンピュータ・プログラム。
JP2013199741A 2013-09-26 2013-09-26 データベース監視装置、データベース監視方法、並びにコンピュータ・プログラム Active JP6225606B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013199741A JP6225606B2 (ja) 2013-09-26 2013-09-26 データベース監視装置、データベース監視方法、並びにコンピュータ・プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013199741A JP6225606B2 (ja) 2013-09-26 2013-09-26 データベース監視装置、データベース監視方法、並びにコンピュータ・プログラム

Publications (2)

Publication Number Publication Date
JP2015064850A true JP2015064850A (ja) 2015-04-09
JP6225606B2 JP6225606B2 (ja) 2017-11-08

Family

ID=52832652

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013199741A Active JP6225606B2 (ja) 2013-09-26 2013-09-26 データベース監視装置、データベース監視方法、並びにコンピュータ・プログラム

Country Status (1)

Country Link
JP (1) JP6225606B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017049660A (ja) * 2015-08-31 2017-03-09 キヤノン株式会社 サーバ装置、制御システム、制御方法、及び、プログラム
JP2017068668A (ja) * 2015-09-30 2017-04-06 日本電気株式会社 データベースシステム、レプリケーション制御装置、レプリケーション方法、及びプログラム
JP2017156950A (ja) * 2016-03-01 2017-09-07 日本電気株式会社 情報処理装置、情報処理方法、及び、情報処理プログラム
JP2022510460A (ja) * 2019-05-05 2022-01-26 ▲騰▼▲訊▼科技(深▲セン▼)有限公司 データレプリケーション方法、装置、コンピュータ機器及びコンピュータプログラム

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005258850A (ja) * 2004-03-12 2005-09-22 Hitachi Ltd 計算機システム
JP2006277158A (ja) * 2005-03-29 2006-10-12 Nec Corp データ更新システム、サーバ及びプログラム
JP2006338064A (ja) * 2005-05-31 2006-12-14 Hitachi Ltd ディザスタリカバリ方法およびシステム
US20110295804A1 (en) * 2010-05-28 2011-12-01 Commvault Systems, Inc. Systems and methods for performing data replication
JP2012155634A (ja) * 2011-01-28 2012-08-16 Fujitsu Frontech Ltd 情報処理プログラム、情報処理装置および情報処理方法
JP2013178685A (ja) * 2012-02-29 2013-09-09 Nec Corp 非同期バックアップ機能を有するデータ処理システム、フロントシステム、バックアップ方法、及びそのためのプログラム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005258850A (ja) * 2004-03-12 2005-09-22 Hitachi Ltd 計算機システム
JP2006277158A (ja) * 2005-03-29 2006-10-12 Nec Corp データ更新システム、サーバ及びプログラム
JP2006338064A (ja) * 2005-05-31 2006-12-14 Hitachi Ltd ディザスタリカバリ方法およびシステム
US20110295804A1 (en) * 2010-05-28 2011-12-01 Commvault Systems, Inc. Systems and methods for performing data replication
JP2012155634A (ja) * 2011-01-28 2012-08-16 Fujitsu Frontech Ltd 情報処理プログラム、情報処理装置および情報処理方法
JP2013178685A (ja) * 2012-02-29 2013-09-09 Nec Corp 非同期バックアップ機能を有するデータ処理システム、フロントシステム、バックアップ方法、及びそのためのプログラム

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017049660A (ja) * 2015-08-31 2017-03-09 キヤノン株式会社 サーバ装置、制御システム、制御方法、及び、プログラム
JP2017068668A (ja) * 2015-09-30 2017-04-06 日本電気株式会社 データベースシステム、レプリケーション制御装置、レプリケーション方法、及びプログラム
JP2017156950A (ja) * 2016-03-01 2017-09-07 日本電気株式会社 情報処理装置、情報処理方法、及び、情報処理プログラム
JP2022510460A (ja) * 2019-05-05 2022-01-26 ▲騰▼▲訊▼科技(深▲セン▼)有限公司 データレプリケーション方法、装置、コンピュータ機器及びコンピュータプログラム
JP7271670B2 (ja) 2019-05-05 2023-05-11 ▲騰▼▲訊▼科技(深▲セン▼)有限公司 データレプリケーション方法、装置、コンピュータ機器及びコンピュータプログラム
US11921746B2 (en) 2019-05-05 2024-03-05 Tencent Technology (Shenzhen) Company Limited Data replication method and apparatus, computer device, and storage medium

Also Published As

Publication number Publication date
JP6225606B2 (ja) 2017-11-08

Similar Documents

Publication Publication Date Title
CN111095219B (zh) 使用回收站和版本历史的文件系统时间点还原
US9501487B1 (en) Change tree incremental backup
US20150201036A1 (en) Gateway device, file server system, and file distribution method
US20160212206A1 (en) Deterministic database system and data transferring method thereof
JP5952960B2 (ja) 計算機システム、計算機システム管理方法及びプログラム
US10489378B2 (en) Detection and resolution of conflicts in data synchronization
JP5686034B2 (ja) クラスタシステム、同期制御方法、サーバ装置および同期制御プログラム
CN109194711B (zh) 一种组织架构的同步方法、客户端、服务端及介质
JP2009116773A (ja) バックアップ実行可否判定システム
US20190384674A1 (en) Data processing apparatus and method
JP6225606B2 (ja) データベース監視装置、データベース監視方法、並びにコンピュータ・プログラム
KR101915423B1 (ko) 공유 콘텐츠 항목의 저장소 제약된 동기화
EP2674868A1 (en) Database update notification method
US10133757B2 (en) Method for managing data using in-memory database and apparatus thereof
JP6196389B2 (ja) 分散型ディザスタリカバリファイル同期サーバシステム
JP2022020650A (ja) ストレージ制約付きの同期エンジン
US10165040B2 (en) Small disk support for large cloud-based storage systems
CN105095495A (zh) 一种分布式文件系统缓存管理方法和系统
JP2021529379A (ja) 検索サーバの集中型ストレージ
US9286055B1 (en) System, method, and computer program for aggregating fragments of data objects from a plurality of devices
EP3377970B1 (en) Multi-version removal manager
EP3239861A1 (en) Storage constrained synchronization engine
JP6287308B2 (ja) レプリケーション制御システム、レプリケーション制御方法、及び、レプリケーション制御プログラム
JP2017167654A (ja) データ管理装置及びデータベースの管理方法
JP6044363B2 (ja) コンピュータ、nasアクセス方法およびnasアクセスプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160816

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170614

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170627

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170825

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170925

R150 Certificate of patent or registration of utility model

Ref document number: 6225606

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150