JP4225729B2 - 情報管理装置 - Google Patents
情報管理装置 Download PDFInfo
- Publication number
- JP4225729B2 JP4225729B2 JP2002006115A JP2002006115A JP4225729B2 JP 4225729 B2 JP4225729 B2 JP 4225729B2 JP 2002006115 A JP2002006115 A JP 2002006115A JP 2002006115 A JP2002006115 A JP 2002006115A JP 4225729 B2 JP4225729 B2 JP 4225729B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- database
- information
- time
- date
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06F16/273—Asynchronous replication or reconciliation
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Multi Processors (AREA)
- Stored Programmes (AREA)
- Management Or Editing Of Information On Record Carriers (AREA)
Description
【発明の属する技術分野】
本発明は、別々に格納された互いに対応するデータの整合性をとることができる情報管理技術に関し、特に、データベースのデータ量を増大させることなく、2以上の装置の間でデータの整合性をとる情報管理技術に関する。
【0002】
【従来の技術】
近年、情報処理装置は広く普及しており、個人が複数の情報処理装置、たとえば、サーバ等の共有の情報処理装置、デスクトップ・パソコン等の個人用の情報処理装置、および携帯情報端末等の携帯用の情報処理装置等において、アドレス帳やスケジュール帳等のデータベースを利用する機会が増えている。このような場合には、何れかの情報処理装置にて更新されたデータと、他の情報処理装置に保存されている、更新されたデータに対応するデータとが同一の内容となること、つまり各情報処理装置間でデータの整合性がとられていることが求められる。情報処理装置の間においてデータの整合性をとるための処理を「シンクロナイズ処理」という。
【0003】
特開平11−327987号公報は、情報処理装置間でデータの整合性をとるためのデータベース管理装置を開示する。このデータベース管理装置は、複数のデータベース管理装置と、同期処理よりも前に、対応するデータが格納される共有範囲を各データベース間で指定する共有設定回路と、互いに通信可能になったデータベース管理装置に格納されたデータベース間で、対応するデータの内容を一致させる同期処理回路とを含むデータベースシステムを構成するために設けられる。このデータベース管理装置は、前回の同期処理から次回の同期処理まで非同期期間中に、互いに対応するデータのうちで複数のデータが変更された場合に優先側を決定する回路と、同期処理回路に指示して、優先側のデータ内容で非優先側のデータ内容を置き換えさせる優先側決定回路とを含む。
【0004】
特開平11−327987号公報に開示されたデータベース管理装置によると、互いに対応するデータが、複数のデータベース管理装置で更新された場合(データが衝突した場合)、予め選択された優先側決定手段によって優先側が決定され、優先側のデータ内容で、非優先側のデータ内容が置き換えられる。この結果、データベースのデータ数の増大を防止できると共に、同期処理の際に伝送されたり、処理されたりするデータ量を削減できる。
【0005】
具体的には、特開平11−327987号公報に開示されたデータベース管理装置は、2つの情報処理装置のそれぞれにおいて、データ1件単位で(たとえばアドレス帳においては名前、住所、電話番号等からなる一人分のアドレス帳データ単位)、各データに対して「ダーティビット」が対応付けられており、各データに関するダーティビットの集合が各情報処理装置において「ダーティビットリスト」と称されるテーブルとして記憶されている。このダーティビットは、各情報処理装置間でシンクロナイズ処理を行なった時点を基準として、それ以降に各情報処理装置において各データの更新が行われたか否か等を示す。そして、この技術では、ダーティビットに基づいて整合性をとる対象となるデータ、つまり前回のシンクロナイズ処理を行なった時点以降に更新されたデータを抽出し、そのデータに対してシンクロナイズ処理を行なうことにより、効率よく各情報処理装置間でデータの整合性をとるようにしている。
【0006】
また、特開平9−6693号公報は、情報処理装置間での同期処理を高速、確実かつ自動的に行なうことができる情報処理方法を開示する。この情報処理方法は、情報処理装置の間で送受信されるデータに対して、データに対する操作状態を表わす操作属性情報とデータ固有の同一データ認識属性情報とを付加するステップと、情報処理装置の間でデータの同期処理を行なうステップと、各データに付加された前記操作属性情報および同一データ認識属性情報に基づいて、前回の同期処理を行なってから変化のあったデータを検索し、検索して得られたデータについて、そのデータに付加された操作属性情報および同一データ認識属性情報に基づいて、同期処理を制御するステップとを含む。
【0007】
特開平9−6693号公報に開示された情報処理方法によると、一対一で接続された情報処理装置の間で、前回の同期処理を行なってから変化のあったデータを検索し、検索して得られたデータについて、そのデータに付加されている小容量化された付加情報に基づいて同期処理を高速化することができる。
【0008】
【発明が解決しようとする課題】
特開平11−327987号公報に開示されている技術では、たとえば装置Aおよび装置Bの2つの情報処理装置間で上記のような関係が形成されている場合に、ダーティビットリストを有しない装置Cを単純に追加した3つの情報処理装置間でデータを利用しようとすると、図14に示すように、全体としてデータの整合性がとれなくなるといった問題が生じることになる。図14は、3つの情報処理装置間でデータの整合性がとれていない状態を示す概念図である。
【0009】
図14においては、装置A、装置Bおよび装置Cで利用されるデータαについて示している。この場合、時刻t0では各装置に同じデータα0が記憶され、時刻t1で装置Cにてデータα1に更新され、時刻t2で装置Aにてデータα2に更新され、時刻t3で装置Aと装置Bとの間でシンクロナイズ処理が行われ、時刻t4で装置Aと装置Cとの間でシンクロナイズ処理が行われる。なお、ここでは、装置Aを中心としてシンクロナイズ処理を行なうものとし、装置Bと装置Cとの間ではシンクロナイズ処理が行われないものと想定する。
【0010】
図14の更新情報とは、ダーティビットが示すデータαについての更新情報である。「○」はデータαが更新されてからシンクロナイズ処理が行われたことを示し、「×」はデータαが更新されてからシンクロナイズ処理が未だ行われていないことを示している。この更新情報は、上記のように装置Aと装置Bとの関係において定義されているものであるため、たとえ時刻t4で装置Aと装置Cとの間でシンクロナイズ処理を行なったとしても、その時点ではすでに装置Aのデータαに関する更新情報が「○」となっている。そのため、装置Aでの更新内容は装置Cには反映されない。このように、単純に装置Cを追加するだけでは全体としてデータの整合性がとれない。
【0011】
一方、装置Cを追加するにあたって装置Aと装置Cとの関係における更新情報、すなわち装置Aと装置Cとの間でシンクロナイズ処理を行なった時点を基準とした更新情報を示すダーティビットを装置Aおよび装置Cに記憶させることも考えられる。しかし、このような場合には、装置Cを追加する際に、装置Aおよび装置Cにおいてダーティビットリストを作成することが必要になるため、新たな装置間でデータを利用するための処理が繁雑になる。
【0012】
特開平9−6693号公報に開示されている技術では、一対一で接続された情報処理端末の間で、同期処理を高速化することができても、不定期的に接続される3台以上の情報処理装置の間で、それぞれが互いに同期化することができない。
【0013】
本発明は、上記の課題に鑑みて成されたものであり、その目的は新たな装置の間でデータを利用する際の処理がより容易な情報管理装置、情報管理プログラム、およびそのプログラムが記録されたコンピュータ読み取り可能な記録媒体を提供することである。さらに、本発明の目的は、新たな3台以上の装置の間でデータを利用する際の処理がより容易な情報管理装置、情報管理プログラム、およびそのプログラムが記録されたコンピュータ読み取り可能な記録媒体を提供することである。
【0014】
【課題を解決するための手段】
第1の発明に係る情報管理装置は、整合処理を行なう外部装置を指定する第1指定手段と、
整合処理を行なうデータベースの種別を指定する第2指定手段と、
第1データベースを格納するためのデータベース格納手段と、
前記第1データベースと、前記第1指定手段で指定された外部装置に格納され前記第2指定手段で指定された種別の第2データベースとの間で、データを置き換えることにより、対応するデータの整合性をとるための整合処理手段と、
前記第1データベースと前記第2データベースとの間で、前回整合処理を行なった時期を示す整合処理時期情報と、前記第1データベースに含まれる各データに対応付けられ、各前記データが変更された時期を示すデータ変更時期情報とに基づいて、前記第1データベースに含まれるデータの中から変更された時期が前回整合処理を行なった時期より新しいデータを整合性をとるべきデータとして決定する一方、前記データ変更時期情報がない場合は全データを整合性をとるべきデータとして決定するためのデータ決定手段とを含み、
前記整合処理手段は、前記第2指定手段で指定された種別の2以上の第2データベースとの間で、データを置き換えることにより、対応するデータの整合性をとり、
前記データ決定手段は、前記第1データベースと前記2以上の第2データベースとの間で、前回整合処理を行なった時期を示す整合処理時期情報と、前記第1データベースに含まれる各データに対応付けられ、各前記データが変更された時期を示すデータ変更時期情報とに基づいて、前記第1データベースに含まれるデータの中から変更された時期が前回整合処理を行なった時期より新しいデータを整合性をとるべきデータとして決定する一方、前記データ変更時期情報がない場合は全データを整合性をとるべきデータとして決定し、
前記第1指定手段は、予め定められた優先順位に従って、前記決定されたデータの整合性をとる対象である前記2以上の第2データベースの順序を決定するためのデータベース決定手段を含む。
【0015】
第1の発明によると、第1データベースおよび第2データベース間での整合処理時期情報と、前記第1データベースに含まれる各データに対応付けられ、各前記データが変更された時期を示すデータ変更時期情報とに基づいて、前記第1データベースに含まれるデータの中から変更された時期が前回整合処理を行なった時期より新しいデータが整合性をとるべきデータとして決定される一方、前記データ更新時期情報がない場合は全データが整合性をとるべきデータとして決定される。これにより、本情報管理装置にて変更された内容を他の情報管理装置に格納されているデータベースに反映させることが可能になる。このとき、整合処理手段は、第1データベースとは別の第2データベースとの間で、データを置き換えることにより、対応するデータの整合性をとるため、整合処理によりデータ量が増大することはない。また、データ変更時期情報は、一般にデータに対して付与されている更新日時等を利用することができる。また、整合処理時期情報は、第1データベースを格納する情報管理装置、または第2データベースを格納する他の情報管理装置に格納しておけばよく、格納されていない場合にはそのデータベース間では初めて整合処理を行なうものとして扱い、整合処理完了後にその日時等を何れかの情報管理装置に格納するようにすればよい。このため、新たなデータベースとの間で整合処理を行なう際に、上記従来の技術のようにダーティビットリスト等の作成作業が必要なく、新たなデータベースとの間でのデータの利用が容易になる。したがって、より容易に多数の情報管理装置間でデータの利用が可能になる。また、前記2以上の第2データベースの中で、前回整合性をとった時期の古い順(または新しい順)、予め記憶された優先順、データベースをそれぞれ含む装置との接続状態を形成した順などに基づいて、データの整合性をとるデータベースの順序を決定できる。これにより、ユーザが要求する優先順位に従って、データの整合性をとることができる。
【0032】
第2の発明に係る情報管理装置は、第1の発明の構成に加えて、データベース決定手段は、整合処理時期情報により表わされる整合処理を行なった時期の早い順および遅い順のいずれかの順序により表わされる優先順位に従って、決定されたデータの整合性をとる対象である前記2以上の第2データベースの順序を決定するための手段を含む。
【0033】
第2の発明によると、前記2以上の第2データベースの中で、前回整合性をとった時期の古い順(または新しい順)に基づいて、データの整合性をとるデータベースの順序を決定できる。
【0034】
第3の発明に係る情報管理装置は、第1の発明の構成に加えて、優先順位を記憶するための優先順位記憶手段をさらに含む。データベース決定手段は、優先順位記憶手段に記憶された優先順位に従って、決定されたデータの整合性をとる対象である前記2以上の第2データベースの順序を決定するための手段を含む。
【0035】
第3の発明によると、前記2以上の第2データベースの中で、予め記憶された優先順に基づいて、データの整合性をとるデータベースの順序を決定できる。
【0036】
第4の発明に係る情報管理装置は、第1の発明の構成に加えて、前記2以上の第2データベースの各々を第2データベース毎に格納した2以上の装置と通信するための通信手段と、前記通信手段により通信できる状態になった時刻を記憶するための時刻記憶手段とをさらに含み、前記データベース決定手段は、前記時刻記憶手段に記憶された時刻に従って、前記決定されたデータの整合性をとる対象である前記2以上の第2データベースの順序を決定するための手段を含む。
【0037】
第4の発明によると、前記2以上の第2データベースの中で、データベースをそれぞれ含む装置との接続状態を形成した順に基づいて、データの整合性をとるデータベースの順序を決定できる。
【0038】
第5の発明に係る情報管理装置は、第4の発明の構成に加えて、前記2以上の第2データベースの各々を格納した2以上の装置の中の第1の装置と通信している間、前記2以上の装置の中の前記第1の装置以外の第2の装置と通信できる状態を保持するための保持手段をさらに含む。
【0039】
第5の発明によると、保持手段により2以上の装置との通信状態が保持される。第1の装置と通信してデータの整合性をとって、第1の装置と通信できる状態を保持したまま第2の装置と通信してデータの整合性をとって、再度第1の装置とデータの整合性をとるときに、第1の装置と通信できる状態が保持されているので、第1の装置との通信を確立させる必要がない。これにより、2以上の装置と間でデータの整合性をとる場合に、処理時間を短くすることができる。
【0044】
【発明の実施の形態】
<第1の実施の形態>
以下、本発明の第1の実施の形態について説明する。
【0045】
図1は、本実施の形態に係る情報処理装置の制御ブロック図である。この情報処理装置1は、情報管理装置2、データ処理装置3、入力装置4および出力装置5を含む。
【0046】
情報処理装置1は、複数のデータベースの間において、それぞれ対応するデータの整合性をとるシンクロナイズ処理(整合処理)を行なう。これら複数のデータベースは、たとえば、複数のうちの1のデータベースが情報処理装置1に格納されており、他が別の情報処理装置に格納されている。データベースの数が3以上である場合、1のデータベースが情報処理装置1に格納され、他の2以上のデータベースが2以上の情報処理装置にそれぞれ格納されていてもよい。情報処理装置1には、少なくとも1つのデータベースが格納されていればよく、複数のデータベースが格納されていてもよい。
【0047】
ここで、「データベース」とは、たとえばアドレス帳、スケジュール帳、メールボックス等のように同種の情報の集合をいう。「データ」とは、データベースを構成する情報の単位である。「データ」は、アドレス帳における1件(1人)当たりのアドレスデータ、スケジュール帳における1件(1行事)あたりのスケジュールデータ、メールボックスの中の1件(1用件)当たりのメールデータ等である。なお、以下におけるデータは、特に言及しない限り、データベースに含まれているものとする。
【0048】
「整合性をとる」とは、あるデータベースの中のあるデータが変更された場合に、そのデータに対応する他のデータベースの中のデータに対して、その変更を反映させることをいう。具体的には、変更後のデータに同一化することをいう。「シンクロナイズ処理」とは、データベース間で各データの整合性をとるための処理をいう。
【0049】
情報管理装置2は、データ指定部12、通信部14、シンクロナイズ処理部16、データ管理部18、データ更新部20、データ格納部22、データ抽出部24、日時情報処理部26、日時情報管理部28、日時情報更新部30、日時情報格納部32、日時情報抽出部34および日時情報発生部36を含む。
【0050】
データ指定部12は、シンクロナイズ処理を行なうべき対象となるデータベースを指定する。通信部14は、他の情報処理装置との通信を制御する。シンクロナイズ処理部16は、整合性をとるべきデータの送受信やシンクロナイズ処理全体の管理を行なう。データ格納部22には、データが格納されている。データ管理部18は、データ格納部22に格納されているデータの新規作成・更新・削除やデータの並べ替え等の管理を行なう。データ更新部20は、データ管理部18からの指示に基づいてデータ格納部22の中のデータの新規作成・更新・削除等の処理を行なう。データ抽出部24は、データ管理部18にて指定されたデータをデータ格納部22から抽出する。
【0051】
日時情報格納部32には、日時情報が格納されている。ここで、日時情報とは、他のデータベースと前回シンクロナイズ処理を実行した日時を示すシンクロナイズ処理日時情報およびデータ格納部22の中の各データに対応付けられた新規作成日時、更新日時、削除日時を示すデータ日時情報である。日時情報管理部28は、日時情報の更新等を管理する。日時情報更新部30は、日時情報管理部28からの指定に基づいて日時情報格納部32の中の日時情報を更新等する。日時情報抽出部34は、日時情報管理部28にて指定された日時情報を日時情報格納部32から抽出する。日時情報処理部26は、各日時情報をもとに整合性をとるべきデータの決定等を行なう。日時情報発生部36は、現在の日時に関する情報を発生する。
【0052】
データ処理装置3は、データ格納部22からデータを読出し、そのデータを処理して、処理後のデータをデータ管理部18およびデータ更新部20を介して、データ格納部22に保存することにより、データの更新等を行なう。データ処理装置3は、データを新規作成してデータ格納部22の中へ保存する機能およびデータ格納部22の中のデータを削除する機能を有する。データ処理装置3でのデータ処理は、キーボードや手書き入力装置等の入力装置4からの入力に基づいて行われる。出力装置5は、処理結果等が出力されるディスプレイ等である。
【0053】
図2に、データ格納部22に格納されている、またはデータ格納部22に格納されていた、各データに関するデータ日時情報を示す。図2に示すように、データ日時情報は、各データと対応付けられて日時情報格納部32に格納される。図2は、日時情報格納部32に格納されるデータ日時情報の一例を示す概念図である。データ日時情報は、各データの付加情報(データベース種類、データ番号)、新規作成日時、更新日時および削除日時を含む。
【0054】
このデータベース種類およびデータ番号は、日時情報格納部32に含まれるデータ日時情報と、データ格納部22に含まれるデータとを関連付ける。さらに、このデータベース種類およびデータ番号は、情報処理装置1の中に格納されているデータと、相手装置6の中に格納されているデータとが対応するように関連付ける。なお、「対応するデータ」とは、たとえばアドレス帳データにおける同一人物に関するデータを指し、本来同一の内容であるべきデータのことをいう。
【0055】
ここではデータとデータ日時情報とが別々に格納されているものとしているが、これらがまとめて格納されていてもよい。また、データ日時情報の新規作成日時、更新日時および削除日時は、データに付与される。付与されたこれらの日時情報は、この情報管理装置2を制御するために使用できる。
【0056】
シンクロナイズ処理日時情報は、日時情報格納部32に格納されている。このシンクロナイズ処理日時情報は、情報処理装置1の中の各データベースに対して、相手装置6となりうる装置に格納されているデータベースごとに定義される。情報処理装置1の中の1つのデータベースと、相手装置6となりうる装置に格納されている1つのデータベースとの組合せごとに、シンクロナイズ処理日時情報が定義される。
【0057】
図3は、日時情報格納部32に格納されるシンクロナイズ処理日時情報の一例を示す概念図である。図3は、情報処理装置1の中の1つのデータベースに関するシンクロナイズ処理日時情報を示す。シンクロナイズ処理日時情報は、データベースを格納する相手装置6の付加情報(装置番号、装置固有番号、装置名、装置情報)、そのデータベース種類および前回のシンクロナイズ処理日時を含む。装置番号は、情報処理装置1に割り当てられた番号であり、装置固有番号は、ネットワーク上のアドレス等である。
【0058】
情報管理装置2の各部の機能について、さらに詳しく説明する。
通信部14は、相手装置6と接続された場合に、その相手装置6との間でのデータの通信等を制御する。通信部14は、相手装置6が複数接続された場合、つまり1対複数の接続関係にある場合にも通信を制御できる。なお、接続形態は無線および有線のいすれでもよい。通信部14には、タイマが備えられており、このタイマは相手装置6からの応答待ちのタイムアウト処理に用いられる。
【0059】
データ更新部20は、データ管理部18からデータを受取り、受取ったデータに対応するデータ(データ格納部22の中のデータ)に上書きしてデータを更新する。データ更新部20は、データ管理部18からデータを削除する指示を受けると、指示されたデータ(データ格納部22の中のデータ)を削除する。
【0060】
データ抽出部24は、データ管理部18にて指定されたデータをデータ格納部22から抽出して、データ管理部18に伝える。
【0061】
データ管理部18は、シンクロナイズ処理部16やデータ処理装置3から受取ったデータをデータ更新部20に伝える。データ管理部18は、シンクロナイズ処理部16から指定されたデータをデータ抽出部24に伝える。
【0062】
データ管理部18は、データ抽出部24にて抽出されたデータをシンクロナイズ処理部16に伝える。データ管理部18は、データ処理装置3からデータを削除する指示を受取ると、その指示をデータ更新部20に伝える。データ管理部18は、データ処理装置3からの指示またはシンクロナイズ処理により、データの新規作成・更新・削除の処理(以下、「データ変更」という。)を行なったとき、日時情報発生部36からその時点での日時情報を取得する。データ管理部18は、データ変更の対象となったデータを指定して、データ変更の内容とともに、取得した日時情報をデータ日時情報として日時情報管理部28に伝える。なお、シンクロナイズ処理の際にシンクロナイズ処理部16から受取ったデータが新規作成日時、更新日時、または削除日時の情報を含む場合には、データ管理部18は、日時情報発生部36からの日時情報に代えてそのデータに含まれる日時情報を伝える。
【0063】
日時情報更新部30は、日時情報管理部28からシンクロナイズ処理日時情報を受取り、そのシンクロナイズ処理の相手となったデータベースに関するシンクロナイズ処理日時情報を更新する。日時情報更新部30は、日時情報管理部28からデータ変更の内容とともにデータ日時情報を受取り、そのデータ変更の対象となったデータに関するデータ日時情報を更新する。
【0064】
日時情報抽出部34は、日時情報管理部28にて指定されたデータに関するデータ日時情報や、日時情報管理部28にて指定されたデータベースに関するシンクロナイズ処理日時情報を、日時情報格納部32から抽出し、日時情報管理部28に伝える。
【0065】
日時情報管理部28は、データ管理部18や日時情報処理部26から受取ったデータ日時情報やシンクロナイズ処理日時情報を、日時情報更新部30に伝える。日時情報管理部28は、日時情報処理部26から指定されたデータ日時情報やシンクロナイズ処理日時情報を、日時情報抽出部34に抽出させて日時情報処理部26に伝える。
【0066】
日時情報処理部26は、シンクロナイズ処理の相手となるデータベースに関するシンクロナイズ処理日時情報と、そのデータベースに対応するデータ格納部22の中のデータベースに含まれる各データのデータ日時情報とに基づいて、データ格納部22に格納されているデータの中から整合性をとるべきデータを決定する。日時情報処理部26は、その決定結果を、シンクロナイズ処理部16に伝える。
【0067】
このとき、シンクロナイズ処理日時情報とデータ日時情報とを比較し、シンクロナイズ処理日時より後にデータ変更が行われたデータを、整合性をとるべきデータとして決定する。これにより、シンクロナイズ処理の相手となるデータベースと前回シンクロナイズ処理を行なってからデータ変更されたデータ、すなわち、整合性をとる必要があるデータのみをピックアップすることができる。このシンクロナイズ処理日時情報は、日時情報管理部28に指示して日時情報格納部32から取得してもよいが、シンクロナイズ処理部16を介して相手装置6から取得してもよい。
【0068】
データ日時情報は、日時情報管理部28に指示して日時情報格納部32から取得する。なお、シンクロナイズ処理の対象としている相手装置6のデータベースに関するシンクロナイズ処理日時情報が日時情報格納部32や相手装置6にない場合には、日時情報処理部26は、そのデータベースと初めてシンクロナイズ処理を行なうものと判断し、データ指定部16にて指定されているデータベースに含まれる全てのデータをシンクロナイズ処理の対象とする。
【0069】
シンクロナイズ処理部16は、日時情報処理部26からの決定結果に基づいて、整合性をとるべきデータをデータ管理部18から受取り、通信部14を介して相手装置6へ送信する。シンクロナイズ処理部16は、相手装置6から整合性をとるべきデータとして送信されたデータを、通信部14を介して受信する。
【0070】
シンクロナイズ処理部16は、受信したデータをデータ管理部18に伝えてそのデータに関してデータ変更を指示する。なお、データ格納部22の中に対応するデータがない場合には、データ格納部22の中にそのデータの新規作成を指示する。シンクロナイズ処理部16は、相手装置6からシンクロナイズ処理日時情報を取得して日時情報処理部26に伝える。シンクロナイズ処理部16は、シンクロナイズ処理の完了後、日時情報発生部36からその時点での日時情報を取得して日時情報処理部26に伝えて、日時情報格納部32の中のシンクロナイズ処理日時情報を更新させる。
【0071】
なお、シンクロナイズ処理の対象となったデータベースに関するシンクロナイズ処理日時情報が日時情報格納部32の中に存在しないときには、そのデータベースに関するシンクロナイズ処理日時情報を新たに作成して格納する。
【0072】
データ指定部12にて指定されたデータベースが相手装置6に格納されていない場合には、シンクロナイズ処理部16は、指定されたデータベース全体を相手装置6に複写する。したがって、情報管理装置2に格納されているデータベースと相手装置6に格納されているデータベースとが全て1対1に対応していなくてもよい。つまり、一部のデータベースが対応していてもよく、対応するデータベースがなくてもよい。
【0073】
以上のように、情報管理装置2は、少なくとも1つのデータベース(第1データベース)を格納し、相手装置6に格納されたデータベース(第2データベース)との間で対応するデータの整合性をとるシンクロナイズ処理を行なうことが可能である。日時情報処理部26により、第1データベースと第2データベースとの間で前回シンクロナイズ処理を行なった日時を示すシンクロナイズ処理日時情報と、第1データベースに含まれる各データに対応付けられ、そのデータが変更された日時を示すデータ日時情報とに基づいて、第1データベースに含まれるデータの中から変更された日時が前回シンクロナイズ処理を行なった日時より新しいデータを整合性をとるべきデータとして決定する。
【0074】
これにより、情報管理装置2では、第1データベースと第2データベースとの間で前回シンクロナイズ処理を行なってから、第1データベースの中のデータが変更された場合に、その変更されたデータを整合性をとるべきデータとして決定することができる。これにより、情報管理装置2にて変更された内容を第2データベースに反映させることが可能になる。
【0075】
データ日時情報は、一般にデータに対して付与されている更新日時等を利用することができる。シンクロナイズ処理日時情報は、情報管理装置2または相手装置6に格納すればよく、何れにも格納されていない場合にはこれらのデータベース間では初めてシンクロナイズ処理を行なうものとして扱う。この場合、シンクロナイズ処理完了後に、その時点での日時情報を情報管理装置2または相手装置6の何れかに格納すればよい。これにより、新たなデータベースとの間で容易にシンクロナイズ処理を行なうことができる。
【0076】
なお、情報管理装置2やデータ処理装置3を構成する制御ブロック(データ格納部22や日時情報格納部32を除く)は、CPU(Central Processing Unit)などが、ROM(Read Only Memory)やRAM(Random Access Memory)などの記録媒体に格納されたプログラムを実行することで実現されるものでもよいし、同様の処理を行なうハードウェアであってもよい。また、処理の一部を行なうハードウェアと、このハードウェアの制御やその他の処理を行なうプログラムを実行するCPUとを組合せても実現することができる。さらに、CPUは単体であってもよいし、装置内部のバスや種々の通信路を介して接続された複数のCPUが共同してプログラムを実行してもよい。
【0077】
本発明が対象とするのは、このようなプログラムそのものであってもよく、このプログラムを格納したコンピュータ読取り可能な記録媒体であってもよい。この記録媒体は、情報処理装置1に含まれるメモリ(たとえばROM)のようなそのものであってもよく、情報処理装置1の外部記憶装置としてプログラム読取り装置が設けられ、その外部記憶装置からプログラムが読取られる記録媒体であってもよい。いずれの場合においても、格納されているプログラムはCPUがアクセスして実行させる構成であってもよく、CPUがプログラムを読出し、読出されたプログラムが情報処理装置1の中のプログラム記憶エリアにロードされてそのプログラムが実行される方式であってもよい。このロード用のプログラムは、予め情報処理装置1に格納されているものとする。
【0078】
ここで、外部記憶装置に挿入することでプログラムが読み取られる記録媒体は、情報処理装置1と分離可能に構成される記録媒体である。この記録媒体には、たとえば磁気テープやカセットテープ等のテープ系、フロッピー(R)ディスクやハードディスク等の磁気ディスク系、CD−ROM(Compact Disc−Read Only Memory)/MO(Magneto Optical Disk)/MD(Mini Disc)/DVD(Digital Versatile Disc)等の光ディスク系、ICカード(メモリカードを含む)/光カード等のカード系、あるいはマスクROM、EPROM(Erasable and Programmable ROM)、EEPROM(Electrically Erasable and Programmable ROM)、フラッシュROM等の半導体メモリ系等の、プログラムを記録する媒体を全て含む。なお、記録媒体に格納されている内容としては、プログラムのみに限られず、データが含まれていてもよい。
【0079】
情報処理装置1は、インターネットを含む通信ネットワークと接続可能なシステム構成でもよく、プログラムを通信ネットワークからダウンロードしてもよい。なお、このように通信ネットワークからプログラムをダウンロードする場合には、そのダウンロード用プログラムは予め情報処理装置1に格納されるか、あるいは別の記録媒体からインストールされる。
【0080】
プログラムとしては、CPUで機能ブロックを実現させるプログラムそのものでもよく、情報処理装置1の中で処理することによりこのような機能ブロックを実現させるプログラムを作成するためのプログラムデータ等であってもよい。これらのプログラムやプログラムデータは、インターネットを含む通信ネットワークを介してアクセスすることで取り込める。さらに、インターネットから取込めたものも該当し、情報処理装置1からインターネットに送出するものも該当する。
【0081】
図4は、情報処理装置1を用いてシンクロナイズ処理を行なう場合の一例を示す概念図である。なお、ここでは、情報処理装置1としての携帯型情報端末50に格納されたデータベースと、相手装置6としてのパーソナルコンピュータ(以下、パソコンという。)52、サーバ54、および携帯電話機56にそれぞれ格納されたデータベースとの間でシンクロナイズ処理を行なう場合を示す。
【0082】
携帯型情報端末50は、入力装置4および出力装置5としてのタッチパネル式ディスプレイ50aを有している。
【0083】
このタッチパネル式ディスプレイ50aには、現在接続中の相手装置が表示されている。タッチパネル式ディスプレイ50aは、携帯型情報端末50に格納しているデータベースを表示する。ユーザは、このタッチパネル式ディスプレイ50aを用いて、表示されたデータベースの中からシンクロナイズ処理を行なう対象とするデータベースを指定する。したがって、タッチパネル式ディスプレイ50aはデータ指定部12としても機能する。図4では、アドレス帳を指定した場合を示している。
【0084】
なお、携帯型情報端末50、パソコン52、サーバ54、携帯電話機56には、アドレス帳以外のデータベースが格納されていてもよい。また、ユーザによるデータベースの指定を行わない場合、タッチパネル式ディスプレイ50aの指定データベースの部分には図5に示すように「全データ」と表示される。図5は、携帯型情報端末50のタッチパネル式ディスプレイ50aの表示の一例である。
【0085】
図4では、携帯型情報端末50がアドレス帳に関して前回シンクロナイズ処理を行なったのは、パソコン52との間では1月1日、サーバ54との間では2月1日、携帯電話機56との間では1月30日であったと仮定している。この場合、携帯型情報端末50は、アドレス帳に含まれるデータのうち、パソコン52との間では1月1日以降にデータ変更を行なったデータを、サーバ54との間では2月1日以降にデータ変更を行なったデータを、携帯電話機56との間では1月30日以降にデータ変更を行なったデータを、それぞれシンクロナイズ処理の対象とする。
【0086】
携帯型情報端末50と、パソコン52、サーバ54、および携帯電話機56とは、同時に接続することができる。そして、携帯型情報端末50は、たとえば、パソコン52、サーバ54、携帯電話機56の順でそれぞれとシンクロナイズ処理を行なう。なお、たとえばパソコン52とシンクロナイズ処理を行なった後、パソコン52との接続を切断せずに携帯電話機56とのシンクロナイズ処理を行なうことができる。ここでいう「接続」とは、各装置間が通信可能となり、シンクロナイズ処理を行なうことが可能な状態を指す。
【0087】
図6を参照して、本実施の形態に係る情報処理装置1としての携帯型情報端末50におけるシンクロナイズ処理の制御構造を説明する。以下の説明では、図4に示した状態であると想定し、図1および図6に基づくシンクロナイズ処理について説明する。
【0088】
ステップ(以下、ステップをSと示す。)1にて、ユーザによりタッチパネル式ディスプレイ50aを介して、シンクロナイズ処理の対象とするデータベースが指定される。このとき、たとえばアドレス帳が指定データベースとして指定される。携帯型情報端末50が格納する全データベースに対してシンクロナイズ処理を行なうのであれば、このステップは必要ない。
【0089】
S2にて、相手装置6である、たとえばパソコン52と接続される。S3にて、日時情報処理部26が、アドレス帳に含まれるデータのデータ日時情報を取得する。S4にて、パソコン52におけるアドレス帳とのシンクロナイズ処理日時情報が取得される。このシンクロナイズ処理日時情報は、日時情報格納部32に格納されているものでもよいが、日時情報格納部32がシンクロナイズ処理日時情報を格納していない場合には、パソコン52から取得してもよい。
【0090】
この場合、図7に示すS11にて、シンクロナイズ処理部16がパソコン52に対してシンクロナイズ処理日時情報を要求して、S12にてパソコン52からシンクロナイズ処理日時情報を受信する。
【0091】
S5にて、日時情報処理部26が、取得したデータ日時情報とシンクロナイズ処理日時情報とを比較する。データ日時情報がより新しいデータをピックアップする。つまり、パソコン52のアドレス帳と前回シンクロナイズ処理を行なった日(1月1日)以降に携帯型情報端末50にてデータ変更されたデータを、整合性をとるべきデータとしてピックアップする。S5にて、パソコン52のアドレス帳に関するシンクロナイズ処理日時情報が日時情報格納部32、パソコン52のいずれにも格納されていない場合には、日時情報処理部26は、パソコン52のアドレス帳とシンクロナイズ処理を行なうのは初めてであると判断し、アドレス帳の全てのデータをシンクロナイズ処理の対象とする。
【0092】
S6にて、シンクロナイズ処理部16が、日時情報処理部26にてピックアップされたデータおよびそのデータのデータ日時情報をパソコン52に対して送る。S7にて、シンクロナイズ処理部16は、パソコン52から整合性をとるべきデータとして受信したデータをデータ管理部18に伝えて、そのデータに関するデータ変更を指示する。これにより、そのデータに関する整合性をとることができる。
【0093】
なお、パソコン52も携帯型情報端末50と同様の処理を行なうものであり、整合性をとるべきデータを決定して携帯型情報端末50に送信する機能を有するものである。
【0094】
なお、S7において対応するデータが携帯型情報端末50に存在しない場合には、そのデータが携帯型情報端末50のデータ格納部22に追加される。また、S7において対応するデータが携帯型情報端末50およびパソコン52それぞれでデータ変更されていた場合には、シンクロナイズ処理部16は各データのデータ日時情報を比較し、より新しいデータ日時情報を有するデータ、つまり後でデータ変更されたデータを優先させる。
【0095】
S8にて、データ管理部18は、パソコン52から受信したデータに含まれるそのデータのデータ日時情報を日時情報管理部28に伝える。データ管理部18は、整合性をとったデータに関する日時情報格納部32の中のデータ日時情報を更新させる。シンクロナイズ処理部16は、日時情報発生部36からその時点での日時情報を取得して日時情報処理部26に伝えることにより、パソコン52のアドレス帳に関する日時情報格納部32の中のシンクロナイズ処理日時情報を更新させる。この際、パソコン52のアドレス帳とシンクロナイズ処理を行なうのは初めてであると判断(S7において日時情報処理部26が判断)していた場合、日時情報処理部26は、パソコン52のアドレス帳に関するシンクロナイズ処理日時情報を新たに日時情報格納部32に登録する。これによりパソコン52とのシンクロナイズ処理が完了する。
【0096】
なお、全データベースに対してシンクロナイズ処理を行なう場合には、S4からS8までの処理を各データベースに関して繰り返せばよい。
【0097】
S9にて、さらに別の相手装置6であるサーバ54や携帯電話機56ともシンクロナイズ処理を行なうか否かが判断される。別の相手装置6ともシンクロナイズ処理を行なう場合(S9にてYES)、処理はS1へ戻る。このとき、パソコン52との接続を解除する必要はない。もしそうでないと(S9でNO)、処理はS10へ移される。
【0098】
S10にて、パソコン52との接続が解除されて、この処理は終了する。
以上のような構造およびフローチャートに基づく、本実施の形態に係る情報処理装置1の動作について説明する。
【0099】
図8は、このようなフローチャートによりシンクロナイズ処理を行なう場合のデータの変遷を具体的に示す概念図である。装置A、装置Bおよび装置Cがそれぞれ携帯型情報端末50、パソコン52およびサーバ54に相当する(携帯電話機56に関しては省略する)。対応するデータを「α」で示し、「α1」、「α2」は、それぞれ別々に更新されたデータαを示している。データαに関する新規作成時刻および更新時刻を、「α(新規作成時刻、更新時刻)」として表示している。なお、図8では、装置Bおよび装置Cが有するシンクロナイズ処理日時情報は省略している。
【0100】
時刻t5における装置Aと装置Bとの間でのシンクロナイズ処理では、これらの装置間で前回シンクロナイズ処理が行われた時刻がt1である。したがって、それより新しい更新時刻を有する装置Aにおけるデータα2(t0、t4)がシンクロナイズ処理の対象としてピックアップされ、これにより装置Bにおけるデータα0(t0、t0)が置き換えられる。
【0101】
時刻t6における装置Aと装置Cとの間でのシンクロナイズ処理では、これらの装置間で前回シンクロナイズ処理が行われた時刻がt2である。したがって、それより新しい更新時刻を有する装置Aにおけるデータα2(t0、t4)、および装置Cにおけるデータα1(t0、t3)がシンクロナイズ処理の対象としてピックアップされる。ここでは、更新時刻がより新しいデータα2(t0、t4)により装置Cにおけるデータα1(t0、t3)が置き換えられる。
【0102】
その結果、装置A、装置B、および装置Cすべてにおいてデータαがα2(t0、t4)となり、整合性がとれた状態になる。
【0103】
以上のようにして、本実施の形態に係る情報管理装置によると、第1のデータベースと第2データベースとの間で、前回整合処理を行なった時期を示す整合処理時期情報と、第1データベースに含まれる各データに対応付けられ、そのデータが変更された時期を示すデータ変更時期情報とに基づいて、第1データベースに含まれるデータの中から変更された時期が前回整合処理を行なった時期より新しいデータを整合性をとるべきデータとして決定する。これにより、1の情報管理装置にて変更された内容を他の情報管理装置に格納されているデータベースに反映させることが可能になる。このとき、新たに整合性をとるデータベースとの間で、データの利用が容易になるため、より容易に多数の情報管理装置との間でデータの利用が可能になる。
【0104】
<第2の実施の形態>
以下、本発明の第2の実施の形態に係る情報処理装置について説明する。なお、本実施の形態においては、整合性をとる情報処理装置として、携帯端末、パソコン、サーバ、携帯電話機の4つを用いるが、その他の情報処理装置でも適応できる。また、3つ以上の情報処理装置においても適応できる。
【0105】
図9を参照して、本実施の形態に係る情報処理装置100に含まれる情報管理装置200は、前述の第1の実施の形態に係る情報管理装置2の構成に加えて、実行順序管理部40、実行順序抽出部41、および実行順序情報格納部42をさらに含む。
【0106】
実行順序管理部40は、相手装置6または相手装置7がどちらの相手装置とのシンクロナイズ処理を優先して実行するかを判断する。実行順序管理部40は、日時情報格納部32に格納されているシンクロナイズ処理日時情報を日時情報抽出部34から抽出して、どちらの装置と先にシンクロナイズ処理を行なうかを判断する。実行順序管理部40は、たとえばシンクロナイズ処理日時情報の新しい時刻順にシンクロナイズ処理を行なう場合、直近にシンクロナイズ処理を行なった装置が相手装置7であるなら、相手装置7とのシンクロナイズ処理を実行し、次に相手装置6とのシンクロナイズ処理を実行するように判断する。実行順序管理部40は、実行順序情報格納部42に格納されている実行順序情報に基づいて、シンクロナイズ処理の実行の順序を判断する。実行順序抽出部41は、実行順序管理部40で使用する実行順序情報を実行順序情報格納部42から抽出する。
【0107】
図10は、実行順序情報格納部に格納される実行順序情報の一例を示す概念図であり、情報処理装置100の中の1つのデータベースに関するものを示している。実行順序情報は、相手装置6や相手装置7の付加情報(装置番号、装置固有番号)と、シンクロナイズ処理を実行する際の優先順位等を示す実行順序情報とを含む。実行順序管理部40では、実行順序情報に特定の情報を設定することにより、シンクロナイズ処理を実行するのは、常に最初、常に最後、実行しないなどの制御も可能とする。
【0108】
携帯型情報端末50と、パソコン52、サーバ54および携帯電話機56とは、同時に接続することができる。携帯型情報端末50が、パソコン52、サーバ54、および携帯電話機56の3台とシンクロナイズ処理を実行する場合には、たとえば前回シンクロナイズを行なった日付の古い順や新しい順に、自動的にシンクロナイズ処理を実行できる。たとえば前回シンクロナイズを行なった日付の古い順に実行すると仮定して、すべての装置と接続されていない場合から始める場合、まず、パソコン52と接続しシンクロナイズ処理を行なう。次に、パソコン52との接続を切断せずに、続けて自動的に携帯電話機56と接続しシンクロナイズ処理を行なう。次に、パソコン52、携帯電話機56との接続を切断せずに、続けて自動的にサーバ54とのシンクロナイズ処理を行なう。ここでいう「接続」とは、2以上の装置の間で通信が可能になる状態をいい、シンクロナイズ処理を行なうことが可能な状態である。
【0109】
なお、優先順位は、シンクロナイズ処理日時情報の新しい順、実行順序情報格納部に格納された実行順序情報に基づく順、前回シンクロナイズ処理を行なった古い順(または新しい順)、現在の接続状態を形成した順などである。
【0110】
図11を参照して、本実施の形態に係る情報処理装置(情報管理装置200を含む。)で実行されるプログラムの制御構造を説明する。なお、以下に示すフローチャートの中で、前述の図6に示したフローチャートと同じ処理については、同じステップ番号を付してある。それらの処理も同じである。したがってそれらについての詳細な説明はここでは繰返さない。
【0111】
S60にて、実行順序情報に基づいて、接続およびシンクロナイズ処理を行なう装置の順序が決定される。たとえば、実行順序情報として、図10に示すようなデータである場合、接続およびシンクロナイズ処理が実行される順序は、パソコン52、携帯電話機56、サーバ54の順になる。S61にて、決定された実行順序に従って相手装置と接続される。
【0112】
S62にて、次にシンクロナイズ処理を行なう装置があるか否かが判断される。次にシンクロナイズ処理を行なう装置があれば(S62にてYES)、処理はS61に戻される。もしそうでないと(S62にてNO)、処理はS10に移される。
【0113】
以上のような構造およびフローチャートに基づく、本実施の形態に係る情報処理装置の動作について説明する。なお、以下の説明では、優先順位は、前回シンクロナイズ処理した順序および予め設定された実行順序情報に基づく順序であると想定する。
【0114】
図12は、シンクロナイズ処理を行なった場合のデータの変遷を具体的に示す概念図である。装置A、装置B、装置C、および装置Dがそれぞれ携帯情報端末50、パソコン52、携帯電話機56、およびサーバ54に相当する。対応するデータを「α」で示し、「α1」、「α2」は、それぞれ別々に更新されたデータαを示している。データαに関する新規作成時刻および更新時刻を「α(新規作成時刻、更新時刻)」として、表示している。たとえば、データαは自分のスケジュールデータ、データβは上司のスケジュールデータと考えてもよい。図9では、装置B、装置Cおよび装置Dが有するシンクロナイズ処理日時情報は省略している。
【0115】
1つ目の動作の説明では、装置Aが、装置B、装置C、および装置Dとシンクロナイズを実行する順序は、前回シンクロナイズを実行した時刻情報(日付)に基づいて行われると想定する。
【0116】
時刻t7における装置Aと装置Bとの間でのシンクロナイズ処理では、これらの装置の間で前回シンクロナイズが行われた時刻がt2である。したがって、それより新しい更新時刻を有する装置Aにおけるデータα2(t0、t6)がシンクロナイズ処理の対象としてピックアップされる。これにより、装置Bにおけるデータα0(t0、t0)が置き換えられる。装置Aおよび装置Bにおけるβ0(t1、t1)は時刻t2よりも古い時刻情報を有するデータであるため、シンクロナイズ処理の対象外のデータとされる。
【0117】
時刻t8における装置Aと装置Cとの間でのシンクロナイズ処理では、これらの装置間で前回シンクロナイズが行われた時刻がt3である。したがって、それより新しい更新時刻を有する装置Aにおけるデータα2(t0、t6)および装置Cにおけるデータα1(t0、t5)がシンクロナイズ処理の対象としてピックアップされる。ここでは、更新時刻がより新しいデータα2(t0、t6)により、装置Cにおけるデータα1(t0、t5)が置き換えられる。装置Aおよび装置Cにおけるβ0(t1、t1)は、時刻t2よりも古い時刻情報をもったデータであるため、シンクロナイズ処理の対象外のデータとされる。
【0118】
時刻t9における装置Aと装置Dとの間でのシンクロナイズ処理では、これらの装置間で前回シンクロナイズが行われた時刻がt4である。したがって、それより新しい更新時刻を有する装置Aにおけるデータα2(t0、t6)がシンクロナイズ処理の対象としてピックアップされる。ここでは、装置Bにおけるデータα0(t0、t0)が置き換えられる。装置Aおよび装置Dにおけるβ0(t1、t1)は時刻t4よりも古い時刻情報をもったデータであるため、シンクロナイズ処理の対象外のデータとされる。
【0119】
その結果、装置A、装置B、装置C、および装置Dすべてにおいてデータαがα2(t0、t6)、データβがβ0(t1、t1)となり、整合性がとれた状態になる。
【0120】
2つ目の動作の説明では、装置Aが、装置B、装置C、および装置Dとシンクロナイズを実行する順序は、前回シンクロナイズを実行した時刻ではなく、図4に示すような実行順序情報に基づくものと想定する。この場合、装置A、装置B、装置C、および装置Dがそれぞれ携帯情報端末50、携帯電話機56、サーバ54、およびパソコン52に相当する。各時刻における動作は上述の動作と同じである、シンクロナイズ処理を行なった結果、装置A、装置B、装置C、および装置Dすべてにおいてデータαがα2(t0、t6)、データβがβ0(t1、t1)となり、整合性がとれた状態になる。
【0121】
以上のようにして、本実施の形態に係る情報処理装置によると、複数の情報処理装置に格納されているデータを、ユーザの要求通りにシンクロナイズできる。さらに、それぞれの優先順位を定めることにより複数の情報処理装置に格納された任意のデータを互いに整合性のとれた状態にできる。優先順位を定めておくことにより、データの整合性が取れなくなるという事態を回避できる。また、1の情報処理装置と複数の情報処理装置との間でシンクロナイズ処理する場合、一度シンクロナイズ処理した装置と再度シンクロナイズ処理する場合に、接続状態を保持したままの状態していることで、再度接続状態を確立しなおす必要がなくなる。たとえば、装置A、装置Bおよび装置Cが存在する場合において、最初に装置Aと装置Bとの間でシンクロナイズ処理を行ない、装置Aと装置Bとの間の接続状態を保持しておいて、次に装置Aと装置Cとの間でシンクロナイズ処理を行ない、次に装置Aと装置Bとの間でシンクロナイズ処理を行なう。この場合、再度装置Aと装置Bとでシンクロナイズ処理を行なう場合、装置Aと装置Bとの接続状態が保持されているので、接続状態を再度確立する必要がない。
【0122】
<第3の実施の形態>
以下、本発明の第3の実施の形態に係る情報処理装置について説明する。なお、本実施の形態に係る情報処理装置のハードウェア構成は、前述の第2の実施の形態に係る情報処理装置のハードウェア構成と同じである。したがって、それれについての詳細な説明なここでは繰返さない。
【0123】
図13を参照して、本実施の形態に係る情報処理装置で実行されるプログラムの制御構造を説明する。なお、以下に示すフローチャートの中で、前述の図6および図11に示したフローチャートと同じ処理については、同じステップ番号を付してある。それらの処理も同じである。したがってそれらについての詳細な説明はここでは繰返さない。
【0124】
S1にて、ユーザにより、タッチパネル式ディスプレイ50aによりシンクロナイズ処理の対象となるデータベース、たとえばアドレス帳(指定データベース)が指定される。携帯型情報端末50が格納する全データベースに対してシンクロナイズ処理を行なうのであれば、このステップを実行する必要はない。
【0125】
S60にて、実行順序情報に基づいて、接続およびシンクロナイズ処理を行なう装置の順序が決定される。このとき、前回シンクロナイズ処理を実行した時刻に基づいて、時刻の古い順や新しい順にシンクロナイズを実行する順序を決定してもよいし、現在の接続状態を形成した時に、どの装置から順に接続したかの情報に基づいて、シンクロナイズを実行する順序を決定してもよいし、実行順序情報に基づいて、シンクロナイズを実行する順序を決定してもよい。
【0126】
S80にて、指定した相手装置からデータ日時情報が取得される。S81にて、シンクロナイズ処理日時情報が取得される。この後の処理は、第1の実施の形態と同じである。
【0127】
S82にて、次にシンクロナイズ処理を行なう装置があるか否かが判断される。次にシンクロナイズ処理を行なう装置があれば(S82にてYES)、処理はS80に戻される。もしそうでないと(S82にてNO)、この処理は終了する。すなわち、次にシンクロナイズ処理を行なう相手装置はないのであれば、処理を終了するが、処理を終了しても相手装置との接続状態は保持されたままである。
【0128】
以上のように、本実施の形態に係る情報処理装置によると、シンクロナイズを実行した日時情報と、データを新規作成、更新、削除した日時情報とを利用して、日時情報を情報処理装置間で交換することによって、3つ以上の情報処理装置でデータの整合性をとる場合に、整合性を取りたい情報処理装置に格納されているデータに依存せず、同時にシンクロナイズ関係を築いて各情報処理機器間でのデータの整合性をとることができる。
【0129】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【図1】 本発明の第1の実施の形態に係る情報処理装置の構成を示すブロック図である。
【図2】 本発明の第1の実施の形態に係る情報処理装置における日時情報格納部に格納されるデータ日時情報を示す図である。
【図3】 本発明の第1の実施の形態に係る情報処理装置における日時情報格納部に格納されるシンクロナイズ処理日時情報を示す図である。
【図4】 本発明の第1の実施の形態に係る情報処理装置を用いてシンクロナイズ処理を行なう場合の概念図(その1)である。
【図5】 本発明の第1の実施の形態に係る情報処理装置を用いてシンクロナイズ処理を行なう場合の概念図(その2)である。
【図6】 本発明の第1の実施の形態に係る情報処理装置におけるシンクロナイズ処理の制御の手順を示すフローチャートである。
【図7】 本発明の第1の実施の形態に係る情報処理装置におけるシンクロナイズ処理日時情報の取得処理の制御の手順を示すフローチャートである。
【図8】 本発明の第1の実施の形態に係る情報処理装置の動作に基づくデータの変遷を示す図である。
【図9】 本発明の第2の実施の形態に係る情報処理装置の構成を示すブロック図である。
【図10】 本発明の第2の実施の形態に係る情報処理装置における実行順序情報格納部に格納される実行順序情報を示す図である。
【図11】 本発明の第2の実施の形態に係る情報処理装置におけるシンクロナイズ処理の制御の手順を示すフローチャートである。
【図12】 本発明の第2の実施の形態に係る情報処理装置の動作に基づくデータの変遷を示す図である。
【図13】 本発明の第3の実施の形態に係る情報処理装置におけるシンクロナイズ処理の制御の手順を示すフローチャートである。
【図14】 3つの情報処理装置の間において、データの整合性がとれていない状態を示す図である。
【符号の説明】
1、100 情報処理装置、2、200 情報管理装置、3 データ処理装置、4 入力装置、5 出力装置、6 相手装置、12 データ指定部、14 通信部、16 シンクロナイズ処理部、18 データ管理部、20 データ更新部、22 データ格納部、24 データ抽出部、26 日時情報処理部、28 日時情報管理部、30 日時情報更新部、32 日時情報格納部、34 日時情報抽出部、36 日時情報発生部、40 実行順序管理部、41 実行順序抽出部、42 実行順序情報格納部、50 携帯型情報端末、52 パーソナルコンピュータ、54 サーバ、56 携帯電話機。
Claims (5)
- 整合処理を行なう外部装置を指定する第1指定手段と、
整合処理を行なうデータベースの種別を指定する第2指定手段と、
第1データベースを格納するためのデータベース格納手段と、
前記第1データベースのデータを前記第1指定手段で指定された外部装置に格納され前記第2指定手段で指定された種別の第2データベースのデータで置き換えるとともに、前記外部装置に対して前記第2のデータベースのデータを前記第1のデータベースのデータで置き換えるように指示することにより、対応するデータの整合性をとるための整合処理手段と、
前記第1データベースと前記第2データベースとの間で、前回整合処理を行なった時期を示す整合処理時期情報と、前記第1データベースに含まれる各データに対応付けられ、各前記データが変更された時期を示すデータ変更時期情報とに基づいて、前記第1データベースに含まれるデータの中から変更された時期が前回整合処理を行なった時期より新しいデータを整合性をとるべきデータとして決定する一方、前記データ変更時期情報がない場合は全データを整合性をとるべきデータとして決定するためのデータ決定手段とを含み、
前記整合処理手段は、前記第1データベースのデータを前記第2指定手段で指定された種別の2以上の第2データベースのデータで置き換えるとともに、前記外部装置に対して前記2以上の第2データベースのデータを前記第1データベースのデータで置き換えるように指示することにより、対応するデータの整合性をとり、
前記データ決定手段は、前記第1データベースと前記2以上の第2データベースとの間で、前回整合処理を行なった時期を示す整合処理時期情報と、前記第1データベースに含まれる各データに対応付けられ、各前記データが変更された時期を示すデータ変更時期情報とに基づいて、前記第1データベースに含まれるデータの中から変更された時期が前回整合処理を行なった時期より新しいデータを整合性をとるべきデータとして決定する一方、前記データ変更時期情報がない場合は全データを整合性をとるべきデータとして決定し、
前記第1指定手段は、予め定められた優先順位に従って、前記決定されたデータの整合性をとる対象である前記2以上の第2データベースの順序を決定するためのデータベース決定手段を含む、情報管理装置。 - 前記データベース決定手段は、前記整合処理時期情報により表わされる前記整合処理を行なった時期の早い順および遅い順のいずれかの順序により表わされる優先順位に従って、前記決定されたデータの整合性をとる対象である前記2以上の第2データベースの順序を決定するための手段を含む、請求項1に記載の情報管理装置。
- 前記情報管理装置は、前記優先順位を記憶するための優先順位記憶手段をさらに含み、
前記データベース決定手段は、前記優先順位記憶手段に記憶された優先順位に従って、前記決定されたデータの整合性をとる対象である前記2以上の第2データベースの順序を決定するための手段を含む、請求項1に記載の情報管理装置。 - 前記情報管理装置は、
前記2以上の第2データベースの各々を第2データベース毎に格納した2以上の装置と通信するための通信手段と、
前記通信手段により通信できる状態になった時刻を記憶するための時刻記憶手段とをさらに含み、
前記データベース決定手段は、前記時刻記憶手段に記憶された時刻に従って、前記決定されたデータの整合性をとる対象である前記2以上の第2データベースの順序を決定するための手段を含む、請求項1に記載の情報管理装置。 - 前記情報管理装置は、前記2以上の第2データベースの各々を格納した2以上の装置の中の第1の装置と通信している間、前記2以上の装置の中の前記第1の装置以外の第2の装置と通信できる状態を保持するための保持手段をさらに含む、請求項 4に記載の情報管理装置。
Priority Applications (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002006115A JP4225729B2 (ja) | 2001-03-06 | 2002-01-15 | 情報管理装置 |
| US10/085,077 US20020129007A1 (en) | 2001-03-06 | 2002-03-01 | Information management apparatus maintaining data base consistency and recording medium recording data base consistency maintaining program |
| EP02004956A EP1239380A3 (en) | 2001-03-06 | 2002-03-05 | Information management apparatus maintaining data base consistency and recording medium recording data base consistency maintaining program |
| CN02108090A CN1374587A (zh) | 2001-03-06 | 2002-03-06 | 取得数据库匹配性的信息管理装置和记录该库程序的媒体 |
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2001062427 | 2001-03-06 | ||
| JP2001-62427 | 2001-03-06 | ||
| JP2002006115A JP4225729B2 (ja) | 2001-03-06 | 2002-01-15 | 情報管理装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2002334006A JP2002334006A (ja) | 2002-11-22 |
| JP4225729B2 true JP4225729B2 (ja) | 2009-02-18 |
Family
ID=26610718
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2002006115A Expired - Fee Related JP4225729B2 (ja) | 2001-03-06 | 2002-01-15 | 情報管理装置 |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US20020129007A1 (ja) |
| EP (1) | EP1239380A3 (ja) |
| JP (1) | JP4225729B2 (ja) |
| CN (1) | CN1374587A (ja) |
Families Citing this family (19)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7337193B1 (en) * | 2002-05-02 | 2008-02-26 | Palmsource, Inc. | Determining priority between data items |
| US8001081B1 (en) | 2002-05-31 | 2011-08-16 | Access Co., Ltd. | Determining priority between data items in shared environments |
| EP1489862A1 (en) * | 2003-06-20 | 2004-12-22 | Axalto S.A. | Database synchronization |
| JP4301185B2 (ja) * | 2005-02-25 | 2009-07-22 | ソニー株式会社 | ファイル管理装置、ファイル管理方法およびプログラム |
| US7970803B2 (en) | 2005-07-01 | 2011-06-28 | Qnx Software Systems Gmbh & Co. Kg | Optimized startup verification of file system integrity |
| US8959125B2 (en) | 2005-07-01 | 2015-02-17 | 226008 Ontario Inc. | File system having inverted hierarchical structure |
| US7873683B2 (en) | 2005-07-01 | 2011-01-18 | Qnx Software Systems Gmbh & Co. Kg | File system having transaction record coalescing |
| JP5092234B2 (ja) * | 2005-12-14 | 2012-12-05 | 日本電気株式会社 | 情報処理装置、分散同期型情報システム、情報同期方法、及び、プログラム |
| US7908276B2 (en) | 2006-08-25 | 2011-03-15 | Qnx Software Systems Gmbh & Co. Kg | Filesystem having a filename cache |
| US8566503B2 (en) | 2006-08-25 | 2013-10-22 | Qnx Software Systems Limited | Multimedia filesystem having unified representation of content on diverse multimedia devices |
| US20080147747A1 (en) * | 2006-12-14 | 2008-06-19 | Dan Cardamore | Media system having synchronization with preemptive prioritization of synchronization order |
| JP5853791B2 (ja) * | 2012-03-16 | 2016-02-09 | 富士通株式会社 | データ同期方法及びサーバ装置 |
| WO2014060011A1 (en) * | 2012-10-15 | 2014-04-24 | Huawei Technologies Co., Ltd. | Method and apparatus for managing the coherency for data stored in distributed databases |
| CN104202459B (zh) * | 2014-09-19 | 2018-01-02 | 北京奇虎科技有限公司 | 集成主号码和副号码的通讯录的管理方法及客户端 |
| CN104202460B (zh) * | 2014-09-19 | 2017-12-05 | 北京奇虎科技有限公司 | 基于副号码的呼叫电话的来电显示方法、客户端及系统 |
| US10678216B2 (en) | 2017-02-28 | 2020-06-09 | Sap Se | Manufacturing process data collection and analytics |
| US10353379B2 (en) | 2017-02-28 | 2019-07-16 | Sap Se | Manufacturing process data collection and analytics |
| CN110321462B (zh) * | 2019-05-24 | 2024-08-27 | 平安银行股份有限公司 | 信息动态更新方法、装置、计算机设备及存储介质 |
| JP7787833B2 (ja) * | 2023-01-20 | 2025-12-17 | 東芝テック株式会社 | 情報処理装置及びプログラム |
Family Cites Families (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5710922A (en) * | 1993-06-02 | 1998-01-20 | Apple Computer, Inc. | Method for synchronizing and archiving information between computer systems |
| US5729735A (en) * | 1995-02-08 | 1998-03-17 | Meyering; Samuel C. | Remote database file synchronizer |
| US5926816A (en) * | 1996-10-09 | 1999-07-20 | Oracle Corporation | Database Synchronizer |
| US6047289A (en) * | 1997-11-07 | 2000-04-04 | Novell, Inc. | Method and apparatus for directed data propagation |
| US6295541B1 (en) * | 1997-12-16 | 2001-09-25 | Starfish Software, Inc. | System and methods for synchronizing two or more datasets |
| US6493725B1 (en) * | 1998-05-18 | 2002-12-10 | Sharp Kabushiki Kaisha | Database managing system |
| EP0986225A1 (en) * | 1998-09-11 | 2000-03-15 | Visto Corporation | System and method for securely synchronizing multiple copies of a workspace element in a network |
| US6529921B1 (en) * | 1999-06-29 | 2003-03-04 | Microsoft Corporation | Dynamic synchronization of tables |
| US6581075B1 (en) * | 2000-12-28 | 2003-06-17 | Nortel Networks Limited | System and method for database synchronization |
-
2002
- 2002-01-15 JP JP2002006115A patent/JP4225729B2/ja not_active Expired - Fee Related
- 2002-03-01 US US10/085,077 patent/US20020129007A1/en not_active Abandoned
- 2002-03-05 EP EP02004956A patent/EP1239380A3/en not_active Withdrawn
- 2002-03-06 CN CN02108090A patent/CN1374587A/zh active Pending
Also Published As
| Publication number | Publication date |
|---|---|
| EP1239380A2 (en) | 2002-09-11 |
| EP1239380A3 (en) | 2006-07-12 |
| JP2002334006A (ja) | 2002-11-22 |
| US20020129007A1 (en) | 2002-09-12 |
| CN1374587A (zh) | 2002-10-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP4225729B2 (ja) | 情報管理装置 | |
| JP4558945B2 (ja) | 少なくとも2つのホスト・データベースとリモート・データベースを有するデータベース・システム、及びそのようなデータベースの同期方法 | |
| KR101190426B1 (ko) | 동기화 방법 및 시스템 | |
| JP2002055864A (ja) | データ更新方法および情報処理装置 | |
| JP2002055864A5 (ja) | ||
| US10467248B1 (en) | Data synchronization using a composite clock | |
| CN103124276B (zh) | 一种扩展通信终端存储空间的方法及通信终端 | |
| JP3756349B2 (ja) | データベース管理装置、および、そのプログラムが記録された記録媒体 | |
| CN109165259B (zh) | 基于网络附属存储的索引表更新方法、处理器及存储装置 | |
| CN107992763B (zh) | 一种文件系统的掉电保护方法及装置 | |
| US20030105780A1 (en) | File system, control method, and program | |
| JP4142866B2 (ja) | データベース同期化装置及びプログラム | |
| JP5853791B2 (ja) | データ同期方法及びサーバ装置 | |
| KR20020014888A (ko) | 이동통신 단말기와 개인정보 서버와의 주소록 동기화 방법 | |
| US20030104833A1 (en) | Data synchronization system and method | |
| JP4481053B2 (ja) | 通信機器、通信機器の制御方法、通信機器の制御プログラム | |
| WO2006021841A2 (en) | Efficient synchronisation of smart card data with data stored on an external server | |
| JP3501968B2 (ja) | データベース管理装置、および、そのプログラムが記録された記録媒体 | |
| JP2002222107A (ja) | データ同期装置 | |
| JP2002278901A (ja) | 携帯電話装置および携帯電話装置における受信ファイル管理方法 | |
| JPS63289657A (ja) | 共用ファイルアクセス方式 | |
| US20100030802A1 (en) | System and method tha allows relational data to be modeled efficiently and synchronized without creating dangling references | |
| JP4057171B2 (ja) | 情報同期システムおよび記録媒体 | |
| KR100379457B1 (ko) | 개인 정보 관리 방법 | |
| JPH11327989A (ja) | データベース管理装置、および、そのプログラムが記録された記録媒体 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050113 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080318 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080513 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080624 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080821 |
|
| A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20080904 |
|
| 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: 20081118 |
|
| 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: 20081125 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111205 Year of fee payment: 3 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111205 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121205 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121205 Year of fee payment: 4 |
|
| LAPS | Cancellation because of no payment of annual fees |