JP6229689B2 - Server and information processing system - Google Patents

Server and information processing system Download PDF

Info

Publication number
JP6229689B2
JP6229689B2 JP2015070514A JP2015070514A JP6229689B2 JP 6229689 B2 JP6229689 B2 JP 6229689B2 JP 2015070514 A JP2015070514 A JP 2015070514A JP 2015070514 A JP2015070514 A JP 2015070514A JP 6229689 B2 JP6229689 B2 JP 6229689B2
Authority
JP
Japan
Prior art keywords
data
server
client
deletion
expiration date
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
JP2015070514A
Other languages
Japanese (ja)
Other versions
JP2016192001A (en
Inventor
柘植 数夫
数夫 柘植
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 JP2015070514A priority Critical patent/JP6229689B2/en
Publication of JP2016192001A publication Critical patent/JP2016192001A/en
Application granted granted Critical
Publication of JP6229689B2 publication Critical patent/JP6229689B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

サーバ及び情報処理システムにおいて、データ同期時の通信量を低減可能なサーバ及び情報処理システム。 A server and an information processing system that can reduce the amount of communication during data synchronization in the server and the information processing system.

クライアントーサーバ間のデータ同期方法として、同期を行うたびに全てのデータを同期する方法や、前回同期以降の差分ログ(ジャーナル等のデータ変更ログ)を取得する方法がある。しかし、これらの方式では、データ同期の時の通信量(データ量)が多く、クライアント側のレスポンスが低下する課題があった。 As a data synchronization method between the client and the server, there are a method of synchronizing all data every time synchronization is performed, and a method of acquiring a differential log (data change log such as journal) after the previous synchronization. However, in these methods, there is a problem that the communication amount (data amount) at the time of data synchronization is large and the response on the client side is lowered.

この課題に対し、前回同期以降のDB差分データ(以降差分データと称す)のみをクライアントが取得することで、通信量を削減する手段が考えられる。具体的には、前述の差分ログは、一般的に、ログ出力時刻と、差分データと、付加情報(ログコメント等)と、で構成される。これらの構成要素の内、付加情報の部分のデータ量が一般的に多いため、差分データのみで同期することができれば、通信量の削減が見込める。   In order to solve this problem, there can be considered a means for reducing the amount of communication by the client acquiring only the DB difference data (hereinafter referred to as difference data) after the previous synchronization. Specifically, the above-described difference log is generally configured by log output time, difference data, and additional information (log comment or the like). Of these components, the amount of additional information is generally large, so if synchronization can be achieved using only difference data, a reduction in the amount of communication can be expected.

サーバからクライアントへのデータ変更の通知方法に関する関連技術として、特許文献1に以下の装置及び方法が開示されている。特許文献1に記載の装置及び方法では、サーバ内に複数のデータ値を格納し、キャッシュ内にこれらの複数のデータ値のサブセットを格納し、サーバ内で更新されたデータ値を識別する情報を有した無効化リポートを、サーバプロセッサがクライアントプロセッサに周期的にブロードキャストする。   As a related technique related to a data change notification method from a server to a client, Patent Document 1 discloses the following apparatus and method. In the apparatus and method described in Patent Document 1, a plurality of data values are stored in a server, a subset of the plurality of data values is stored in a cache, and information for identifying an updated data value in the server is stored. The server processor periodically broadcasts the invalidation report it has to the client processor.

特開平7−248968号公報JP-A-7-248968

しかし、前回同期以降の差分データのみをクライアントが取得する同期方式では、差分ログを取得する方式と比較して付加情報をクライアントが取得しないため、以下の問題が生じる。付加情報はデータの削除情報を含むため、差分データのみを取得する方式では、差分データに含まれないデータに関して、サーバ側でデータ同期の参照元のデータ(以降マスタデータと称する)が削除されたのか、または更新がなかったのかをクライアント側で判断できない。   However, in the synchronous method in which the client acquires only differential data after the previous synchronization, the client does not acquire additional information as compared with the method in which the differential log is acquired. Since the additional information includes data deletion information, in the method of acquiring only difference data, the data synchronization reference source data (hereinafter referred to as master data) is deleted on the server side with respect to data not included in the difference data. Or the client cannot determine if there was no update.

本発明は、差分データのみをクライアントが取得する同期方式の場合にも、サーバ側のマスタデータが削除されたか否かをクライアント側に通知することを一つの目的とする。   An object of the present invention is to notify the client side whether or not the master data on the server side has been deleted even in the case of a synchronous method in which only the difference data is acquired by the client.

本発明のサーバは、クライアントとの間でデータを同期し、同期のために用いられ、第1及び第2の領域を有する更新情報を出力する出力手段を備え、データの削除の場合には、第2の領域は、データ情報及び削除通知情報を含み、データの追加、又は変更の場合には、第2の領域は、データ情報を含むことを特徴とする。   The server according to the present invention includes an output unit that synchronizes data with a client and outputs update information that is used for synchronization and has first and second areas. In the case of data deletion, The second area includes data information and deletion notification information. When data is added or changed, the second area includes data information.

本発明の情報処理システムは、サーバと、クライアントとの間でデータを同期し、同期のために用いられ、第1及び第2の領域を有する更新情報を出力する出力手段をサーバに備え、データの削除の場合には、更新情報は、データ情報及び削除通知情報が第2の領域に記載されデータの追加または変更の場合には、更新情報は、データ情報が第2の領域に記載されていることを特徴とする。   An information processing system according to the present invention includes an output unit that synchronizes data between a server and a client and outputs update information that is used for synchronization and includes first and second areas. In the case of deletion, update information has data information and deletion notification information written in the second area, and in the case of addition or change of data, update information has data information written in the second area. It is characterized by being.

本発明のデータ同期方法は、クライアントとの間でデータを同期し、同期のために用いられ、第1及び第2の領域を有する更新情報を出力し、データの削除の場合には、更新情報は、データ情報及び削除通知情報が第2の領域に記載され、データの追加、変更の場合には、更新情報は、データ情報が第2の領域に記載される。   The data synchronization method of the present invention synchronizes data with a client, outputs update information having first and second areas used for synchronization, and updates data in the case of data deletion. The data information and the deletion notification information are described in the second area, and in the case of addition or change of data, the update information includes the data information in the second area.

クライアントとサーバ間のデータ同期時の通信量を削減し、同期時間を短縮することでクライアント側のレスポンスを向上できる。また、通信量を削減しても、サーバ側でマスタデータが削除された旨クライアント側に通知できるため、適切にデータ同期を行うことができる。 By reducing the amount of communication during data synchronization between the client and server, and shortening the synchronization time, the response on the client side can be improved. Even if the amount of communication is reduced, the client side can be notified that the master data has been deleted on the server side, so that data synchronization can be performed appropriately.

本発明の第一の実施形態における情報処理システムの処理構成例を示す図である。It is a figure which shows the process structural example of the information processing system in 1st embodiment of this invention. 本発明の第一の実施形態における情報処理システムの物理構成例を示す図である。It is a figure which shows the physical structural example of the information processing system in 1st embodiment of this invention. 本発明の第一の実施形態における情報処理システムにおいて、サーバ側のデータが削除された場合の動作(図3a)と、データが追加・変更された場合の動作(図3b)を示すフローチャートである。4 is a flowchart showing an operation when data on the server side is deleted (FIG. 3a) and an operation when data is added / changed (FIG. 3b) in the information processing system according to the first embodiment of the present invention. . 本発明の第一の実施形態におけるサーバの処理構成例を示す図である。It is a figure which shows the process structural example of the server in 1st embodiment of this invention. 本発明の第二の実施形態における情報処理システムの処理構成例を示す図である。It is a figure which shows the process structural example of the information processing system in 2nd embodiment of this invention. 本発明の第二の実施形態におけるサーバのDB上のデータの構成例を示す図である。It is a figure which shows the structural example of the data on DB of the server in 2nd embodiment of this invention. 本発明の第二の実施形態におけるクライアントのローカルDB上のデータの構成例を示す図である。It is a figure which shows the structural example of the data on local DB of the client in 2nd embodiment of this invention. 本発明の第二の実施形態における情報処理システムの動作を示すタイミングチャートである。It is a timing chart which shows operation | movement of the information processing system in 2nd embodiment of this invention. 本発明の第二の実施形態における情報処理システムの動作を示すタイミングチャートである。It is a timing chart which shows operation | movement of the information processing system in 2nd embodiment of this invention. 本発明の第二の実施形態における情報処理システムの動作を示すフローチャートである。It is a flowchart which shows operation | movement of the information processing system in 2nd embodiment of this invention. 本発明の他の実施形態におけるサーバのDB上のデータの構成例を示す図である。It is a figure which shows the structural example of the data on DB of the server in other embodiment of this invention.

[第一の実施形態]以下、本発明の実施形態について図面を参照して詳細に説明する。
[構成の説明]図1を参照すると、第一の実施形態における情報処理システム100は、サーバ10と、クライアント20と、を備える。
[First Embodiment] Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings.
[Description of Configuration] Referring to FIG. 1, an information processing system 100 according to the first embodiment includes a server 10 and a client 20.

図2を参照すると、サーバ10及びクライアント20は、例えば以下のような構成で実現可能である。サーバ10及びクライアント20を構成するハードウェアは、CPU(Central Processing Unit)1、メモリ2、ハードディスクドライブ(HDD)3、入出力インターフェース(I/F)4、通信装置5を備える。サーバ10及びクライアント20の機能は、例えばCPU1が、メモリ2に読み出されたコンピュータプログラム(ソフトウェアプログラム、以下単に「プログラム」と記載する)を実行することにより実現される。実行に際して、CPU1は、入出力I/F4、通信装置5を適宜制御する。   Referring to FIG. 2, the server 10 and the client 20 can be realized with the following configuration, for example. The hardware that constitutes the server 10 and the client 20 includes a CPU (Central Processing Unit) 1, a memory 2, a hard disk drive (HDD) 3, an input / output interface (I / F) 4, and a communication device 5. The functions of the server 10 and the client 20 are realized by, for example, the CPU 1 executing a computer program (software program, hereinafter simply referred to as “program”) read into the memory 2. In execution, the CPU 1 appropriately controls the input / output I / F 4 and the communication device 5.

なお、本実施形態および後述する各実施形態を例として説明される本発明は、係るプログラムが格納されたコンパクトディスク等の不揮発性の記憶媒体によって構成されてもよい。記憶媒体が格納するプログラムは、例えば図示しないドライブ装置により読み出される。   Note that the present invention, which will be described using the present embodiment and each embodiment described later as an example, may be configured by a non-volatile storage medium such as a compact disk in which the program is stored. The program stored in the storage medium is read by a drive device (not shown), for example.

サーバ10及びクライアント20が実行する通信は、例えばOS(Operating System)が提供する機能を使ってアプリケーションプログラムが通信装置5を制御することによって実現される。サーバ10及びクライアント20は、2つ以上の物理的に分離した装置が有線または無線で接続されることによって構成されていてもよい。   The communication executed by the server 10 and the client 20 is realized by the application program controlling the communication device 5 using a function provided by an OS (Operating System), for example. The server 10 and the client 20 may be configured by connecting two or more physically separated devices in a wired or wireless manner.

図2に示すハードウェア構成例は、後述する各実施形態にも適用可能である。なお、サーバ10及びクライアント20は専用の装置であってもよい。なお、サーバ10及びクライアント20およびその各機能ブロックのハードウェア構成は、上述の構成に限定されない。   The hardware configuration example shown in FIG. 2 is also applicable to each embodiment described later. The server 10 and the client 20 may be dedicated devices. Note that the hardware configurations of the server 10 and the client 20 and their functional blocks are not limited to those described above.

再び図1を参照すると、サーバ10は、クライアント20と通信可能に接続し、クライアント20との間でデータを同期する。サーバ10は、クライアント20との同期のために用いられる、第1及び第2の領域を有する更新情報を出力する出力部10aを備える。   Referring to FIG. 1 again, the server 10 is communicably connected to the client 20 and synchronizes data with the client 20. The server 10 includes an output unit 10 a that outputs update information having first and second areas used for synchronization with the client 20.

出力部10aが出力する更新情報において、第1の領域には、例えば、同期処理毎に付加される、認証情報が記載されている。認証情報は、例えば同期時に使用するアプリケーションの認証情報や同期セッションのトークンである。更新内容にデータ削除を含む場合、出力部10aが出力する更新情報において、第2の領域には、データ情報及び削除通知情報が記載されている。データ情報は、例えばサーバ10側のデータの内、クライアント20との同期対象のデータについて、前回の同期以降に生じた更新を示す情報である。更新を示す情報は、例えば、データを特定する情報(ID)、更新されたフィールドのフィールド名と更新後のフィールドの値である。フィールド名の例としては、主に、クライアント20及びサーバ10にアクセスするユーザによって更新されるものとして、商品名、個数、各データのアクセス権限などが挙げられる。また、主にサーバ10及びクライアント20によって自動的に更新されるものとして、データの更新日時、データの作成日時などが挙げられる。削除通知情報は、このデータがサーバ10で削除される旨、またはクライアント20で保持されている対応するデータを削除する旨を示す情報を含んでいる。また、更新情報は、更新内容がデータの追加または変更のみの場合には、データ情報が第2の領域に記載されている。   In the update information output by the output unit 10a, for example, authentication information added for each synchronization process is described in the first area. The authentication information is, for example, application authentication information used during synchronization or a synchronization session token. When the update content includes data deletion, in the update information output by the output unit 10a, data information and deletion notification information are described in the second area. The data information is information indicating, for example, updates that have occurred since the previous synchronization of the data to be synchronized with the client 20 among the data on the server 10 side. The information indicating update is, for example, information (ID) for specifying data, the field name of the updated field, and the value of the updated field. Examples of field names mainly include product names, number, access authority for each data, and the like as updated by users accessing the client 20 and the server 10. Further, as data that is automatically updated mainly by the server 10 and the client 20, there are data update date and time, data creation date and time, and the like. The deletion notification information includes information indicating that this data is deleted by the server 10 or that corresponding data held by the client 20 is deleted. Further, in the update information, when the update content is only addition or change of data, the data information is described in the second area.

クライアント20は、サーバ10と通信可能に接続されている。クライアント20は、前述の出力部10aが出力した更新情報を受信し、この更新情報に基づいてデータの同期を行う。   The client 20 is communicably connected to the server 10. The client 20 receives the update information output from the output unit 10a and performs data synchronization based on the update information.

[動作の説明]図3aを参照すると、情報処理システム100は、STEP31aで、サーバ10のデータの内、クライアント20と同期する対象のデータが削除された場合(サーバ側データ削除)、STEP32aで、出力部10aは、データ情報及び削除通知情報が第二の領域に記載された更新情報を生成し、出力する(更新情報出力)。   [Description of Operation] Referring to FIG. 3a, the information processing system 100, in STEP 31a, when the data to be synchronized with the client 20 is deleted from the data in the server 10 (server-side data deletion), in STEP 32a, The output unit 10a generates and outputs update information in which the data information and the deletion notification information are described in the second area (update information output).

図3bを参照すると、情報処理システム100は、STEP31bでサーバ10のデータの内、クライアント20と同期する対象のデータが更新、または追加された場合(サーバ側データ変更・追加)、STEP32bで、出力部10aは、データ情報が第2の領域に記載された更新情報を生成し、出力する(更新情報出力)。   Referring to FIG. 3b, the information processing system 100 outputs the data in STEP 32b when the data to be synchronized with the client 20 is updated or added (data change / addition on the server side) in STEP 31b. The unit 10a generates and outputs update information in which data information is described in the second area (update information output).

[効果の説明]本実施形態における情報処理システム100は、削除通知情報を、データ情報と同じ第二の領域に記載した更新情報を生成し、出力する。この更新情報を基に、クライアント20がデータ同期を行う。このため、差分ログを用いたデータ同期と比較して、データが大きい付加情報を、サーバ10とクライアント20との間で通信することなく、データ同期できる。   [Description of Effects] The information processing system 100 according to the present embodiment generates and outputs update information in which deletion notification information is described in the same second area as data information. Based on this update information, the client 20 performs data synchronization. For this reason, compared with data synchronization using a difference log, additional information with large data can be synchronized without communication between the server 10 and the client 20.

[第二の実施形態]図5を参照して、情報処理システム110の実施形態を説明する。
[構成の説明]情報処理システム110は、サーバ11とクライアント21とを備える。以下では、1台のサーバ11と1台のクライアント21とで構成されるシステムとして説明しているが、サーバ11と複数のクライアント21とが接続された構成としてもよい。
[Second Embodiment] An embodiment of the information processing system 110 will be described with reference to FIG.
[Description of Configuration] The information processing system 110 includes a server 11 and a client 21. In the following description, the system is constituted by one server 11 and one client 21. However, the server 11 and a plurality of clients 21 may be connected.

サーバ11は、送受信部11a、データベース(DB)11b、データ監視部11c、及びデータ制御部11dを備える。送受信部11aは、クライアント21の送受信部21aと通信可能に接続されている。また送受信部11aは、データ制御部11dと接続されており、データ制御部11dから受信した差分データをクライアント21の送受信部21aへ送信する。また、送受信部11aはクライアント21の送受信部21aからサーバ11への同期要求を受信する。DB11bは、データ制御部11dによってデータの変更・削除が行われる。   The server 11 includes a transmission / reception unit 11a, a database (DB) 11b, a data monitoring unit 11c, and a data control unit 11d. The transmission / reception unit 11a is communicably connected to the transmission / reception unit 21a of the client 21. The transmission / reception unit 11a is connected to the data control unit 11d and transmits the difference data received from the data control unit 11d to the transmission / reception unit 21a of the client 21. In addition, the transmission / reception unit 11 a receives a synchronization request from the transmission / reception unit 21 a of the client 21 to the server 11. In the DB 11b, data is changed / deleted by the data control unit 11d.

データ監視部11cは、データ制御部11dを介してDB11b上のデータの削除予定日を監視し、削除予定日を過ぎたデータをデータ制御部11dに削除させる。データ制御部11dは、DB11b上のデータを読み込んで、データの更新を、後述するキャッシュ有効期間及び削除フラグを含め差分データとし、送受信部11aに出力する。また、データ制御部11dは、サーバ11のDB11b上のデータを変更・削除する。   The data monitoring unit 11c monitors the scheduled deletion date of data on the DB 11b via the data control unit 11d, and causes the data control unit 11d to delete data that has passed the scheduled deletion date. The data control unit 11d reads the data on the DB 11b, outputs the data update to the transmission / reception unit 11a as difference data including a cache validity period and a deletion flag, which will be described later. Further, the data control unit 11d changes / deletes data on the DB 11b of the server 11.

図6を参照すると、DB11b上の各データには、ID、データ、データの作成日時、更新日時などの通常のフィールドに加え、キャッシュ有効期間30、削除予定日40、削除フラグ50のフィールドが設けられている。キャッシュ有効期間30は、データ毎にそのデータがクライアント21側で有効である期間を定めたものである。このキャッシュ有効期間クライアント21側で保持されたデータは、後述するように、データ同期に伴って、例えば設定時の現在時刻にキャッシュ有効期間30を足し合わせたキャッシュ有効期限32が設定される。この期限内で、クライアント21側でデータが使用される。データごとにキャッシュ有効期間30を別途設定してもいいし、すべてのデータで同じ期間を設定してもよい。また、後述する削除フラグ50が設定されたタイミングで、このフィールドの値はクリアされる。削除フラグ50は、データが通常のデータか、仮削除データかを示す。本実施形態では、削除フラグ50の値がfalseの時は通常のデータであり、値がtrueの時は仮削除データであるとする。この削除フラグ50は、クライアント21へ送信する差分データに含められる。クライアント21は、差分データに含まれる削除フラグ50から削除対象データの有無を判断する。削除予定日40は、前述の削除フラグがtrueになったタイミングの現在時刻とキャッシュ有効期限32とを足し合わせた値が設定される。   Referring to FIG. 6, each data on the DB 11 b is provided with fields of a cache valid period 30, a scheduled deletion date 40, and a deletion flag 50 in addition to normal fields such as ID, data, data creation date / time, and update date / time. It has been. The cache valid period 30 defines a period in which the data is valid on the client 21 side for each data. As will be described later, for example, a cache validity period 32 obtained by adding the cache validity period 30 to the current time at the time of setting is set for the data held on the cache validity period client 21 side, as will be described later. Data is used on the client 21 side within this time limit. The cache valid period 30 may be set separately for each data, or the same period may be set for all data. Further, the value of this field is cleared at the timing when a deletion flag 50 described later is set. The deletion flag 50 indicates whether the data is normal data or temporary deletion data. In the present embodiment, it is assumed that when the value of the deletion flag 50 is false, it is normal data, and when the value is true, it is temporary deletion data. The deletion flag 50 is included in the difference data transmitted to the client 21. The client 21 determines whether or not there is data to be deleted from the deletion flag 50 included in the difference data. The scheduled deletion date 40 is set to a value obtained by adding the current time of the timing when the above-described deletion flag becomes true and the cache expiration date 32.

クライアント21は、送受信部21a、ローカルDB21b、データ制御部21c、及びデータ監視部21dを備える。送受信部21aは、サーバ11の送受信部11aと通信可能に接続され、サーバ11が備えるDB11b上のデータの更新について、その差分データをサーバ11の送受信部11aから受信する。また、送受信部21aは、クライアント21からサーバ11への同期要求を、サーバ11の送受信部11aに送信する。   The client 21 includes a transmission / reception unit 21a, a local DB 21b, a data control unit 21c, and a data monitoring unit 21d. The transmission / reception unit 21a is communicably connected to the transmission / reception unit 11a of the server 11, and receives the difference data from the transmission / reception unit 11a of the server 11 for the update of data on the DB 11b included in the server 11. In addition, the transmission / reception unit 21 a transmits a synchronization request from the client 21 to the server 11 to the transmission / reception unit 11 a of the server 11.

ローカルDB21bは、データ制御部21dによってデータの変更・削除が行われる。データ制御部21dは、送受信部21aが受信した差分データをローカルDB21bに反映させ、またデータ監視部21cからの命令によって、ローカルDB21b上のデータを削除する。データ監視部21cは、データ制御部21dを介してローカルDB21b上のデータのキャッシュ有効期限32を監視し、キャッシュ有効期限32が切れたデータをデータ制御部21dに削除させる。また、データ制御部21dは、データ監視部21cからの命令によってローカルDB21b上のデータを読み込み、キャッシュ有効期限32が切れたデータの有無を確認する。   In the local DB 21b, data is changed / deleted by the data control unit 21d. The data control unit 21d reflects the difference data received by the transmission / reception unit 21a in the local DB 21b, and deletes the data on the local DB 21b by an instruction from the data monitoring unit 21c. The data monitoring unit 21c monitors the cache expiration date 32 of data on the local DB 21b via the data control unit 21d, and causes the data control unit 21d to delete data whose cache expiration date 32 has expired. Further, the data control unit 21d reads data on the local DB 21b according to an instruction from the data monitoring unit 21c, and confirms whether there is data whose cache expiration date 32 has expired.

図7を参照すると、ローカルDB21b上の各データには、ID、データ、日時などの一般的なフィールドに加え、キャッシュ有効期間31とキャッシュ有効期限32のフィールドが設けられている。サーバ11とクライアント21との間でデータ同期が行われると、サーバ11のDB11b上の各データに設定されているキャッシュ有効期間30の設定値に従って、差分データによる更新があったクライアント21のローカルDB21b上のデータには、キャッシュ有効期限32(現在時刻にキャッシュ有効期間31を足し合わせたもの)が設定される。前述の削除予定日40と、このキャッシュ有効期限32との関係の具体例を以下に示す。例えば、サーバ11のDB11b上のデータが、ローカルDB21b上のデータにキャッシュ有効期限32が設定された時刻と同時刻に仮削除データに設定されると、サーバ11側とクライアント21側とで同時期にデータが削除され得る状態になる。別の例では、サーバ11のDB11b上のデータが、クライアント21側のデータのキャッシュ有効期限32が到来する時刻に仮削除データに設定された場合、サーバ11のDB11b上のデータが削除されうる状態になる時刻が、クライアント21側のデータと比べてキャッシュ有効期間30分後に到来する。   Referring to FIG. 7, each data on the local DB 21b is provided with fields of a cache valid period 31 and a cache valid period 32 in addition to general fields such as ID, data, date and time. When data synchronization is performed between the server 11 and the client 21, the local DB 21 b of the client 21 that has been updated with the difference data according to the set value of the cache validity period 30 set for each data on the DB 11 b of the server 11. In the upper data, a cache validity period 32 (the current time plus the cache validity period 31) is set. A specific example of the relationship between the scheduled deletion date 40 and the cache expiration date 32 is shown below. For example, if the data on the DB 11b of the server 11 is set as temporary deletion data at the same time as the time when the cache expiration date 32 is set on the data on the local DB 21b, the server 11 side and the client 21 side simultaneously The data can be deleted. In another example, when the data on the DB 11b of the server 11 is set as temporary deletion data at the time when the cache expiration date 32 of the data on the client 21 side arrives, the data on the DB 11b of the server 11 can be deleted. The time when the cache becomes valid comes 30 minutes later than the data on the client 21 side.

[動作の説明]図8〜図10を参照して、情報処理システム110の動作を説明する。第二の実施形態における情報処理システム110では、上述したクライアント21側のデータのキャッシュ有効期限32と、サーバ11側のデータの削除予定日とを連携させることで、サーバ11側の仮削除データが、クライアント21側の対応するデータが削除された後に削除される。   [Description of Operation] The operation of the information processing system 110 will be described with reference to FIGS. In the information processing system 110 according to the second embodiment, the temporary deletion data on the server 11 side is obtained by linking the above-described data cache expiration date 32 on the client 21 side with the scheduled data deletion date on the server 11 side. The data is deleted after the corresponding data on the client 21 side is deleted.

以下、サーバ11のDB11b上の仮削除データが削除されるまでに、サーバ11のDB11b上のデータとクライアント21のローカルDB21b上のデータとが同期できる場合と、削除予定日を過ぎてDB11b上のデータが削除されるまで同期できなかった場合とについて、情報処理システム110の動作を説明する。なお、同期できる場合の動作の説明において、サーバ11のDB11b上のデータの削除依頼をサーバ11に対して行う、クライアント22を含めて説明する。   Hereinafter, before the temporary deletion data on the DB 11b of the server 11 is deleted, the data on the DB 11b of the server 11 and the data on the local DB 21b of the client 21 can be synchronized, and on the DB 11b after the scheduled deletion date. The operation of the information processing system 110 will be described with respect to a case where synchronization cannot be performed until data is deleted. In the description of the operation when synchronization is possible, a description will be given including the client 22 that makes a request to delete data on the DB 11 b of the server 11 to the server 11.

図8を参照すると、仮削除データが削除されるまでに、サーバ11のDB11b上のデータとクライアント21のローカルDB21b上のデータとが同期できる場合、まず、クライアント22から、サーバ11のDB11b上のデータに対する削除要求を含む、同期要求をサーバ11が受け取る(STEP1:同期要求)。ここでは、削除要求の対象のデータは、そのIDが3333のデータであるとする。次に、サーバ11は、IDが3333のデータを仮削除データに設定する(STEP2:データ(ID:3333)を仮削除)。具体的には、IDが3333のデータの削除フラグをサーバ11がtrueに設定する。サーバ11は、仮削除データの設定を終えると、削除が成功した旨、削除要求元のクライアント22に通知する(STEP3:削除成功を通知)。   Referring to FIG. 8, when the data on the DB 11 b of the server 11 and the data on the local DB 21 b of the client 21 can be synchronized before the temporarily deleted data is deleted, first, the client 22 first sends the data on the DB 11 b of the server 11. The server 11 receives a synchronization request including a deletion request for data (STEP 1: synchronization request). Here, it is assumed that the data targeted for the deletion request is data whose ID is 3333. Next, the server 11 sets the data with ID 3333 as temporary deletion data (STEP 2: temporary deletion of data (ID: 3333)). Specifically, the server 11 sets a deletion flag for data with ID 3333 to true. When the setting of the provisional deletion data is completed, the server 11 notifies the deletion request source client 22 that the deletion is successful (STEP 3: notification of successful deletion).

次に、クライアント21が、仮削除データにアクセスした場合を考える。クライアント21がサーバ11に、IDが3333のデータを含むデータに対するデータ同期を要求すると(STEP4:同期要求)、サーバ11は、前回クライアント21と同期した後に生じた更新について、差分データをクライアント21に送信する(STEP5:前回同期からの差分データを送信)。クライアント21は、サーバ11から取得した差分データに仮削除データ(削除フラグがtrue)が含まれる場合、削除フラグが記載された、IDが3333のデータが削除対象データであると判断して、クライアント21のローカルDB21bから該当データを削除する(STEP6:仮削除データを削除)。
さらに、取得した差分データの仮削除データ(IDが3333のデータ)以外の各データに対して、クライアント21はキャッシュ有効期限32のフィールドを現在時刻とキャッシュ有効期間31とを合算した値に設定してローカルDB21bに保存する。このように、キャッシュ有効期限32内にデータ同期したクライアント21は、即時に削除対象のデータをローカルDB21bから削除できる。
Next, consider a case where the client 21 accesses temporary deletion data. When the client 21 requests the server 11 to synchronize the data including the data with ID 3333 (STEP 4: synchronization request), the server 11 sends the difference data to the client 21 for the update that occurred after the previous synchronization with the client 21. Transmit (STEP5: Transmit differential data from previous synchronization). When the difference data acquired from the server 11 includes temporary deletion data (deletion flag is true), the client 21 determines that the data with the deletion flag and the ID 3333 is the deletion target data. The corresponding data is deleted from the local DB 21b of 21 (STEP6: temporary deletion data is deleted).
Further, for each data other than the temporary deletion data (data with ID 3333) of the acquired difference data, the client 21 sets the field of the cache expiration date 32 to a value obtained by adding the current time and the cache expiration date 31. To the local DB 21b. As described above, the client 21 that has synchronized the data within the cache expiration date 32 can immediately delete the data to be deleted from the local DB 21b.

次に、仮削除データのキャッシュ有効期限32が過ぎた場合を説明する。図9を参照すると、サーバ11はDB11b上の仮削除データの削除予定日40のフィールドを定期的にチェックし、削除予定日40を超過している仮削除データを削除する(STEP91:削除予定日を過ぎたデータを削除)。サーバ11のDB11b上のデータを削除する動作については、後述する。   Next, a case where the temporary expiration data cache expiration date 32 has passed will be described. Referring to FIG. 9, the server 11 periodically checks the field of the scheduled deletion date 40 of the temporary deletion data on the DB 11b, and deletes the temporary deletion data that exceeds the scheduled deletion date 40 (STEP 91: scheduled deletion date). Delete data past. The operation of deleting data on the DB 11b of the server 11 will be described later.

クライアント21は、定期的にローカルDB21b上の各データのキャッシュ有効期限32をチェックし、キャッシュ有効期限32を超過したデータを削除する(STEP92:キャッシュ有効期限を過ぎたデータを削除)。これらSTEP91及び92の動作により、未同期状態だったクライアント21で削除対象のデータが残っていた場合は、キャッシュ有効期限32が過ぎたタイミング(サーバ11側で仮削除データ本体が削除されるのと同じタイミング)で、ローカルDB21bから削除される。このため、本発明の情報処理システム110において、キャッシュ有効期間31を過ぎたデータはクライアント21側に存在しないことになり、クライアント21がサーバ11から取得する差分データに仮削除データが含まれなくても両者のデータの間に不整合は生じない(STEP93:同期要求及びSTEP94:前回同期からの差分データを送信)。   The client 21 periodically checks the cache expiration date 32 of each data on the local DB 21b, and deletes data that has exceeded the cache expiration date 32 (STEP 92: deletes data that has passed the cache expiration date). As a result of these operations of STEPs 91 and 92, if there is data to be deleted remaining in the client 21 that has not been synchronized, the timing at which the cache expiration date 32 has passed (the provisionally deleted data body is deleted on the server 11 side). At the same timing), it is deleted from the local DB 21b. For this reason, in the information processing system 110 of the present invention, data that has passed the cache validity period 31 does not exist on the client 21 side, and the temporary deletion data is not included in the difference data that the client 21 acquires from the server 11. Inconsistency does not occur between the two data (STEP 93: synchronization request and STEP 94: transmission of difference data from the previous synchronization).

サーバ11のDB11b上のデータを削除する場合は、図10を参照すると、まず、サーバ11は、クライアント21からのアクセス要求を待機する(STEP101:アクセス要求待機)。クライアント21から受けた要求に、所定のデータの削除要求が含まれていた場合(STEP102:削除要求があるか)、サーバ11は、要求があったデータの削除は行わず、このデータを一旦仮削除データに設定する(STEP103:仮削除データ設定)。具体的には、図6を参照すると、サーバ11は、データの削除フラグをtrueとし削除予定日40(現在時刻にキャッシュ有効期間30を足し合わせたもの)を新規に設定する。また、削除フラグ50及び削除予定日40以外のフィールドはクリアする。   When deleting data on the DB 11b of the server 11, referring to FIG. 10, first, the server 11 waits for an access request from the client 21 (STEP 101: wait for access request). If the request received from the client 21 includes a request to delete predetermined data (STEP 102: is there a delete request), the server 11 does not delete the requested data and temporarily stores this data. The deletion data is set (STEP 103: temporary deletion data setting). Specifically, referring to FIG. 6, the server 11 sets a data deletion flag as true and newly sets a scheduled deletion date 40 (the current time plus the cache validity period 30). Also, fields other than the deletion flag 50 and the scheduled deletion date 40 are cleared.

データが仮削除データに設定された後、サーバ11は、この仮削除データの削除予定日40が到来するまでこのデータの削除を待機する(STEP104:該当データの削除予定日の超過待ち)。仮削除データの削除予定日40が過ぎたことを検知すると(STEP105:削除予定日を超過したか)、サーバ11は、仮削除データをDB11bから削除する(STEP106:仮削除データ削除)。   After the data is set as the temporary deletion data, the server 11 waits for the deletion of this data until the scheduled deletion date 40 of the temporary deletion data arrives (STEP 104: waiting for excess of the scheduled deletion date of the corresponding data). When it is detected that the scheduled deletion date 40 of the temporary deletion data has passed (STEP 105: has the scheduled deletion date been exceeded), the server 11 deletes the temporary deletion data from the DB 11b (STEP 106: temporary deletion data deletion).

[効果の説明]差分ログの授受でデータ同期する場合に付加情報で賄っていたサーバ11側のデータ削除の通知は、本発明の情報処理システム110において、差分データにデータ削除の旨記載することで、データ同期時の通信量を削減する。また、サーバ11の仮削除データは削除予定日40を過ぎた後に削除されるため、仮削除データの増大によるリソースの圧迫が低減でき、かつ仮削除データが削除されるようにしても、先述のようにデータ同期においても問題が生じない。   [Explanation of Effect] In the information processing system 110 according to the present invention, the data deletion notification on the server 11 side, which is covered by additional information when data synchronization is performed by sending and receiving the difference log, describes the data deletion in the difference data. Therefore, the amount of communication during data synchronization is reduced. Further, since the temporary deletion data of the server 11 is deleted after the scheduled deletion date 40, the resource pressure due to the increase of the temporary deletion data can be reduced, and the temporary deletion data can be deleted even if the temporary deletion data is deleted. Thus, no problem occurs in data synchronization.

[他の実施形態]第二の実施形態における情報処理システム110において、仮削除データの削除を、削除予定日40の設定によって行うのではなく、サーバ11のDB11bにアクセスするすべてのクライアントの更新を終えてから行うようにしてもよい。例えば、図11を参照すると、サーバ11のDB11b上のデータにリソースカウントのフィールドを設け、初期値をDB11bにアクセスできる総クライアント数に設定する。各クライアントが仮削除データへのアクセスした場合に、クライアントのIDやMACアドレス等を確認し、重複が無いようにリソースカウントを減らし、値が0になった場合に仮削除データを削除する方法を取ることができる。   [Other Embodiments] In the information processing system 110 in the second embodiment, the temporary deletion data is not deleted by setting the scheduled deletion date 40, but all clients accessing the DB 11b of the server 11 are updated. You may make it carry out after finishing. For example, referring to FIG. 11, a resource count field is provided in the data on the DB 11b of the server 11, and the initial value is set to the total number of clients that can access the DB 11b. When each client accesses temporary deletion data, check the client ID, MAC address, etc., reduce the resource count so that there is no duplication, and delete the temporary deletion data when the value reaches 0 Can be taken.

また、仮削除データの削除を、アクセスするクライアント21すべての削除依頼を受けた後行ってもよい。例えば、上述したリソースカウントのフィールドを設ける例のように、削除依頼をサーバ11に送信したクライアントを重複なくカウントし、すべてのクライアントから削除依頼を受けたタイミングでサーバ11は仮削除データを削除することができる。   The temporary deletion data may be deleted after receiving a deletion request for all the clients 21 to access. For example, as in the example of providing the resource count field described above, the client 11 that has transmitted the deletion request to the server 11 is counted without duplication, and the server 11 deletes the temporary deletion data at the timing when the deletion request is received from all the clients. be able to.

また、第二の実施形態では、サーバ11のDB11b上のデータが仮削除データであることを、削除フラグと削除予定日との2つのフィールドで示していたが、削除予定日のフィールドのみで示してもよい。この場合、削除予定日のフィールドに値が入力され、データ制御部11dは、このフィールドが空欄でないデータを仮削除データと認識する。   In the second embodiment, the two fields of the deletion flag and the scheduled deletion date indicate that the data on the DB 11b of the server 11 is temporary deletion data. May be. In this case, a value is input to the field of scheduled deletion date, and the data control unit 11d recognizes data in which this field is not blank as temporary deletion data.

また、DB11b上のデータの監視及び仮削除データの削除は、サーバ11の負荷に合わせて適宜行ってよい。例えば、定期的に削除予定日を超過したデータの有無を探してもよく、仮削除データに設定された後、別のクライアントから仮削除データへのアクセスが発生したときに、削除予定日を超過しているか確認してもよい。また、第二の実施形態では、仮削除データの設定として、削除フラグ50及び削除予定日40以外のフィールドをクリアする例を説明したが、クリアせずに残してもよい。この場合、例えば、仮削除データをクライアントから検索できるようにしてもよい。また、上述した各実施の形態は、適宜組み合わせて実施されることが可能である。各ブロック図に示したブロック分けは、説明の便宜上から表された構成である。各実施形態を例に説明された本発明は、その実装に際して、各ブロック図に示した構成には限定されない。   The monitoring of data on the DB 11b and the deletion of temporarily deleted data may be appropriately performed according to the load on the server 11. For example, you may search periodically for the existence of data that has exceeded the scheduled deletion date, and when the temporary deletion data is accessed from another client after it has been set as temporary deletion data, the deletion planned date will be exceeded You may check if you are doing. In the second embodiment, as an example of setting temporary deletion data, the fields other than the deletion flag 50 and the scheduled deletion date 40 are cleared. However, the fields may be left without being cleared. In this case, for example, temporary deletion data may be retrieved from the client. Moreover, each embodiment mentioned above can be implemented in combination as appropriate. The block division shown in each block diagram is a configuration shown for convenience of explanation. The present invention described by taking each embodiment as an example is not limited to the configuration shown in each block diagram in the implementation.

