JP5130386B2 - 代表的な情報を比較することによる効率的なデータベースの同期化 - Google Patents

代表的な情報を比較することによる効率的なデータベースの同期化 Download PDF

Info

Publication number
JP5130386B2
JP5130386B2 JP2011127769A JP2011127769A JP5130386B2 JP 5130386 B2 JP5130386 B2 JP 5130386B2 JP 2011127769 A JP2011127769 A JP 2011127769A JP 2011127769 A JP2011127769 A JP 2011127769A JP 5130386 B2 JP5130386 B2 JP 5130386B2
Authority
JP
Japan
Prior art keywords
data record
database
data
electronic device
portable electronic
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
JP2011127769A
Other languages
English (en)
Other versions
JP2011198385A (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.)
BlackBerry Ltd
Original Assignee
Research in Motion Ltd
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 Research in Motion Ltd filed Critical Research in Motion Ltd
Publication of JP2011198385A publication Critical patent/JP2011198385A/ja
Application granted granted Critical
Publication of JP5130386B2 publication Critical patent/JP5130386B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/40Data acquisition and logging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/275Synchronous replication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/273Asynchronous replication or reconciliation

Description

(分野)
本発明は、概して、携帯型の電子デバイスに関し、より具体的には、通信ネットワークにおいて具体化されたデータとの携帯型の電子デバイスにおけるデータの同期化に関する。
(背景)
携帯型の電子デバイス、例えば無線のパーソナルデジタルアシスタント(PDA)、スマートテレフォン、および無線能力を有するラップトップコンピュータは、様々な機能のための幅広い用途を獲得してきた。一般的に、そのようなデバイスは、データの転送を含む通信目的で用いられ、データ専用のネットワーク(例えば、MobitexおよびData TAC)から複雑な音声およびデータネットワーク(例えば、GSM/GPRS、CDMA、EDGE、UMTS、およびW−CDMAネットワーク)までの様々なネットワーク上で機能する。
これらの携帯型の電子デバイスは、一般的に、デバイスのユーザによって選択的に抽出され得るデータを格納するデータベースを含む。データは、一連のデータ記録を形成し、各データ記録は、1つ以上のフィールドを含む。デバイスの動作中、データは抽出および表示されたり、またはユーザが利用できるようにされたりする。データは、デバイスのユーザによって、改変、追加、または削除され得る。
電子デバイスに格納されたデータのバックアップを提供するために、データ格納装置における進歩に伴って、携帯型の電子デバイスが進歩した。デバイスをバックアップすることによって、電子デバイスにおけるデータの損失が起こった場合に、データが復元され得る。様々な電子デバイスは、これらの電子デバイスと例えばコンピューティングステーション(例えば、デスクトップコンピュータ)との間の固定(有線)接続を介する通信を経由することによって、バックアップされ得る。一旦データがコンピューティングステーションにおけるデータベースに格納されると、格納されたデータは、コンピューティングステーションにおけるユーザによって、改変、追加、または削除され得る。
その他の携帯型の電子デバイスは、携帯型の電子デバイスに格納されたデータのバックアップを、例えば上述のネットワークを用いることによって、無線ネットワークを経由して、コンピューティングステーションに提供する。このように、データが無線通信システムの無線通信チャネルを介して送信され、それによって携帯型の電子デバイスと遠隔局(有線接続によってリンクされていない局)との間の通信リンクを形成する。ここでもまた、一旦データがコンピューティングステーションにおけるデータベースに格納されると、格納されたデータは、コンピューティングステーションにおけるユーザによって、改変、追加、または削除され得る。このように、携帯型の電子デバイスのデータベースに格納されているデータがコンピューティングシステムにバックアップされる間に、データはまた、コンピューティングステーションから携帯型の電子デバイスに送信され、携帯型の電子デバイスのデータベースとコンピューティングステーションのデータベースとを同期化する。コンピューティングステーションに記録されているデータが携帯型の電子デバイス上に存在しないとき、またはコンピューティングステーションのデータ記録の内容(データ記録のフィールド)が携帯型の電子デバイスのデータ記録の内容と異なっているときに、追加的なデータ記録または異なるデータ記録が、携帯型の電子デバイスに転送される。同様に、携帯型の電子デバイス上に記録されたデータが、コンピューティングステーションに存在しないとき、または携帯型の電子デバイスのデータ記録の内容が、コンピューティングステーションのデータ記録の内容と異なっているときに、追加的なデータ記録または異なるデータ記録が、コンピューティングステーションに転送される。
無線通信チャネルを介するデータの同期化は、データが長い距離を介して遠隔的に通信され得るので、明らかに有利である。しかしながら、無線通信チャネルを介する従来のデータの同期化の方法は、不利を被っていた。そのようなデータの同期化は、帯域幅を非常に多く消費し得る。多数の記録が転送される場合、転送時間は、長時間であり得る。このことは、通信チャネルが、データ記録を転送するために長時間にわたって開かれ、それが高コストであり得るということを意味し得る。
データ記録が携帯型の電子デバイスから削除されるとき、コンピューティングステーションにおける対応するデータ記録を削除するために、データ記録削除指示が、携帯型の電子デバイスからコンピューティングステーションに送信される。携帯型の電子デバイスの動作中に多数の記録が削除されるとき、携帯型の電子デバイスは、いくつかのデータ記録削除指示(携帯型の電子デバイスのデータ記録の削除の各々に対し、1つのデータ記録削除指示が対応する)を転送するので、さらなる転送時間および帯域幅が必要になる。このように、データ記録の削除は全データ記録の転送を必要とするわけではないが、削除される各記録に対し、データ記録削除指示が送信されなければならない。
したがって、無線インターフェースによって接続されたデータベースの同期化に関する改善が必要とされる。
(概要)
本出願の一局面にしたがうと、第1のデータ記録を含む第1のデータベースと第2のデータ記録を含む第2のデータベースとを同期化する方法が提供され、第2のデータ記録を代表する情報を受信することと、第2のデータベースの第2のデータ記録との一方向性の同期化において、第1のデータベースの第1のデータ記録を改変することとを含み、改変することは、第1のデータベースに存在する第1のデータ記録のうちの一部のデータ記録を削除することを含み、この一部のデータ記録に対し、第2のデータベースにおいては対応する第2のデータ記録は存在しない。
本出願の別の局面にしたがうと、第1のデータ記録を含む第1のデータベースと第2のデータ記録を含む第2のデータベースとを同期化する装置が提供される。装置は、第1のデータ記録を第1のデータベースに格納するメモリデバイスと、メモリデバイスならびに送信および受信デバイスに動作可能なように接続されたプロセッサとを含み、このプロセッサは、第2のデータ記録を代表する情報を受信し、第2のデータベースの第2のデータ記録との一方向性の同期化において、第1のデータベースの第1のデータ記録を改変し、改変することは、第1のデータベースに存在する第1のデータ記録のうちの一部のデータ記録を削除することを含み、この一部のデータ記録に対し、第2のデータベースにおいては対応する第2のデータ記録は存在しない。
本出願の別の局面にしたがうと、コンピュータ読み取り可能な媒体が提供され、このコンピュータ読み取り可能な媒体は、媒体中に具体化されたコンピュータ読み取り可能なコードを有している。コンピュータ読み取り可能なコードは、プロセッサによって実行されると、第2のデータ記録を代表する情報を受信することと、第2のデータベースの第2のデータ記録との一方向性の同期化において、第1のデータベースの第1のデータ記録を改変することとを実行し、改変することは、第1のデータベースに存在する第1のデータ記録のうちの一部のデータ記録を削除することを含み、この一部のデータ記録に対し、第2のデータベースにおいては対応する第2のデータ記録が存在しない。
例えば、本発明は以下の項目を提供する。
(項目1)
第1のデータ記録を含む第1のデータベースと第2のデータ記録を含む第2のデータベースとを同期化する方法であって、該方法は、
該第2のデータ記録を代表する情報を受信することと、
該第2のデータベースの該第2のデータ記録との一方向性の同期化において、該第1のデータベースの該第1のデータ記録を改変することであって、該改変することは、該第1のデータベースに存在する該第1のデータ記録のうちの一部のデータ記録を削除することであって、該一部のデータ記録に対し、該第2のデータベースにおいては対応する第2のデータ記録が存在しない、ことを含む、ことと
を包含する、方法。
(項目2)
前記第2のデータ記録を代表する前記情報と共に同期化トリガを受信することを含む、項目1に記載の方法。
(項目3)
前記第1のデータベースの前記第1のデータ記録を改変することは、前記第2のデータベースに存在する第2のデータ記録に対応するさらなるデータ記録を、該第1のデータベースに書き込むことをさらに含み、該第2のデータ記録に対し、該第1のデータベースにおいては対応する第1のデータ記録が存在しない、項目1に記載の方法。
(項目4)
前記第1のデータベースの前記第1のデータ記録を改変することは、前記第2のデータ記録のうちの対応する一部のデータ記録とは異なる第1のデータ記録に対し、該第1のデータベースのそれらの第1のデータ記録を上書きし、該第2のデータ記録のうちの対応する一部のデータ記録を反映することをさらに含む、項目3に記載の方法。
(項目5)
前記第1のデータベースの前記第1のデータ記録を代表する情報と前記第2のデータ記録を代表する前記情報とを比較することと、
前記第1のデータ記録を改変する前に、該第2のデータ記録と該第1のデータ記録との間の差を決定することと
を含む、項目1に記載の方法。
(項目6)
差を決定することは、前記第1のデータ記録のうちの前記一部のデータ記録を削除する前に、前記第1のデータベースにおける第1のデータ記録の各々に対し、対応する第2のデータ記録が前記第2のデータベースに存在するかどうかを決定することを含む、項目5に記載の方法。
(項目7)
前記差を決定することは、前記第2のデータベースの前記第2のデータ記録のうちの一部のデータ記録に対応する第1のデータ記録が、前記第1のデータベースに存在しないかどうかを決定し、存在しない場合には、前記第2のデータ記録のうちの一部のデータ記録の送信を要求することを含む、項目5または項目6に記載の方法。
(項目8)
前記差を決定することは、その他の第1のデータ記録が前記第2のデータ記録の対応するその他の一部のデータ記録とは異なるかどうかを決定し、異なる場合には、該第2のデータ記録のうちのその他の一部のデータ記録の送信を要求することを含む、項目5〜項目7のいずれか一項に記載の方法。
(項目9)
前記第2のデータ記録のうちの一部のデータ記録を受信し、前記第1のデータベースに書き込むことを含む、項目7に記載の方法。
(項目10)
前記第2のデータ記録のうちのその他の一部のデータ記録を受信し、前記第1のデータ記録のうちの一部のデータ記録のそれぞれの上に上書きすることを含む、項目8に記載の方法。
(項目11)
前記第2のデータ記録を代表する情報を受信することは、該第2のデータ記録を代表するハッシュ情報を受信することを含む、項目6に記載の方法。
(項目12)
前記比較することは、前記第2のデータ記録を代表する前記ハッシュ情報と前記第1のデータ記録を代表する対応するハッシュ情報とを比較することを含む、項目11に記載の方法。
(項目13)
前記同期化トリガは、前記第2のデータ記録のうちの一部のデータ記録を削除するためのデータ記録削除命令を受信することを含む、項目2に記載の方法。
(項目14)
前記同期化トリガは、前記第2のデータ記録のうちの一部のデータ記録を削除するためのデータ記録削除命令を受信し、該第2のデータ記録のうちの一部のデータ記録の数と閾値とを比較し、該第2のデータ記録のうちの一部のデータ記録の該数が該閾値を超えているかどうかを決定することを含む、項目2に記載の方法。
(項目15)
前記同期化トリガは、前記第2のデータ記録を代表する情報と共に開始コマンドを受信することを含む、項目2に記載の方法。
(項目16)
第1のデータ記録を含む第1のデータベースと第2のデータ記録を含む第2のデータベースとを同期化する装置であって、該装置は、
該第1のデータベースに該第1のデータ記録を格納するメモリデバイスと、
該メモリデバイスならびに送信および受信デバイスに動作可能なように接続されたプロセッサであって、該第2のデータ記録を代表する情報を受信し、該第2のデータベースの該第2のデータ記録との一方向性の同期化において、該第1のデータベースの該第1のデータ記録を改変し、該改変することは、該第1のデータベースに存在する該第1のデータ記録のうちの一部のデータ記録を削除することを含み、該一部のデータ記録に対し、該第2のデータベースにおいては対応する第2のデータ記録が存在しない、プロセッサと
を備えている、装置。
(項目17)
コンピュータ読み取り可能な媒体であって、該コンピュータ読み取り可能な媒体において具体化されたコンピュータ読み取り可能なコードを有しており、該コンピュータ読み取り可能なコードは、プロセッサによって実行されると、
第2のデータ記録を代表する情報を受信することと、
第2のデータベースの第2のデータ記録との一方向性の同期化において、第1のデータベースの第1のデータ記録を改変することであって、該改変することは、該第1のデータベースに存在する該第1のデータ記録のうちの一部のデータ記録を削除することを含み、該一部のデータ記録に対し、該第2のデータベースにおいては対応する第2のデータ記録が存在しない、ことと
を実行する、コンピュータ読み取り可能な媒体。
図1は、無線通信システムおよび携帯型の電子デバイスの機能ブロック図である。 図2は、携帯型の電子デバイス内の特定の内部コンポーネントのブロック図である。 図3は、同期化サーバ内の特定の内部コンポーネントのブロック図である。 図4は、無線インターフェースによって接続されたデータベースの同期化の間に、携帯型の電子デバイスと通信システムとの両方において実行される機能を示すシーケンス図である。 図5Aおよび図5Bは、データベースの更新の間に、携帯型の電子デバイスと通信システムとの両方において実行される機能を示すシーケンス図である。 図5Aおよび図5Bは、データベースの更新の間に、携帯型の電子デバイスと通信システムとの両方において実行される機能を示すシーケンス図である。 図6は、データ記録が携帯型の電子デバイスから削除されるときに、携帯型の電子デバイスと通信システムとの両方において実行される機能を示すシーケンス図である。 図7は、無線インターフェースによって接続されたデータベースの特別な同期化の間に、携帯型の電子デバイスと通信システムとの両方において実行される機能を示すシーケンス図である。 図8は、データ記録が通信システムから削除されるときに、通信システムと携帯型の電子デバイスとの両方において実行される機能を示すシーケンス図である。 図9は、無線インターフェースによって接続されたデータベースの第2の特別な同期化の間に、通信システムと携帯型の電子デバイスとの両方において実行される機能を示すシーケンス図である。
無線インターフェースによって接続されたデータベースを同期化する方法および装置は、以下の記載および図面を参照することによって、より良く理解される。
(実施形態の詳細な説明)
最初に、図1に対する参照がなされる。図1は、一般に20によって示されている無線通信システムおよび携帯型の電子デバイス22の機能ブロック図を示している。示されているように、無線通信システム20は、例示的な携帯型の電子デバイス22を含む携帯型の電子デバイスとの通信を提供する。携帯型の電子デバイス22および無線通信システム20は、これらの間で無線通信チャネルを介して通信を実行するように動作可能である。携帯型の電子デバイス22から発信されるデータは、無線通信チャネルを経由して、無線通信システム20に通信される。同様に、通信システム20から発信されるデータは、無線通信チャネルを経由して、無線通信システム20から携帯型の電子デバイス22に通信されることによって、携帯型の電子デバイス22にデータを提供する。
説明を目的として、図1において、通信システムが機能的に表現されており、単一の基地局24が示されている。基地局24は、カバーエリアまたはセル26を定義し、このカバーエリアまたはセル26内で、基地局24と携帯型の電子デバイス22との間の通信が実行され得る。携帯型の電子デバイス22は、セル26内で移動可能であり、この例では示されていないその他のセルによって定義されるカバーエリアに移動し得ることに留意されたい。通信システム20は、リレーデバイス28を含んでおり、このリレーデバイス28は、基地局24および同期化サーバ30に接続されている。リレーデバイス28および同期化サーバ30によって提供される機能は、同じデバイス内で具体化され得ることに留意されたい。示されているように、同期化サーバ30は、管理サーバ32に接続されている。管理サーバ32は、通信システム20に管理サービスを提供し、また例えば、同期化サーバ30上の管理された制御を提供する。
同期化サーバ30は、データベースに機能的に接続されており、データベースのうち、第1のデータベース34、第2のデータベース36、および第3のデータベース38を含む3つのタイプの例示的なデータベースが示されている。この例のデータベースは、テキストフォーマット、例えば、拡張マークアップ言語(XML)フォーマットのデータベースである。第1のデータベース34、第2のデータベース36、および第3のデータベース38内で維持されるデータは、多数のデータ記録を含み、各データ記録は、データによって占有される複数のフィールドを含む。各データ記録の占有されるフィールドのうちの特定のフィールドは、これらのフィールドを含むデータ記録を一意的に識別するのに十分なキーフィールド(key field)である。
携帯型の電子デバイス22(本記載のために、この携帯型の電子デバイス22のうち、特定の機能部分のみが図1に示されている)は、複数のデータベース40、42、および44を含んでおり、これらは、通信システム20の第1、第2、および第3のデータベース34、36、38にそれぞれ対応している。データベース34、36、38およびデータベース40、42、44は、通信システム20のデータベース34、36、38が、携帯型の電子デバイス22のデータベース40、42、44に対応しないように非対称的に、選択的に変更され得る。言い換えると、データベース34、36、38、40、42、44のいずれかまたは全ては、記録のフィールドを占有するデータを追加、削除、または改変することによって、記録を追加し、記録を削除し、記録のフィールドを改変することにより、変更され得る。
ここで図2を参照する。図2は、携帯型の電子デバイス22内の特定の内部コンポーネントのブロック図を示している。携帯型の電子デバイス22は、リードオンリーメモリ(ROM)48に接続されたプロセッサ46を含むマイクロコンピュータに基づいており、このリードオンリーメモリ(ROM)48は、携帯型の通信デバイス22が通信システム20との同期化を含む特定の機能を実行することを可能にする、プロセッサ46によって実行可能な複数のアプリケーションを含んでいる。プロセッサ46はまた、ランダムアクセスメモリユニット(RAM)50および持続性格納デバイス52にも接続されており、この持続性格納デバイス52は、携帯型の電子デバイス22の様々な不揮発性格納装置としての機能を担っており、この持続性格納デバイス52内で、データベース40、42、44が維持される。プロセッサ46は、例えばキーボードのような入力デバイス54から入力を受信する。プロセッサ46は、例えばLCDディスプレイのような出力デバイス56に出力する。プロセッサ46はまた、内部クロック58および無線デバイス60にも接続されており、そして無線デバイス60は、アンテナ61に接続されている。無線デバイス60およびアンテナ61は共に、無線通信チャネルを介して無線通信システム20に接続するように用いられる。このように、携帯型の電子デバイス22は、無線デバイス60およびアンテナ61を介して、通信システム20に(および通信システム20から)通信されるデータを含む通信信号を、受信および送信するように動作可能である。
本明細書に記載されている機能は、任意の適切な方法で実行され得るということに留意されたい。この例では、機能は、同期化アプリケーションにおいてプロセッサ46によって実行可能なアルゴリズムによって実行される。例えば、携帯型の電子デバイス22のプロセッサ46は、持続性格納デバイス52のデータベース40、42、44のうちの1つ以上からデータを抽出し、ハッシュを生成することによって、アクセスされるデータをショートダイジェスト形式にすることにより、ハッシュ関数を実行するように動作可能である。プロセッサ46によって実行されるハッシュ関数は、例えば、チェックサムの計算およびその他のハッシュ関数の計算を含む。プロセッサ46はさらに、無線通信チャネルを介して携帯型の電子デバイス22から無線通信システム20に送信するために、生成されたハッシュを無線デバイス60に提供するように動作可能である。特に、プロセッサ46は、データベース40、42、44を代表する情報を含むデータベースハッシュを生成するように動作可能である。データベースハッシュの生成は、携帯型の電子デバイス22において、入力デバイス54からの入力によるイベント、または通信システム20から受信された信号によるイベントを検出することによって、トリガされる。
携帯型の電子デバイス22のマイクロコンピュータは、通信システム20からの通信を受信するように動作可能である。例えば、マイクロコンピュータは、記録ハッシュ情報に対する要求を受信し、それに応答してデータベース40、42、44のうちの1つ以上からデータを抽出し、データに対してハッシュ関数を実行することによって、記録ハッシュを通信システム20に送信することにより、記録ハッシュ情報を提供するように動作可能である。マイクロコンピュータはさらに、データ記録に対する要求を受信し、そのような要求に応答してデータベース40、42、44のうちの1つ以上からデータ記録を抽出し、通信システム20に送信するように動作可能である。なおもさらに、マイクロプロセッサは、通信システム20から送信されたデータを受信し、データベース40、42、44のうちの1つ以上にデータを追加したり、または持続性格納デバイス52に維持されているデータベース40、42、44のうちの1つ以上におけるデータを上書きしたりすることによって、データを書き込むように動作可能である。マイクロコンピュータはまた、例えば通信システム20からのユーザ入力または指示の受信に応答して、データベース40、42、44のうちの1つ以上からのデータを削除するようにも動作可能である。マイクロコンピュータはさらに、例えばユーザ入力から受信したデータ記録削除命令にしたがって削除するデータ記録の数を決定し、この数を閾値の数と比較するように動作可能である。マイクロコンピュータは、この比較の結果に基づいて、削除されるデータ記録の各々に対し、それぞれのデータ記録削除命令を通信システム20に送信するか、または本明細書において以下に記載されるような特定の同期化をトリガするように動作可能である。
ここで図3に対する参照がなされ、この図は、同期化サーバ30内の特定の内部コンポーネントのブロック図を示している。携帯型の電子デバイス22と同様に、同期化サーバ30は、リードオンリーメモリ(ROM)64に接続されたプロセッサ62を含んでおり、このリードオンリーメモリ(ROM)64は、プロセッサ62によって実行可能であって同期化サーバ30が特定の機能(携帯型の電子デバイス22との同期化を含む)を実行することを可能にするアプリケーションを含んでいる。プロセッサ62はまた、ランダムアクセスメモリ(RAM)66および持続性格納デバイス68にも接続されており、これらは、同期化サーバ30の様々な不揮発性格納装置としての機能を担っている。プロセッサ62は、データベース34、36、38、およびリレーデバイス28に接続されており、そしてリレーデバイス28は、無線通信チャネルを介して携帯型の電子デバイス22に接続するために、基地局24に接続されている。このように、同期化サーバ30は、リレーデバイス28および基地局24を介して、携帯型の電子デバイス22に(または携帯型の電子デバイス22から)通信されるデータを含む通信信号を、受信および送信するように動作可能である。
ここでもまた、本明細書に記載されている機能は、任意の適切な方法で実行され得るということに留意されたい。この例では、機能は、プロセッサ62によって実行可能なアルゴリズムによって実行される。例えば、同期化サーバ30のプロセッサ62は、データベース34、36、38のうちの1つ以上からデータを抽出し、ハッシュを生成することによって、アクセスされるデータをショートダイジェスト形式にすることにより、ハッシュ関数を実行するように動作可能である。特に、プロセッサ62は、データベース34、36、38を代表する情報を含むデータベースハッシュを生成するように動作可能である。
同期化サーバ30は、同期化に関する、携帯型の電子デバイス22によって生成された通信を受信するように動作可能である。例えば、同期化サーバ30は、携帯型の電子デバイス22によって生成されたデータベースハッシュを受信し、それに応答して、このデータベースハッシュからのデータベースハッシュ情報を、同期化サーバ30によって生成された、局所的に生成されたデータベースハッシュからのデータベースハッシュ情報と比較するように動作可能である。同期化サーバ30はまた、携帯型の電子デバイス22によって生成されたデータベースハッシュからのデータベースハッシュ情報と、局所的に生成されたデータベースハッシュからのデータベースハッシュ情報との比較の結果に基づいて(およびこの結果に応答して)、携帯型の電子デバイス22から記録ハッシュ情報を要求する。記録ハッシュ情報に対する要求は、リレー28に提供され、基地局24を介して、携帯型の電子デバイス22に送信される。同期化サーバ30は、携帯型の電子デバイス22によって生成された記録ハッシュ情報を受信し、それに応答して、この記録ハッシュ情報を、同期化サーバ30によって生成された局所的に生成された記録ハッシュからの記録ハッシュ情報と比較するように、動作可能である。
同期化サーバ30はさらに、携帯型の電子デバイス22によって生成された記録ハッシュからの記録ハッシュ情報と、局所的に生成された記録ハッシュからの記録ハッシュ情報との比較の結果に基づいて(およびこの結果に応答して)、携帯型の電子デバイス22からデータ記録を要求するように動作可能である。データ記録に対する要求は、リレー28に提供され、基地局24を介して、携帯型の電子デバイス22に送信される。なおもさらに、同期化サーバ30は、携帯型の電子デバイス22から送信されたデータを(基地局24およびリレーデバイス28を介して)受信し、データベース34、46、38のうちの1つ以上にデータを追加するか、データベース34、36、38のうちの1つ以上のデータを上書きすることによってデータを書き込むように、動作可能である。同期化サーバ30はまた、例えば、携帯型の電子デバイス22からの入力または指示の受信に応答して、データベース34、36、38のうちの1つ以上からのデータを削除するように動作可能である。同期化サーバ30はさらに、例えば入力デバイスから受信したデータ記録削除命令にしたがって削除するデータ記録の数を決定し、この数を閾値の数と比較するように動作可能である。この比較の結果に基づいて、同期化サーバ30は、削除されるデータ記録の各々に対し、それぞれのデータ記録削除命令を携帯型の電子デバイス22に送信するか、または本明細書において以下に記載されるような第2の特定の同期化をトリガするように動作可能である。
なおもさらに、同期化サーバ30は、持続性格納デバイス68に同期化履歴データを格納することによって、同期化サーバ30に接続されたデータベース34、36、38、または携帯型の電子デバイス22のデータベース40、42、44に対してなされた変更のリストを維持する。同期化サーバ30は、同期化動作の間に同期化履歴データにアクセスし、既に同期化されたデータを決定することによって、その後の同期化において通信システム20と携帯型の電子デバイス22との間で通信されるデータを減らす。
ここで図4に対する参照がなされ、この図は、本出願の一実施形態にしたがう、無線インターフェースによって接続されたデータベースの同期化の間に、携帯型の電子デバイス22と通信システム20との両方において実行される機能を示すシーケンス図を示している。そのようなステップを実行するためのソフトウェアの符号化は、十分に当業者の範囲内にある。最初に100において、携帯型の電子デバイス22は、例えば入力デバイス54上のユーザ入力から同期化トリガを受信する。あるいは、携帯型の電子デバイス22は、通信システム20から同期化トリガを受信する。ステップ102において、同期化トリガの受信に応答して、データベース40、42、44からデータが抽出され、ステップ104において、プロセッサ46は、データベース40、42、44の各々に対してデータベースハッシュを生成する。各データベースハッシュの生成後、ステップ106において、各データベースハッシュは、開始コマンドと共に、無線通信チャネルを介して通信システム20に送信される。開始コマンドは、同期化サーバ30において、同期化プロセスをトリガする。
ステップ108において、通信システム20は、基地局24における受信によって、各データベースハッシュと共に開始コマンドを受信し、データベースハッシュを同期化サーバ30に転送する。携帯型の電子デバイス22からの各データベースハッシュの受信に応答して、ステップ110において、データベース34、36、38からデータが抽出され、ステップ112において、同期化サーバ30のプロセッサ62は、それぞれのデータベースの各々に対するデータベースハッシュ(本明細書においては、局所的に生成されたデータベースハッシュと称される)を生成する。局所的に生成されたデータベースハッシュの各々の生成後、ステップ114において、携帯型の電子デバイス22から抽出された各データベースハッシュのハッシュ情報は、対応する局所的に生成されたデータベースハッシュのハッシュ情報と比較される。ハッシュ情報の比較が、携帯型の電子デバイス22のデータベース40、42、44が通信システム20のデータベース34、36、38のそれぞれとミスマッチではないことを示す場合、ステップ116において、同期化プロセスが終了する。しかしながら、ハッシュ情報の比較が、携帯型の電子デバイス22のデータベース40、42、44のうちのいずれかが通信システム20のデータベース34、36、38のそれぞれとミスマッチであることを示す場合、ステップ118において、少なくとも1つのデータベースが更新され、記録ハッシュ情報に対する要求が、同期化サーバ30によって生成される。記録ハッシュ情報に対する要求は、データ記録に関連付けられた記録ハッシュ情報に対する要求である。記録ハッシュ情報は、通信システム20の対応するデータベースとミスマッチであると決定された携帯型の電子デバイス22の特定のデータベースの各データ記録に対して要求される。記録ハッシュ情報の生成後、ステップ120において、携帯型の電子デバイス22に要求が送信される。
ステップ122において、携帯型の電子デバイス22において記録ハッシュ情報に対する要求が受信されると、ステップ124において、記録ハッシュ情報に対する要求にしたがって、データベース40、42、44のうちの1つ以上からデータが抽出される。そしてステップ126において、それぞれのデータベースのデータ記録の各々に対し、記録ハッシュが生成され、ステップ128において、各記録ハッシュは、無線通信チャネルを介して通信システム20に送信される。
ステップ130において、記録ハッシュ情報は、通信システム20において受信され、同期化サーバ30に配信される。要求された記録ハッシュ情報の受信に応答して、ステップ132において、対応するデータベース34、36、38のうちの1つ以上からデータが抽出され、134において、それぞれのデータベースの対応するデータ記録の各々に対し、記録ハッシュ(局所的に生成された記録ハッシュとも称される)が生成される。局所的に生成された記録ハッシュの各々の生成後、ステップ136において、携帯型の電子デバイス22から受信された記録ハッシュ情報は、局所的に生成された記録ハッシュの各々からの記録ハッシュ情報と比較され、記録ハッシュ情報が代表しているデータが変更されたかどうかに関する決定がなされる。このデータが変更されていないことが決定された場合、138において、データが変更されていない特定のデータ記録に対し、同期化プロセスが終了する。しかしながら、このデータが変更されたことが決定された場合、ステップ136における比較はまた、通信システム20における追加的または変更されたデータ記録が(もしあれば)、携帯型の電子デバイス22において反映されていないかどうか、および携帯型の電子デバイス20における追加的または変更されたデータ記録が(もしあれば)、通信システム20において反映されていないかどうかをも決定する。このように、ステップ136においてデータが変更されたことが決定された場合、通信システム20または携帯型の電子デバイス22におけるデータベース、またはミスマッチであると決定された通信システム20と携帯型の電子デバイス22との両方におけるデータベースを更新することによって、データベースが同期化される。ミスマッチであると決定された場合、競合解決ポリシー(conflict resolution policy)が実行されることによって、ミスマッチな記録をどのように更新するか(すなわち、携帯型の電子デバイス22上のデータベース記録を同期化サーバ30のデータベース記録で更新するかどうか、同期化サーバ30のデータベース記録を携帯型の電子デバイス22上のデータベース記録で更新するかどうか、または両方の更新をするかどうか)を決定する。
ここで図5Aを参照すると、通信システム20のデータベース34、36、38の更新の間に、携帯型の電子デバイス22と通信システム20との両方において実行される機能を示すシーケンス図を示している。ここでもまた、そのようなステップにおいて実行するためのソフトウェアの符号化は、十分に当業者の範囲内にある。ステップ136において、携帯型の電子デバイス20における追加的なデータ記録、またはデータ記録に対する変更が、通信システム20においては未だ反映されていないことが決定された場合、ステップ140Aに示されているように、同期化サーバ30によってフェッチ要求が生成される。フェッチ要求の生成後、ステップ142において、フェッチ要求は、携帯型の電子デバイス22に送信されることによって、同期化サーバ30上では更新されていない、携帯型の電子デバイス22上の追加および変更されたデータ記録を要求する。
そしてステップ144において、フェッチ要求は、携帯型の電子デバイス22において受信され、それに応答して、ステップ146において、要求されたデータ記録は、データベース40、42、44から抽出される。データ記録の抽出後、ステップ148において、抽出されたデータ記録は、通信システム20に送信される。
そしてステップ150において、要求されたデータ記録は、通信システム20において受信され、同期化サーバ30に配信される。要求されたデータ記録の受信に応答して、通信システム20のデータベース34、36、38のそれぞれは、新しいデータ記録を書き込むか、またはデータベース34、36、38のそれぞれにおいて既にセーブされているデータ記録を上書きすることによって、更新される。携帯型の電子デバイス20の1つのデータベースから抽出され、通信デバイス20に送信されるデータ記録は、通信システム20の対応するデータベースに書き込まれるか、上書きされることに留意されたい。
ここで図5Bを参照すると、携帯型の電子デバイス22におけるデータベース40、42、44の更新の間に、携帯型の電子デバイス22と通信システム20との両方において実行される機能を示すシーケンス図を示している。ここでもまた、そのようなステップを実行するためのソフトウェアの符号化は、十分に当業者の範囲内にある。
ステップ136において、通信システム20における追加的なデータ記録、またはデータ記録に対する変更が、携帯型の電子デバイス20においては未だ反映されていないことが決定された場合、ステップ140Bにおいて、携帯型の電子デバイス22上では更新されていない、同期化サーバ30上の追加または変更されたデータ記録が、抽出される。そして、これらのデータ記録は、ステップ154において、携帯型の電子デバイス22に送信される。
ステップ156において、携帯型の電子デバイス22は、データ記録を受信し、ステップ158において、新しいデータ記録を書き込むか、またはデータベース40、42、44のそれぞれにおいて既にセーブされているデータ記録を上書きすることによって、データ記録を更新する。ここでもまた、通信システム20の1つのデータベースから抽出され、携帯型の電子デバイス22に送信されるデータ記録は、携帯型の電子デバイス22の対応するデータベースに書き込まれるか、上書きされることに留意されたい。
上記の記載から、通信システム20のデータベース34、36、38には存在しているが携帯型の電子デバイス22におけるデータベース40、42、44には存在していないことが決定されたデータ記録は、ステップ154において、携帯型の電子デバイスに転送され、携帯型の電子デバイス22のそれぞれのデータベースに格納されることが理解される。同様に、携帯型の電子デバイス22のデータベース40、42、44には存在しているが通信システム20のデータベース34、36、38には存在していないことが決定されたデータ記録は、ステップ148において、通信システム20に転送され、ステップ152において、通信システム20のデータベース34、36、38のそれぞれに格納される。
ここで図6に対する参照がなされ、この図は、データ記録が携帯型の電子デバイス22から削除されるときに、携帯型の電子デバイス22と通信システム20との両方において実行される機能を示すシーケンス図を示している。そのようなステップを実行するためのソフトウェアの符号化は、十分に当業者の範囲内にある。最初にステップ160において、携帯型の電子デバイス22は、入力デバイス54上のユーザ入力からデータ記録削除命令を受信する。ステップ162において、データ記録削除命令の受信後、プロセッサ46は、データ記録削除命令が関係するデータ記録の数を決定する。言い換えると、プロセッサ46は、削除されるデータ記録の数を決定する。次にステップ164において、プロセッサ46は、データ記録削除命令が関係するデータ記録の数を所定の閾値と比較する。データ記録削除命令が関係するデータ記録の数が閾値未満である場合、ステップ166において、命令が関係するデータ記録は、データ記録が属するデータベース(または複数のデータベース)40、42、44から削除され、ステップ168において、削除されるデータ記録の各々に対し、データ記録削除指示が通信システム20に転送される。このように、データベース40、42、44から削除されるデータ記録の全てに対し、対応するデータ記録削除指示が、通信システム20に転送される。
ステップ170において、通信システム20は、データ記録削除指示を受信し、ステップ172において、データベース34、36、38のそれぞれから、それぞれのデータ記録を削除する。
他方で、ステップ174において、データ記録削除命令が関係するデータ記録の数が閾値よりも多い場合、データ記録削除命令が関係するデータ記録は、データ記録が属するデータベース(または複数のデータベース)40、42、44から削除され、ステップ176において、携帯型の電子デバイス22は、特別な同期化プロセスをトリガし、このプロセスにおいて、通信システム20のデータベース34、36、38は、携帯型の電子デバイス22のデータベース40、42、44を反映するように更新される。
ここで図7に対する参照がなされ、無線インターフェースによって接続されたデータベースの特別な同期化の間に、携帯型の電子デバイス22と通信システム20との両方において実行される機能を記載する。図7の特別な同期化に関して記載されるステップのうちの多くは、図4の同期化に関して記載されるステップと同様であることに留意されたい。したがって、可能な場合、図4のステップを記載する際に用いられる参照番号は、図7の特別な同期化ステップにおいて実行される同様のステップを参照する際に、100だけ増加される。ここでもまた、図7に示され、本明細書中に記載されているステップを実行するためのソフトウェアの符号化は、十分に当業者の範囲内にある。
最初に200において、携帯型の電子デバイス22は、特別な同期化トリガを受信する。特別な同期化トリガの受信に応答して、ステップ202において、データベース40、42、44のそれぞれからデータが抽出され、ステップ204において、プロセッサ46は、データベース40、42、44の各々に対してデータベースハッシュを生成する。各データベースハッシュの生成後、ステップ206において、各データベースハッシュは、開始コマンドと共に、無線通信チャネルを介して通信システム20に送信される。開始コマンドは、同期化サーバ30において、同期化プロセスをトリガする。
ステップ208において、通信システム20は、基地局24における受信によって、各データベースハッシュと共に開始コマンドを受信し、データベースハッシュを同期化サーバ30に転送する。携帯型の電子デバイス22からの各データベースハッシュの受信に応答して、ステップ210において、データベース34、36、38からデータが抽出され、ステップ212において、同期化サーバ30のプロセッサ62は、それぞれのデータベースの各々に対するデータベースハッシュ(本明細書においては、局所的に生成されたデータベースハッシュと称される)を生成する。局所的に生成されたデータベースハッシュの各々の生成後、ステップ214において、携帯型の電子デバイス22から受信された各データベースハッシュの情報は、対応する局所的に生成されたデータベースハッシュのハッシュ情報と比較される。ハッシュ情報の比較が、携帯型の電子デバイス22のデータベース40、42、44が通信システム20のデータベース34、36、38のそれぞれとミスマッチではないことを示す場合、ステップ216において、同期化プロセスが終了する。しかしながら上述のように、特別な同期化は、携帯型の電子デバイス22におけるデータベース40、42、44のうちの1つ以上に対する大きな変更の結果としてトリガされる。特に、特別な同期化は、携帯型の電子デバイス22における多数のデータ記録の検出の結果としてトリガされる。したがって、本例においては、ステップ214におけるハッシュ情報の比較の結果として、携帯型の電子デバイス22のデータベース40、42、44のうちの少なくとも1つと、通信システム20のデータベース34、36、38との間のミスマッチの決定がなされる。次にステップ218において、記録ハッシュ情報に対する要求が、同期化サーバ30によって生成される。記録ハッシュ情報に対する要求は、データ記録に関連付けられたハッシュ情報に対する要求である。記録ハッシュ情報は、通信システム20の対応するデータベースとミスマッチであると決定された携帯型の電子デバイス22の特定のデータベースの各データ記録に対して要求される。記録ハッシュ情報の生成後、ステップ220において、携帯型の電子デバイス22に要求が送信される。
ステップ222において、携帯型の電子デバイス22において記録ハッシュ情報に対する要求が受信されると、ステップ224において、記録ハッシュ情報に対する要求にしたがって、データベース40、42、44のうちの1つ以上からデータが抽出される。そしてステップ226において、それぞれのデータベースのデータ記録の各々に対し、記録ハッシュが生成され、ステップ228において、各記録ハッシュは、無線通信チャネルを介して通信システム20に送信される。
ステップ230において、記録ハッシュ情報は、通信システム20において受信され、同期化サーバ30に配信される。要求された記録ハッシュ情報の受信に応答して、ステップ232において、対応するデータベース34、36、38のうちの1つ以上からデータが抽出され、ステップ234において、それぞれのデータベースのデータ記録の各々に対し、記録ハッシュ(局所的に生成された記録ハッシュとも称される)が生成される。局所的に生成された記録ハッシュの生成後、ステップ236において、携帯型の電子デバイス22から受信された記録ハッシュ情報は、局所的に生成された記録ハッシュの各々からの記録ハッシュ情報と比較され、記録ハッシュ情報が代表しているデータが変更されたかどうかに関する決定がなされる。このように、携帯型の電子デバイスのデータベース40、42、44のうちの1つからのデータ記録から生成された記録ハッシュ情報は、通信システム20の対応するデータベース34、36、38からのデータ記録から生成された対応する記録ハッシュ情報と比較される。最後の同期化であることが理由で特定のデータ記録に対して変更がなされないことが決定された場合、ステップ238において、データが変更されていない特定のデータ記録に対し、同期化プロセスが終了する。
このように、ステップ236において、プロセッサ62は、データ記録のうちのどれが変更されたか、および通信システム20におけるデータ記録(もしあれば)のうちのどれが携帯型の電子デバイス22に存在しないかを決定する。ステップ236における比較の結果、携帯型の電子デバイス22においては削除されたが通信システム20においては依然存在しているデータ記録の決定がなされる。プロセッサ62はまた、ステップ236における比較から、携帯型の電子デバイス20における追加的な(または変更された)データ記録が(もしあれば)、通信システム20においては反映されていないかどうかを決定する。ステップ236において、データが変更されたことが決定された場合、データベースは、通信システム20におけるデータベース34、36、38のうち、ミスマッチであることが決定されたものだけを更新することによって、同期化される。このように、通信システム20におけるデータベース34、36、38は、携帯型の電子デバイス22のデータベース40、42、44とマッチするように更新される。
データベース34、36、38を更新するために、データベース34、36、38のうちのいずれかには存在するが携帯型の電子デバイス22のデータベース40、42、44には存在しないことが決定されたデータ記録は、ステップ239において、削除される。このように、トリガされるべき特別な同期化を引き起こす携帯型の電子デバイス22から削除される記録の全ては、データベース34、36、38から削除される。この特別な同期化は、図4、図5A、および図5Bを参照して上記で記載された通常の同期化(この同期化においては、通信システム20の側のデータベース34、36、38には存在するが携帯型の電子デバイス22のデータベース40、42、44には存在しない記録は、携帯型の電子デバイス22には送信されない)とは異なることに留意されたい。代わりに、これらのデータ記録は、通信システムのそれぞれのデータベースから削除される。
ステップ236において、携帯型の電子デバイス20における追加的なデータ記録またはデータ記録に対する変更が、通信システム20においては未だ反映されていないことが決定された場合、ステップ240において示されているように、同期化サーバ30によってフェッチ要求が生成される。フェッチ要求の生成後、ステップ242において、フェッチ要求は、携帯型の電子デバイス22に送信されることによって、同期化サーバ30上では更新されていない、携帯型の電子デバイス22上の追加および変更されたデータ記録を要求する。
そしてステップ244において、フェッチ要求は、携帯型の電子デバイス22において受信され、それに応答して、ステップ246において、要求されたデータ記録は、データベース40、42、44から抽出される。データ記録の抽出後、ステップ248において、抽出されたデータ記録は、通信システム20に送信される。
そしてステップ250において、要求されたデータ記録は、通信システム20において受信され、同期化サーバ30に配信される。要求されたデータ記録の受信に応答して、通信システム20のデータベース34、36、38のそれぞれは、ステップ252において、新しいデータ記録を書き込むか、またはデータベース34、36、38のそれぞれにおいて既にセーブされているデータ記録を上書きすることによって、更新される。携帯型の電子デバイス20の1つのデータベースから抽出され、通信デバイス20に送信されるデータ記録は、通信システム20の対応するデータベース上に書き込まれるか、上書きされることに留意されたい。ここでもまた、特別な同期化は、図4、図5A、図5Bを参照して上記で記載された通常の同期化(この同期化においては、携帯型の電子デバイス22のデータベース40、42、44におけるデータ記録を反映するように、データ記録は、通信システム20上のデータベース34、36、38において更新される)とは異なることに留意されたい。しかしながら、携帯型の電子デバイス22のデータ記録は、変更されない。ミスマッチであるとして決定された各データベースの各データ記録の全ての比較後、特別な同期化が終了する。
ここで図8に対する参照がなされ、この図は、データ記録が通信システムから削除されたときに、通信システム20と携帯型の電子デバイス22との両方において実行される機能を示すシーケンス図を示している。そのようなステップにおいて実行するためのソフトウェアの符号化は、十分に当業者の範囲内にある。最初にステップ280において、通信システム20は、データ記録削除命令を受信する。ステップ282において、データ記録削除命令の受信後、プロセッサ62は、データ記録削除命令が関係するデータ記録の数を決定する。言い換えると、プロセッサ62は、削除されるデータ記録の数を決定する。次にステップ284において、プロセッサ62は、データ記録削除命令が関係するデータ記録の数を所定の閾値と比較する。データ記録削除命令が関係するデータ記録の数が閾値未満である場合、ステップ286において、命令が関係するデータ記録は、データ記録が属するデータベース(または複数のデータベース)34、36、38から削除され、ステップ288において、削除されるデータ記録の各々に対し、データ記録削除指示が携帯型の電子デバイス22に送信される。このように、データベース34、36、38から削除されるデータ記録の全てに対し、対応するデータ記録削除指示が、携帯型の電子デバイス22に送信される。
ステップ290において、携帯型の電子デバイスは、データ記録削除指示を受信し、ステップ292において、データベース40、42、44のそれぞれから、それぞれのデータ記録を削除する。
他方で、ステップ294において、データ記録削除命令が関係するデータ記録の数が閾値よりも多い場合、データ記録削除命令が関係するデータ記録は、データ記録が属するデータベース(または複数のデータベース)34、36、38から削除され、ステップ296において、通信システム20は、第2の特別な同期化プロセスをトリガし、このプロセスにおいて、携帯型の電子デバイス22のデータベース40、42、44は、通信システム20のデータベース34、36、38を反映するように更新される。通信システム20は、ステップ298において、第2の特別な同期化のトリガを携帯型の電子デバイス22に送信する。
ここで図9に対する参照がなされ、無線インターフェースによって接続されたデータベースの第2の特別な同期化の間に、通信システム20と携帯型の電子デバイス22との両方において実行される機能を記載する。図9の特別な同期化に関して記載されるステップのうちの多くは、図7の特別な同期化に関して記載されるステップと同様であることに留意されたい。したがって、可能な場合、図7のステップを記載する際に用いられる参照番号は、図9の第2の特別な同期化ステップにおいて実行される同様のステップを参照する際に、100だけ増加される。ここでもまた、図9に示され、本明細書中に記載されているステップを実行するためのソフトウェアの符号化は、十分に当業者の範囲内にある。
最初に300において、携帯型の電子デバイス22は、第2の特別な同期化トリガを受信する。第2の特別な同期化トリガの受信に応答して、ステップ302において、データベース40、42、44のそれぞれからデータが抽出され、ステップ304において、プロセッサ46は、データベース40、42、44の各々に対してデータベースハッシュを生成する。各データベースハッシュの生成後、ステップ306において、各データベースハッシュは、開始コマンドと共に、無線通信チャネルを介して通信システム20に送信される。
ステップ308において、通信システム20は、基地局24における受信によって、各データベースハッシュを受信し、データベースハッシュを同期化サーバ30に転送する。携帯型の電子デバイス22からの各データベースハッシュの受信に応答して、ステップ310において、データベース34、36、38からデータが抽出され、ステップ312において、同期化サーバ30のプロセッサ62は、それぞれのデータベースの各々に対するデータベースハッシュ(本明細書においては、局所的に生成されたデータベースハッシュと称される)を生成する。局所的に生成されたデータベースハッシュの各々の生成後、ステップ314において、携帯型の電子デバイス22から受信された各データベースハッシュの情報は、対応する局所的に生成されたデータベースハッシュのハッシュ情報と比較される。ハッシュ情報の比較が、携帯型の電子デバイス22のデータベース40、42、44が通信システム20のデータベース34、36、38のそれぞれとミスマッチではないことを示す場合、ステップ316において、同期化プロセスが終了する。しかしながら上述のように、第2の特別な同期化は、通信システム20のデータベース34、36、38のうちの1つ以上に対する大きな変更の結果としてトリガされる。特に、特別な同期化は、データベース34、36、38のうちの少なくとも1つからの多数のデータ記録の検出の結果として、トリガされる。したがって、本例においては、ステップ314におけるハッシュ情報の比較の結果として、携帯型の電子デバイス22のデータベース40、42、44のうちの少なくとも1つと、通信システム20のデータベース34、36、38との間のミスマッチの決定がなされる。次にステップ318において、記録ハッシュ情報に対する要求が、同期化サーバ30によって生成される。記録ハッシュ情報に対する要求は、データ記録に関連付けられたハッシュ情報に対する要求である。記録ハッシュ情報は、通信システム20の対応するデータベースとミスマッチであると決定された携帯型の電子デバイス22の特定のデータベースの各データ記録に対して要求される。記録ハッシュ情報の生成後、ステップ320において、携帯型の電子デバイス22に要求が送信される。
ステップ322において、携帯型の電子デバイス22において記録ハッシュ情報に対する要求が受信されると、ステップ224において、記録ハッシュ情報に対する要求にしたがって、データベース40、42、44のうちの1つ以上からデータが抽出される。そしてステップ326において、それぞれのデータベースのデータ記録の各々に対し、記録ハッシュが生成され、ステップ328において、各記録ハッシュは、無線通信チャネルを介して通信システム20に送信される。
ステップ330において、記録ハッシュ情報は、通信システム20において受信され、同期化サーバ30に配信される。要求された記録ハッシュ情報の受信に応答して、ステップ332において、対応するデータベース34、36、38のうちの1つ以上からデータが抽出され、ステップ334において、それぞれのデータベースのデータ記録の各々に対し、記録ハッシュ(局所的に生成された記録ハッシュとも称される)が生成される。局所的に生成された記録ハッシュの各々の生成後、ステップ336において、携帯型の電子デバイス22から受信された記録ハッシュ情報は、局所的に生成された記録ハッシュの各々からの記録ハッシュ情報と比較され、記録ハッシュ情報が代表しているデータが変更されたかどうかに関する決定がなされる。このように、携帯型の電子デバイスのデータベース40、42、44のうちの1つからのデータ記録から生成された記録ハッシュ情報は、通信システム20の対応するデータベース34、36、38からのデータ記録から生成された対応する記録ハッシュ情報と比較される。最後の同期化であることが理由で特定のデータ記録に対して変更がなされないことが決定された場合、ステップ338において、データが変更されていない特定のデータ記録に対し、同期化プロセスが終了する。
このように、ステップ326において、プロセッサ62は、データ記録のうちのどれが変更されたか、および携帯型の電子デバイス22におけるデータ記録(もしあれば)のうちのどれが通信システム20に存在しないかを決定する。ステップ336における比較の結果、携帯型の電子デバイス22においては削除されたが通信システム20においては依然存在しているデータ記録の決定がなされる。プロセッサ62はまた、ステップ336における比較から、携帯型の電子デバイス20における追加的な(または変更された)データ記録が(もしあれば)、携帯型の電子デバイス20においては反映されていないかどうかを決定する。ステップ336において、データが変更されたことが決定された場合、データベースは、携帯型の電子デバイス22におけるデータベース40、42、44を更新することによって、同期化される。このように、携帯型の電子デバイス22におけるデータベース40、42、44は、通信システム20のデータベース34、36、38とマッチするように更新される。
データベース40、42、44を更新するために、データベース40、42、44のうちのいずれかには存在するが通信システム20のデータベース34、36、38には存在しないことが決定されたデータ記録の各々に対し、ステップ337Aにおいて、記録識別子が携帯型の電子デバイスに送信される。記録識別子は、第2の特別な同期化の間に、関連付けられたデータ記録を削除するようにという、携帯型の電子デバイスへの信号として機能する。
ステップ337Bにおいて、携帯型の電子デバイス22は、記録識別子を受信し、ステップ339において、記録識別子が受信された対応するデータ記録を削除する。このように、トリガされるべき特別な同期化を引き起こす通信システムのデータベース34、36、38から削除される記録の全ては、携帯型の電子デバイス22のデータベース40、42、44のそれぞれから削除される。第2の特別な同期化は、図4、図5A、および図5Bを参照して上記で記載された通常の同期化(この同期化においては、携帯型の電子デバイス22のデータベース40、42、44には存在するが通信システム20のデータベース34、36,38には存在しない記録は、携帯型の電子デバイス22から通信システム20に送信されない)とは異なることに留意されたい。代わりに、これらのデータ記録は、携帯型の電子デバイス22のそれぞれのデータベースから削除される。
ステップ336において、通信システム20における追加的なデータ記録またはデータ記録に対する変更が、携帯型の電子デバイス20においては未だ反映されていないことが決定された場合、ステップ340において、通信システム20においては追加または変更されているが携帯型の電子デバイス22上では更新されていないデータ記録が、抽出される。そしてステップ354において、これらのデータ記録は、携帯型の電子デバイス22に送信される。
そしてステップ356において、携帯型の電子デバイス22は、データ記録を受信し、ステップ358において、新しいデータ記録を書き込むか、またはデータベース40、42、44のそれぞれにおいて既にセーブされているデータ記録を更新するように上書きすることによって、データ記録を更新する。通信システム20の1つのデータベースから抽出され、携帯型の通信デバイス22に送信されるデータ記録は、携帯型の電子デバイス22の対応するデータベース上に書き込まれるか、上書きされることに留意されたい。ミスマッチであるとして決定された各データベースの各データ記録の全ての比較後、特別な同期化が終了する。
有利にも、多数のデータ記録が携帯型の電子デバイスから削除されるときに、多数のデータ記録削除指示を、携帯型の電子デバイスから通信システムに送信するのではなく、通信システムのみにおけるデータベースが変更される一方向性の同期化プロセスがトリガされ、携帯型の電子デバイスのデータベースを反映する。一方向性の同期化の間、通信システムのデータベースには存在するが携帯型の電子デバイスのデータベースには存在しないデータ記録が、削除される。このように、多数のデータ記録削除指示を送信する必要はない。代わりに、比較目的で、携帯型の電子デバイスからハッシュ値が送信されることによって、送信時間および帯域幅を節約する。
同様に、多数のデータ記録が通信システムから削除されるときに、多数のデータ記録削除指示が、通信システムから携帯型の電子デバイスに送信されるのではなく、第2の一方向性の同期化がトリガされ、この第2の一方向性の同期化において、携帯型の電子デバイスのみにおけるデータベースが、通信システムのデータベースを反映するように変更される。第2の一方向性の同期化の間、携帯型の電子デバイスのデータベースには存在するが通信システムのデータベースには存在しないデータ記録が、削除される。このように、多数のデータ記録削除指示を送信する必要はない。代わりに、比較目的で、通信システムからハッシュ値が送信され、比較に応答して、削除されるべき記録の識別子のみが携帯型の電子デバイスに送信されることによって、送信時間および帯域幅を節約する。
特別な同期化は、データ記録削除命令が関係するデータ記録の閾値の数を超えるときにトリガされるものとして記載されてきたが、特別な同期化は、データ記録削除イベントによってトリガされることに限定されない。むしろ、携帯型の電子デバイス22のデータベース40、42、44のうちの少なくとも1つのデータ記録が変更されるその他のイベントが、図7に関連して記載されている特別な同期化をトリガし得る。例えば、従来技術から理解され得るように、携帯型の電子デバイス22のデータベース40、42、44のデータ記録は、携帯型の電子デバイスから、例えばコンピューティングデバイス(例えば、デスクトップコンピュータ)に直列接続し、コンピューティングデバイスの対応するデータベースと同期化することによって、改変され得る。このように、データ記録を追加し、データ記録を改変し、携帯型の電子デバイス上にデータ記録を再度格納し、コンピューティングデバイスの対応するデータベースにおいてデータ記録を反映することによって、データベース40、42、44のデータ記録に対する変更がなされる。携帯型の電子デバイス22上のデータ記録に対してなされる変更は、直列同期化プロセスの間に、コンピューティングシステム20には送信されない。したがって、直列同期化プロセスの終了後、携帯型の電子デバイス22のデータ記録に対してなされる変更は、通信システム20のデータ記録においては反映されない。携帯型の電子デバイス22のデータベース40、42、44と通信システムのデータベース34、36、38とを同期化するために、携帯型の電子デバイス22とコンピューティングデバイスとの間の直列接続が終端されない(接続されない)ときに、図7を参照して記載されたような特別な遅い同期化がトリガされる。このようにして、携帯型の電子デバイス22のデータベース40、42、44におけるデータ記録を反映するように、通信システム20のデータベース34、36、38においてデータ記録が更新される。しかしながら、携帯型の電子デバイス22のデータ記録は、特別な同期化の間には更新されない。
本明細書において記載されてきた実施形態は、無線インターフェースによって接続されたデータベースを同期化するための方法および装置の特定の実装に関するものであるが、この実施形態に対する改変およびバリエーションが本出願の領域および範囲にあることに留意されたい。例えば、その他のイベントが、特別な同期化をトリガし得る。携帯型の電子デバイス22上のデータ記録における任意の変更(この変更においては、携帯型の電子デバイス22のデータベースを反映するように、通信システム20のみのデータベースを変更することによって、携帯型の電子デバイス22のデータベース40、42、44と通信システム20のデータベース34、36、38とを同期化することが望ましい)が、特別な同期化をトリガし得る。同様に、通信システムのデータ記録における任意の変更(この変更においては、通信システム22のデータベースを反映するように、携帯型の電子デバイス20のみのデータベースを変更することによって、通信システム20のデータベース34、36、38と携帯型の電子デバイス22のデータベース40、42、44とを同期化することが望ましい)が、特別な同期化をトリガし得る。
その他の改変およびバリエーションもまた可能である。任意の個数のデータベースが可能なので、携帯型の電子デバイスは、3つのデータベースに限定されないことに留意されたい。同様に、通信システムは、任意の個数のデータベースを含み得る。上記で記載された特別な同期化は、携帯型の電子デバイスのデータベースにおける追加または変更された記録を反映するように、通信システムのデータベースにおける追加または変更された記録を更新することを含むが、特別な同期化は、携帯型の電子デバイスのデータベースには存在しない通信システムのデータベースにおける記録の検出のみを含み得る。同様に、第2の特別な同期化は、通信システムのデータベースには存在しない携帯型の電子デバイスのデータベースにおける記録の検出のみを含み得る。
当業者は、その他の多くの改変およびバリエーションを想起し得る。そのような改変およびバリエーションの全ては、本出願の領域および範囲にあると考えられる。

Claims (15)

  1. 第1の電子デバイスにおいて第1のデータ記録を含む第1のデータベースと第2の電子デバイスにおいて第2のデータ記録を含む第2のデータベースとを同期化する方法であって、該方法は、
    該第1の電子デバイスにおいて、該第2のデータ記録を表す情報を遅い同期化トリガと共に受信すること
    を含み、
    該遅い同期化トリガは、該第2のデータ記録のうちの一部のデータ記録を削除するためのデータ記録削除命令を受信することを含み、
    該遅い同期化は、該第1の電子デバイスにおいて、該第2のデータベースの該第2のデータ記録との一方向性の同期化において、該第1のデータベースの該第1のデータ記録を改変することを含み、
    該改変することは、削除するための該第2のデータ記録の数が閾値を満たすか該閾値を超えている場合には、該第1のデータベースに存在する該第1のデータ記録のうちの一部のデータ記録を削除することを含み、該一部のデータ記録に対し、該第2のデータベースにおいては対応する第2のデータ記録が存在しない方法。
  2. 前記第1のデータベースの前記第1のデータ記録を改変することは、前記第2のデータベースに存在する第2のデータ記録に対応するさらなるデータ記録を、該第1のデータベースに書き込むことをさらに含み、該第2のデータ記録に対し、該第1のデータベースにおいては対応する第1のデータ記録が存在しない、請求項に記載の方法。
  3. 前記第1のデータベースの前記第1のデータ記録を改変することは、前記第2のデータ記録のうちの対応する一部のデータ記録とは異なる第1のデータ記録に対し、該第1のデータベースのそれらの第1のデータ記録を上書きし、該第2のデータ記録のうちの対応する一部のデータ記録を反映することをさらに含む、請求項に記載の方法。
  4. 前記第1のデータベースの前記第1のデータ記録を表す情報と前記第2のデータ記録を表す前記情報とを比較することと、
    前記第1のデータ記録を改変する前に、該第2のデータ記録と該第1のデータ記録との間の差を決定することと
    を含む、請求項に記載の方法。
  5. 差を決定することは、前記第1のデータ記録のうちの前記一部のデータ記録を削除する前に、前記第1のデータベースにおける第1のデータ記録の各々に対し、対応する第2のデータ記録が前記第2のデータベースに存在するかどうかを決定することを含む、請求項に記載の方法。
  6. 前記差を決定することは、前記第2のデータベースの前記第2のデータ記録のうちの一部のデータ記録に対応する第1のデータ記録が、前記第1のデータベースに存在しないかどうかを決定し、存在しない場合には、前記第2のデータ記録のうちの一部のデータ記録の送信を要求することを含む、請求項に記載の方法。
  7. 前記差を決定することは、その他の第1のデータ記録が前記第2のデータ記録の対応するその他の一部のデータ記録とは異なるかどうかを決定し、異なる場合には、該第2のデータ記録のうちのその他の一部のデータ記録の送信を要求することを含む、請求項に記載の方法。
  8. 前記第2のデータ記録のうちの一部のデータ記録を受信し、前記第1のデータベースに書き込むことを含む、請求項に記載の方法。
  9. 前記第2のデータ記録のうちのその他の一部のデータ記録を受信し、前記第1のデータ記録のうちの一部のデータ記録のそれぞれの上に上書きすることを含む、請求項に記載の方法。
  10. 前記第2のデータ記録を表す情報を受信することは、該第2のデータ記録を表すハッシュ情報を受信することを含む、請求項に記載の方法。
  11. 前記比較することは、前記第2のデータ記録を表す前記ハッシュ情報と前記第1のデータ記録を表す対応するハッシュ情報とを比較することを含む、請求項10に記載の方法。
  12. 前記遅い同期化トリガは、該第2のデータ記録のうちの一部のデータ記録の数と閾値とを比較することと、該第2のデータ記録のうちの一部のデータ記録の該数が該閾値を超えているかどうかを決定することを含む、請求項に記載の方法。
  13. 前記遅い同期化トリガは、前記第2のデータ記録を表す情報と共に開始コマンドを受信することを含む、請求項に記載の方法。
  14. 第1のデータ記録を含む第1のデータベースと第2のデータ記録を含む第2のデータベースとを同期化する装置であって
    該装置は、
    該第1のデータベースに該第1のデータ記録を格納するメモリデバイスと、
    該メモリデバイスならびに送信および受信デバイスに動作可能なように接続されたプロセッサ
    を備え、
    該プロセッサは、該第2のデータ記録を表す情報を遅い同期化トリガと共に受信し
    該遅い同期化トリガは、該第2のデータ記録のうちの一部のデータ記録を削除するためのデータ記録削除命令を受信することを含み、
    該遅い同期化は、該第2のデータベースの該第2のデータ記録との一方向性の同期化において、該第1のデータベースの該第1のデータ記録を改変することを含み、
    該改変することは、削除するための該第2のデータ記録の数が閾値を満たすか該閾値を超えている場合には、該第1のデータベースに存在する該第1のデータ記録のうちの一部のデータ記録を削除することを含み、該一部のデータ記録に対し、該第2のデータベースにおいては対応する第2のデータ記録が存在しない装置。
  15. コンピュータ読み取り可能な媒体であって、該コンピュータ読み取り可能な媒体において具現化されたコンピュータ読み取り可能なコードを有しており、該コンピュータ読み取り可能なコードは、プロセッサによって実行されると、
    第1のデータベースの第1のデータ記録を表す情報を遅い同期化トリガと共に受信することを実行し、
    該遅い同期化トリガは、該第1のデータ記録のうちの一部のデータ記録を削除するためのデータ記録削除命令を受信することを含み、
    該遅い同期化は、該第1のデータベースの該第1のデータ記録との一方向性の同期化において、第2のデータベースの第2のデータ記録を改変することを含み、
    該改変することは、削除するための該第1のデータ記録の数が閾値を満たすか該閾値を超えている場合には、該第2のデータベースに存在する該第2のデータ記録のうちの一部のデータ記録を削除することを含み、該一部のデータ記録に対し、該第1のデータベースにおいては対応する第1のデータ記録が存在しないコンピュータ読み取り可能な媒体。
