JP6905321B2 - データ管理システム、データ管理装置、装置、データ管理方法、およびプログラム - Google Patents

データ管理システム、データ管理装置、装置、データ管理方法、およびプログラム Download PDF

Info

Publication number
JP6905321B2
JP6905321B2 JP2016198329A JP2016198329A JP6905321B2 JP 6905321 B2 JP6905321 B2 JP 6905321B2 JP 2016198329 A JP2016198329 A JP 2016198329A JP 2016198329 A JP2016198329 A JP 2016198329A JP 6905321 B2 JP6905321 B2 JP 6905321B2
Authority
JP
Japan
Prior art keywords
data
replication
database
data management
master database
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
JP2016198329A
Other languages
English (en)
Other versions
JP2018060414A (ja
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2016198329A priority Critical patent/JP6905321B2/ja
Priority to US15/707,128 priority patent/US10379789B2/en
Publication of JP2018060414A publication Critical patent/JP2018060414A/ja
Application granted granted Critical
Publication of JP6905321B2 publication Critical patent/JP6905321B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1205Improving or facilitating administration, e.g. print management resulting in increased flexibility in print job configuration, e.g. job settings, print requirements, job tickets
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operations
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operations
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • G06F11/1451Management of the data involved in backup or backup restore by selection of backup contents
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operations
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1469Backup restoration techniques
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2094Redundant storage or storage space
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0643Management of files
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/065Replication mechanisms
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1229Printer resources management or printer maintenance, e.g. device status, power levels
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00204Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
    • H04N1/00244Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server with a server, e.g. an internet server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00962Input arrangements for operating instructions or parameters, e.g. updating internal software
    • H04N1/00973Input arrangements for operating instructions or parameters, e.g. updating internal software from a remote device, e.g. receiving via the internet instructions input to a computer terminal
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2097Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements maintaining the standby controller/processing unit updated
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0077Types of the still picture apparatus
    • H04N2201/0094Multifunctional device, i.e. a device capable of all of reading, reproducing, copying, facsimile transception, file transception

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、レプリケーションを行うデータ管理システム、データ管理装置、装置、データ管理方法、およびプログラムに関する。
複合機等のネットワークデバイスの設定データに関して、そのマスタデータをネットワークに接続された管理サーバ等の他の情報処理装置に保存して一元管理することがある。それらの値は、互いに同期されており、管理サーバ上のマスタデータの値を変更すると、変更後の値が複合機に通知されて複合機内の設定データの値が変更される。同様に、複合機内の設定データの値を変更すると、管理サーバ上のマスタデータの値が変更される(特許文献1)。また、管理サーバのマスタデータを保全するために、管理するデータを任意のタイミングでバックアップにより保存し、任意のタイミングでリストアすることが記載されている。
一方、管理サーバの問題が発生した場合にシステムを維持できなくなることに備えて、別のサーバに、管理サーバのマスタデータを複製するレプリケーションシステムが知られている。特許文献2には、そのレプリケーションシステムにおいて、管理サーバのマスタデータを複製する処理を時間的に短縮するシステムが記載されている。
バックアップは、管理サーバのある時点の状態を保存しておくことを目的とし、バックアップデータは、定期的に更新されない。それに対し、レプリケーションは、現在の状態をミラーリングすることを目的としているので、管理サーバのデータが更新された場合には、レプリケーションデータは、定期的に更新される。同一のシステムがバックアップとレプリケーションの両方の機能を有する場合がある。
特開2015−121989号公報 特開2006−268740号公報
データベース等である自装置のマスタデータについて他の装置にレプリケーションを行っている状態で、バックアップしていたマスタデータのリストアを実施する場合がある。そのような場合には、レプリケーション用に出力される差分情報を表すレプリケーション用データが生成されない。その結果、マスタデータとレプリケーション先のデータとが同期されていない状態となり、適切なレプリケーションを行うことができなくなってしまう。
本発明の目的は、このような従来の問題点を解決することにある。上記の点に鑑み、本発明は、マスタデータのリストアを実行する場合においても、レプリケーション元とレプリケーション先のデータ間を同期させるデータ管理システム、データ管理装置、装置、データ管理方法、およびプログラムを提供することを目的とする。
上記課題を解決するため、本発明に係るデータ管理システムは、複数のクライアント端末との間で該複数のクライアント端末各々の構成に応じたデータ同期を行うためのマスタデータベースを保持する第1のデータ管理装置と、前記マスタデータベースをミラーリングしておくためのレプリケーションデータベースを保持する第2のデータ管理装置と、を含むデータ管理システムであって、前記第1のデータ管理装置は、前記複数のクライアント端末との間での前記データ同期により前記マスタデータベースのデータの一部が更新されている場合、該更新前と該更新後の差分を示すデータを、前記レプリケーションデータベースのための更新用データとして前記第2のデータ管理装置に送信する第1の送信手段と、リストアの指示に応じて、前記マスタデータベースをリストアするためのバックアップ用データを取得する取得手段と、前記取得手段により取得された前記バックアップ用データにより、前記マスタデータベースをリストアするリストア手段と、前記リストア手段によりリストアされたマスタデータベースのすべてのデータを前記レプリケーションデータベースのための更新用データとして前記第2のデータ管理装置に送信する第2の送信手段と、を備え、前記第2のデータ管理装置は、前記第1の送信手段により送信された前記差分を示すデータに基づいて、前記レプリケーションデータベースを更新する更新手段と、前記第2の送信手段により送信された前記リストアされたマスタデータベースのすべてのデータに基づいて、前記レプリケーションデータベースのすべてのデータを、前記リストアされたマスタデータベースのすべてのデータに置き換える置換手段とを備えることを特徴とする。
本発明によれば、マスタデータのリストアを実行する場合においても、レプリケーション元とレプリケーション先のデータ間を同期させることができる。
システム構成を示す図。 複合機内のブロック構成を示す図。 データ管理アプリケーションのブロック構成を示す図。 レプリケーションサーバアプリケーションのブロック構成を示す図。 リストア処理を含む全体処理の概要を示すフローチャート。 リストア処理を示すフローチャート。 レプリケーション処理を示すフローチャート。 レプリケーション処理を受け付けた場合の処理を示すフローチャート。 リストア処理を含む全体処理の概要を示すフローチャート。 リストア処理を含む全体処理の概要を示すフローチャート。 デバイス基本データを更新する場合のリストア処理を示すフローチャート。
以下、添付図面を参照して本発明の実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。なお、同一の構成要素には同一の参照番号を付して、説明を省略する。
[第1の実施形態]
図1は、本実施形態におけるデータ管理システム10の全体を示すシステム構成図である。図1に示すように、複合機110、111、112が、ネットワーク100を介して相互に通信可能に接続されている。図1では、3台の複合機が示されているが、本実施形態におけるデータ同期を行うのであれば、特に3台に限定されるものではない。複合機110は、サーバ機能を搭載しており、自装置を含むクライアント端末(以下、クライアント。図1では複合機110、111、112)とネットワーク100を介して通信可能である。複合機110のサーバ機能は、複合機110、111、112の各種データを管理する。
複合機111は、レプリケーションサーバ機能を搭載しており、複合機110とネットワーク100を介して通信可能である。複合機110のサーバ機能は、レプリケーション先として設定されている、レプリケーションサーバ機能が搭載されている複合機111に対して、管理している各種データの更新情報をレプリケーションする。
クライアントである複合機110、111、112は、複合機110のサーバ機能に各複合機の情報を登録してデータ管理システム10に参加する。データ管理システム10において、各複合機は、ユーザ操作やコピー/FAXなどの処理実行によって各種データに変更が発生した場合、その変更内容をサーバ機能を有する複合機110へ送信し、データ更新を要求する。また、各複合機は、サーバ機能で管理されるデータに更新があるか否かを定期的もしくは必要に応じて問い合わせ、更新されたデータがあれば取得して自装置内に保存する。
本実施形態では、サーバ機能が複合機110上で動作するとして説明するが、サーバ機能が他の複合機や、PC等の他の装置上で動作するようにしても良い。また、レプリケーションサーバ機能が複合機111で動作するとして説明するが、他の複合機や、PC等の他の装置で動作するようにしても良い。また、クライアントとして図1に示す複合機110、111、112以外の装置が用いられても良い。また、本実施形態では、複合機110で管理されるデータとして複合機内の所定の種別の設定データ(後述)を説明するが、種別は限定されるものではなく、他の種別の設定データが用いられても良い。
図2は、複合機110、111、112の構成を示すブロック図である。複合機110、111、112は、共通の構成を有し、以下、複合機110を複合機110、111、112の代表例として説明する。
複合機110は、コントローラユニット200、操作部220、スキャナ230、プリンタ240を含む。コントローラユニット200には、操作部220が接続されるとともに、画像入力デバイスであるスキャナ230や画像出力デバイスであるプリンタ240が接続される。
コントローラユニット200は、CPU202を有し、複合機100を統括的に制御する。CPU202は、ROM206に記憶されているブートプログラムによりOSを起動する。コントローラユニット200は、起動されたOS上で、例えば、HDD205に記憶されているアプリケーションプログラムを実行し、複合機100の各種動作を実現する。RAM203は、CPU202の作業領域として用いられる。HDD205やROM206は、アプリケーションプログラムや各種データを記憶する。本実施形態の動作は、例えば、CPU202がHDD205やROM206に記憶されているプログラムをRAM203に読み出して実行することにより実現される。
操作部インタフェース(I/F)201は、操作部220とのインタフェースであり、操作部220に表示を行うためのデータを送出したり、操作部220でユーザにより入力された情報をCPU202に送信する。操作部220は、タッチパネルやハードウェアキー等を有し、ユーザからの操作を受付けたり、複合機110の装置情報やジョブ進捗情報、各種ユーザインタフェース画面等を表示する。
デバイスI/F204は、スキャナ230およびプリンタ240と接続され、読取や記録のための制御信号や設定情報の入出力を行う。ネットワークI/F207は、LAN等のネットワーク100に接続され、ネットワーク100上の各装置との間での通信を可能とする。画像処理部208は、スキャナ230から入力された読取データやプリンタ240へ出力する対象の画像データに対する、補正、画像回転、画像圧縮、解像度変換、色空間変換、階調変換などの画像処理を行う。システムバス210は、コントローラユニット200内の各ブロックを相互に接続する。
複合機110の構成は、図2に示す構成に限られず、複合機110の実行可能な機能に応じて適宜、ブロックが構成される。例えば、FAXやボックス機能を実行可能な場合には、それらの機能に応じたブロックが構成され、CPU202により制御される。
図3は、複合機110上で動作するサーバ機能を実現するデータ管理サーバアプリケーションのブロック構成を示す図である。データ管理サーバアプリケーション300は、送受信部301、制御部302、解析部303、データ処理部304を含み、ネットワークI/F207を介してデータ同期クライアント320とデータの送受信を行う。データ同期クライアント320は、サーバ機能を有する複合機110に対するクライアントとして動作する複合機上で動作する。
送受信部301は、ネットワークI/F207を介して処理要求を受信したり、その処理の結果を送信する。制御部302は、処理要求に応じた処理の実行を制御する。解析部303は、送受信部301で受け付けた処理要求を解析する。データ処理部304は、送受信部301で受け付けた処理要求に応じてデータ管理部310と通信してデータの作成/更新/削除/参照を実行する。データ管理部310の管理対象のデータは、HDD205やRAM203などの記憶部に保存される。
データ管理サーバアプリケーション300、データ管理部310、データ同期クライアント320は、RAM203、HDD205、ROM206のいずれかの記憶部に記憶され、CPU202により実行される。
データ管理サーバアプリケーション300は、複合機110の設定データのうち、「デバイス基本データ」、「デバイス設定データ」、「パーソナライズデータ」を管理する。「デバイス基本データ」は、データ管理システム10に登録された各複合機の装置識別番号やバージョンなどの装置固有のデバイス情報に関するデータである。「デバイス設定データ」は、各複合機のネットワーク設定やプリンタ動作に関する設定など、装置の設定情報に関するデータである。「パーソナライズデータ」は、各複合機を使用するユーザ自身が用いるデータであり、例えば表示言語やショートカットボタンなどのデータである。
データ管理サーバアプリケーション300は、それらの設定データをデータ管理部310のデータベース(DB)に格納し、一旦、複合機111にデータ管理部310のデータベースを複製(初期レプリケーション)する。その後、データ管理部310のデータベースの一部のデータの更新情報が随時、複合機111に送信されてレプリケーション開始される。本実施形態では、データ管理部310へのデータ更新が一定回数実行された場合や、前回のレプリケーション実行から一定時間経過した場合にレプリケーションが行われる、いわゆる非同期レプリケーションが実行される場合を説明する。
データ管理サーバアプリケーション300は、上記のような設定データのバックアップ指示を受け付けた場合、データ管理部310に格納しているデータベースのバックアップを実行する。また、データ管理サーバアプリケーション300は、バックアップされたデータベースのリストア指示を受け付けた場合、リストア指示で指定されたバックアップデータを用いて、データ管理部310で現在使用しているデータベースに対してリストアを実行する。
以下、データ管理サーバアプリケーション300の管理対象の設定データの一例としてデバイス基本データを説明する。表1は、データ管理サーバアプリケーション300により、データ同期を行う各複合機の個体を管理する登録デバイス管理データベースの内容を示す。登録デバイス管理データベースは、データ同期を行う各複合機を一意に識別するためのデバイスIDと、複合機110の個体を識別する個体識別子とを含む。
Figure 0006905321
表2は、データ管理サーバアプリケーション300により管理する、複合機の個体毎のデバイス基本データの項目データベースの内容を示す。デバイス基本データの項目データベースは、各複合機の個体を識別する個体識別子、機種名、ファームウェアのバージョン、利用可能な機能を表すライセンス、アクセサリ、個体が同期しているか一時停止中であるかを表す同期稼働状態などの情報を含む。
Figure 0006905321
本実施形態では、レプリケーション先となる複合機111上では、レプリケーションの対象となるデータベース(レプリケーションデータベース)を管理するためのレプリケーションサーバ機能が搭載される。図4は、レプリケーションサーバ機能を実現するレプリケーションサーバアプリケーション400のブロック構成を示す図である。レプリケーションサーバアプリケーション400、データ管理部410は、RAM203、HDD205、ROM206のいずれかの記憶部に記憶され、CPU202により実行される。
バックアップはある時点の状態を保存しておくことを目的としているので、ユーザがバックアップデータの作成を指示したタイミングでバックアップデータを作成し、作成されたバックアップデータは、定期的に更新されない。それに対し、レプリケーションは、現在のデータ管理サーバアプリケーション300が管理するデータをミラーリングすることを目的としているので、レプリケーションサーバアプリケーション400のレプリケーションデータは、定期的に更新される。
レプリケーションサーバアプリケーション400は、送受信部401、制御部402、解析部403、データ処理部404を含み、ネットワークI/F207を介してデータ管理サーバアプリケーション300とデータの送受信を行う。
送受信部401は、ネットワークI/F207を介して処理要求を受信したり、その処理の結果を送信する。制御部402は、処理要求に応じた処理の実行を制御する。解析部403は、送受信部401で受け付けた処理要求を解析する。データ処理部404は、送受信部401で受け付けた処理要求に応じてデータ管理部410と通信してデータの作成/更新/削除/参照を実行する。データ管理部410の管理対象のデータは、HDD205やRAM203などの記憶部に保存される。
レプリケーションサーバアプリケーション400は、複合機111のRAM203、HDD205、ROM206のいずれかの記憶部に記憶され、CPU202により実行される。本実施形態では、レプリケーションサーバアプリケーション400の解析部403は、データ管理サーバアプリケーション300からレプリケーションのために送信されたレプリケーション用データを解析する。
例えばデータ管理サーバアプリケーション300から送信されたレプリケーション用データがレプリケーションの初期同期用のデータベースである場合、レプリケーション用データに含まれるデータベースにデータ管理部410のデータベースが置き換えられる。一方、レプリケーション用データがレプリケーションのための差分を示す差分データである場合、差分の内容に応じて、データ管理部410のデータベースが更新される。
以下、サーバ機能を実現するデータ管理サーバアプリケーション300が複合機110で動作し、複合機110、111、112がクライアントとして登録されているとする。そして、レプリケーションサーバ機能を実現するレプリケーションサーバアプリケーション400が複合機111で動作し、複合機110のサーバ機能のレプリケーション先として複合機111が設定されているとする。そして、レプリケーションは、マスタデータであるデータベースについて行われるとする。
図5は、データ管理サーバアプリケーション300がレプリケーションを開始している状態で、リストア指示を受け付けた場合の処理を示すフローチャートである。図5の処理は、例えば、複合機110のCPU202がHDD205やROM206に記憶されているプログラムをRAM203に読み出して実行することにより実現される。
図5の処理は、データ管理サーバアプリケーション300がリストア指示を受け付けたときに開始する。ここで、リストアするバックアップ用データベースは、データ管理サーバアプリケーション300が動作する複合機110のHDD205に保存されていても良いし、他の複合機やファイルサーバ等に保存されていても良い。
S501で、制御部302は、リストア指示で指定されるバックアップ用データベースを特定する。S502で、制御部302は、特定されたバックアップ用データベースが、データ管理サーバアプリケーション300が動作する複合機110内に保存されているか否かを判定する。複合機110内に保存されていると判定された場合、S504へ進み、複合機110内に保存されていないと判定された場合、S503へ進む。
S503で、制御部302は、S501で特定されたバックアップ用データベースを複合機110のHDD205に保存するようデータ処理部304に要求する。データ処理部304は、データ管理部310を介して、要求されたバックアップ用データベースを取得してHDD205に保存し、S504へ進む。
S504で、制御部302は、データベースのリストア処理を実行する。データベースのリストア処理は、図6において説明する。データベースのリストア処理が終了すると、S505へ進む。
S505で、制御部302は、サーバ機能にレプリケーション先が設定されているか否かを判定する。レプリケーション先が設定されていると判定された場合、S506へ進み、レプリケーション先が設定されていないと判定された場合、図5の処理を終了する。
S506で、制御部302は、データ処理部304にレプリケーション用データの設定を要求する。データ処理部304は、レプリケーションに成功していないレプリケーション用の差分データが存在する場合、そのレプリケーション用の差分データを削除する。ここで、レプリケーションに成功していないレプリケーション用の差分データとは、S504でのリストア処理の実行前に差分が生じていたがまだレプリケーション先にレプリケーションされていない差分情報を示すデータである。差分データは、例えば、バイナリログから抽出される更新用データである。データ処理部304は、リストア処理が行われたデータベースファイルを複製し、レプリケーション用データに設定して保存し、S507へ進む。
リストア処理が行われたデータベースファイルを複製してレプリケーション用データに設定する際には、レプリケーション先がレプリケーション用データに含まれるデータが差分データ若しくはデータベースかを判別可能となるような情報を合わせて設定する。例えば、ファイル名を「.database」として差分データと区別可能にしても良い。若しくは、差分データ若しくはデータベースであることを示すフラグ情報をレプリケーション用データに付加するようにしても良い。
S507で、制御部302は、レプリケーション処理を実行する。レプリケーション処理は、図7において説明する。レプリケーション処理が終了すると、図5の処理を終了する。
図6は、図5のS504のデータベースのリストア処理を示すフローチャートである。S601で、制御部302は、データ管理部310で管理されるデータベースへのアクセスを他から行えないように、データ処理部304にアクセスロックを要求する。データ処理部304は、データベースが変更されないようにアクセスロックを行うと、S602へ進む。
S602で、制御部302は、データ処理部304に、データ管理部310が管理する現在使用中のデータベースの、S501で特定されたバックアップ用データベースへの置換えを要求する。データ処理部304は、現在使用中のデータベースをバックアップ用データベースに置き換え、S603へ進む。S603で、制御部302は、データベースへのアクセスロックの解除をデータ処理部304に要求する。データ処理部304は、アクセスロックを解除し、S604へ進む。
S604で、制御部302は、バックアップ用データベースが複合機110の機器内に残っているか否かを確認する。機器内に残っていると判定された場合、S605へ進み、残っていないと判定された場合、図6の処理を終了する。
S605で、制御部302は、残っているバックアップ用データベースを削除するようデータ処理部304に要求する。データ処理部304は、データ管理部310を介して、バックアップ用データベースをHDD205から削除し、図6の処理を終了する。
図7は、図5のS507のレプリケーション処理を示すフローチャートである。S701で、制御部302は、送受信部301にレプリケーション先として設定されている複合機111のレプリケーションサーバアプリケーション400に対して、起動しているか否かの問い合わせの送信を要求する。送受信部301は、複合機111のレプリケーションサーバアプリケーション400に対して問い合わせを送信する。送受信部301が問い合わせ結果を受信すると、S702へ進む。
S702で、制御部302は、レプリケーションサーバアプリケーション400からの問い合わせ結果を示す応答に基づいて、レプリケーションサーバアプリケーション400が起動しているか否かを判定する。起動していると判定された場合、S703へ進み、起動していないと判定された場合、再度、起動の確認を行うためにS701からの処理を繰り返す。ここで、例えば、任意の回数起動していないと判定された場合には、所定時間の経過後に再度レプリケーション処理を実行するようにしても良いし、レプリケーション処理が失敗したことを操作部220に通知して図7の処理を終了するようにしても良い。
S703で、制御部302は、データ処理部304に、レプリケーション用データの取得を要求する。データ処理部304は、データ管理部310を介してレプリケーション用データを取得し、S704へ進む。
S704で、制御部302は、S703で取得したレプリケーション用データの送信を送受信部301に指示する。送受信部301は、データ処理部304が取得したレプリケーション用データをレプリケーションサーバアプリケーション400に送信し、S705へ進む。
S705で、送受信部301は、レプリケーションサーバアプリケーション400からのレプリケーション結果を示す応答を受信する。制御部302は、受信した応答がレプリケーションの成功を示すか否かを判定する。レプリケーションの成功を示すと判定された場合、S706へ進み、成功でない、即ち失敗を示すと判定された場合、再度、レプリケーション用データを送信するためにS704からの処理を繰り返す。ここで、レプリケーション通信の結果に応じて処理を切り替えるようにしても良い。例えば、タイムアウトエラーやサーバビジーエラーなど、再送すれば成功する可能性があると判定した場合、所定時間の経過後に再度、S704からの処理を繰り返すようにしても良い。また、データ解析エラーが複数回発生するなど、再送しても成功する可能性がないと判定した場合、レプリケーション処理が失敗したことを操作部220に通知して図7の処理を終了するようにしても良い。
S706で、データ処理部304は、データ管理部310を介して、レプリケーション用データを削除し、S707へ進む。S707で、制御部302は、レプリケーション管理情報を初期化する。レプリケーション管理情報は、例えば、前回のレプリケーション成功時からのデータベース更新件数、前回のレプリケーション成功時からの経過時間の情報である。S707では、制御部302は、例えば、初期化として、前回のレプリケーション成功時からのデータベース更新件数、前回のレプリケーション成功時からの経過時間をゼロに書き換える。そして、制御部302は、レプリケーション管理情報に含まれる最終レプリケーション成功時刻を現在の時刻で更新し、図7の処理を終了する。
図8は、レプリケーションサーバアプリケーション400が、データ管理サーバアプリケーション300からレプリケーション要求を受け付けた場合の処理を示すフローチャートである。図8の処理は、例えば、複合機111のCPU202が、HDD205やROM206に記憶されたプログラムをRAM203に読み出して実行することにより実現される。図8の処理は、レプリケーションサーバアプリケーション400がレプリケーション要求(レプリケーション用データ)を受信すると開始する。
S801で、送受信部401は、レプリケーション要求を受信すると、制御部402にその受信の旨を通知する。制御部402は、受信したレプリケーション用データの解析を解析部403に指示する。解析部403は、受信したレプリケーション用データのデータ形式を確認し、データ種別の判定を行う。
本実施形態では、解析部403は、例えば、ファイル名を確認し、「.database」が含まれていれば、データ種別がデータベースであると判定しても良い。若しくは、レプリケーション用データの所定の領域に含まれるフラグ情報を確認し、そのフラグ情報がデータベースであることを示している場合に、データ種別がデータベースであると判定しても良い。若しくは、レプリケーション用データのデータサイズを確認し、そのデータサイズが閾値以上であるならば、データ種別がデータベースであると判定しても良い。若しくは、レプリケーション用データに、ある時刻以降の更新であることを示す情報の有無を確認し、その情報を検出したならば、データ種別を差分データであると判定し、当該情報を検出しなかったならば、データ種別をデータベースであると判定しても良い。また、データ種別を判定するための他の方法が用いられても良い。解析部403は、例えば、上記のファイル名/フラグ情報/データサイズ/情報が確認できなかったり、適切に取得できなかった場合には、解析結果を失敗であるとして制御部402に通知する。
解析部403は、解析結果とデータ種別とを制御部402に通知し、S802へ進む。S802で、制御部402は、解析結果が成功であるか否かを判定し、成功であると判定された場合、S803へ進み、失敗であると判定された場合、S808へ進み、処理結果が解析失敗である旨を記録する。
S803で、制御部402は、通知されたデータ種別がデータベースであるか、若しくは差分データであるかを判定する。データ種別がデータベースであると判定された場合、S804へ進み、データ種別が差分データであると判定された場合、S805へ進む。
S804で、制御部402は、データ処理部404に、データ管理部410が管理する現在使用中のレプリケーションデータベースの、受信したレプリケーション用データに含まれるバックアップ用データベースへの置換えを要求する。データ処理部404は、現在使用中のレプリケーションデータベースの、バックアップ用データベースへの置換え処理を実行する。データ処理部404は、置換え処理の処理結果を制御部402に通知し、S806へ進む。
一方、S805で、制御部402は、データ処理部404に、受信したレプリケーション用データに含まれる差分データの、データ管理部410が管理する現在使用中のレプリケーションデータベースへの反映を要求する。データ処理部404は、差分データを用いてレプリケーションデータベースの更新処理を実行する。データ処理部404は、更新処理の処理結果を制御部402に通知し、S808へ移行する。
S806で、制御部402は、S804の処理結果が成功であるか若しくは失敗であるかを判定する。成功であると判定された場合、S807へ進み、失敗であると判定された場合、置換え失敗の旨を制御部402に通知し、S808へ進む。
S807で、制御部402は、置換え前のレプリケーションデータベースの削除をデータ処理部404に指示する。データ処理部404は、データ管理部410を介して置換え前のレプリケーションデータベースをHDD207から削除し、置換え成功の旨を制御部402に通知し、S808へ進む。
S808で、制御部402は、データ解析部403もしくはデータ処理部404に依頼した処理結果を、レプリケーション処理の処理結果として記録し、S809へ進む。S809で、制御部402は、S808で記録した処理結果を送受信部401に通知する。送受信部401は、レプリケーション元に処理結果を送信し、図8の処理を終了する。
以上のように、本実施形態では、データ管理サーバアプリケーション300がレプリケーション先が設定されている状態でリストア処理が実行された場合、リストア処理が完了後のデータベースをレプリケーション先にレプリケーションする。これにより、データ管理サーバアプリケーション300のリストア処理後のデータベースと、レプリケーションサーバアプリケーション400のレプリケーションデータベースとの整合性を保つことができる。
また、非同期レプリケーションが実行されている際にデータ更新件数が所定回数に達していない場合、一時的にデータ管理サーバアプリケーション300とレプリケーションサーバアプリケーション400の間に、データベース上の差分が生じる。その際、本実施形態では、リストア処理前のまだレプリケーションされていない差分データはレプリケーションされず、リストア処理後のデータベースがレプリケーションされる。その結果、リストア処理前のまだレプリケーションされていない差分データをレプリケーションしてしまうことがなくなり、且つ、リストア処理後のデータベースは上記のように同期されるので、以降のレプリケーションを適切に行うことができる。また、リストア処理前のまだレプリケーションされていない差分データをレプリケーションする必要がある場合には、以降のレプリケーションにおいて更新情報として送信するようにしても良い。
[第2の実施形態]
本実施形態では、データ管理サーバアプリケーション300がレプリケーションしている状態でリストアが実行された場合におけるレプリケーション処理の他の構成について説明する。本実施形態では、リストアが指示されたバックアップ用データベースをレプリケーションサーバアプリケーション400に複製し、その後、リストア処理を実行する。以下、第1の実施形態と異なる点について説明する。
図9は、データ管理サーバアプリケーション300がレプリケーションを開始している状態でリストア指示を受け付けた場合の処理を示すフローチャートである。図9の処理は、例えば、複合機110のCPU202がHDD205やROM206に記憶されているプログラムをRAM203に読み出して実行することにより実現される。図9の処理は、データ管理サーバアプリケーション300がリストアの指示を受け付けると、開始する。
図9のS501〜S503は、図5における説明と同じであるので、その説明を省略する。本実施形態では、S502で複合機110内に保存されていると判定された場合、及び、S503の処理後は、S505へ進む。
S505で、制御部302は、サーバ機能にレプリケーション先が設定されているか否かを判定する。レプリケーション先が設定されていると判定された場合、S901へ進み、レプリケーション先が設定されていないと判定された場合、S504へ進む。
S901で、制御部302は、データ処理部304に、レプリケーション用データの設定を要求する。データ処理部304は、レプリケーションに成功していないレプリケーション用の差分データが存在する場合には、レプリケーション用の差分データを削除する。そして、データ処理部304は、S501で特定したバックアップ用データベースのデータベースファイルを複製し、レプリケーション用データに設定して保存し、S507へ進む。レプリケーション用データの設定については、第1の実施形態のS506における説明と同じである。
S507で、第1の実施形態と同様に、図7で説明したレプリケーション処理が実行される。レプリケーション処理の実行後、S504へ進む。S504で、第1の実施形態と同様に、図6で説明したデータベースのリストア処理が実行される。データベースのリストア処理が終了すると、図9の処理を終了する。
以上のように、リストア処理を指示されたバックアップ用データベースをレプリケーションサーバアプリケーション400にレプリケーションによる複製後、リストア処理が実行される。また、上記では、S507の処理後にS504のリストア処理が実行されているが、S507でレプリケーションサーバアプリケーション400にデータを送信して結果を受信するまでの間で、S504のリストア処理を行うようにしても良い。その結果、レプリケーション用データの送信と並行してリストア処理が行われるので、処理効率を向上させることができる。
[第3の実施形態]
データ管理サーバアプリケーション300でリストア処理を実行する時点で、データ同期をしている複合機110の物理的な構成情報が変更されている場合がある。その場合にリストア処理を実行すると、複合機110の物理的な構成情報と、データ管理サーバアプリケーション300が持つデバイス基本データとが不整合状態になってしまう。リストア処理前に保持していたデバイス基本データで置換えた後のバックアップ用データベースを用いてリストア処理を実行すると、上記の不整合状態は解消される。しかしながら、リストア処理後のデータベースの内容はレプリケーションされないので、レプリケーション先との間で不整合状態となってしまう。
以下、上記のような不整合状態を防ぐために、リストア処理時にデータ管理サーバアプリケーション300がデバイス基本データを更新する場合におけるレプリケーション処理の構成について説明する。以下、他の実施形態と異なる点について説明する。
図10は、データ管理サーバアプリケーション300がレプリケーションを開始している状態でリストア指示を受け付けた場合の処理を示すフローチャートである。図10の処理は、例えば、複合機110のCPU202がHDD205やROM206に記憶されているプログラムをRAM203に読み出して実行することにより実現される。図10の処理は、データ管理サーバアプリケーション300がリストア指示を受け付けたときに開始する。
図10のS501〜S505、および、S901後のS507までの処理は、図5及び図9における説明と同じであるので、その説明を省略する。本実施形態では、S505でレプリケーション先が設定されていないと判定された場合、及び、S507の処理後は、S1001へ進む。
S1001で、制御部302は、デバイス基本データの更新、及び、データベースのリストア処理を実行する。デバイス基本データの更新、及び、データベースのリストア処理は、図11において説明する。デバイス基本データの更新、及び、データベースのリストア処理の終了後、S1002へ進む。
S1002で、制御部302は、サーバ機能にレプリケーション先が設定されているか否かを判定する。さらに、制御部302は、S1001でデータベースの更新があったか否かを判定する。S1002で、レプリケーション先が設定されており且つデータベースの更新があったと判定された場合、S1003へ進む。一方、それ以外の場合、図10の処理を終了する。例えば、レプリケーション先が設定されていない若しくはデータベースの更新がなかったと判定された場合には、図10の処理を終了する。
S1003で、制御部302は、データ処理部304に、レプリケーションしていないデータベースの更新内容の取得を要求する。データ処理部304は、S507のレプリケーション処理後に更新された内容を差分データとしてデータ管理部310から取得し、その差分データをレプリケーション用データに設定し、S1004へ進む。
S1004で、第1の実施形態と同様に、図7で説明したレプリケーション処理が実行される。レプリケーション処理が終了すると、図10の処理を終了する。
図11は、図10のS1001のデバイス基本データの更新、及び、データベースのリストア処理を示すフローチャートである。
S601では、図6の説明と同様に、制御部302は、データ管理部310で管理されるデータベースへのアクセスを他から行えないように、データ処理部304にアクセスロックを要求する。本実施形態では、データ処理部304がデータベースが変更されないようにアクセスロックをすると、S1101へ進む。
S1101で、制御部302は、データ処理部304に、デバイス基本データの待避を要求する。データ処理部304は、データ管理部310からデバイス基本データを取得し、記憶部のテンポラリ領域に退避して保存し、S602へ進む。
S602では、図6の説明と同様に、制御部302は、データ処理部304に、データ管理部310が管理する現在使用中のデータベースの、図10のS501で特定したバックアップ用データベースへの置き換えを要求する。データ処理部304は、現在使用中のデータベースをバックアップ用データベースに置き換え、S1102へ進む。
S1102で、制御部302は、データ処理部304を介して、テンポラリ領域に保存したデバイス基本データから未選択のデバイス基本データが存在するか否かを判定する。未選択のデバイス基本データが存在すると判定された場合、S1103へ進み、存在しないと判定された場合、S1106へ進む。なお、S1102の処理の実行が1回目である場合は、S1103に進むことになる。S1103で、制御部302は、未選択のデバイス基本データのうちの1つを選んで選択済みに設定し、S1104へ進む。
S1104で、制御部302は、S1103で選択したデバイス基本データに含まれている個体識別子を取得する。データ処理部304は、選択されたデバイス基本データの個体識別子が、置換え後のデータベース内のデバイス基本データに含まれているか否かを判定する。含まれていると判定された場合、S1105へ進み、含まれていないと判定された場合、S1102からの処理を繰り返す。
S1105で、制御部302は、S1103で選択したデバイス基本データで、データベースを更新するようデータ処理部304に要求する。データ処理部304は、要求されたデバイス基本データを用いてデバイス基本データを上書きするように、データ管理部310を介してデータベースの更新を実行する。データベースを更新すると、S1102からの処理を繰り返す。
S1106で、データ処理部304は、S1101でテンポラリ領域に保存したデバイス基本データを削除し、S603へ進む。S603〜S605の処理は、図6における説明と同じであるので、その説明を省略する。
以上のように、データ管理サーバアプリケーション300でリストア処理を実行時に、バックアップ用データベースの置換え処理に加えてデータ更新が発生する場合であってもレプリケーション先のデータベースとの整合性を保つことができる。ここで、リストア処理の実行を開始する段階でレプリケーション先とのデータベースの差分が存在しない場合には、バックアップ用データベースを送信後、レプリケーションサーバアプリケーション400でデバイス基本データの更新を行うようにしても良い。この場合であっても整合性を保ったままリストア処理を実行することができる。
本実施形態では、S1101でテンポラリ領域に退避して保存するデータとして、デバイス基本データを説明したが、特にデバイス基本データに限られず、例えば「デバイス設定データ」、「パーソナライズデータ」であっても良い。
また、本実施形態では、S507でバックアップ用データベースをレプリケーションし、その後、S1004でデバイス基本データの更新情報をレプリケーションしている。しかしながら、バックアップ用データベースのリストア処理後に、デバイス基本データをそのリストア処理後のデータベースに更新し、更新後のデータベースファイルをレプリケーション用データに複製して設定し、レプリケーションしても良い。そのような構成の場合、図10のS503の後、S505、S901、S507の処理は行われず、S1001の処理が実行される。そして、S1001でリストア処理とデバイス基本データの更新が行われる。そして、S1003では、更新されたデータベースファイルが複製されてレプリケーション用データに設定され、S1004では、そのレプリケーション用データによりレプリケーション処理が実行される。そのような構成により、レプリケーション先へのレプリケーションは1回で済む。
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
110、11、112 複合機: 202 CPU: 203 RAM: 206 ROM

Claims (16)

  1. 複数のクライアント端末との間で該複数のクライアント端末各々の構成に応じたデータ同期を行うためのマスタデータベースを保持する第1のデータ管理装置と、前記マスタデータベースをミラーリングしておくためのレプリケーションデータベースを保持する第2のデータ管理装置と、を含むデータ管理システムであって、
    前記第1のデータ管理装置は、
    前記複数のクライアント端末との間での前記データ同期により前記マスタデータベースのデータの一部が更新されている場合、該更新前と該更新後の差分を示すデータを、前記レプリケーションデータベースのための更新用データとして前記第2のデータ管理装置に送信する第1の送信手段と、
    リストアの指示に応じて、前記マスタデータベースをリストアするためのバックアップ用データを取得する取得手段と、
    前記取得手段により取得された前記バックアップ用データにより、前記マスタデータベースをリストアするリストア手段と、
    前記リストア手段によりリストアされたマスタデータベースのすべてのデータを前記レプリケーションデータベースのための更新用データとして前記第2のデータ管理装置に送信する第2の送信手段と、を備え、
    前記第2のデータ管理装置は、
    前記第1の送信手段により送信された前記差分を示すデータに基づいて、前記レプリケーションデータベースを更新する更新手段と、
    前記第2の送信手段により送信された前記リストアされたマスタデータベースのすべてのデータに基づいて、前記レプリケーションデータベースのすべてのデータを、前記リストアされたマスタデータベースのすべてのデータに置き換える置換手段と、
    を備えることを特徴とするデータ管理システム。
  2. 前記第2のデータ管理装置は、
    前記第1のデータ管理装置から送信された前記更新用データが、前記差分を示すデータであるか、若しくは、前記リストアされたマスタデータベースのすべてのデータであるかを判定する判定手段、をさらに備え、
    前記置換手段は、前記判定手段により前記リストアされたマスタデータベースのすべてのデータであると判定された場合、前記レプリケーションデータベースのすべてのデータを、前記リストアされたマスタデータベースのすべてのデータに置き換える、
    ことを特徴とする請求項1に記載のデータ管理システム。
  3. 前記更新手段は、前記判定手段により前記差分を示すデータであると判定された場合、前記差分を示すデータに基づいて、前記レプリケーションデータベースを更新することを特徴とする請求項2に記載のデータ管理システム。
  4. 前記差分を示すデータは、前記マスタデータベースの一部および前記レプリケーションデータベースの一部を更新するためのデータであることを特徴とする請求項3に記載のデータ管理システム。
  5. 前記第2の送信手段が前記更新用データとして前記バックアップ用データを送信した場合、前記リストア手段は、前記バックアップ用データの送信後、前記バックアップ用データにより前記マスタデータベースをリストアすることを特徴とする請求項1乃至4のいずれか1項に記載のデータ管理システム。
  6. 前記第2のデータ管理装置は、
    前記置換手段による置換えの結果を前記第1のデータ管理装置に送信する第3の送信手段、をさらに備え、
    前記第1のデータ管理装置は、
    前記第3の送信手段により送信された前記置換手段による置換えの結果が当該置換えの成功を示す場合、前記第1のデータ管理装置内のレプリケーション管理情報を更新する、
    ことを特徴とする請求項1乃至5のいずれか1項に記載のデータ管理システム。
  7. 前記第1のデータ管理装置は、前記レプリケーション管理情報の更新において、前記レプリケーション管理情報のうち、前回のレプリケーションからの更新情報を削除し、レプリケーションの時刻を、前記第1のデータ管理装置から送信された前記リストアされたマスタデータベースのすべてのデータに基づくレプリケーションの時刻で更新することを特徴とする請求項6に記載のデータ管理システム。
  8. 前記リストア手段は、前記マスタデータベースのうち所定のデータを退避させてから、前記バックアップ用データにより前記マスタデータベースをリストアし、
    前記第1のデータ管理装置は、
    前記リストア手段によりリストアが行われたマスタデータベースを、前記所定のデータで更新する第2の更新手段と、
    前記所定のデータを前記差分を示すデータとし、当該差分を示すデータを前記更新用データとして前記第2のデータ管理装置に送信する第3の送信手段と、
    をさらに備えることを特徴とする請求項1乃至7のいずれか1項に記載のデータ管理システム。
  9. 前記所定のデータは、前記第1のデータ管理装置の管理対象の端末のデバイス情報を含むことを特徴とする請求項8に記載のデータ管理システム。
  10. 前記マスタデータベースと前記バックアップ用データは、互いに対応することを特徴とする請求項1乃至9のいずれか1項に記載のデータ管理システム。
  11. 前記マスタデータベースのミラーリングは、前記第1のデータ管理装置と前記第2のデータ管理装置との間で非同期で行われることを特徴とする請求項1乃至10のいずれか1項に記載のデータ管理システム。
  12. 複数のクライアント端末との間で該複数のクライアント端末各々の構成に応じたデータ同期を行うためのマスタデータベースを保持するデータ管理装置であって、
    前記複数のクライアント端末との間での前記データ同期により前記マスタデータベースのデータの一部が更新されている場合、該更新前と該更新後の差分を示すデータを、前記マスタデータベースをミラーリングしておくためのレプリケーションデータベースのための更新用データとして、前記レプリケーションデータベースを保持する他のデータ管理装置に送信する第1の送信手段と、
    リストアの指示に応じて、前記マスタデータベースをリストアするためのバックアップ用データを取得する取得手段と、
    前記取得手段により取得された前記バックアップ用データにより、前記マスタデータベースをリストアするリストア手段と、
    前記リストア手段によりリストアされたマスタデータベースのすべてのデータを前記更新用データとして前記他のデータ管理装置に送信する第2の送信手段と、
    を備えることを特徴とするデータ管理装置。
  13. 複数のクライアント端末との間で該複数のクライアント端末各々の構成に応じたデータ同期を行うためのマスタデータベースであって他の装置で保持される前記マスタデータベースをミラーリングしておくためのレプリケーションデータベースを保持する装置であって、
    前記他の装置から前記レプリケーションデータベースのための更新用データとして受信した、前記複数のクライアント端末との間での前記データ同期による前記マスタデータベースのデータの一部の更新前と更新後の差分を示すデータに基づいて、前記レプリケーションデータベースを更新する更新手段と、
    前記他の装置から前記更新用データとして受信したリストアされたマスタデータベースのすべてのデータに基づいて、前記レプリケーションデータベースのすべてのデータを、前記リストアされたマスタデータベースのすべてのデータに置き換える置換手段と、
    を備えることを特徴とする装置。
  14. 複数のクライアント端末との間で該複数のクライアント端末各々の構成に応じたデータ同期を行うためのマスタデータベースを保持する第1のデータ管理装置と、前記マスタデータベースをミラーリングしておくためのレプリケーションデータベースを保持する第2のデータ管理装置と、を含むデータ管理システムにおいて実行されるデータ管理方法であって、
    前記第1のデータ管理装置が、
    前記複数のクライアント端末との間での前記データ同期により前記マスタデータベースのデータの一部が更新されている場合、該更新前と該更新後の差分を示すデータを、前記レプリケーションデータベースのための更新用データとして前記第2のデータ管理装置に送信する第1の送信工程と、
    リストアの指示に応じて、前記マスタデータベースをリストアするためのバックアップ用データを取得する取得工程と、
    前記取得工程で取得された前記バックアップ用データにより、前記マスタデータベースをリストアするリストア工程と、
    前記リストア工程でリストアされたマスタデータベースのすべてのデータを前記レプリケーションデータベースのための更新用データとして前記第2のデータ管理装置に送信する第2の送信工程と、
    前記第2のデータ管理装置が、
    前記第1の送信工程で送信された前記差分を示すデータに基づいて、前記レプリケーションデータベースを更新する更新工程と、
    前記第2の送信工程で送信された前記リストアされたマスタデータベースのすべてのデータに基づいて、前記レプリケーションデータベースのすべてのデータを、前記リストアされたマスタデータベースのすべてのデータに置き換える置換工程と、
    を有することを特徴とするデータ管理方法。
  15. 複数のクライアント端末との間で該複数のクライアント端末各々の構成に応じたデータ同期を行うためのマスタデータベースを保持するデータ管理装置において実行されるデータ管理方法であって、
    前記複数のクライアント端末との間での前記データ同期により前記マスタデータベースのデータの一部が更新されている場合、該更新前と該更新後の差分を示すデータを、前記マスタデータベースをミラーリングしておくためのレプリケーションデータベースのための更新用データとして、前記レプリケーションデータベースを保持する他のデータ管理装置に送信する第1の送信工程と、
    リストアの指示に応じて、前記マスタデータベースをリストアするためのバックアップ用データを取得する取得工程と、
    前記取得工程で取得された前記バックアップ用データにより、前記マスタデータベースをリストアするリストア工程と、
    前記リストア工程においてリストアされたマスタデータベースのすべてのデータを前記更新用データとして前記他のデータ管理装置に送信する第2の送信工程と、
    を有することを特徴とするデータ管理方法。
  16. 請求項15に記載のデータ管理方法の各工程をコンピュータに実行させるためのプログラム。
JP2016198329A 2016-10-06 2016-10-06 データ管理システム、データ管理装置、装置、データ管理方法、およびプログラム Active JP6905321B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2016198329A JP6905321B2 (ja) 2016-10-06 2016-10-06 データ管理システム、データ管理装置、装置、データ管理方法、およびプログラム
US15/707,128 US10379789B2 (en) 2016-10-06 2017-09-18 Data management system that updates a replication database, data management apparatus, method, and storage medium storing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016198329A JP6905321B2 (ja) 2016-10-06 2016-10-06 データ管理システム、データ管理装置、装置、データ管理方法、およびプログラム

Publications (2)

Publication Number Publication Date
JP2018060414A JP2018060414A (ja) 2018-04-12
JP6905321B2 true JP6905321B2 (ja) 2021-07-21

Family

ID=61828860

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016198329A Active JP6905321B2 (ja) 2016-10-06 2016-10-06 データ管理システム、データ管理装置、装置、データ管理方法、およびプログラム

Country Status (2)

Country Link
US (1) US10379789B2 (ja)
JP (1) JP6905321B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109408295A (zh) * 2018-11-13 2019-03-01 郑州云海信息技术有限公司 一种基于分布式存储系统的克隆卷填充方法、装置及设备
JP6904412B2 (ja) * 2019-12-20 2021-07-14 日本電気株式会社 複製データ制御装置、複製データ制御システム、複製データ制御方法および複製データ制御プログラム
JP2023020675A (ja) * 2021-07-30 2023-02-09 富士フイルムビジネスイノベーション株式会社 画像形成装置及び画像形成プログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7210060B2 (en) * 2004-12-30 2007-04-24 Emc Corporation Systems and methods for restoring data
JP4843976B2 (ja) * 2005-03-25 2011-12-21 日本電気株式会社 レプリケーションシステムと方法
JP5914267B2 (ja) * 2012-09-04 2016-05-11 日本電信電話株式会社 データ復旧装置
JP6355330B2 (ja) * 2013-12-24 2018-07-11 キヤノン株式会社 ネットワークデバイス、ネットワークデバイスの制御方法およびそのプログラム
JP6506527B2 (ja) * 2014-10-14 2019-04-24 キヤノン株式会社 情報処理装置とデータ同期方法、データ同期システムおよびプログラム

Also Published As

Publication number Publication date
US20180101335A1 (en) 2018-04-12
US10379789B2 (en) 2019-08-13
JP2018060414A (ja) 2018-04-12

Similar Documents

Publication Publication Date Title
CN109558215B (zh) 虚拟机的备份方法、恢复方法、装置及备份服务器集群
US9229815B2 (en) Information processing apparatus, program update method, and program
JP6576071B2 (ja) 情報処理装置、サーバクライアントシステム、情報処理装置の制御方法及びプログラム
EP3121721B1 (en) Information processing apparatus, information processing system, control method for the information processing apparatus, and program
US20150178030A1 (en) Network device, control method for network device, and storage medium thereof
JP5602419B2 (ja) 画像形成装置、画像形成装置の制御方法及びプログラム
JP6905321B2 (ja) データ管理システム、データ管理装置、装置、データ管理方法、およびプログラム
JP6506527B2 (ja) 情報処理装置とデータ同期方法、データ同期システムおよびプログラム
US10911306B2 (en) Information processing apparatus, control method, and storage medium storing program
WO2016067520A1 (en) Information processing apparatus, control method thereof, and program
JP6639363B2 (ja) サーバ装置、情報処理方法及びプログラム
JP7179487B2 (ja) サーバ装置、制御方法及びプログラム
JP6482698B2 (ja) ネットワークデバイス、ネットワークデバイスの制御方法、及びプログラム
JP6727775B2 (ja) サーバ装置、制御システム、制御方法、及び、プログラム
JP6812249B2 (ja) 情報処理装置、情報処理方法及びプログラム
JP2021177356A (ja) 情報処理装置、情報処理装置の制御方法およびプログラム
JP6381218B2 (ja) ネットワークデバイス、ネットワークデバイスの制御方法およびそのプログラム
JP2016081161A (ja) 管理装置管理装置の制御方法、及びプログラム
JP6987503B2 (ja) システム、情報処理装置、情報処理方法及びプログラム
JP2021073542A (ja) 情報処理装置、情報処理方法及びプログラム
JP2014042149A (ja) 画像形成装置及びその制御方法、並びにプログラム
JP2021060934A (ja) 情報処理装置とその制御方法、設定値管理システムおよびプログラム
JP6296852B2 (ja) ネットワークデバイス、ネットワークデバイスの制御方法、及びプログラム
JP2019095854A (ja) システム及び機器管理方法
JP2019008461A (ja) 情報処理装置及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190926

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200709

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200717

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200915

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20210104

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20210103

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210113

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210331

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20210331

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20210408

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20210412

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210625

R151 Written notification of patent or utility model registration

Ref document number: 6905321

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151