以上、本発明を実施するための形態について説明したが、上記実施の形態は本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明はその趣旨を逸脱することなく変更、改良され得ると共に、本発明にはその等価物も含まれる。   As mentioned above, although the form for implementing this invention was demonstrated, the said embodiment is for making an understanding of this invention easy, and is not for limiting and interpreting this invention. The present invention can be changed and improved without departing from the gist thereof, and the present invention includes equivalents thereof.

1 CPU
2 メモリ
3 HDD
4 入出力I/F
5 通信装置
10、11 サーバ
10a 出力部
11a 送受信部
11b DB
11c データ監視部
11d データ制御部
20、21、22 クライアント
21a 送受信部
21b ローカルDB
21c データ監視部
21d データ制御部
30、31 キャッシュ有効期間
32 キャッシュ有効期限
40 削除予定日
50 削除フラグ
100、110 情報処理システム
1 CPU
2 Memory 3 HDD
4 I / O I / F
5 Communication device 10, 11 Server 10a Output unit 11a Transmission / reception unit 11b DB
11c Data monitoring unit 11d Data control unit 20, 21, 22 Client 21a Transmission / reception unit 21b Local DB
21c Data monitoring unit 21d Data control unit 30, 31 Cache validity period 32 Cache validity period 40 Deletion date 50 Deletion flag 100, 110 Information processing system

