JP2012059066A - データ同期システムおよびデータ同期方法 - Google Patents
データ同期システムおよびデータ同期方法 Download PDFInfo
- Publication number
- JP2012059066A JP2012059066A JP2010202305A JP2010202305A JP2012059066A JP 2012059066 A JP2012059066 A JP 2012059066A JP 2010202305 A JP2010202305 A JP 2010202305A JP 2010202305 A JP2010202305 A JP 2010202305A JP 2012059066 A JP2012059066 A JP 2012059066A
- Authority
- JP
- Japan
- Prior art keywords
- data
- information
- client
- server
- range
- 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
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【解決手段】クライアント10はレンジ指定情報およびクライアントレンジ情報を含む同期要求をサーバ20に送信する。サーバ20は、レンジ指定情報により特定される興味範囲に含まれるサーバレコードについてのサーバレンジ情報と、クライアントレンジ情報に対応するデータのうち更新または削除されているものを含むレンジダウンロード情報とを含む同期情報をクライアント10に送信する。クライアント10は、同期情報に基づいてダウンロード要求をサーバ20に送信し、サーバ20はダウンロード要求に応じてダウンロード情報をクライアント10に送信する。クライアント10は、ダウンロード情報に含まれるデータをクライアントデータベースに登録する。
【選択図】図1
Description
本発明は、このような背景を鑑みてなされたものであり、クライアントとサーバとの間でデータを同期する場合にサーバの負荷を低減することのできるデータ同期システムおよびデータ同期方法を提供することを目的とする。
図1は、本発明の一実施形態に係る通信システムの全体構成を示す図である。本実施形態の通信システムは、クライアント10およびサーバ20を含んで構成される。クライアント10およびサーバ20はそれぞれ通信ネットワーク30に接続されており、クライアント10およびサーバ20は通信ネットワーク30を介して通信可能になっている。本実施形態の通信システムは、サーバ20とクライアント10との間のデータの同期を行うものであり、クライアント10のユーザが興味を持っているデータのみが同期される。本実施形態において、ユーザが興味を持っているデータとは、データをある条件に従って選択し、選択されたデータを、ある条件に従ってソートした場合における、ソートされた一連のデータの一部分である。以下、データを選択するための条件を「フィルタ条件」といい、データをソートするための規則を「ソート規則」という。また、ソートされた一連のデータにおける上記一部分を示す範囲を「興味範囲」という。
図2は、クライアント10のハードウェア構成を示す図である。クライアント10は、CPU101、メモリ102、記憶装置103、通信インタフェース104、入力装置105、および出力装置106を備えている。
以下、第1の実施形態について説明する。第1の実施形態では、クライアント10においてデータの更新が行われないものとする。また、第1の実施形態では、サーバ20において管理されるデータは大量であり、その全てをクライアント10にダウンロードすることはできないものとする。
第1の実施形態では、クライアント10が、サーバ20からサーバ20において追加、変更、または削除されたデータに関する情報を取得し、その中から必要なデータを選択的にダウンロードするようにしている。すなわち、サーバ20では、クライアント10における同期の状況に関する管理を行う必要がないようにしている。
図4は、第1の実施形態に係るクライアント10のソフトウェア構成を示す図である。同図に示すように、クライアント10は、クライアントデータベース11、フィルタ選択部111、同期要求送信部112、同期情報受信部113、削除処理部114、ダウンロード決定部115、レンジ指定情報更新部116、ダウンロード要求送信部117、ダウンロード情報受信部118、更新処理部119、クライアントID記憶部131、レンジ指定情報記憶部132を備えている。なお、フィルタ選択部111、同期要求送信部112、同期情報受信部113、削除処理部114、ダウンロード決定部115、レンジ指定情報更新部116、ダウンロード要求送信部117、ダウンロード情報受信部118、更新処理部119は、クライアント10が備えるCPU101が記憶装置103に記憶されているプログラムをメモリ102に読み出して実行することにより実現される。また、クライアントデータベース11、クライアントID記憶部131、レンジ指定情報記憶部132は、クライアント10が備えるメモリ102や記憶装置103が提供する記憶領域として実現される。クライアントデータベース11は、クライアント10とは異なるコンピュータ(データベースサーバ)により提供されるようにしてもよい。この場合、クライアント10は、例えば、通信ネットワーク30を介してデータベースサーバにアクセス可能に接続されるようにする。
GUID(本発明の「データID」および「グローバルID」に該当する。)は、サーバ20によりデータに割り当てられる識別情報であり、本実施形態の通信システムにおいて一意な番号である。更新時点は、サーバ20においてデータが最後に更新された時点を示す。キーは、クライアントレコードの重複を判定するためのデータであり、データ本体に基づいて作成される。
キーは、例えば、データ本体がアドレス帳のデータである場合には、電話番号や氏名などの文字列を連結して作成することができ、データ本体が電子メールのデータである場合には、電子メールの名宛人(To)、差出人(From)、日付(Date)、および件名(Subject)に設定されている文字列を連結して作成することができる。
カラムは、データがフィルタ条件を満たすか否かを判定するために用いるものであり、データ本体の一部である。ヒントは、サーバ20からデータをダウンロードするか否かを決定するための情報である。本実施形態では、ヒントには、データの重要度が含まれているものとするが、例えば、データ本体がアドレス帳のデータである場合には氏名とし、データ本体が電子メールのデータである場合には、電子メールの件名と差出人の文字列を結合したものとして、ユーザがデータの内容を把握することができるようにする。また、ヒントには、例えば、データの重要度やカテゴリ、データサイズ、データ内容の要約など各種のメタデータを含めることもできる。
図11は、サーバ20のソフトウェア構成を示す図である。サーバ20は、GUID生成部210、時点生成部211、データベース変更部212、同期要求受信部213、ダウンロードデータ取得部214、サーバレンジ情報取得部215、同期情報送信部216、ダウンロード要求受信部217、ダウンロード情報送信部218、サーバデータベース21を備えている。
データベース変更部212は、サーバデータベース21にサーバレコードを追加する場合、時点生成部211が生成する時点を作成時点および更新時点のそれぞれに設定してサーバレコードをサーバデータベース21に追加する。また、データベース変更部212は、サーバデータベース21に記憶されているサーバレコードを更新した場合には、時点生成部211が生成する時点をサーバレコードの更新時点に設定する。
図13は、第1の実施形態に係る通信システムにおいて実行される、データの同期処理の流れを説明する図である。
クライアント10は同期要求41を作成し(S31)、作成した同期要求41をサーバ20に送信する(S32)。サーバ20は、同期要求41を受信すると、サーバレンジ情報およびレンジダウンロード情報を含む同期情報42を作成し(S33)、作成した同期情報42をクライアント10に送信する(S34)。
以下、詳細について説明する。
図14は、クライアント10において実行される同期要求41の作成処理の流れを示す図である。
まず、フィルタ選択部111は、フィルタ条件を選択する(S3101)。上述したように、フィルタ選択部111は、例えば、ユーザからフィルタ条件の指定を受け付けることによりフィルタ条件を選択するようにしてもよいし、所定の条件にマッチするフィルタ条件を選択するようにしてもよい。また、フィルタ選択部111はユーザからレンジ指定情報の入力を受け付ける(S3102)。
フィルタ選択部111は、選択フィルタ条件に対応付けて、レンジ指定情報をレンジ指定情報記憶部132に登録する(S3103)。
図16は、サーバ20において実行される同期要求41に対応する処理の流れを示す図である。
まず、サーバレンジ情報取得部215は、サーバデータベース21について、上述した図15に示すレンジ情報の作成処理を行う(S3301)。すなわち、サーバレンジ情報取得部215は、サーバデータベース21から、同期要求に含まれるフィルタ条件にマッチするサーバレコードを検索し(S3121)、検索したサーバレコードを、レンジ指定情報のデータ項目でソートする(S3122)。サーバレンジ情報取得部215は、ソートしたサーバレコードの中に、レンジ指定情報の基準IDに対応するサーバレコードが存在すれば(S3123:YES)、対応するサーバレコードを基準データとし(S3124)、存在しなければ(S3123:NO)、ソートしたサーバレコードの先頭のデータを基準データとする(S3125)。サーバレンジ情報取得部215は、ソートしたサーバレコードにおいて、基準データからレンジ指定情報のデータ数分の個数のサーバレコードのそれぞれについて、サーバレコードのGUIDおよび更新時点を含むレンジ情報を作成する(S3126)。
図17は、クライアント10において実行される同期情報42に対応する処理の流れを示す図である。
クライアント10では、同期情報42に含まれる各レンジダウンロード情報について、図18に示す適用処理が行われる(S3501)。すなわち、レンジダウンロード情報の削除フラグが「真」であれば(S3521:YES)、削除処理部114は、レンジダウンロード情報に含まれているGUIDに対応するクライアントレコードをクライアントデータベース11から削除し(S3522)、削除フラグが「偽」であれば(S3521:NO)、更新処理部119は、レンジダウンロード情報に含まれているGUID、キー、カラム、ヒントおよび本体を含むクライアントレコードを作成してクライアントデータベース11に登録する(S3523)。なお、GUIDが一致するデータがクライアントデータベース11にすでに登録されている場合には、当該データは上書きされるものとする。
図19は、サーバ20において実行されるダウンロード要求43の対応処理の流れを説明する図である。
ダウンロードデータ取得部214は、空のダウンロード情報44を作成し(S3701)、ダウンロード要求43に含まれている各取得情報について以下の処理を行う。
ダウンロードデータ取得部214は、取得情報に含まれるGUIDに対応するサーバレコードをサーバデータベース21から検索し(S3702)、対応するサーバレコードが存在する場合には(S3703:YES)、検索したサーバレコードのGUID、更新時点、キー、カラム、ヒントおよび本体と、「偽」の削除フラグとを含む取得ダウンロード情報を作成してダウンロード情報44に追加する(S3704)。一方、取得情報のGUIDに対応するデータが存在しない場合は(S3703:NO)、ダウンロードデータ取得部214は、取得情報のGUIDと「真」の削除フラグとを含む取得ダウンロード情報を作成してダウンロード情報44に追加する(S3705)。
以上のようにしてダウンロード情報44が作成される。作成されたダウンロード情報44は、ダウンロード情報送信部218によりクライアント10に送信される。
クライアント10では、ダウンロード情報受信部118がダウンロード情報44を受信すると、ダウンロード情報44に含まれる各取得ダウンロード情報について、図18に示す適用処理が行われる。すなわち、取得ダウンロード情報の削除フラグが「真」であれば(S3521:YES)、削除処理部114は、取得ダウンロード情報に含まれているGUIDに対応するクライアントレコードをクライアントデータベース11から削除し(S3522)、削除フラグが「偽」であれば(S3521:NO)、更新処理部119は、取得ダウンロード情報に含まれているGUID、キー、カラム、ヒントおよび本体を含むクライアントレコードを作成してクライアントデータベース11に登録する(S3523)。このようにして、ダウンロード情報に応じてクライアントデータベース11が更新される。
以上のようにして、選択フィルタにマッチするクライアントレコードとサーバレコードとの同期が行われる。
次に、第2の実施形態について説明する。第2の実施形態では、クライアント10においてもデータの更新が行われるものとする。したがって、クライアント10とサーバ20との両方で同じデータについて異なる内容の更新が行われる(このことは「衝突」と呼ばれる。)ことが起こり得る。データの衝突は、一般にサーバ20によって検知されるが、第2の実施形態では、クライアント10とサーバ20との両方で衝突を検知するようにしている。また、クライアント10とサーバ20との両方で異なるデータを更新したことにより、異なるデータが同一あるいは類似の内容になる(このことは「重複」と呼ばれる。)ことも起こり得る。第2の実施形態では、重複についても、クライアント10とサーバ20との両方で検出するようにしている。第2の実施形態では、キーが一致した場合に、重複が発生したと判定するものとする。
なお、以下の説明では、第1の実施形態との違いについて主に説明し、第1の実施形態と同じ部分については説明を省略する。
図20は、第2の実施形態に係るクライアント10のソフトウェア構成を示す図である。第2の実施形態に係るクライアント10は、上述した第1の実施形態に係るクライアント10に加えて、クライアント変更検知部110、衝突重複解消決定部120、解消要求送信部121、解消結果情報受信部122、解消処理部123、クライアント変更履歴記憶部133、未取得ID記憶部134、未検証記憶部135、重複記憶部136、衝突記憶部137を備えている。なお、クライアント変更検知部110、衝突重複解消決定部120、解消要求送信部121、解消結果情報受信部122、および解消処理部123は、クライアント10が備えるCPU101が記憶装置103に記憶されているプログラムをメモリ102に読み出して実行することにより実現される。また、クライアント変更履歴記憶部133、未取得ID記憶部134、未検証記憶部135、重複記憶部136、衝突記憶部137は、クライアント10が備えるメモリ102や記憶装置103が提供する記憶領域として実現される。
衝突記憶部137は、衝突するデータを示すGUIDを記憶する。
最後に、クライアント変更検知部110は、クライアント変更情報を登録する変更履歴登録処理を行う(S408)。
クライアント変更検知部110は、クライアントレコードのキーが新キー一致しなければ(S321:NO)、未検証記憶部135にGUIDを登録する(S322)。
クライアント変更検知部110は、クライアント変更履歴記憶部133から、新データのLUIDまたはGUIDと一致する変更履歴を検索する(S441)。一致するクライアント変更履歴が存在しなければ(S442:NO)、クライアント変更検知部110は、変更種別、新データのLUID、GUID、更新時点およびカラム、旧データのカラム、並びに新キーを含むクライアント変更履歴を作成してクライアント変更履歴記憶部133に登録する(S443)。
図31は、第2の実施形態に係るサーバ20のソフトウェア構成を示す図である。第2の実施形態に係るサーバ20は、第1の実施形態に係るサーバ20に加えて、解消要求受信部219、解消処理部220、解消結果情報送信部221を備えている。なお、解消要求受信部219、解消処理部220、解消結果情報送信部221は、サーバ20が備えるCPU201が記憶装置203に記憶されているプログラムをメモリ202に読み出して実行することにより実現される。
解消処理部220は、解消要求45に応じてサーバデータベース21を更新する。なお、解消処理部220により実行される解消処理の詳細については後述する。
解消結果情報送信部221は、解消処理部220による解消処理の結果を示す解消結果情報を作成してクライアント10に送信する。なお、解消結果情報送信部221による解消結果情報の生成処理の詳細については後述する。
図33は、第2の実施形態に係る通信システムにおいて実行される、データの同期処理の流れを説明する図である。第2の実施形態に係るデータの同期処理では、上述した図13に示す第1の実施形態に係る同期処理に加えて、ステップS51〜S58が行われる。すなわち、クライアント10は、ダウンロード情報44に対応する処理(S39)を行った後、解消要求45をサーバ20に送信し(S51)、サーバ20は、解消要求45に応じてサーバデータベース21を更新し(S52)、更新の結果を示す結果情報と、更新の際に発生した重複に関する重複情報とを含む解消結果情報46をクライアント10に送信する(S53)。クライアント10は、解消結果情報46に応じてさらにダウンロードすべきデータを決定する処理を行い(S54)、ダウンロードすべきデータのGUIDを設定した取得情報を含むダウンロード要求43をサーバ20に送信する(S55)。サーバ20は、ダウンロード要求43に応じて、指定されているデータをサーバデータベース21から読み出し(S56)、読み出したデータを設定したダウンロード情報44をクライアント10に送信する(S57)。クライアント10は、ダウンロード情報44に含まれているデータをクライアントデータベース11に登録する(S58)。
図34は、第2の実施形態に係るステップS31における同期要求の作成処理の流れを示す図であり、図35は、第2の実施形態に係るレンジ情報の作成処理の流れを示す図である。第2の実施形態に係る図35の処理では、ステップS3126において、データのGUIDおよび更新時点に加えて、データのLUIDおよびキー、並びに「偽」の削除フラグを含むレンジ情報を作成する。また、第2の実施形態に係る図34の処理では、上述した図14の処理に加えて、ステップS3106に続き、同期要求送信部112は、選択フィルタ条件にマッチするクライアント変更履歴をクライアント変更履歴記憶部133から検索し(S3107)、検索したクライアント変更履歴のLUID、GUID、更新時点、キーおよび削除フラグを含むクライアントレンジ情報を同期要求41に追加する(S3108)。さらに、同期要求送信部112は、未取得ID記憶部134に記憶されている未取得IDを読み出して同期要求41に設定する(S3109)。
更新情報と未取得IDとにより、サーバ20側ではクライアント10で行われたデータの更新を把握することが可能となる。
図36は、第2の実施形態に係るステップS33における同期要求への対応処理の流れを示す図である。第2の実施形態に係る図36の処理では、第1の実施形態に係る図16の処理に加えて、各クライアントレンジ情報についてのステップS3303〜S3307の処理に続き、同期情報送信部216は、図37に示すGUIDの割当処理を行い(S3308)、図38に示す衝突および重複の検知処理を行う(S3309)。
図39は、第2の実施形態に係るステップS35における同期情報42への対応処理の流れを示す図である。第2の実施形態では、上述した図17の処理の前に、図40に示すGUIDの割当処理(S3500)を実行する。
更新処理部119は、LUIDに対応するクライアントレコードのGUIDに、割当情報のGUIDを設定する(S3521)。更新処理部119は、割当情報に含まれるステータスが「存在」であった場合(LUIDに対応するGUIDがサーバデータベース21に既に登録されていた場合)には(S3522)、LUIDに対応するクライアントレコードの更新時点に、割当情報の更新時点を設定する(S3523)。
以上の処理が各割当情報について行われることで、未取得IDに対応するGUIDが登録される。
なお、第2の実施形態において作成されるダウンロード要求43は第1の実施形態と同じであり、ダウンロード要求43に対応するサーバ20による処理(S37)も、第1の実施形態と同じである。
図41は、第2の実施形態に係るステップS39におけるダウンロード情報44への対応処理の流れを示す図である。
更新処理部119は、ダウンロード情報44に含まれている取得ダウンロード情報のうち、取得ダウンロード情報のGUIDに対応するクライアント変更履歴がクライアント変更履歴記憶部133に記憶されていないものを抽出し(S3901)、抽出した取得ダウンロード情報のそれぞれについて、上述した図18に示す適用処理を行う(S3902)。すなわち、取得ダウンロード情報に含まれる削除フラグが「真」であれば(S3521:YES)、削除処理部114は、取得ダウンロード情報に含まれるGUIDに対応するクライアントレコードをクライアントデータベース11から削除し(S3522)、削除フラグが「偽」であれば(S3521:NO)、更新処理部119は、取得ダウンロード情報に含まれているGUID、キー、カラム、ヒントおよび本体を含むクライアントレコードをクライアントデータベース11に登録する(S3523)。
図42に示す衝突解消処理では、上記図41のステップS3906において抽出された取得ダウンロード情報のそれぞれについて以下の処理を行う。
解消処理部123は、取得ダウンロード情報に含まれるGUIDが衝突記憶部137に記憶されていれば(S3941)、当該GUIDに対応するクライアントレコードをクライアントデータベース11から読み出し(S3942)、読み出したクライアントレコードと取得ダウンロード情報とのいずれかを選択する(S3943)。解消処理部123は、例えば、クライアントレコードおよび取得ダウンロード情報のヒントを出力してユーザに選択させるようにすることができる。
図44は、上述した図33のステップS52においてサーバ20が実行する、解消要求45に対応する処理の流れを示す図である。
解消処理部220は、空の解消結果情報46を作成し(S5201)、解消要求45に含まれている解消情報のそれぞれについて、以下の処理を行う。
解消処理部220は、解消情報のGUIDが設定されていない場合には(S5202:YES)、新たにGUID生成部210が生成したGUIDと、解消情報に設定されているLUID、更新時点、キー、カラム、ヒントおよび本体とを設定したサーバレコードを作成してサーバデータベース21に登録し(S5203)、LUID、GUID、更新時点、「偽」の削除フラグ、および「成功」のステータスを含む結果情報を解消結果情報46に追加する(S5204)。
以上の処理が各解消情報について行われる。
図45は、上述した図33のステップS54においてクライアント10が実行する、解消結果情報46に対応する処理の流れを示す図である。
解消処理部123は、空のダウンロード要求43を作成し(S5401)、解消結果情報46に含まれている結果情報のそれぞれについて、以下の処理を行う。
解消処理部123は、結果情報に含まれるLUIDが未取得ID記憶部134に登録されている場合には(S5402:YES)、当該LUIDに対応するクライアントレコードに、結果情報のGUIDを設定するようにクライアントデータベース11を更新し(S5403)、未取得ID記憶部134から当該LUIDを削除する(S5404)。
次に、第3の実施形態について説明する。第3の実施形態では、クライアント10およびサーバ20の両方においてデータの変更が行われるものとする。クライアント10は、クライアント10とサーバ20との間で直近に同期処理を行った時点(以下、「アンカー時点」という。)以後の全てのクライアントデータベース31への変更について変更履歴を管理するが、サーバ20は、所定の一定期間(以下、「保証期間」という。)のみ変更履歴を管理する。以下の説明において、保証期間の開始時点を「下位時点」といい、保証期間の終了時点を「上位時点」という。上位時点は、最後にサーバデータベース21に対して変更が行われた時点である。したがって、サーバ20において下位時点以後に行われたサーバデータベース21への全ての変更について変更履歴が登録される。
図46は、第3の実施形態に係るクライアント10のソフトウェア構成例を示す図である。第3の実施形態に係るクライアント10は、上述した第1の実施形態に係るクライアント10に加えて、クライアント変更検知部110、レンジ指定情報更新部116およびクライアント変更履歴記憶部133を備える。
第3の実施形態に係るレンジ指定情報記憶部132には、フィルターに対応付けて、レンジ指定情報に加え、アンカーが記憶される。図47は第3の実施形態のレンジ指定情報記憶部132の構成例を示す図である。レンジ指定情報更新部116は、レンジ指定情報記憶部132に記憶されるアンカー時点を更新する。後述するように、第3の実施形態では同期情報42に最新履歴時点が含まれ、レンジ指定情報更新部116は、同期情報42の最新履歴時点を選択フィルタ条件に対応するアンカー時点としてレンジ指定情報記憶部132に登録する。なお、レンジ指定情報更新部116は、フィルタ選択部111が新しくフィルタ条件を作成した場合には、取りうるもっとも小さな値から1を引いた値をアンカー時点として新しく作成されたフィルタ条件に対応付けてレンジ指定情報記憶部132に登録する。
図49は、第3の実施形態に係るサーバ20のソフトウェア構成例を示す図である。第3の実施形態に係るサーバ20は、上述した第1の実施形態に係るサーバ20に加えて、サーバ変更検知部222およびサーバ変更履歴記憶部231を備える。
第3の実施形態では、アンカー時点より後に更新されたデータをクライアントレンジ情報として同期要求41に含めてサーバ20に送信する。図51は、第3の実施形態において送信される同期要求41の構成例を示す図である。第3の実施形態では、同期要求41には、アンカー情報が追加され、同期要求41に含まれるクライアントレンジ情報には削除フラグが追加される。また、後述するように、クライアント10において追加または更新されたクライアントレコードに対応するクライアントレンジ情報には、クライアントレコードの全ての項目と削除フラグとが含まれる。
同期情報送信部216は、GUIDに対応するサーバレコードがサーバデータベース21に存在しない場合には(S3304:NO)、クライアントレンジ情報の更新時点が、同期要求41に含まれているアンカー情報の示すアンカー時点以前であれば(S33041:YES)、ステップS3306に進む。これにより、クライアントデータベース11に存在し、サーバデータベース21に存在していないデータについて、「真」の削除フラグを含むレンジダウンロード情報が同期情報に設定される。クライアントレンジ情報の更新時点がアンカー時点よりも後であれば(S33041:NO)、同期情報送信部216は、レンジ情報に含まれている各項目を含むサーバレコードを作成してサーバデータベース21に登録する(S33042)。これにより、クライアント10で追加されたデータがサーバデータベース21にも登録される。
レンジ情報の削除フラグが「偽」であり(S33043:NO)、サーバレコードの更新時点が、アンカー時点以前であり(S33045:YES)、クライアントレンジ情報の更新時点がサーバレコードの更新時点よりも新しければ(S33046:YES)、同期情報送信部216は、クライアントレンジ情報に含まれている各項目によりサーバレコードを更新する(S33047)。これにより、クライアント10で更新されたデータは、サーバ20において更新されていなければ、サーバデータベース21に反映される。
レンジ情報の更新時点もアンカー時点より後であれば(S33048:NO)、レンジダウンロード情報を作成せずにループする。これにより、クライアント10およびサーバ20の両方でデータが更新された場合、すなわち衝突が発生した場合には、レンジダウンロード情報が作成されない。
なお、上述した実施形態では、データの作成時点や更新時点、削除時点などは、サーバデータベース21に対するデータの変更の順番を表す値であるものとしたが、これに限らず、タイムスタンプを採用してもよい。
11 クライアントデータベース
20 サーバ
21 サーバデータベース
30 通信ネットワーク
41 同期要求
42 同期情報
43 ダウンロード要求
44 ダウンロード情報
45 解消要求
46 解消結果情報
101 CPU
102 メモリ
103 記憶装置
104 通信インタフェース
105 入力装置
106 出力装置
110 クライアント変更検知部
111 フィルタ選択部
112 同期要求送信部
113 同期情報受信部
114 削除処理部
115 ダウンロード決定部
116 レンジ指定情報更新部
117 ダウンロード要求送信部
118 ダウンロード情報受信部
119 更新処理部
120 衝突重複解消決定部
121 解消要求送信部
122 解消結果情報受信部
123 解消処理部
131 クライアントID記憶部
132 レンジ指定情報記憶部
133 クライアント変更履歴記憶部
134 未取得ID記憶部
135 未検証記憶部
136 重複記憶部
137 衝突記憶部
201 CPU
202 メモリ
203 記憶装置
204 通信インタフェース
205 入力装置
206 出力装置
210 GUID生成部
211 時点生成部
212 データベース変更部
213 同期要求受信部
214 ダウンロードデータ取得部
215 サーバレンジ情報取得部
216 同期情報送信部
217 ダウンロード要求受信部
218 ダウンロード情報送信部
219 解消要求受信部
220 解消処理部
221 解消結果情報送信部
Claims (15)
- サーバと、前記サーバに通信可能に接続されるクライアントとの間でデータを同期するシステムであって、
前記サーバは、データに更新時点を付帯させて記憶する第1データベースにアクセス可能であり、前記クライアントは、前記サーバから取得したデータを記憶する第2データベースにアクセス可能であり、
前記クライアントは、
所定の規則に従ってソートした前記データの一部分である興味範囲を特定するためのレンジ指定情報を記憶するレンジ指定情報記憶部と、
前記第2データベースに記憶されている前記データのうち、前記レンジ指定情報により特定される前記興味範囲に含まれるもののそれぞれについて、前記データの識別情報であるデータIDおよび前記データの更新時点を含むクライアントレンジ情報を作成するクライアントレンジ情報取得部と、
前記レンジ指定情報および前記クライアントレンジ情報を含む同期要求を前記サーバに送信する同期要求送信部と、
を備え、
前記サーバは、
前記同期要求に含まれる前記クライアントレンジ情報のそれぞれについて、前記クライアントレンジ情報に含まれる前記データIDに対応する、前記第1データベースに記憶されているデータの更新時点が、前記クライアントレンジ情報に含まれる前記更新時点よりも新しい場合に、当該データであるダウンロードデータを前記第1データベースから読み出すダウンロードデータ取得部と、
前記ダウンロードデータを含む同期情報を前記クライアントに送信する同期情報送信部と、
を備えること
を特徴とするデータ同期システム。 - 請求項1に記載のデータ同期システムであって、
前記サーバは、前記第1データベースに記憶されている前記データのうち、前記同期要求に含まれる前記レンジ指定情報により特定される前記興味範囲に含まれるもののそれぞれについて、前記データを示すデータIDおよび前記データの更新時点を含むサーバレンジ情報を作成するサーバレンジ情報取得部を備え、
前記同期情報送信部は、前記ダウンロードデータに加えて前記サーバレンジ情報を前記同期情報に含めて前記クライアントに送信し、
前記クライアントは、
前記同期情報に含まれる前記データを前記第2データベースに登録する更新処理部と、
前記同期情報に含まれる前記サーバレンジ情報のうち、前記サーバレンジ情報に含まれる前記データIDが示す前記データをダウンロードすべきか否かを決定するダウンロード決定部と、
ダウンロードすべきと決定した前記データを示す前記データIDを含むダウンロード要求を前記サーバに送信するダウンロード要求送信部と、
を備え、
前記ダウンロードデータ取得部は、前記ダウンロード要求に含まれる前記データIDに対応するデータを前記第1データベースから読み出し、
前記サーバは、前記ダウンロードデータ取得部が読み出した前記データを含むダウンロード情報を前記クライアントに送信するダウンロード情報送信部を備え、
前記更新処理部は、前記ダウンロード情報に含まれる前記データを前記第2データベースに登録すること、
を特徴とするデータ同期システム。 - 請求項2に記載のデータ同期システムであって、
前記レンジ指定情報は、前記データをソートするための前記規則を示すソート情報と、前記ソートされたデータにおける基準となるデータである基準データを示す基準IDと、前記データの数を示すデータ数とが含まれ、
前記クライアントレンジ情報取得部は、前記第2データベースに記憶されている前記データを前記規則に従ってソートし、ソートした一連の前記データにおいて、前記基準データと、前記基準データに後続する、前記データ数が示す数のデータとを前記興味範囲に含まれるデータとし、
前記サーバレンジ情報取得部は、前記第1データベースに記憶されている前記データを前記同期要求に含まれる前記レンジ指定情報に含まれる前記ソート情報が示す前記規則に従ってソートし、ソートした一連の前記データにおいて、前記同期要求に含まれる前記レンジ指定情報に含まれる前記基準IDに対応する前記基準データと、当該基準データに後続する、前記同期要求に含まれる前記レンジ指定情報に含まれる前記データ数が示す数のデータとを前記興味範囲に含まれるデータとすること、
を特徴とするデータ同期システム。 - 請求項3に記載のデータ同期システムであって、
前記クライアントレンジ情報取得部は、前記第2データベースに記憶されている前記データを前記規則に従ってソートし、ソートした一連の前記データにおいて、前記基準データと、前記基準データに先行する、前記データ数が示す数のデータと、前記基準データに後続する、前記データ数が示す数のデータとを前記興味範囲に含まれるデータとし、
前記サーバレンジ情報取得部は、前記第1データベースに記憶されている前記データを前記同期要求に含まれる前記レンジ指定情報に含まれる前記ソート情報が示す前記規則に従ってソートし、ソートした一連の前記データにおいて、前記同期要求に含まれる前記レンジ指定情報に含まれる前記基準IDに対応する前記基準データと、当該基準データに先行する、前記同期要求に含まれる前記レンジ指定情報に含まれる前記データ数が示す数のデータと、当該基準データに後続する、当該データ数が示す数のデータとを前記興味範囲に含まれるデータとすること、
を特徴とするデータ同期システム。 - 請求項2に記載のデータ同期システムであって、
前記レンジ指定情報記憶部はさらに、前記データを抽出するための条件を記憶し、
前記クライアントレンジ情報取得部は、前記第2データベースに記憶されている前記データのうち前記条件にマッチするものを前記規則に従ってソートした場合に前記興味範囲に含まれる前記データについて、前記クライアントレンジ情報を作成し、
前記同期要求にはさらに前記条件が含まれ、
前記サーバレンジ情報取得部は、前記第1データベースに記憶されている前記データのうち、前記同期要求に含まれる前記条件にマッチするものを前記規則に従ってソートした場合に前記同期要求に含まれる前記レンジ指定情報により特定される前記興味範囲に含まれる前記データについて、前記サーバレンジ情報を作成すること、
を特徴とするデータ同期システム。 - 請求項2に記載のデータ同期システムであって、
前記ダウンロードデータ取得部は、前記ダウンロード要求に含まれる前記データIDのうち、前記データIDに対応する前記データが前記第1データベースに記憶されていないものについて、前記データIDを含む削除情報を作成し、
前記クライアントは、前記ダウンロード情報に前記削除情報が含まれている場合に、前記削除情報に含まれる前記データIDに対応する前記データを前記第2データベースから削除する削除処理部を備えること、
を特徴とするデータ同期システム。 - 請求項2に記載のデータ同期システムであって、
前記データには、前記データの内容に基づいて生成される、前記クライアントにおいて前記データをダウンロードすべきか否かを決定するための情報であるヒントが付帯され、
前記サーバレンジ情報取得部は、前記第1データベースに記憶されているデータのうち、前記同期要求に含まれる前記レンジ指定情報により特定される前記興味範囲に含まれるもののそれぞれについて、前記データを示すデータID、前記データの更新時点、および前記データに付帯される前記ヒントを含むサーバレンジ情報を作成し、
前記ダウンロード決定部は、前記同期情報に含まれる前記サーバレンジ情報に含まれる前記ヒントに基づいて、前記データをダウンロードすべきか否かを決定すること、
を特徴とするデータ同期システム。 - 請求項7に記載のデータ同期システムであって、
前記ダウンロード決定部は、前記サーバレンジ情報に含まれる前記ヒントを出力し、ユーザから前記ダウンロードすべきデータの入力を受け付けること、
を特徴とするデータ同期システム。 - 請求項2に記載のデータ同期システムであって、
前記クライアントは、前記第2データベースの更新履歴を記憶する更新履歴記憶部を備え、
前記更新履歴には、更新の対象となった前記データを示す前記データIDと、前記データに付帯されている前記更新時点とが含まれており、
前記同期要求送信部は、前記興味範囲に含まれる前記データに対応する前記更新履歴を前記更新履歴記憶部から取得し、前記取得した更新履歴を前記同期要求に設定して前記サーバに送信し、
前記サーバは、前記同期要求に含まれる前記更新履歴のそれぞれについて、前記更新履歴に含まれる前記データIDに対応する、前記第1データベースが記憶する前記データに付帯されている前記更新時点が、前記更新履歴に含まれている前記更新時点よりも後である場合、前記第1データベースが記憶する前記データに付帯される前記更新時点および前記データIDを含む衝突情報を生成する衝突検知部を備え、
前記同期情報送信部は、前記衝突情報をさらに含む前記同期情報を前記クライアントに送信し、
前記クライアントは、前記衝突情報に含まれる前記データIDに対応する前記データを、前記サーバにアップロードするか前記サーバからダウンロードするかを決定する衝突解消部を備え、
前記ダウンロード要求送信部は、前記衝突解消部がダウンロードすると決定した前記データを示す前記データIDをさらに含む前記ダウンロード要求を前記サーバに送信し、
前記クライアントは、前記衝突解消部がアップロードすると決定した前記データを前記第2データベースから読み出し、読み出した前記データを含む解消要求を前記サーバに送信する解消要求送信部を備え、
前記サーバは、前記解消要求に含まれている前記データを前記第1データベースに登録する解消処理部を備えること、
を特徴とするデータ同期システム。 - 請求項9に記載のデータ同期システムであって、
前記データにはさらに、前記データに所定のアルゴリズムを適用して求められるデータであるキーが付帯され、
前記更新履歴には前記キーが含まれ、
前記サーバは、前記第1データベースに記憶されている前記データのうち、前記データに前記アルゴリズムを適用して求められるキーが、前記同期要求に含まれる前記更新履歴のいずれかに含まれる前記キーと一致するものを検索し、前記検索したデータを示す前記データIDを含む重複情報を生成する重複検知部を備え、
前記同期情報送信部は、前記重複情報をさらに含む前記同期情報を前記クライアントに送信し、
前記クライアントは、前記重複情報に含まれる前記データIDに対応する前記データのうち、削除すべきものを決定する重複解消部を備え、
前記解消要求送信部は、前記重複解消部が削除すべきと決定した前記データを示す前記データIDを含む解消情報をさらに前記解消要求に含めて前記サーバに送信し、
前記解消処理部はさらに、前記解消要求に含まれる前記解消情報に含まれる前記データIDに対応する前記データを前記第1データベースから削除すること、
を特徴とするデータ同期システム。 - 請求項9に記載のデータ同期システムであって、
前記データには前記データIDが付帯されており、
前記データIDには、前記クライアントにおいて一意な識別情報であるローカルIDと、前記サーバおよび前記クライアントの両方において一意な識別情報であるグローバルIDとが含まれ、
前記クライアントは、
前記クライアントにおいて前記データが作成された場合に、前記作成されたデータに前記ローカルIDを割り当てるローカルID割当部と、
前記作成されたデータに割り当てられた前記ローカルIDのうち、前記グローバルIDが割り当てられていないものである未取得IDを記憶する未取得ID記憶部と、
を備え、
前記同期要求送信部はさらに、前記未取得ID記憶部に記憶されている前記未取得IDを含めて前記同期要求を前記サーバに送信し、
前記サーバは、前記同期要求に含まれている前記未取得IDに対応する前記グローバルIDを前記第1データベースから検索し、前記未取得IDに対応する前記グローバルIDがある場合には、当該対応するグローバルIDを前記第1データベースから取得し、前記取得したグローバルIDおよび前記未取得IDを含むID情報を生成し、前記ローカルIDに対応する前記グローバルIDがない場合には、新たに前記グローバルIDを割り当て、前記割り当てたグローバルIDおよび前記ローカルIDを含むID情報を生成するグローバルID取得部を備え、
前記同期情報送信部はさらに、前記ID情報を含めて前記同期情報を前記クライアントに送信し、
前記クライアントは、前記同期情報に含まれている前記ID情報のそれぞれについて、前記ID情報に含まれる前記未取得IDに対応する前記データを前記第1データベースから検索し、前記検索したデータに付帯される前記データIDに、前記ID情報に含まれる前記グローバルIDを設定するグローバルID登録部を備えること、
を特徴とするデータ同期システム。 - 請求項1に記載のデータ同期システムであって、
前記ダウンロードデータ取得部は、前記クライアントレンジ情報に含まれる前記データIDのうち、前記データIDに対応する前記データが前記第1データベースに記憶されていないものについて、前記データIDを含む削除情報を作成し、
前記同期情報送信部はさらに、前記削除情報を前記同期情報に設定して前記クライアントに送信し、
前記クライアントは、前記同期情報に含まれている前記削除情報のそれぞれについて、前記削除情報に含まれる前記データIDに対応する前記データを前記第2データベースから削除する削除処理部を備えること、
を特徴とするデータ同期システム。 - サーバと、前記サーバに通信可能に接続されるクライアントとの間でデータを同期する方法であって、
前記サーバは、データに更新時点を付帯させて記憶する第1データベースにアクセス可能であり、前記クライアントは、前記サーバから取得したデータを記憶する第2データベースにアクセス可能であり、
前記クライアントが、所定の規則に従ってソートした前記データの一部分である興味範囲を特定するためのレンジ指定情報をメモリに記憶し、
前記クライアントが、前記第2データベースに記憶されている前記データのうち、前記レンジ指定情報により特定される前記興味範囲に含まれるもののそれぞれについて、前記データの識別情報であるデータIDおよび前記データの更新時点を含むクライアントレンジ情報を作成し、
前記クライアントが、前記レンジ指定情報および前記クライアントレンジ情報を含む同期要求を前記サーバに送信し、
前記サーバが、前記同期要求に含まれる前記クライアントレンジ情報のそれぞれについて、前記クライアントレンジ情報に含まれる前記データIDに対応する、前記第1データベースに記憶されているデータの更新時点が、前記クライアントレンジ情報に含まれる前記更新時点よりも新しい場合に、当該データであるダウンロードデータを前記第1データベースから読み出し、
前記サーバが、前記ダウンロードデータを含む同期情報を前記クライアントに送信すること、
を特徴とするデータ同期方法。 - 請求項13に記載のデータ同期方法であって、
前記サーバは、前記第1データベースに記憶されている前記データのうち、前記同期要求に含まれる前記レンジ指定情報により特定される前記興味範囲に含まれるもののそれぞれについて、前記データを示すデータIDおよび前記データの更新時点を含むサーバレンジ情報を作成し、
前記サーバは、前記同期情報を前記クライアントに送信する場合に、前記ダウンロードデータに加えて前記サーバレンジ情報を前記同期情報に含め、
前記クライアントが、前記同期情報に含まれる前記データを前記第2データベースに登録し、
前記クライアントが、前記同期情報に含まれる前記サーバレンジ情報のうち、前記サーバレンジ情報に含まれる前記データIDが示す前記データをダウンロードすべきか否かを決定し、前記ダウンロードすべきと決定したデータを示す前記データIDを含むダウンロード要求を前記サーバに送信し、
前記サーバが、前記ダウンロード要求に含まれる前記データIDに対応するデータを前記第1データベースから読み出し、前記読み出した前記データを含むダウンロード情報を前記クライアントに送信し、
前記クライアントは、前記ダウンロード情報に含まれる前記データを前記第2データベースに登録すること、
を特徴とするデータ同期方法。 - 請求項14に記載のデータ同期方法であって、
前記クライアントは、前記第2データベースの更新履歴を記憶し、
前記更新履歴には、更新の対象となった前記データを示す前記データIDと、前記データに付帯されている前記更新時点とが含まれており、
前記クライアントは、前記興味範囲に含まれる前記データに対応する前記更新履歴を前記同期要求に設定して前記サーバに送信し、
前記サーバは、前記同期要求に含まれる前記更新履歴のそれぞれについて、前記更新履歴に含まれる前記データIDに対応する、前記第1データベースが記憶する前記データに付帯されている前記更新時点が、前記更新履歴に含まれている前記更新時点よりも後である場合、前記第1データベースが記憶する前記データに付帯される前記更新時点および前記データIDを含む衝突情報を生成し、
前記サーバは、前記衝突情報をさらに含む前記同期情報を前記クライアントに送信し、
前記クライアントは、前記衝突情報に含まれる前記データIDに対応する、前記第2データベースが記憶する前記データを前記サーバにアップロードするか否かを決定し、
前記クライアントは、アップロードしないと決定した前記データを示す前記データIDをさらに含む前記ダウンロード要求を前記サーバに送信し、
前記クライアントは、アップロードすると決定した前記データを前記第2データベースから読み出し、読み出した前記データを含む解消要求を前記サーバに送信し、
前記サーバは、前記解消要求に含まれている前記データを前記第1データベースに登録すること、
を特徴とするデータ同期方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010202305A JP5634178B2 (ja) | 2010-09-09 | 2010-09-09 | データ同期システムおよびデータ同期方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010202305A JP5634178B2 (ja) | 2010-09-09 | 2010-09-09 | データ同期システムおよびデータ同期方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012059066A true JP2012059066A (ja) | 2012-03-22 |
JP5634178B2 JP5634178B2 (ja) | 2014-12-03 |
Family
ID=46056075
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010202305A Expired - Fee Related JP5634178B2 (ja) | 2010-09-09 | 2010-09-09 | データ同期システムおよびデータ同期方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5634178B2 (ja) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002014860A (ja) * | 2000-06-28 | 2002-01-18 | Hitachi Ltd | 複数データベースの同期化方法 |
JP2003140950A (ja) * | 2001-11-07 | 2003-05-16 | Casio Soft Co Ltd | データベース同期化方法、装置、及びプログラム |
JP2004318619A (ja) * | 2003-04-17 | 2004-11-11 | Freedom Bird:Kk | ネットワークを利用した店舗業務用データベースシステム |
JP2005025362A (ja) * | 2003-06-30 | 2005-01-27 | Sap Ag | データ同期制御装置、データ同期制御方法及びデータ同期制御プログラム |
JP2007115247A (ja) * | 2005-10-18 | 2007-05-10 | Samsung Electronics Co Ltd | 多重サーバ環境に適したデバイスをクライアントをして同期化を行わせる方法及び装置 |
JP2008500622A (ja) * | 2004-05-26 | 2008-01-10 | ノキア コーポレイション | メディア・アイテムの管理のための方法、システム、コンピュータ・プログラム及びデバイス |
JP2009157626A (ja) * | 2007-12-26 | 2009-07-16 | Ntt Docomo Inc | データ同期方法、データ同期システム、サーバ、及び移動端末 |
WO2010048329A1 (en) * | 2008-10-21 | 2010-04-29 | Google Inc. | Search based specification for data synchronization |
-
2010
- 2010-09-09 JP JP2010202305A patent/JP5634178B2/ja not_active Expired - Fee Related
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002014860A (ja) * | 2000-06-28 | 2002-01-18 | Hitachi Ltd | 複数データベースの同期化方法 |
JP2003140950A (ja) * | 2001-11-07 | 2003-05-16 | Casio Soft Co Ltd | データベース同期化方法、装置、及びプログラム |
JP2004318619A (ja) * | 2003-04-17 | 2004-11-11 | Freedom Bird:Kk | ネットワークを利用した店舗業務用データベースシステム |
JP2005025362A (ja) * | 2003-06-30 | 2005-01-27 | Sap Ag | データ同期制御装置、データ同期制御方法及びデータ同期制御プログラム |
JP2008500622A (ja) * | 2004-05-26 | 2008-01-10 | ノキア コーポレイション | メディア・アイテムの管理のための方法、システム、コンピュータ・プログラム及びデバイス |
JP2007115247A (ja) * | 2005-10-18 | 2007-05-10 | Samsung Electronics Co Ltd | 多重サーバ環境に適したデバイスをクライアントをして同期化を行わせる方法及び装置 |
JP2009157626A (ja) * | 2007-12-26 | 2009-07-16 | Ntt Docomo Inc | データ同期方法、データ同期システム、サーバ、及び移動端末 |
WO2010048329A1 (en) * | 2008-10-21 | 2010-04-29 | Google Inc. | Search based specification for data synchronization |
Also Published As
Publication number | Publication date |
---|---|
JP5634178B2 (ja) | 2014-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5061166B2 (ja) | データ同期システムおよびデータ同期方法 | |
JP6303023B2 (ja) | 一時的なイベンティングに関するシステム及び方法 | |
US7107323B2 (en) | System and method of file distribution for a computer system in which partial files are arranged according to various allocation rules | |
KR100906262B1 (ko) | 원자적으로 갱신되는 중앙 캐시 메모리를 위한 방법 및시스템 | |
US20060041606A1 (en) | Indexing system for a computer file store | |
US6363375B1 (en) | Classification tree based information retrieval scheme | |
JP2003522344A (ja) | データベース同期化/組織化システムおよび方法 | |
CN112035420A (zh) | 数据共享方法、共享设备和系统 | |
CN110018969B (zh) | 数据缓存方法、装置、计算机设备和存储介质 | |
CN108319634B (zh) | 分布式文件系统的目录访问方法和装置 | |
CN103370695A (zh) | 数据库更新通知方法 | |
CN109328331A (zh) | 用于异步存储服务的自组织存储系统 | |
CN112015696A (zh) | 数据访问、数据关系设置方法、装置及存储介质 | |
CN114610680A (zh) | 分布式文件系统元数据管理方法、装置、设备及存储介质 | |
JP5634178B2 (ja) | データ同期システムおよびデータ同期方法 | |
JP4871213B2 (ja) | ストリームデータ処理方法、ストリームデータ処理プログラムおよびストリームデータ処理システム | |
CN110633322A (zh) | 一种资源信息同步方法、装置、电子设备及存储介质 | |
CN104969217A (zh) | 预测缓存装置和缓存预测方法 | |
JP2006099268A (ja) | 画像検索装置、画像検索支援装置、画像検索システム、画像検索方法および画像検索プログラム | |
JP2016085522A (ja) | 情報管理装置 | |
CN110933184B (zh) | 一种资源发布平台和资源发布方法 | |
JP6522261B1 (ja) | ファイルの属性情報を管理する方法及びコンピューティング装置{method for managing attribute information of file and computing device using the same} | |
JPH06290098A (ja) | 分散データベース処理方法 | |
CN102483715B (zh) | 数据同步系统以及数据同步方法 | |
EP4195068A1 (en) | Storing and retrieving media recordings in an object store |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130820 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140313 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140401 |
|
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: 20140916 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20141014 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5634178 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |