(57)【特許請求の範囲】
【請求項１】
クラウドサーバが、移動端末から送信された、当該移動端末のマーク、前記移動端末による前回のデータ同期の時間、当該移動端末とクラウドサーバがデータ同期を行う同期アカウントを携帯したデータ同期要求を受信し、
前記クラウドサーバが、前記クラウドサーバにおける前記同期アカウントで前記マークに対応するデータである同期対象データの記録操作時間が前記移動端末による前回のデータ同期の時間を越えると判断し、
前記クラウドサーバが、前記移動端末と前記同期対象データの同期を行うステップを含み、
前記クラウドサーバが前記移動端末と前記同期対象データの同期を行った後、前記クラウドサーバが、前記移動端末が前回に当該クラウドサーバとデータ同期を行った時間と現在時間との間隔が予め設定された時間間隔を超えていると判断し、当該移動端末の前記クラウドサーバにおける全てのデータを削除するステップをさらに含むデータ同期方法。
【請求項２】
前記クラウドサーバが同期対象データの記録操作時間が前記移動端末による前回のデータ同期の時間を越えると判断するステップは、前記クラウドサーバが、所定の業務に対応する同期対象データの記録操作時間が前記移動端末による前回のデータ同期の時間を越えると判断することを含み、
前記クラウドサーバが前記移動端末と前記同期対象データの同期を行うステップは、前記クラウドサーバが前記所定の業務の同期対象データを前記移動端末に送信することを含む請求項１に記載の方法。
【請求項３】
前記クラウドサーバが前記移動端末から送信されたデータ同期要求を受信するステップは、
前記クラウドサーバが、前記移動端末から送信されたデータ同期要求に含まれた前記移動端末の変更データ及び共有又は専用を含む前記変更データの属性情報を受信することを含む請求項１に記載の方法。
【請求項４】
前記クラウドサーバが前記移動端末と前記同期対象データの同期を行うステップは、
前記クラウドサーバが、前記変更データの操作タイプを取得し、前記操作タイプに応じて前記変更データに操作を行うことを含む請求項３に記載の方法。
【請求項５】
前記クラウドサーバが前記操作タイプに応じて前記変更データに操作を行うステップは、
前記操作タイプが追加であると、前記クラウドサーバが、前記変更データを当該クラウドサーバに追加し、また、前記追加された変更データの記録操作時間を追加操作の時間に設定し、
前記操作タイプが削除又は修正であると、前記クラウドサーバが、当該クラウドサーバに記録された当該変更データに対応するデータ属性が共有であるか否かを判断し、判断結果がYESであると、前記クラウドサーバ中の対応するデータを削除又は修正し、前記データの記録操作時間を削除操作又は修正操作の時間に更新することをを含む請求項４に記載の方法。
【請求項６】
前記クラウドサーバが前記移動端末と前記同期対象データの同期を行うステップは、
操作タイプが削除又は修正であって、且つ、前記移動端末とクラウドサーバポータルが同時に変更データの削除又は修正要求を発した場合、前記クラウドサーバが、前記移動端末と前記クラウドサーバポータルの優先順に従って前記変更データに対応する操作を行うことを含む請求項１乃至５の中のいずれかに記載の方法。
【請求項７】
前記クラウドサーバが前記移動端末と前記同期対象データの同期を行うステップは、
複数の移動端末が前記同期対象データに対する同期を同時に発している場合、前記クラウドサーバが順に前記複数の移動端末に同期を行うことを含む請求項１乃至５の中のいずれかに記載の方法。
【請求項８】
移動端末から送信された、当該移動端末のマーク、前記移動端末による前回のデータ同期の時間、当該移動端末とクラウドサーバがデータ同期を行う同期アカウントを携帯したデータ同期要求を受信する受信モジュールと、
前記クラウドサーバにおける前記同期アカウントでの前記マークに対応するデータである同期対象データの記録操作時間が前記移動端末による前回のデータ同期の時間を越えていると判断する判断モジュールと、
前記移動端末と前記同期対象データの同期を行う同期モジュールと、を含み、
前記移動端末が前回に当該クラウドサーバとデータ同期を行った時間と現在時間との間隔が予め設定された時間間隔を超えていると判断し、当該移動端末の前記クラウドサーバにおける全てのデータを削除することにさらに用いられるデータ同期装置。
【請求項９】
前記受信モジュールがさらに、前記移動端末から送信されるデータ同期要求に含まれた前記移動端末の変更データ及び共有又は専用を含む前記変更データの属性情報を受信する請求項８に記載の装置。
【請求項１０】
前記同期モジュールが、
前記変更データの操作タイプを取得する取得ユニットと、
前記操作タイプに応じて前記変更データに操作を行う第１の同期ユニットと、を含む請求項９に記載の装置。
【請求項１１】
前記第１の同期ユニットは、
前記操作タイプが追加である場合、前記変更データを当該クラウドサーバに追加すると共に、前記追加された変更データの記録操作時間を追加操作の時間に設定する第２の同期ユニットと、
前記操作タイプが削除又は修正である場合、当該クラウドサーバに記録された当該変更データに対応するデータ属性が共有であるか否かを判断し、判断結果がYESであると、前記クラウドサーバ中の対応するデータを削除又は修正すると共に、前記データの記録操作時間を削除操作又は修正操作の時間に更新する第３の同期ユニットと、を含む請求項１０に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信分野に関し、具体的には、データ同期方法及び装置に関するものである。
【背景技術】
【０００２】
本願に記載のクラウドに基づく同期とは、移動端末がユーザのアカウントを用いてクラウドに登録した後、移動端末とクラウドとが双方向のデータ同期を行うことを言う。クラウドは通常、分布式システムであり、実際に使用において、複数の移動端末が同時に同一又は異なる登録アカウントを用いて同期を行い、一つのアカウントが長期間使用されていないが当該アカウントのユーザがクラウドによりログアウトされない現象がよく起きていて、上記現象によって、既存技術における同期制御情報が多すぎて、トラフィックが多く、また、関連技術において、同一のアカウントでの複数の移動端末によって同期を実現したコンテンツは完全に同一であるので、ユーザのさまざまな需要を満たすことができず、例えば、vivianアカウントがA携帯電話で《java書》を読んでいて、ユーザはA携帯電話とクラウドとの《java書》のブックマークの同期を希望し、一方、vivianアカウントがB携帯電話で《C＋＋書》を読んでいて、ユーザはB携帯電話とクラウドとの《C＋＋書》のブックマークの同期を希望していると、つまり、ユーザが、vivianアカウントがA、B携帯電話でそれぞれ各携帯電話に対応するデータの同期を希望していて、A、B携帯電話で《java書》、《C＋＋書》データを共有しているのではないが、現在の技術において、同期を発すると、A、B携帯電話はいずれも《C＋＋書》、《java書》２つ書物のブックマークを受信でき、即ち、同一のアカウントでのA、B携帯電話が同期を実現したコンテンツは完全に同一であって、これにより、ユーザの多様な需要を満たすことができないと共に、同一のアカウントでの複数の移動端末に完全に同一なデータ同期を行っているので、データ同期のトラフィックが増加され、クラウドのリソース消費が増加される。
【０００３】
従って、上記のデータ同期方法において、同一のアカウントでの複数の移動端末にデータ同期を行うことで、データ同期のトラフィックが増加され、クラウドのリソース消費が増加される問題が存在し、同時に、ユーザの多様な需要を満たすことができない。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明は、少なくとも関連技術における同一のアカウントでの複数の移動端末がデータ同期を行うことでデータ同期のトラフィックが増加され、クラウドのリソース消費が増加される問題を解決できるデータ同期方法及び装置を提供することを目的とする。
【課題を解決するための手段】
【０００５】
本発明の一態様によると、クラウドサーバが、移動端末から送信された、移動端末のマーク、移動端末による前回のデータ同期の時間、移動端末とクラウドサーバがデータ同期を行う同期アカウントを携帯したデータ同期要求を受信して、クラウドサーバが、クラウドサーバにおける同期アカウントでマークに対応するデータである同期対象データの記録操作時間が移動端末による前回のデータ同期の時間を越えると判断し、クラウドサーバが、移動端末と同期対象データの同期を行うステップを含むデータ同期方法を提供する。
【０００６】
クラウドサーバが、同期対象データの記録操作時間が移動端末による前回のデータ同期の時間を越えると判断するステップが、クラウドサーバが、所定の業務に対応する同期対象データの記録操作時間が移動端末による前回のデータ同期の時間を越えると判断することを含み、クラウドサーバが移動端末と同期対象データの同期を行うステップが、クラウドサーバが所定の業務の同期対象データを移動端末に送信することを含むことが好ましい。
【０００７】
クラウドサーバが移動端末から送信されたデータ同期要求を受信するステップが、クラウドサーバが、移動端末から送信されたデータ同期要求に含まれた移動端末の変更データ及び共有又は専用を含む変更データの属性情報を受信することを含むことが好ましい。
【０００８】
クラウドサーバが、移動端末と同期対象データの同期を行うステップが、クラウドサーバが、変更データの操作タイプを取得し、操作タイプに応じて変更データに操作を行うことを含むことが好ましい。
【０００９】
クラウドサーバが操作タイプに応じて変更データに操作を行うステップが、操作タイプが追加であると、クラウドサーバが、変更データを当該クラウドサーバに追加し、また、追加された変更データの記録操作時間を追加操作の時間に設定し、操作タイプが削除又は修正であると、クラウドサーバが、当該クラウドサーバに記録された当該変更データに対応するデータ属性が共有であるか否かを判断し、判断結果がYESであると、クラウドサーバ中の対応するデータを削除又は修正し、データの記録操作時間を削除操作又は修正操作の時間に更新するステップを含むことが好ましい。
【００１０】
クラウドサーバが移動端末と同期対象データの同期を行うステップが、操作タイプが削除又は修正であって、且つ、移動端末とクラウドサーバポータルが同時に変更データの削除又は修正要求を発した場合、クラウドサーバが、移動端末とクラウドサーバポータルの優先順に従って変更データに対応する操作を行うことを含むことが好ましい。
【００１１】
クラウドサーバが移動端末と同期対象データの同期を行うステップが、複数の移動端末が同期対象データに対する同期を同時に発している場合、クラウドサーバが順に複数の移動端末に同期を行うことを含むことが好ましい。
【００１２】
クラウドサーバが移動端末と同期対象データの同期を行った後、上記データ同期方法が、クラウドサーバが、移動端末が前回に当該クラウドサーバとデータ同期を行った時間と現在時間との間隔が予め設定された時間間隔を超えていると判断し、当該移動端末のクラウドサーバにおける全てのデータを削除するステップをさらに含むことが好ましい。
【００１３】
本発明の他の態様によると、移動端末から送信された、当該移動端末のマーク、移動端末による前回のデータ同期の時間、当該移動端末とクラウドサーバがデータ同期を行う同期アカウントを携帯したデータ同期要求を受信する受信モジュールと、クラウドサーバにおける同期アカウントでのマークに対応するデータである同期対象データの記録操作時間が移動端末による前回のデータ同期の時間を越えていると判断する判断モジュールと、移動端末と同期対象データの同期を行う同期モジュールと、を含むデータ同期装置を提供する。
【００１４】
受信モジュールがさらに、移動端末から送信されたデータ同期要求に含まれた移動端末の変更データ及び共有又は専用を含む変更データの属性情報を受信することが好ましい。
【００１５】
同期モジュールが、変更データの操作タイプを取得する取得ユニットと、操作タイプに応じて変更データに操作を行う第１の同期ユニットと、を含むことが好ましい。
【００１６】
第１の同期ユニットは、操作タイプが追加である場合、変更データを当該クラウドサーバに追加すると共に、追加された変更データの記録操作時間を追加操作の時間に設定する第２の同期ユニットと、操作タイプが削除又は修正である場合、当該クラウドサーバに記録された当該変更データに対応するデータ属性が共有であるか否かを判断し、判断結果がYESであると、クラウドサーバ中の対応するデータを削除又は修正すると共に、データの記録操作時間を削除操作又は修正操作の時間に更新する第３の同期ユニットと、を含むことが好ましい。
【発明の効果】
【００１７】
本発明において、クラウドサーバが移動端末から送信された、当該移動端末のマーク、移動端末による前回のデータ同期の時間、当該移動端末とクラウドサーバがデータ同期を行う同期アカウントを携帯したデータ同期要求を受信することによって、当該移動端末が当該アカウントでの端末であることを確保でき、また、クラウドサーバが同期対象データの記録操作時間が前記移動端末による前回のデータ同期の時間を越えていることを判断することによって、クラウドサーバ上の変更されたデータが同期対象データであることを確認でき、同時に、同期対象データはクラウドサーバ上の同期アカウントでの移動端末のマークに対応するデータで、即ち、同期対象データは対応するマークの移動端末との当該同期対象データの同期のみを許可し、これにより、同一のアカウントでの複数の移動端末がデータ同期を行うことによってデータ同期のトラフィックが増加され、クラウドのリソース消費が増加される問題を解決できる。従って、データ同期によるトラフィックを減少し、クラウドサーバのリソース消費を減少、ユーザの多様な需要を満たすことができる。
【図面の簡単な説明】
【００１８】
ここで説明する図面は本発明を理解させるためのもので、本発明の一部を構成し、本発明における実施例と共に本発明を解釈するためのものであり、本発明を不当に限定するものではない。
【図１】図１は、本発明の実施例に係わるデータ同期方法を示すフローチャートである。
【図２】図２は、本発明の実施例に係わる同期制御データテーブルを示す図である。
【図３】図３は、本発明の実施例に係わる業務データテーブルを示す図である。
【図４】図４は、本発明の実施例に係わる他のデータ同期方法を示すフローチャートである。
【図５】図５は、本発明の実施例に係わる連絡者業務データテーブルを示す図である。
【図６】図６は、本発明の実施例に係わる変更データの移動端末への返送を示すフローチャートである。
【図７】図７は、本発明の実施例に係わるデータ同期装置の構造を示すブロック図である。
【図８】図８は、本発明の実施例に係わる同期モジュールの構造を示すブロック図である。
【図９】図９は、本発明の実施例に係わる同期ユニットの構造を示すブロック図である。
【発明を実施するための形態】
【００１９】
以下、図面を参照しつつ実施例と組み合わせて本発明を詳しく説明する。ここで、支障がない限り、本願に記載の実施例及び実施例中の特徴は互いに組み合わせることができる。
【実施例１】
【００２０】
本実施例において、好適なデータ同期方法を提供し、図１は本発明の実施例に係わるデータ同期方法を示すフローチャートで、図１に示すように、当該データ同期方法包括はステップＳ１０２〜ステップＳ１０６を含む。
【００２１】
ステップＳ１０２：クラウドサーバが、移動端末から送信されたデータ同期要求を受信し、ここで、同期要求に当該移動端末のマーク、移動端末による前回のデータ同期の時間、当該移動端末とクラウドサーバがデータ同期を行う同期アカウントを携帯する。
【００２２】
ステップＳ１０４：クラウドサーバが、同期対象データの記録操作時間が移動端末による前回のデータ同期の時間を越えていると判断し、ここで、同期対象データはクラウドサーバ上の同期アカウントでのマークに対応するデータである。
【００２３】
ステップＳ１０６：クラウドサーバが、移動端末と同期対象データの同期を行う。
【００２４】
上記ステップによって、クラウドサーバが、移動端末から送信された、当該移動端末のマーク、移動端末による前回のデータ同期の時間、当該移動端末がクラウドサーバとデータ同期を行う同期アカウントを携帯したデータ同期要求を受信することによって、当該移動端末が当該アカウントでの端末であることを確保でき、また、クラウドサーバが、同期対象データの記録操作時間が前記移動端末による前回のデータ同期の時間を越えていると判断することによって、クラウドサーバ上の変更されたデータが同期対象データであることを確認でき、同時に、同期対象データはクラウドサーバにおける同期アカウントでの移動端末のマークに対応するデータで、即ち、同期対象データが対応するマークの移動端末との当該同期対象データの同期のみを許可し、同一のアカウントでの複数の移動端末がデータ同期を行うことによってデータ同期のトラフィックが増加され、クラウドのリソース消費が増加される問題を解決でき、データ同期によるトラフィックを減少し、クラウドサーバのリソース消費を減少し、ユーザの多様な需要を満たすことができる。
【００２５】
同期対象データを正確に移動端末に送信するため、本好適な実施例において、クラウドサーバが同期対象データの記録操作時間が移動端末による前回のデータ同期の時間を越えていると判断する方法を提供し、例えば、クラウドサーバが、所定の業務に対応する同期対象データの記録操作時間が移動端末による前回のデータ同期の時間を越えていると判断することによって、クラウドサーバにおける移動端末に対し変更されたデータを区別し、所定の業務の同期対象データを移動端末に送信することによって、移動端末に送信する同期対象データがクラウドサーバにおける移動端末に対し変更されたデータであることを確保できる。
【００２６】
クラウドサーバと移動端末との間で双方向のデータ同期を実現するため、本実施例において、好適な移動端末側の変更データをクラウドサーバに同期させる方法を提供し、例えば、クラウドサーバが移動端末から送信される移動端末の変更データと変更データの属性情報が含まれたデータ同期要求を受信し、ここで、属性情報は共有又は専用を含む。本好適な実施例において、移動端末は自分の変更されたデータをデータ同期要求によってクラウドサーバに送信し、また、例えば当該変更データが共有データであるか否か、即ち当該変更データが上記同期アカウントでの全ての移動端末による同期を許可するか否かの変更データの属性情報を携帯することによって、同期データが当該同期アカウントでの一部の移動端末によって同期される。
【００２７】
機器がクラウドと同期を行うたびに、機器及び/又はクラウド側の変更されたデータのコンテンツのみが同期され、毎回機器から送信される同期要求メッセージは、deviceID、アカウント、パスワード、synId、機器側の変更されたデータ及びデータ操作タイプ等のコンテンツを携帯し、ここで、変更されたデータが新しく追加されたデータである場合、上記同期要求メッセージはマークshareをさらに携帯し、当該新しく追加されたデータが共有を許可するか否かを表し、新しく追加されたデータが共有を許可すると、クラウドサーバは当該アカウントでの全ての機器で当該データを共有できると認め、新しく追加されたデータが共有を許可しないと、今回の同期要求を発した機器による当該新しく追加されたデータの同期のみを許可する。また、ユーザがポータル端末で当該新しく追加されたデータを共有できる具体的な機器を設定することもできる。
【００２８】
変更データに対する異なる操作需要を満たすため、本好適な実施例において、クラウドサーバは、先ず、変更データの操作タイプを取得し、操作タイプに応じて変更データに操作を行い、例えば、操作タイプは追加、削除及び修正であることができ、これにより、異なる操作によって変更データをクラウドサーバに同期させ、操作タイプが追加である場合、クラウドサーバは変更データを当該クラウドサーバに追加すると共に、追加された変更データの記録操作時間を現在の追加操作時間に設定し、操作タイプが削除又は修正である場合、クラウドサーバは、当該クラウドサーバに記録された当該変更データに対応するデータ属性が共有であるか否かを判断することによって、当該移動端末が当該変更データに削除又は修正操作を行う権利があるか否かを判断し、判断結果がYESであると、クラウドサーバ中の対応するデータを削除又は修正し、データの記録操作時間を現在の削除操作又は修正操作を行った時間に更新する。
【００２９】
システムの安定性を確保するため、クラウドサーバと移動端末が同時に同期対象データの同期を発した場合、操作タイプが削除又は修正であって、移動端末とクラウドサーバポータルが同時に変更データに削除又は修正要求を発した時、クラウドサーバは、予め設定された移動端末とクラウドサーバポータルの優先順に応じて変更データに対応する操作を行う。例えば、移動端末Aが記録ssに削除操作を行うことを要求し、クラウドサーバポータルがss記録に修正操作を行うことを要求すると、ユーザにより設定された移動端末Aが優先であるかそれともクラウドサーバポータルが優先であるかの順に応じて対応する操作を行い、移動端末Aが優先であると、当該ss記録をクラウドサーバから削除し、クラウドサーバポータルが優先であると、クラウドサーバにより修正されたss記録を端末に返送して同期を行う。ここで、同時とは、現在時間の同秒内のことを指し、これは時間を秒レベルまでしか正確に測定できないからで、１秒内に移動端末とクラウドサーバポータルが同一のデータの同期を発することがある。
【００３０】
システムの安定性を一層確保するため、複数の移動端末が同時に同期対象データの同期を発すると、クラウドサーバは順に複数の移動端末に同期を行い、例えば、移動端末Aが記録ssに削除操作を行うことを要求し、移動端末Bが記録ssに修正操作を行うことを要求し、現在A、Bに保存されたSynId（移動端末による前回のデータ同期の時間に相当）が同一であって、即ち、最近の同期後のA、Bのデータ状態が一致し、移動端末A、移動端末Bが共にクラウドサーバに同期を発していると、クラウドサーバはssデータにシリアル操作を行い、つまり、順に移動端末A、移動端末Bの操作要求に応じてssデータに対応する操作を行うことで、システムの安定を保証し、ここで、同時とは、現在時間の同一秒内を指し、これは、時間を秒レベルまでしか正確に測定できないからで、１秒内に複数の移動端末が同一のデータの同期を発することがあるので、ローカル時間＋計算器の方式で各移動端末が要求を発した順を区別し、即ち、ローカル時間にカウンターによる測定値を加算し、例えば、現在時間内に一番目に同期を要求した端末の要求開始時間は現在時間＋１で、現在時間内に二番目に同期を要求した端末の要求開始時間は現在時間＋２で、順に類推し、同一の時間内に１秒内に順に同期の要求を発した複数の端末を区別する。
【００３１】
サーバの記憶空間を節約するため、クラウドサーバのバックステージはスレッドの整理に失敗した機器の関連情報を用いて、例えば、クラウドサーバが各アカウントでの全ての機器のdevice_timestamp（移動端末が前回当該クラウドサーバとデータ同期を行った時間に相当）と現在時間との間の時間長がexpiretime（予め設定された時間間隔に相当）を超えているか否かを定時的に検査し、超えていると、当該機器による当該アカウントでの同期が失効し、スレッドを整理し、クラウドサーバ中の当該機器の関連情報を削除することができる。
【００３２】
以下、図面と実施例を組み合わせて上記各好適な実施例を詳しく説明する。
【００３３】
上記データ同期方法を簡単に実現するため、テーブルの形態で制御することができ、例えば、サーバ端末で同期制御データテーブル及び各業務の業務データテーブルを作成し、smsと図画の同期を例にすると、図２に示すように、同期制御データテーブルは以下の情報を含むことができるが、これらに限定されることはない。
userInfoフィールド：アカウントID（同期アカウントに相当）。
expiretimeフィールド（予め設定された時間間隔に相当）：アカウント失効時間。一つの機器が上記アカウントで長期間に渡って同期を行なわない時間がexpiretimeフィールドの時間を越えていると、当該機器による当該アカウントでの同期は失効し、サーバの記憶空間を節約するため、当該機器の関連データを整理する。当該無効機器が再び上記アカウントを介してサーバに同期を発していると、全ての業務の全ての記録を再び同期しなければならない。
sms_synId（移動端末が前回クラウドサーバとメッセージデータの同期を行った時間に相当）：メッセージ業務の最新の操作同期ID。
pic_synId（移動端末が前回クラウドサーバと写真データの同期を行った時間に相当）：写真業務の最新の操作同期ID。
【００３４】
実際の業務に応じてxx_synIdフィールド（移動端末が前回クラウドサーバとデータの同期を行った時間に相当）を拡張することが好ましく、例えば、連絡者業務であると、contact_synIdである。上記同期ID（移動端末による前回のデータ同期の時間に相当）は、時間＋カウンターで構成され、時間は今回の同期操作を行う時の時間を指し、これは、時間を秒レベルまでしか正確に測定できないからで、これにより、ローカル時間＋計算器の方式で各移動端末が要求を発した順を区別し、即ち、ローカル時間にカウンターの測定値を加算し、例えば、現在時間内に一番目に同期を要求した端末のcurrentSynIdを現在時間＋１とし、現在時間内に二番目に同期を要求した端末のcurrentSynIdを現在時間＋２とし、順に類推し、同一の時間内の１秒内に順に同期要求を発した複数の端末を区別する。
【００３５】
device_info：一つのアカウントで同期した全ての機器を記録する。device_info（同一のアカウント機器）フィールドは、device_idフィールド（移動端末のマークに相当）とdevice_timestamp（移動端末による前回のデータ同期の時間に相当）フィールドとを含み、ここで、device_idフィールドは機器の識別子で、携帯電話のdevice_idフィールドであるとIMEI番号を用いることができ、device_timestampフィールドは当該機器の最新の同期のタイムスタンプである。
【００３６】
各業務はいずれも少なくとも一つの業務データテーブルを有し、図３に示すように、業務データテーブルは以下の情報を含むが、これらに限定されることはない：
ObjectID：各記録（同期対象データ）のID。
Countname：当該記録が所属されるアカウントID。
row_timestamp（同期対象データの記録操作時間に相当）：当該記録の最新修正時間。
op_index：当該記録の最新操作タイプで、「０」-add（追加）と、「１」-change（修正）と、「２」-delete（削除）に分けることができる。
ShareDevice:当該記録を共有できる機器の機器識別子を保存している。
ここで、上記業務データテーブルはただ、好適な実施例にすぎず、本発明はこれらの限定されることはなく、上記業務データテーブルに記録された具体的なデータは当該テーブルにおいて他のフィールドを拡張できる。
【００３７】
上記同期制御データテーブルと各業務の業務データテーブルに基づいて同期を行う場合、以下の操作を行うことができる：先ず、現在時間＋カウンターに基づいてcurrentSynIdを生成し、同期中において、携帯電話側から送信された変更データの要求を先に実行し、変更データをクラウド業務データテーブルに更新し、同時に、業務データテーブル中のrow_timestampをcurrentSynId値に更新する。変更データの操作タイプが追加であって、新しく追加されたデータのshareが真（true）であると、共有を許可することで、クラウドは同期制御データテーブル中のdevice_infoの全てのdevice_idを業務データテーブル中のShareDeviceに記憶し、つまり、当該記録を当該アカウントでの機器が全て共有することができ、shareがfalseであると、共有を許可しないことで、業務データテーブル中のShareDeviceには今回の同期要求を発した機器のdeviceIDのみを保存する。データの操作タイプが修正又は削除であると、今回の同期要求を発した機器のdeviceIDとShareDevice中のdeviceIDを整合させ、整合に成功していないと、当該端末機器が当該データ記録を更新する権利がないことを示し、端末が要求した変更データをクラウドに更新した後、クラウド側の変更データを端末に返送し、ここで、同期要求メッセージに携帯されたsynIdがxx_synIdフィールドより小さいと、サーバが当該機器の当該アカウントでの当該業務データに比べ変更されることを示し、この時、クラウドサーバ側の変更したデータを当該機器に送信しなければならない。当該業務データテーブルから全ての記録をトラバーサルし、synId がrow_timestampより小さく、且つdeviceID整合がShareDeviceに属される記録を取り出し、ここで、row_timestamp数値がcurrentSynId値に等しい記録に特殊処理を行い、即ち、synId がrow_timestampより小さく、且つdeviceID整合がShareDeviceに属される記録を機器に送信し、クラウドポータルと携帯電話が同時に唯一でないフィールドに修正を行う時、フィールドを充填拡張し、即ち、クラウドポータルと携帯電話が修正したフィールドを全てクラウドの業務データテーブル中に更新し、クラウドポータルと携帯電話が同時に唯一のフィールドに修正を行うと、ユーザが設定したクラウドポータルと携帯電話の優先順に応じて、携帯電話が修正したデータでクラウドポータルが修正した当該記録をカバーするかを判定し、その後、変更データとcurrentSynIdを携帯電話に返送し、携帯電話側が次に同期要求を発する時に当該currentSynId数値を継続して利用し、currentSynId数値をSynIdとしてサーバに送信する。
【００３８】
以下、図面と組み合わせて上記データ同期方法を詳しく説明するが、ここで、業務データテーブルとして、携帯電話側の連絡者業務データテーブルを例とし、図４に示すように、当該データ同期方法はステップＳ４０２〜ステップＳ４４８を含む。
【００３９】
ステップＳ４０２：ユーザが、同期要求を発し、クラウドに同期要求メッセージを送信し、当該同期要求メッセージは携帯電話側の変更されたデータ（初回の同期の場合、端末側の全てのデータをクラウドに送信し、初回の同期ではないと、端末側の変更されたデータのみをクラウドに送信する）、データの操作タイプ、SynId、deviceID、アカウント及びパスワードを携帯する。当該機器が初回の同期であると、SynIdは０で、当該機器が初回の同期ではないと、最近の同期のSynIdをサーバに送信する。サーバ側に同期制御データテーブルと連絡者業務データテーブルが設定されている。業務データテーブルは、図５に示すように、ObjectID、Countname、row_timestamp、op_index、連絡者姓名、連絡者番号、ShareDevice及び連絡者のEmaill（メールアドレス）等のフィールドを含み、データテーブルを初めて構築した場合、最初に業務データテーブルには何のデータもない。
【００４０】
ステップＳ４０４：クラウドサーバが、同期要求メッセージを受信した後、ユーザ名、パスワードの検証を行う。
【００４１】
ステップＳ４０６：ユーザ名、パスワードの検証にパスした後、deviceIDとsynIdの合法性を検証し、合法であると、ステップＳ４０８に移行し、合法でないと、同期要求無効のメッセージを端末にフィードバックし、ここで、deviceIDとsynIdを検証する方法は、deviceIDと当該アカウントでのdevice_info中のdeviceIDを整合し、整合に成功すると機器が合法であることを示し、同期要求メッセージに携帯したsynIdがxx_synIdフィールド以下である場合、要求のsynIdは合法である。
【００４２】
ステップＳ４０８：currentSynId（現在同期ID）を生成し、currentSynIdを生成する戦略は、ローカル時間＋計算器で、即ち、ローカル時間にカウンターの測定値を加算し、例えば、現在時間内に一番目に同期を要求した端末のcurrentSynIdは現在時間＋１で、現在時間内に二番目に同期を要求した端末のcurrentSynIdは現在時間＋２で、順に類推し、同一の時間内の１秒内に順に同期要求を発した複数の端末を区別する。
【００４３】
ステップＳ４１０：端末から送信された同期要求メッセージに携帯した各記録データをトラバーサルする。
【００４４】
ステップＳ４１２：各記録データ要求の操作タイプを判断し、追加であると、ステップＳ４１４に移行し、削除であると、ステップＳ４２４に移行し、修正であると、ステップＳ４４０に移行する。
【００４５】
ステップＳ４１４：データ要求の操作タイプが追加操作であると、同期要求メッセージに携帯したshare（共有マーク）が真であるかを判断し、真であると、ステップＳ４１６に移行し、shareが真でないと、即ち、shareがfalseであると、ステップＳ４１８に移行する。
【００４６】
ステップＳ４１６：shareが真であると、device_info中の全てのdevice_idを業務データテーブル中の当該記録のShareDeviceに保存し、即ち、当該アカウントでの全ての端末の当該記録データの共有を許可する。
【００４７】
ステップＳ４１８：shareがfalseであると、当該記録データを共有できないことを示し、業務データテーブル中の当該記録のShareDevice（共有機器マークフィールド）には今回の同期要求を発した機器のdeviceIDのみが保存され、即ち、当該機器の当該記録データの同期のみを許可する。
【００４８】
ステップＳ４２０：当該記録データをクラウドの業務データテーブルに追加する。
【００４９】
ステップＳ４２２：業務データテーブル中の当該記録データのrow_timestamp（操作時間IDフィールド）をcurrentSynId値に更新し、ステップＳ６０２に移行する。
【００５０】
ステップＳ４２４：データ要求の操作タイプが削除操作であると、クラウド業務データテーブル中の当該記録のShareDeviceに今回の同期要求を発した機器のdeviceIDが含まれているか否かを判断し、含まれていないと、当該機器は当該記録データを削除する権利がなく、当該記録に何の操作も行わず、ステップＳ６０２に移行し、含まれていると、当該機器が当該記録データを削除する権利があることを示し、ステップＳ４２６に移行する。
【００５１】
ステップＳ４２６：ユーザが設定した端末とクラウドポータルの優先順において端末の優先順がクラウドポータルの優先順より高いかを判断し、そうであると、ステップＳ４３０に移行し、そうでないと、ステップＳ４２８に移行する。
【００５２】
ステップＳ４２８：クラウド業務データテーブル中の当該記録データのrow_timestampがSynIdを超えるかを判断し、そうであると、ステップＳ６０２に移行し、そうでないと、ステップＳ４３０に移行する。
【００５３】
ステップＳ４３０：クラウド業務データテーブル中の当該記録のデータ操作タイプが既に削除操作タイプであるか否かを判断し、そうであると、ステップＳ４３６に移行し、そうでないと、ステップＳ４３２に移行する。
【００５４】
ステップＳ４３２：クラウド業務データテーブル中の当該記録のデータの操作タイプを削除操作に修正する。
【００５５】
ステップＳ４３４：クラウド業務データテーブル中の当該記録のrow_timestampフィールド数値をcurrentSynIdに更新する。
【００５６】
ステップＳ４３６：当該アカウントでの全ての機器のdevice_timestamp（同期ID）がいずれも当該削除記録のrow_timestampを超えているかを比較し、これは、いずれも超えていると全ての機器が既に当該記録の同期を行っていることを示し、そうであると、ステップＳ４３８に移行し、そうでないと、しばらく当該記録データを本当に削除せず、ステップＳ６０２に移行する。
【００５７】
ステップＳ４３８：当該記録データを物理的に削除する。
【００５８】
ステップＳ４４０：データ要求の操作タイプが修正操作であると、クラウド業務データテーブル中の当該記録のShareDeviceに今回の同期要求を発した機器のdeviceIDが含まれているかを判断し、含まれていないと、当該機器は当該記録データを修正する権利がなく、当該記録に何の操作も行わず、ステップＳ６０２に移行し、含まれていると、当該機器が当該記録データを修正する権利を有することを示し、ステップＳ４４２に移行する。
【００５９】
ステップＳ４４２：ユーザが設定した端末とクラウドポータルの優先順において端末の優先順がクラウドポータルの優先順より高いかを判断し、そうであると、ステップＳ４４４に移行し、そうでないと、ステップＳ４４８に移行する。
【００６０】
ステップＳ４４４：端末が記録した各フィールドとクラウドが記録した各フィールドが同一であるか否かを比較し、当該記録データが唯一のフィールドの記録であるか否かを判断し、そうであると、ステップＳ４４６に移行し、そうでないと、ステップＳ４４８に移行する。
【００６１】
ステップＳ４４６：当該記録データが唯一のフィールドであると、端末が修正したデータでクラウドが修正した当該記録をカバーし、ステップＳ４２２に移行する。
【００６２】
ステップＳ４４８：当該記録データが唯一のフィールドではないと、フィールドを充填拡張し、即ち、クラウドと端末が修正したフィールドをいずれもクラウドの業務データテーブルに更新し、同時に、一時的データ組であるtemp_recoder中に当該記録データを記録し、ステップＳ４２２に移行する。
【００６３】
上記フローにおいて、ステップＳ６０２に移行した後、図６に示すプロセスを行い、クラウド側の変更データを端末に返送し、データの同期を完成し、図６に示すように、当該プロセスは、ステップＳ６０２〜ステップＳ６１８を含む。
【００６４】
ステップＳ６０２：同期要求メッセージに携帯したSynIdが当該アカウントでのcontact_synId（即ち、業務ID，xx_synIdフィールド）より小さいかを判断し、小さくないと、クラウドサーバ側に変更データがないことを示し、ステップＳ６１６に移行し、小さいと、ステップＳ６０４に移行する。
【００６５】
ステップＳ６０４：業務データテーブル中の各記録をトラバーサルする。
【００６６】
ステップＳ６０６：synIdがrow_timestampより小さく、且つ当該機器のdeviceID整合がShareDeviceに属する記録を取り出し、また、クラウド業務データテーブル中のこれらの記録のrow_timestampフィールド数値をcurrentSynIdに更新する。
【００６７】
ステップＳ６０８：取り出された記録に操作タイプが削除操作である記録があるか否かを判断し、あると、ステップＳ６１０に移行し、ないと、ステップＳ６１６に移行する。
【００６８】
ステップＳ６１０：操作タイプが削除操作である記録があると、当該アカウントでの全ての機器のdevice_timestampが当該記録のrow_timestampを超えているか否かを比較し、超えていると、ステップＳ６１２に移行し、超えていないと、ステップＳ６１４に移行する。
【００６９】
ステップＳ６１２：当該記録を物理的に徹底的に削除する。
【００７０】
ステップＳ６１４：上記の取り出された記録と一時的なデータ組であるtemp_recoder中に記録された記録データをパッケージングする。
【００７１】
ステップＳ６１６：currentSynId数値で当該アカウントでのcontact_synIdフィールドを更新する。
【００７２】
ステップＳ６１８：最後に、上記の取り出した記録とtemp_recoder中の記録をパッケージングし、contact_synId数値を携帯して端末に送信することで、データの同期を完成する。
【００７３】
ここで、上記のプロセスの後、サーバの記憶空間を節約するため、クラウドサーバのバックステージは、スレッドの整理に失効した機器の関連情報を用いて、各アカウントでの全ての機器のdevice_timestampの時間と現在時間との間の時間長がexpiretimeを超えているか否かを定期的に検査し、超えていると、当該機器の当該アカウントでの同期は失効し、スレッドを整理し当該機器の関連情報を削除することができる。
【実施例２】
【００７４】
本実施例において、好適なデータ同期装置を提供し、図７に示すように、当該データ同期装置は、移動端末から送信されるデータ同期要求を受信する受信モジュール７０２と、ここで、同期要求に当該移動端末のマーク、移動端末による前回のデータ同期の時間、当該移動端末とクラウドサーバがデータ同期を行った同期アカウントを携帯し；受信モジュール７０２に接続されて、同期対象データの記録操作時間が移動端末による前回のデータ同期の時間を越えているか否かを判断する判断モジュール７０４と、ここで、同期対象データはクラウドサーバにおける同期アカウントでマークに対応するデータであって；判断モジュール７０４に接続されて、移動端末と同期対象データの同期を行う同期モジュール７０６と、を含む。
【００７５】
上記実施例において、受信モジュール７０２が、移動端末から送信された、当該移動端末のマーク、移動端末による前回のデータ同期の時間、当該移動端末とクラウドサーバがデータ同期を行った同期アカウントを携帯するデータ同期要求を受信することによって、当該移動端末が当該アカウントでの端末であることを確保でき、また、判断モジュール７０４が、同期対象データの記録操作時間が前記移動端末による前回のデータ同期の時間を越えていることを判断することによって、クラウドサーバ上の変更されたデータが同期対象データであることを確認でき、同時に、同期対象データがクラウドサーバ上の同期アカウントでの移動端末のマークに対応するデータである、即ち、同期対象データは対応するマークの移動端末による当該同期対象データの同期のみを許可し、これにより、同一のアカウントでの複数の移動端末がデータ同期を行うことでデータ同期のトラフィックが増加され、クラウドのリソース消費が増加される問題を解決でき、データ同期によるトラフィックを減少し、クラウドサーバのリソース消費を減少し、ユーザの多様な需要を満たすことができる。
【００７６】
同期対象データを正確に移動端末に送信するため、上記判断モジュール７０４はさらに、所定の業務に対応する同期対象データの記録操作時間が移動端末による前回のデータ同期の時間を越えているかを判断することによって、クラウドサーバ上の移動端末に比べ変更されたデータを区別し、同期モジュール７０６を介して所定の業務の同期対象データを移動端末に送信することによって、移動端末に送信される同期対象データがクラウドサーバ上の移動端末に比べ変更されたデータであること確保する。
【００７７】
クラウドサーバと移動端末との間で双方向のデータ同期を実現するため、受信モジュール７０２はさらに、移動端末から送信されるデータ同期要求に含まれた移動端末の変更データと変更データの属性情報を受信し、ここで、属性情報は共有又は専用を含む。本好適な実施例において、移動端末は自分の変更されたデータをデータ同期要求を介してクラウドサーバに送信し、また、変更データの属性情報を携帯し、例えば、当該変更データが共有データであるか否か、即ち、当該変更データが上記同期アカウントでの全ての移動端末による同期を許可するか否かにより、同期データが当該同期アカウントでの一部の移動端末により同期される。
【００７８】
機器とクラウドが同期を行うたびに、機器及び/又はクラウド側の変更されたデータコンテンツのみの同期を行い、機器から送信される同期要求メッセージに、deviceID、アカウント、パスワード、synId、機器側の変更されたデータ及びデータ操作タイプのコンテンツを携帯し、ここで、変更されたデータが新しく追加されたデータである場合、上記同期要求メッセージはさらに、マークshareを携帯し、当該新しく追加されたデータが共有を許可するか否かを示し、新しく追加されたデータが共有を許可すると、クラウドサーバは当該アカウントでの全ての機器による当該データの共有を認め、新しく追加されたデータが共有を許可しないと、今回の同期要求を発した機器による当該新しく追加されたデータの同期のみを許可する。ここで、ユーザが、ポータル端末に当該新しく追加されたデータを共有することのできる具体的な機器を設定することもできる。
【００７９】
変更データの異なる操作需要を満たすため、図８に示すように、同期モジュール７０６は、変更データの操作タイプを取得する取得ユニット７０６２と、取得ユニット７０６２に接続され、操作タイプに応じて変更データに操作を行う第１の同期ユニット７０６４とを含み、例えば、操作タイプは追加、削除及び修正であることができ、これにより、異なる操作によって変更データをクラウドサーバに同期させることができ、従って、図９に示すように、上記第１の同期ユニット７０６４はさらに、取得ユニット７０６２に接続され、操作タイプが追加である場合、変更データを当該クラウドサーバに追加し、追加された変更データの記録操作時間を追加操作の時間に設定する第２の同期ユニット９０２と、取得ユニット７０６２に接続され、操作タイプが削除又は修正である場合、当該クラウドサーバに記録された当該変更データに対応するデータ属性が共有であるか否かを判断することで、当該移動端末が当該変更データに削除又は修正操作を行う権利があるか否かを判断し、判断結果がYESであると、クラウドサーバ中の対応するデータを削除又は修正し、データの記録操作時間を削除操作又は修正操作の時間に更新する第３の同期ユニット９０４と、を含む。
【００８０】
システムの安定性を確保するため、クラウドサーバと移動端末が同時に同期対象データの同期を発した場合、操作タイプが削除又は修正であって、且つ、移動端末とクラウドサーバポータルが同時に変更データの削除又は修正要求を発した時、同期ユニット７０６４はさらに、予め設定された移動端末とクラウドサーバポータルの優先順に応じて変更データに対応する操作を行い、例えば、移動端末Aが記録ssに削除操作を行うことを要求し、クラウドサーバポータルがss記録に修正操作を行うことを要求すると、ユーザが移動端末Aを優先に設定したかそれともクラウドサーバポータルを優先に設定したかの順に応じて対応する操作を行い、移動端末Aが優先であると、当該ss記録をクラウドサーバから削除し、クラウドサーバポータルが優先であると、クラウドサーバが修正したss記録を端末に返送して同期を行う。ここで、同時とは、現在時間の同一秒内を指し、これは、時間を秒レベルまでしか正確に測定できないからで、１秒内に移動端末とクラウドサーバポータルが同一のデータの同期を発する可能性がある。
【００８１】
システムの安定性を一層確保するため、複数の移動端末が同時に同期対象データの同期を発した場合、同期ユニット７０６４はさらに、順に複数の移動端末に同期を行い、例えば、移動端末Aが記録ssに削除操作を行うことを要求し、移動端末Bが記録ssに修正操作を行うことを要求し、現在A、Bに保存されたSynId（移動端末による前回のデータ同期の時間に相当）が同一であって、即ち、最近の同期後のA、Bのデータ状態が一致し、移動端末A、移動端末Bは同時にクラウドサーバに同期を発していると、クラウドサーバはssデータにシリアル操作を行い、即ち、順に移動端末A、移動端末Bの操作要求に応じてssデータに対応する操作を行うことによって、システムの安定を保証し、ここで、同時とは現在時間の同一秒内を指し、これは、時間を秒レベルまでしか正確に測定できないからで、これにより、ローカル時間＋計算器の方式で各移動端末が要求を発した順を区別し、即ち、ローカル時間にカウンターの測定値を加算し、例えば、現在時間内に一番目に同期を要求した端末が要求を発した時間は現在時間＋１で、現在時間内に二番目に同期を要求した端末が要求を発した時間は現在時間＋２で、順に類推し、同一の時間内の１秒内に順に同期要求を発した複数の端末を区別する。
【００８２】
サーバの記憶空間を節約するため、上記データ同期装置は、失効機器の関連情報を整理する整理モジュールをさらに含み、例えば、クラウドサーバは各アカウントでの全ての機器のdevice_timestamp（移動端末が前回当該クラウドサーバとデータ同期を行った時間に相当）と現在時間との間の時間長がexpiretime（予め設定された時間間隔に相当）を超えているか否かを判断し、超えていると、当該機器の当該アカウントでの同期が失効し、スレッドを整理しクラウドサーバ上の当該機器の関連情報を削除することができる。
【００８３】
当業者にとって、上記の本発明の各ブロック又は各ステップは共通の計算装置によって実現することができ、単独の計算装置に集中させることができれば、複数の計算装置から構成されるネットワークに分布させることもでき、さらに計算装置が実行可能なプログラムのコードによって実現することもできるので、それらを記憶装置に記憶させて計算装置によって実行することができ、又は夫々集積回路ブロックに製作し、又はそれらにおける複数のブロック又はステップを単独の集積回路ブロックに製作して実現することができることは明らかなことである。このように、本発明は如何なる特定のハードウェアとソフトウェアの結合にも限定されない。
【００８４】
以上は、本発明の好適な実施例に過ぎず、本発明を限定するものではない。当業者であれば本発明に様々な修正や変形を行うことが可能である。本発明の精神や原則内での如何なる修正、置換、改良なども本発明の保護範囲内に含まれる。
【図１】
0006018695.tif 000002
【図２】
0006018695.tif 000003
【図３】
0006018695.tif 000004
【図４】
0006018695.tif 000005
【図５】
0006018695.tif 000006
【図６】
0006018695.tif 000007
【図７】
0006018695.tif 000008
【図８】
0006018695.tif 000009
【図９】
0006018695.tif 000010