Claims (5)

クライアントとの間でデータを同期するサーバにおいて、
前記データの前記同期のための更新情報としての差分データを出力する第一のデータ制御手段を備え、
前記差分データは、前記データの反映先のデータについての第一の有効期限を前記クライアント側で設定するための第一の有効期間を含み、
前記反映先のデータは、前記第一の有効期限が過ぎると削除され、
前記データの参照元である前記サーバのデータは、前記第一の有効期限より後に到来する第二の有効期限が過ぎると削除される、サーバ。
On the server that synchronizes data with the client,
Comprising a first data control means for outputting the difference data as the update information for the synchronization of the data,
The difference data includes a first validity period for setting a first validity period for the data to which the data is reflected on the client side,
The data to be reflected is deleted when the first expiration date passes,
A server in which data of the server that is a reference source of the data is deleted when a second expiration date that comes after the first expiration date passes .
請求項1に記載の前記サーバは、さらに、前記第二の有効期限を監視する第一のデータ監視手段を備え、
前記第一のデータ監視手段は、前記第二の有効期限を過ぎたことを検知すると、前記データ制御手段に前記サーバのデータを削除させる、サーバ。
The according to claim 1 server further comprising a first data monitoring means for monitoring the second expiration date,
When the first data monitoring unit detects that the second expiration date has passed, the first data monitoring unit causes the data control unit to delete the data of the server.
サーバと、クライアントとの間でデータを同期する情報処理システムにおいて、
前記サーバは、前記データの前記同期のための更新情報としての差分データを出力する第一のデータ制御手段を備え、
前記差分データは、前記データの反映先のデータについての第一の有効期限を前記クライアント側で設定するための第一の有効期間を含み、
前記反映先のデータは、前記第一の有効期限が過ぎると削除され、
前記データの参照元である前記サーバのデータは、前記第一の有効期限より後に到来する第二の有効期限が過ぎると削除されることを特徴とする情報処理システム。
In an information processing system that synchronizes data between a server and a client,
The server includes first data control means for outputting difference data as update information for the synchronization of the data ,
The difference data includes a first validity period for setting a first validity period for the data to which the data is reflected on the client side,
The data to be reflected is deleted when the first expiration date passes,
The information processing system according to claim 1, wherein data of the server that is a reference source of the data is deleted when a second expiration date that comes after the first expiration date has passed .
請求項に記載の情報処理システムにおいて、前記クライアントは、前記クライアントのデータの前記第一の有効期限を監視する第二のデータ監視手段と、前記クライアントのデータを追加または変更もしくは削除する第二のデータ制御手段とを備え、
前記第二のデータ監視手段は、前記第一の有効期限を過ぎたことを検知すると、前記第のデータ制御手段に前記クライアントのデータを削除させる、情報処理システム。
4. The information processing system according to claim 3 , wherein the client is a second data monitoring unit that monitors the first expiration date of the data of the client , and a second that adds, changes, or deletes the data of the client . Data control means ,
When the second data monitoring unit detects that the first expiration date has passed, the second data monitoring unit causes the second data control unit to delete the data of the client .
サーバとクライアントとの間でデータを同期するデータ同期方法において、
前記サーバは、前記データの前記同期のための更新情報としての差分データを出力し、
前記差分データは、前記データの反映先のデータについての第一の有効期限を前記クライアント側で設定するための第一の有効期間を含み、
前記反映先のデータは、前記第一の有効期限が過ぎると削除され、
前記データの参照元である前記サーバのデータは、前記第一の有効期限より後に到来する第二の有効期限が過ぎると削除される、データ同期方法。
In a data synchronization method for synchronizing data between a server and a client,
The server outputs difference data as update information for the synchronization of the data ,
The difference data includes a first validity period for setting a first validity period for the data to which the data is reflected on the client side,
The data to be reflected is deleted when the first expiration date passes,
The data synchronization method , wherein data of the server that is a reference source of the data is deleted when a second expiration date that comes after the first expiration date passes .
JP2015070514A 2015-03-31 2015-03-31 Server and information processing system Active JP6229689B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015070514A JP6229689B2 (en) 2015-03-31 2015-03-31 Server and information processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015070514A JP6229689B2 (en) 2015-03-31 2015-03-31 Server and information processing system