JP2011127769A 2005-09-29 2011-06-07 代表的な情報を比較することによる効率的なデータベースの同期化 Active JP5130386B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US72153405P 2005-09-29 2005-09-29
US60/721,534 2005-09-29

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2008532542A Division JP4778061B2 (ja) 2005-09-29 2006-06-15 代表的な情報を比較することによる効率的なデータベースの同期化

Publications (2)

Publication Number Publication Date
JP2011198385A JP2011198385A (ja) 2011-10-06
JP5130386B2 true JP5130386B2 (ja) 2013-01-30

Family

ID=37899300

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2008532542A Active JP4778061B2 (ja) 2005-09-29 2006-06-15 代表的な情報を比較することによる効率的なデータベースの同期化
JP2011127769A Active JP5130386B2 (ja) 2005-09-29 2011-06-07 代表的な情報を比較することによる効率的なデータベースの同期化

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2008532542A Active JP4778061B2 (ja) 2005-09-29 2006-06-15 代表的な情報を比較することによる効率的なデータベースの同期化

Country Status (8)

Country Link
US (1) US20070073787A1 (ja)
EP (1) EP1938198A4 (ja)
JP (2) JP4778061B2 (ja)
KR (1) KR100986108B1 (ja)
CN (1) CN101317164B (ja)
AU (1) AU2006297023B2 (ja)
CA (1) CA2623837A1 (ja)
WO (1) WO2007036015A1 (ja)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7792792B2 (en) * 2006-05-22 2010-09-07 Microsoft Corporation Synchronizing structured web site contents
US8103272B2 (en) * 2007-01-07 2012-01-24 Apple Inc. Techniques for database updates
US20100318552A1 (en) * 2007-02-21 2010-12-16 Bang & Olufsen A/S System and a method for providing information to a user
US8019721B2 (en) 2007-12-07 2011-09-13 Roche Diagnostics Operations, Inc. Method and system for enhanced data transfer
CN101697169A (zh) * 2009-10-23 2010-04-21 中兴通讯股份有限公司 源数据库和目的数据库之间数据同步的方法、装置及系统
CN102263798B (zh) * 2010-05-25 2013-11-20 中国移动通信集团甘肃有限公司 通信系统的数据同步方法、装置及系统
US8640212B2 (en) * 2010-05-27 2014-01-28 Red Hat, Inc. Securing passwords with CAPTCHA based hash when used over the web
US8886766B2 (en) 2010-10-25 2014-11-11 Salesforce.Com, Inc. Systems and methods for tracking responses on an online social network
US20120101985A1 (en) 2010-10-25 2012-04-26 Salesforce.Com, Inc. Triggering actions in an information feed system
JP5854047B2 (ja) 2011-01-28 2016-02-09 日本電気株式会社 通信システム、制御装置、転送ノード、通信制御方法およびプログラム
JP5854048B2 (ja) 2011-01-28 2016-02-09 日本電気株式会社 通信システム、転送ノード、制御装置、通信制御方法およびプログラム
JP5987841B2 (ja) 2011-06-02 2016-09-07 日本電気株式会社 通信システム、制御装置、転送ノード、通信システムの制御方法およびプログラム
US10091249B2 (en) * 2013-11-22 2018-10-02 Telefonaktiebolaget Lm Ericsson (Publ) Method and system for synchronization of two databases in a lawful interception network by comparing checksum values
EP3314488B1 (en) * 2015-06-25 2024-03-13 Gambro Lundia AB Medical device system and method having a distributed database
CN110795507A (zh) * 2019-10-30 2020-02-14 北京永亚普信科技有限责任公司 基于单向传输协议的数据库同步系统和方法
CN114416703A (zh) * 2020-10-28 2022-04-29 北京中祥英科技有限公司 数据完整性自动监控方法、装置、设备及介质
CN112487007A (zh) * 2020-12-01 2021-03-12 银清科技有限公司 一种多网间流程同步管理方法、装置及系统
KR102604266B1 (ko) 2021-03-19 2023-11-21 주식회사 토닥 데이터 동기화 장치 및 방법

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5666530A (en) * 1992-12-02 1997-09-09 Compaq Computer Corporation System for automatic synchronization of common file between portable computer and host computer via communication channel selected from a plurality of usable channels there between
US5970502A (en) * 1996-04-23 1999-10-19 Nortel Networks Corporation Method and apparatus for synchronizing multiple copies of a database
US5870759A (en) * 1996-10-09 1999-02-09 Oracle Corporation System for synchronizing data between computers using a before-image of data
US6141664A (en) * 1996-11-13 2000-10-31 Puma Technology, Inc. Synchronization of databases with date range
US6044381A (en) * 1997-09-11 2000-03-28 Puma Technology, Inc. Using distributed history files in synchronizing databases
US7051277B2 (en) * 1998-04-17 2006-05-23 International Business Machines Corporation Automated assistant for organizing electronic documents
US6167408A (en) * 1998-08-31 2000-12-26 International Business Machines Corporation Comparative updates tracking to synchronize local operating parameters with centrally maintained reference parameters in a multiprocessing system
US6131096A (en) * 1998-10-05 2000-10-10 Visto Corporation System and method for updating a remote database in a network
CN1262481A (zh) * 1999-01-27 2000-08-09 电话通有限公司 多个数据库的同步方法及装置
US6266677B1 (en) * 1999-02-08 2001-07-24 Hewlett Packard Company System and method for ensuring the integrity of stored data
AU4312401A (en) * 1999-12-13 2001-06-18 Connected Corporation Multiple copy capability for network backup systems
US6643669B1 (en) * 2000-03-14 2003-11-04 Telefonaktiebolaget Lm Ericsson (Publ) Method for optimization of synchronization between a client's database and a server database
US6470329B1 (en) * 2000-07-11 2002-10-22 Sun Microsystems, Inc. One-way hash functions for distributed data synchronization
US7363325B2 (en) * 2000-08-10 2008-04-22 Nec Laboratories America, Inc. Synchronizable transactional database method and system
US6529917B1 (en) * 2000-08-14 2003-03-04 Divine Technology Ventures System and method of synchronizing replicated data
AU2003303878A1 (en) * 2003-02-06 2004-08-30 Research In Motion Limited Apparatus and method for synchronizing databases by comparing hash values
EP1862923A1 (en) * 2004-02-10 2007-12-05 Research In Motion Limited Apparatus and associated method for synchronizing databases by comparing hash values
US7330997B1 (en) * 2004-06-03 2008-02-12 Gary Odom Selective reciprocal backup

Also Published As

Publication number Publication date
EP1938198A4 (en) 2009-07-29
KR20080066737A (ko) 2008-07-16
JP2011198385A (ja) 2011-10-06
JP4778061B2 (ja) 2011-09-21
WO2007036015A1 (en) 2007-04-05
CA2623837A1 (en) 2007-04-05
AU2006297023A1 (en) 2007-04-05
CN101317164A (zh) 2008-12-03
AU2006297023B2 (en) 2010-09-09
CN101317164B (zh) 2011-09-07
EP1938198A1 (en) 2008-07-02
US20070073787A1 (en) 2007-03-29
JP2009510566A (ja) 2009-03-12
KR100986108B1 (ko) 2010-10-08

Similar Documents

Publication Publication Date Title
JP5130386B2 (ja) 代表的な情報を比較することによる効率的なデータベースの同期化
US7730028B2 (en) Schema updating for synchronizing databases connected by wireless interface
US8694463B2 (en) Method and apparatus for synchronizing databases connected by wireless interface
CN101460930B (zh) 维护数据库与文件系统之间的链接级一致性
US7613739B2 (en) Method and apparatus for synchronizing databases connected by wireless interface
US8275741B2 (en) Method and apparatus for memory management in an electronic device
US7747566B2 (en) Method and apparatus for synchronizing databases connected by wireless interface
US7334085B2 (en) Method and apparatus for full and partial storage of data records in an electronic device
KR102119258B1 (ko) 데이터베이스 관리 시스템에서의 변경 데이터 캡쳐 구현 기법
US7478118B2 (en) Method and apparatus for synchronizing of databases connected by wireless interface
CA2568286C (en) Method and apparatus for memory management in an electronic device
CA2568284C (en) Method and apparatus for synchronizing databases connected by wireless interface
CA2568285C (en) Method and apparatus for synchronizing databases connected by wireless interface
CA2615561C (en) Method and apparatus for synchronizing databases connected by wireless interface
EP1940123B1 (en) Method and apparatus for memory management in an electronic device
CN113704270A (zh) SQL Server数据库的自增主键扩容方法、系统、设备和介质
CN113296699A (zh) 数据处理方法及装置
CA2603468C (en) Schema updating for synchronizing databases connected by wireless interface

Legal Events

Date Code Title Description
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: 20121026

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121105

R150 Certificate of patent or registration of utility model

Ref document number: 5130386

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151109

Year of fee payment: 3

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

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

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250