Publications (2)

Publication Number Publication Date
JP2016192001A JP2016192001A (en) 2016-11-10
JP6229689B2 true JP6229689B2 (en) 2017-11-15

Family

ID=57246668

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015070514A Active JP6229689B2 (en) 2015-03-31 2015-03-31 Server and information processing system

Country Status (1)

Country Link
JP (1) JP6229689B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6792180B2 (en) * 2019-04-26 2020-11-25 富士通クライアントコンピューティング株式会社 Information processing equipment, information processing systems, and programs

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003040925A1 (en) * 2001-10-22 2003-05-15 Aisin Aw Co., Ltd. Information control system, server for information control system, and information terminal for information control system
JP2006330793A (en) * 2005-05-23 2006-12-07 Hitachi Electronics Service Co Ltd Download data management system, client terminal and management server
JP5217376B2 (en) * 2007-11-16 2013-06-19 日本電気株式会社 Terminal cache management apparatus, terminal cache management method, and program
JP2009237843A (en) * 2008-03-27 2009-10-15 Brother Ind Ltd File management system, mobile terminal, and mobile terminal program
JP2014010465A (en) * 2012-06-27 2014-01-20 International Business Maschines Corporation Method for selecting storage cloud for storing entity file from two or more storage cloud and computer and computer program

Also Published As

Publication number Publication date
JP2016192001A (en) 2016-11-10

Similar Documents

Publication Publication Date Title
US11068449B2 (en) Data migration method, apparatus, and storage medium
CN107943594B (en) Data acquisition method and device
CN109547512B (en) NoSQL-based distributed Session management method and device
US10275347B2 (en) System, method and computer program product for managing caches
US8386424B2 (en) Transparent access mechanism for local and remote data
JP5686034B2 (en) Cluster system, synchronization control method, server device, and synchronization control program
US10831612B2 (en) Primary node-standby node data transmission method, control node, and database system
US9110807B2 (en) Cache conflict detection
US11347933B1 (en) Distributed collaborative storage with operational transformation
US20170161313A1 (en) Detection and Resolution of Conflicts in Data Synchronization
US10805394B2 (en) File server apparatus having shared file system with file and directory operation processing
US20180349432A1 (en) Database system, transaction management node, method, and medium
US20170054803A1 (en) Information processing device, method, and system
JP2018515850A (en) Data copy method and device
KR20130011130A (en) Memo synchronization system, mobile system and memo synchronization method for synchronizing memo data
JP2012146083A (en) Session management system, session management apparatus, server device and session management method
CN113094430A (en) Data processing method, device, equipment and storage medium
US10579604B2 (en) Database system, information processing device, method and medium
KR102208704B1 (en) Blockchain software capable of operation corresponding sql query, blockchain system, and method of thereof
US20150095280A1 (en) Data synchronization method, data synchronization apparatus, and storage medium for synchronizing data among a plurality of databases
JP6229689B2 (en) Server and information processing system
US20160173714A1 (en) Information processing apparatus, method of controlling the same, and storage medium
CN109885258B (en) Data deleting device and method based on block chain
TWI571754B (en) Method for performing file synchronization control, and associated apparatus
JP2014016953A (en) Unshared type database system, synchronizing device, database server, its synchronizing method, and synchronizing program

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170531

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170613

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170809

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171002

R150 Certificate of patent or registration of utility model

Ref document number: 6229689

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150