(57)【要約】【課題】クライアントおよびネットワークの負荷を軽減し、クライアント側でデータの有効性を判断できるようにする。【解決手段】サーバ１は、データを蓄積するデータベース１２と、データの変化を検出する変化検出部１４と、データの期限を管理する期限管理部１５と、クライアント２からのデータ要求を受信したときは、要求されたデータに期限の情報を付加した構造体データを生成し、クライアント２に送信されたデータの中に、送信後に許容値幅を超えて変化したデータがあったと変化検出部１４が判定した場合またはクライアント２に通知した期限を経過したデータがあったと期限管理部１５が判定した場合は、このデータに最新の期限の情報を付加した構造体データを生成するデータ生成部１３と、構造体データを要求元のクライアントに送信する送受信部１０とを備える。【選択図】  図２
2010067131.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークで接続されたクライアントとサーバとの間のデータ通信方法において、
クライアントは記憶手段に存在しないデータを必要とするときに、必要なデータを指定したデータ要求をサーバに送信する要求ステップと、
前記サーバは前記クライアントからのデータ要求を受信したときに、要求されたデータに最新の期限の情報を付加した構造体データを生成する第１の生成ステップと、
前記サーバは前記第１の生成ステップで生成された構造体データを要求元のクライアントに送信する第１の送信ステップと、
前記クライアントは前記構造体データを受信して前記記憶手段に格納する受信ステップと、
前記サーバは前記クライアントに送信したデータの中に、送信後に所定の許容値幅を超えて変化したデータがあった場合または前記クライアントに通知した期限が経過したデータがあった場合に、このデータに最新の期限の情報を付加した構造体データを生成する第２の生成ステップと、
前記サーバは前記第２の生成ステップで生成された構造体データを前記クライアントに送信する第２の送信ステップとを備えることを特徴とするデータ通信方法。
【請求項２】
請求項１記載のデータ通信方法において、
さらに、前記クライアントは、前記期限の情報に基づいて、前記記憶手段に格納されたデータの有効性を判断する有効性判断ステップを実行することを特徴とするデータ通信方法。
【請求項３】
請求項１記載のデータ通信方法において、
さらに、前記クライアントは、前記期限の情報が保存期限を示す日時情報を含むときに、前記保存期限が経過したデータを前記記憶手段から消去する消去ステップを実行することを特徴とするデータ通信方法。
【請求項４】
請求項１記載のデータ通信方法において、
前記クライアントから前記サーバへのアクセスは、前記クライアントと前記サーバの処理が同期しない非同期アクセスであることを特徴とするデータ通信方法。
【請求項５】
ネットワークで接続されたクライアントとサーバとからなるクライアントサーバシステムにおいて、
前記サーバは、
データを蓄積するデータベースと、
このデータベースに蓄積されたデータの期限を管理する期限管理手段と、
前記データベースに蓄積されたデータの変化を検出する変化検出手段と、
前記クライアントからのデータ要求を受信したときは、要求されたデータに最新の期限の情報を付加した構造体データを生成し、要求元のクライアントに送信されたデータの中に、送信後に所定の許容値幅を超えて変化したデータがあったと前記変化検出手段が判定した場合または前記クライアントに通知した期限を経過したデータがあったと前記期限管理手段が判定した場合は、このデータに最新の期限の情報を付加した構造体データを生成するデータ生成手段と、
前記構造体データを要求元のクライアントに送信する送信手段とを備え、
前記クライアントは、
前記サーバから取得したデータを記憶する記憶手段と、
この記憶手段に存在しないデータを必要とするときに、必要なデータを指定したデータ要求をサーバに送信する要求処理手段と、
前記サーバからの構造体データを受信して前記記憶手段に格納する受信手段とを備えることを特徴とするクライアントサーバシステム。
【請求項６】
請求項５記載のクライアントサーバシステムにおいて、
さらに、前記クライアントは、前記期限の情報に基づいて、前記記憶手段に格納されたデータの有効性を判断する有効性判断手段を備えることを特徴とするクライアントサーバシステム。
【請求項７】
請求項５記載のクライアントサーバシステムにおいて、
さらに、前記クライアントは、前記期限の情報がデータの保存期限を示す日時情報を含むときに、前記保存期限が経過したデータを前記記憶手段から消去する消去手段を備えることを特徴とするクライアントサーバシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クライアントサーバシステムに係り、特にクライアントとサーバとの間のデータのアクセスを効率化するための技術に関するものである。
【背景技術】
【０００２】
従来より、例えば製品の製造や物流等に携わる企業では、複数のコンピュータ間を接続するネットワークシステムによって、プロセス制御や製品の出荷、生産管理、物流管理などを行うようになっている。このネットワークシステムは、大きく分けてプロセス制御システムや入出庫システム等の現場のシステムからデータを収集して蓄積するコンピュータであるサーバと、サーバからデータを取得して生産管理や物流管理等を行うコンピュータであるクライアントと、各コンピュータ間を接続するネットワークとから構成される。このようなネットワークシステムにおいて、異なるコンピュータ間でデータの送受信やデータの共有化を実現する技術として、ＯＰＣ（OLE for Process Control）が提案されている（例えば非特許文献１参照）。
【０００３】
ＯＰＣでは、データアクセスの方法として、同期読み込み、非同期読み込み、リフレッシュ、サブスクリプションの４種類の方法がある。
同期読み込みと非同期読み込みが異なる点は、同期読み込みでは、クライアントはサーバにデータを要求してからデータを受け取るまで他の処理を実行せずに待機しているのに対し、非同期読み込みでは、クライアントはサーバからデータを受け取るまで他の処理を実行できることである。
【０００４】
リフレッシュは、非同期読み込みの一種であるが、属性がアクティブ（読み込み可）となっている全てのデータをサーバからクライアントに送信する方法である。
サブスクリプションは、サーバが一定の周期毎にデータの変化をチェックし、データに所定の許容変化幅を超える変化があった場合に、変化したデータをクライアントに自動的に送信する方法である。
【０００５】
同期読み込み、非同期読み込み、及びリフレッシュは、何れもクライアントからデータ要求を発生させる方法である。これらのうち、クライアントが一定の周期毎にデータ要求を発生させる方式をスキャン方式、データが必要になったときにデータ要求を発生させる方式をデマンド方式と呼ぶ。
【０００６】
【非特許文献１】「ＯＰＣ技術概要書  Ｖｅｒｓｉｏｎ２．０」，日本ＯＰＣ協議会，１９９９年１１月
【発明の開示】
【発明が解決しようとする課題】
【０００７】
スキャン方式やデマンド方式では、クライアントからデータ要求を発生させるため、クライアントの処理負荷が高いという問題点があった。特に、スキャン方式では、常にデータ要求を発生させているため、ネットワークの負荷も増大するという問題点があった。
【０００８】
また、クライアントがデータ要求を発生させる方式に対して、ＯＰＣのサブスクリプションでは、クライアントからのデータ要求によらずにサーバがデータを自動的に送信するため、スキャン方式に比べて、ネットワークの負荷を軽減することができる。しかしながら、サブスクリプションでは、データ変化がない限りサーバからクライアントへのデータ送信が行われないため、クライアント側では前回受信したデータが現時点で有効であるか否かを判断することができないという問題点があった。
【０００９】
本発明は、上記課題を解決するためになされたもので、クライアントおよびネットワークの負荷を軽減することができ、クライアント側でデータの有効性を判断することができるデータ通信方法およびクライアントサーバシステムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明のデータ通信方法において、クライアントは記憶手段に存在しないデータを必要とするときに、必要なデータを指定したデータ要求をサーバに送信する要求ステップと、前記サーバは前記クライアントからのデータ要求を受信したときに、要求されたデータに最新の期限の情報を付加した構造体データを生成する第１の生成ステップと、前記サーバは前記第１の生成ステップで生成された構造体データを要求元のクライアントに送信する第１の送信ステップと、前記クライアントは前記構造体データを受信して前記記憶手段に格納する受信ステップと、前記サーバは前記クライアントに送信したデータの中に、送信後に所定の許容値幅を超えて変化したデータがあった場合または前記クライアントに通知した期限が経過したデータがあった場合に、このデータに最新の期限の情報を付加した構造体データを生成する第２の生成ステップと、前記サーバは前記第２の生成ステップで生成された構造体データを前記クライアントに送信する第２の送信ステップとを備えることを特徴とするものである。
また、本発明のデータ通信方法の１構成例において、さらに、前記クライアントは、前記期限の情報に基づいて、前記記憶手段に格納されたデータの有効性を判断する有効性判断ステップを実行することを特徴とするものである。
また、本発明のデータ通信方法の１構成例において、さらに、前記クライアントは、前記期限の情報が保存期限を示す日時情報を含むときに、前記保存期限が経過したデータを前記記憶手段から消去する消去ステップを実行することを特徴とするものである。
また、本発明のデータ通信方法の１構成例において、前記クライアントから前記サーバへのアクセスは、前記クライアントと前記サーバの処理が同期しない非同期アクセスであることを特徴とするものである。
【００１１】
また、本発明のクライアントサーバシステムにおいて、サーバは、データを蓄積するデータベースと、このデータベースに蓄積されたデータの期限を管理する期限管理手段と、前記データベースに蓄積されたデータの変化を検出する変化検出手段と、前記クライアントからのデータ要求を受信したときは、要求されたデータに最新の期限の情報を付加した構造体データを生成し、要求元のクライアントに送信されたデータの中に、送信後に所定の許容値幅を超えて変化したデータがあったと前記変化検出手段が判定した場合または前記クライアントに通知した期限を経過したデータがあったと前記期限管理手段が判定した場合は、このデータに最新の期限の情報を付加した構造体データを生成するデータ生成手段と、前記構造体データを要求元のクライアントに送信する送信手段とを備え、クライアントは、前記サーバから取得したデータを記憶する記憶手段と、この記憶手段に存在しないデータを必要とするときに、必要なデータを指定したデータ要求をサーバに送信する要求処理手段と、前記サーバからの構造体データを受信して前記記憶手段に格納する受信手段とを備えることを特徴とするものである。
また、本発明のクライアントサーバシステムの１構成例において、さらに、前記クライアントは、前記期限の情報に基づいて、前記記憶手段に格納されたデータの有効性を判断する有効性判断手段を備えることを特徴とするものである。
また、本発明のクライアントサーバシステムの１構成例において、さらに、前記クライアントは、前記期限の情報がデータの保存期限を示す日時情報を含むときに、前記保存期限が経過したデータを前記記憶手段から消去する消去手段を備えることを特徴とするものである。
【発明の効果】
【００１２】
本発明によれば、サーバ主導型のサブスクリプション方式でデータをクライアントに送信するため、クライアントはサーバからのデータ送信を待つだけでよく、クライアントの負荷を低減することができる。また、本発明では、スキャン方式のように常にデータ要求が発生することがないため、ネットワークの負荷も低減することができる。また、クライアントは、構造体データの期限を参照することにより、クライアントやネットワークの負荷を増大させることなく、データの有効性を判断することができ、データの信頼性を高めることができる。
【００１３】
また、本発明では、保存期限が経過したデータをクライアントの記憶手段から消去することにより、クライアントによる無駄なデータ管理、データ保持を回避することができる。
【発明を実施するための最良の形態】
【００１４】
図１は本発明の概念を説明するための図である。データは、そのデータ種類毎に、有効期限や保存期限が決定される場合が多い。その場合、そのデータの有効期限、保存期限は、データソース１００側で決定される。
本発明では、サーバ主導型のサブスクリプションでデータを利用者に送信する。すなわち、データソース１００は、データ名やデータの値、有効期限、保存期限などの情報をデータ毎に管理する。データソース１００は、データ利用者１０１からデータ名を指定するサブスクリプション要求１０２があったときに、要求されたデータに有効期限や保存期限などを付加した構造体データを生成し（１０３）、この構造体データをデータ利用者１０１に送信する（１０４）。以後、データソース１００は、データ利用者１０１毎の情報として、データ利用者１０１に送信したデータの有効期限を管理する。
【００１５】
データソース１００は、データ利用者１０１に送信したデータに所定の許容値幅を超える変化があった場合、あるいはデータの有効期限を過ぎた場合、構造体データを再び生成し（１０５）、この構造体データをデータ利用者１０１に送信する（１０６）。
データ利用者１０１からサブスクリプション解除要求１０７が通知された場合、もしくは一定回数データ利用者１０１へのデータ通知が連続して失敗した場合、データソース１００は、このデータソース１００について管理している情報を破棄する。
【００１６】
データ利用者１０１は、データに付加された期限情報を基に、データの有効性を判断することができる。また、データ利用者１０１がデータ要求を発生させる方式に対して、サブスクリプションでは、データ利用者１０１からのデータ要求によらずにデータソース１００がデータを自動的に送信するため、データ利用者１０１の負荷を低減することができる。さらに、スキャン方式のように常にデータ要求が発生することがないため、ネットワークの負荷も低減することができる。
【００１７】
［第１の実施の形態］
以下、本発明の実施の形態について説明する。図２は本発明の第１の実施の形態に係るクライアントサーバシステムの構成を示すブロック図である。本実施の形態では、クライアントサーバシステムを利用する例として、プロセス制御監視システムを例に挙げて説明する。サーバ１とクライアント２とは、ネットワーク３を介して接続されている。
【００１８】
サーバ１は、検出器や調節計、その他の計測器などのフィールド機器（データソース）４からプロセスデータを収集してデータベースに蓄積し、ネットワーク上にそれらデータを公開する。
クライアント２は、プロセス制御の監視を目的とするものであり、サーバ１からデータを取得して、演算、表示、印刷などの処理を行う。
【００１９】
サーバ１は、ネットワーク３と接続され、クライアント２と通信を行う送受信部１０と、データソース４からプロセスデータを受信するデータソースインタフェース（データソースＩＦ）１１と、データソースＩＦ１１が受信したプロセスデータとあらかじめ定義されたプロセスデータの属性情報とを蓄積するデータベース（ＤＢ）１２と、ＤＢ１２に蓄積されたプロセスデータと属性情報とから構造体データを生成するデータ生成部１３と、プロセスデータの変化を検出する変化検出部１４と、プロセスデータの期限を管理する期限管理部１５とを有する。送受信部１０は、クライアント２に対して構造体データを送信する送信手段を構成している。
【００２０】
ＤＢ１２に格納されるプロセスデータの属性情報としては、タイプと、期限情報などがある。プロセスデータのタイプとしては、実数型（Real）、整数型（Integer）、ブール型（Boolean）、文字列型（String）などがある。期限情報としては、プロセスデータの有効期限と保存期限がある。期限情報は、有効期限と保存期限の両方を含むものでもよいし、有効期限のみを含むものであってもよい。
【００２１】
クライアント２は、ネットワーク３と接続され、サーバ１と通信を行う送受信部２０と、後述するアプリケーションソフトウェアからの要求を処理する要求処理部２１と、サーバ１から取得したデータを格納する記憶部２２と、記憶部２２に格納されたデータの有効性を判断する有効性判断部２３と、記憶部２２に格納されたデータに対して、演算、表示、印刷などの処理を行うアプリケーションソフトウェア２４とを有する。送受信部２０は受信手段を構成し、有効性判断部２３は消去手段を構成している。
【００２２】
ネットワーク３としては、イーサネット（登録商標）などの汎用通信網、フィールドバス、プロセス制御ＬＡＮ、無線ＬＡＮなどが考えられるが、サーバ１とクライアント２との間の通信を実現できるものであれば、これらに限らず適用することができる。
以下、図２のクライアントサーバシステムの動作を説明する。図３はクライアント２の動作を示すフローチャート、図４はサーバ１の動作を示すフローチャートである。
【００２３】
まず、クライアント２のアプリケーションソフトウェア２４は、記憶部２２に所望のプロセスデータが存在するかどうかを確認し（図３ステップＳ１００）、プロセスデータが存在しない場合は、要求処理部２１に対して必要なデータを要求する。
アプリケーションソフトウェア２４の要求に応じて、要求処理部２１は、送受信部２０を介してサーバ１にサブスクリプション要求を送信する（ステップＳ１０１）。このサブスクリプション要求のメッセージには、プロセスデータを指定する識別子（例えばデータ名）が含まれる。
【００２４】
サーバ１の送受信部１０は、ネットワーク３を介してクライアント２からサブスクリプション要求を受信すると（図４ステップＳ２００においてＹＥＳ）、このサブスクリプション要求をデータ生成部１３に渡す。
データ生成部１３は、受信したサブスクリプション要求で指定されたプロセスデータとその属性情報とをＤＢ１２から取得して、プロセスデータに属性情報を付加した構造体データを生成する（ステップＳ２０１）。
【００２５】
データ生成部１３は、生成した構造体データを送受信部１０に渡す。送受信部１０は、構造体データを要求元のクライアント２に送信する（ステップＳ２０２）。
図５は構造体データの構成を示す図である。構造体データは、プロセスデータの識別子であるタグ４００と、プロセスデータのタイプ４０１と、プロセスデータそのものが格納されるバリュー４０２と、サーバ１がプロセスデータを取得した日時を示すタイムスタンプ４０３と、プロセスデータの期限情報４０４とから構成される。タグ４００の例としては、データ名がある。タイプ４０１と期限情報４０４については、属性情報で説明したとおりである。期限情報４０４は、有効期限と保存期限の両方を含むものでもよいし、有効期限のみを含むものであってもよい。タイムスタンプ４０３は、絶対時刻でもよいし、ある基準の時刻からの相対時刻であってもよい。
【００２６】
サーバ１の期限管理部１５は、ステップＳ２０２でクライアント２に送信された構造体データに含まれるプロセスデータの期限情報を、要求元のクライアント２に関する情報としてクライアント毎およびプロセスデータ毎にＤＢ１２に保存して管理する（ステップＳ２０３）。
【００２７】
クライアント２の送受信部２０は、ネットワーク３を介してサーバ１から構造体データを受信すると（図３ステップＳ１０２においてＹＥＳ）、受信した構造体データを記憶部２２に格納する（ステップＳ１０３）。
こうして、必要なデータを受信することができたので、アプリケーションソフトウェア２４は、受信した構造体データから所望のプロセスデータを取り出して処理することができる。
【００２８】
次に、サーバ１の変化検出部１４は、プロセスデータの前回の取得時からの経過時間がプロセスデータの更新周期に達したことにより、ＤＢ１２に格納されているプロセスデータがデータソース４から新たに受信したデータに更新されたとき（図４ステップＳ２０４においてＹＥＳ）、更新後の現在値とＤＢ１２に保存されている当該プロセスデータの前回値とを比較し、プロセスデータの変化量（現在値−前回値）が所定の許容値幅を超えているかどうかを判定する（ステップＳ２０５）。
【００２９】
変化検出部１４は、プロセスデータの変化量が許容値幅を超えている場合、当該プロセスデータを要求したクライアント２が存在するかどうかを判定する（ステップＳ２０６）。前記のとおり、ＤＢ１２には、クライアント２の情報が保存されているので、この情報を参照すれば、当該プロセスデータを要求したクライアント２が存在するかどうかを判定することができる。変化検出部１４は、当該プロセスデータを要求したクライアント２が存在する場合、当該プロセスデータを指定する識別子をデータ生成部１３に渡して、プロセスデータの送信を指示する。
【００３０】
データ生成部１３は、識別子で指定されたプロセスデータとその属性情報とをＤＢ１２から取得して、プロセスデータに属性情報を付加した構造体データを生成する（ステップＳ２０７）。データ生成部１３は、生成した構造体データを送受信部１０に渡す。送受信部１０は、構造体データを要求元のクライアント２に送信する（ステップＳ２０８）。
【００３１】
サーバ１の期限管理部１５は、ステップＳ２０８でクライアント２に送信された構造体データに含まれるプロセスデータの期限情報を、要求元のクライアント２に関する情報としてクライアント毎およびプロセスデータ毎にＤＢ１２に保存して管理する（ステップＳ２０９）。
【００３２】
次に、期限管理部１５は、ＤＢ１２にクライアント２の情報としてクライアント毎およびプロセスデータ毎に格納されている期限情報を一定周期毎に参照して、有効期限を過ぎているプロセスデータが存在するかどうかを判定する（ステップＳ２１０）。期限管理部１５は、ステップＳ２１０において有効期限を過ぎているプロセスデータが存在する場合、このプロセスデータを指定する識別子をデータ生成部１３に渡して、プロセスデータの送信を指示する。ステップＳ２０７〜Ｓ２０９の処理は先に説明したとおりであり、構造体データを受信するクライアント２の動作はステップＳ１０２，Ｓ１０３で説明したとおりである。クライアント２の記憶部２２に格納されている構造体データは、新たに受信した構造体データに更新されることになる。
【００３３】
次に、クライアント２のアプリケーションソフトウェア２４は、例えばプロセスデータを必要としなくなった場合（図３ステップＳ１０４においてＹＥＳ）、要求処理部２１に対してサブスクリプションの解除を要求する。
アプリケーションソフトウェア２４の要求に応じて、要求処理部２１は、送受信部２０を介してサーバ１にサブスクリプション解除要求を送信する（ステップＳ１０５）。このサブスクリプション解除要求のメッセージには、プロセスデータを指定する識別子が含まれる。
【００３４】
サーバ１は、ネットワーク３を介してクライアント２からサブスクリプション解除要求を受信すると（図４ステップＳ２１１においてＹＥＳ）、該当するプロセスデータについて図４の処理を終了する。
【００３５】
以上のように、本実施の形態では、サーバ主導型のサブスクリプション方式でデータをクライアント２に送信するため、クライアント２はサーバ１からのデータ送信を待つだけでよく、クライアント２の負荷を低減することができる。また、本実施の形態では、スキャン方式のように常にデータ要求が発生することがないため、ネットワーク３の負荷も低減することができる。
【００３６】
また、クライアント２の有効性判断部２３は、記憶部２２に格納されている構造体データの有効期限を参照することにより、データの有効性を判断することができるので、データの信頼性を高めることができる。
プロセスデータの有効期限は、サーバ１の期限管理部１５がそのデータの性質に基づいて決定する。例えば、１時間毎に更新されているデータならば、有効期限はその更新後の時間となるはずである。プロセスデータの更新周期は、数ｍｓｅｃ程度のものから数分程度、あるいはそれ以上のものまで用途により千差万別である。そこで、更新周期に応じてプロセスデータの有効期限を決定すれば、データ毎に最適なデータ通知を実現することができる。
【００３７】
また、データの有効期限は常に一定間隔である必要はない。例えば、企業が営業時間内に発信する情報などの場合、営業時間外は更新されないため、営業時間最後の更新時の有効期限は次の営業時間開始後になるべきである。
このように、期限管理部１５は、データの性質等からデータの有効期限を決定して属性情報としてＤＢ１２に格納し、またこの有効期限を適宜更新する。なお、上記のとおりデータの有効期限は、データの更新周期に応じて決定されるものであり、データが更新されるときには、データの属性情報である有効期限も最新の値（更新時刻よりも後の時刻の値）に更新される。一方、ステップＳ２１０で有効期限の判定処理に使用されるのは、クライアント２の情報として管理されている値であり、ステップＳ２０２，Ｓ２０８でクライアント２に送信した構造体データに含まれる有効期限の値である。この有効期限が切れる前にデータが更新されるので、ステップＳ２１０においてデータの有効期限が経過したと判定されるときには、当該データの属性情報として管理されている有効期限は既に最新の値に更新されていることになる。したがって、ステップＳ２１０においてデータの有効期限が経過したと判定されたときに、期限切れの古い有効期限を含む構造体データがクライアント２に送信されることはない。
【００３８】
従来のサブスクリプションでは、クライアント側でデータの有効性を確認することはできない。データの有効性確認のためには、クライアント側からデータ要求したり、サーバの動作ステータスを調査したりする必要があり、このような確認方法ではクライアントおよびネットワークの負荷が増大するという問題が生じる。これに対して、本実施の形態では、クライアント２やネットワーク３の負荷を増大させることなく、データの有効性を確認することができる。
【００３９】
また、従来、クライアントは、データの保存期限を独自で管理しなければならず、ときには保存期限との関連がとれずにデータを消去することができず、余計なデータでストレージが圧迫されるという問題があった。これに対して、本実施の形態のクライアント２では、保存期限を過ぎたデータを消去することにより、無駄なデータ管理、データ保持を回避することができる。すなわち、クライアント２の有効性判断部２３は、記憶部２２に格納されている構造体データの期限情報の中に保存期限が存在し、かつ現在の日時が保存期限を過ぎている場合、この保存期限切れの構造体データを記憶部２２から消去する。
【００４０】
［第２の実施の形態］
次に、本発明の第２の実施の形態について説明する。本実施の形態は、図２のクライアントサーバシステムを温度制御系に適用した例であり、データの有効期限の具体例を説明するものである。ただし、第１の実施の形態では、サーバ１が現場に配設され、クライアント２がその上位の装置として監視を行うものとなっているが、温度制御系の場合には、クライアント２が現場に配設され、サーバ１がクライアント２に対してデータ（温度設定値ＳＰ）を設定するものとなる。
【００４１】
クライアント２のアプリケーションソフトウェア２４は、制御対象の温度ＰＶが温度設定値ＳＰと一致するように、例えば空調機やヒータ等のアクチュエータを制御する。
ここで、制御周期としては例えば１秒程度の高速周期であったとしても、温度設定値ＳＰがこのような高速周期で変更される可能性は少ない。
【００４２】
そこで、例えば図６に示すような温度設定値ＳＰが設定される場合、温度設定値ＳＰの傾斜域では有効期限を短くし、平坦域では有効期限を長く設定する。
これにより、温度設定値ＳＰの傾斜域では、サーバ１からクライアント２に対するデータ送信の頻度が高くなり、クライアント２は温度設定値ＳＰを頻繁に取得する。一方、温度設定値ＳＰの平坦域では、データ送信の頻度が低くなり、クライアント２は傾斜域の場合よりも長い時間間隔で温度設定値ＳＰを取得する。
【００４３】
こうして、本実施の形態では、温度設定値ＳＰの設定状況に応じた最適なデータ送信を実現することができる。
また、本実施の形態では、有効期限内であっても、温度設定値ＳＰの変化が所定の許容値幅を超える急峻なものであれば、温度設定値ＳＰがクライアント２に送信される。
【００４４】
［第３の実施の形態］
次に、本発明の第３の実施の形態について説明する。本実施の形態は、図２のクライアントサーバシステムを牛肉や野菜のトレーサビリティシステムに適用した例であり、データの有効期限と保存期限の具体例を説明するものである。
図７は本実施の形態のクライアントサーバシステムの概略構成を示す図である。本実施の形態では、牛肉の出荷元業者のサーバ１ａ、野菜の出荷元業者のサーバ１ｂ、流通業者のサーバ１ｃ、入荷先業者のサーバ１ｄ、気象予報会社のサーバ１ｅといったように複数のサーバがある。図７において、８０は牛肉や野菜の流れを示している。
【００４５】
サーバ１ａは、クライアント２（トレーサビリティ情報管理システム）からのデータ要求に応じて、牛肉の生産履歴データにタグ（牛肉の個体識別番号）とタイムスタンプ（出荷日時）と保存期限の情報とを付加した構造体データを送信する。
サーバ１ｂは、クライアント２からのデータ要求に応じて、野菜の生産履歴データにタグ（野菜の識別番号）とタイムスタンプ（出荷日時）と保存期限の情報とを付加した構造体データを送信する。
【００４６】
サーバ１ｃは、クライアント２からのデータ要求に応じて、牛肉や野菜の流通温度データにタグ（牛肉や野菜の識別番号）とタイムスタンプ（出荷日時）と保存期限の情報とを付加した構造体データを送信する。
サーバ１ｄは、クライアント２からのデータ要求に応じて、牛肉や野菜の入荷日時のデータにタグとタイムスタンプと保存期限の情報とを付加した構造体データを送信する。
【００４７】
サーバ１ｅは、クライアント２からのサブスクリプション要求に応じて、最高気温のデータにタグとタイムスタンプ（予報日時）と有効期限の情報とを付加した構造体データを送信し、以後、最高気温のデータの有効期限が切れた場合あるいは最高気温の変化が所定の許容値幅を超えた場合に、構造体データをクライアント２に送信する。
【００４８】
第１の実施の形態と同様に、クライアント２は、保存期限が切れたトレーサビリティデータ（生産履歴、流通温度、入荷日時）を消去する。
こうして、本実施の形態では、クライアント２において保存期限が過ぎたデータを効率的に破棄することができる。これにより、クライアント２のパフォーマンスの低下回避とストレージ（記憶部２２）の有効活用を実現することができる。
【００４９】
なお、第１〜第３の実施の形態におけるサーバ１は、それぞれＣＰＵ、記憶装置およびインタフェースを備えたコンピュータとこれらのハードウェア資源を制御するプログラムによって実現することができる。同様に、クライアント２についても、コンピュータとそのプログラムによって実現することができる。これらのコンピュータのＣＰＵは、それぞれの記憶装置に格納されたプログラムに従って第１〜第３の実施の形態で説明した処理を実行する。
【００５０】
また、第１〜第３の実施の形態では、クライアント２がアプリケーションソフトウェア２４を含むものとしているが、クライアント２にとってアプリケーションソフトウェア２４は必須の構成ではない。クライアント２がサーバ１からデータ提供を受けるデータベースサーバの役目を果たし、蓄積したデータをアプリケーションソフトウェア２４が稼働する別のコンピュータに渡すようにしてもよい。
【産業上の利用可能性】
【００５１】
本発明は、クライアントサーバシステムに適用することができる。
【図面の簡単な説明】
【００５２】
【図１】本発明の概念を説明するための図である。
【図２】本発明の第１の実施の形態に係るクライアントサーバシステムの構成を示すブロック図である。
【図３】図２のクライアントサーバシステムにおけるクライアントの動作を示すフローチャートである。
【図４】図２のクライアントサーバシステムにおけるサーバの動作を示すフローチャートである。
【図５】本発明の第１の実施の形態における構造体データの構成を示す図である。
【図６】本発明の第２の実施の形態における温度設定値の設定例を示す図である。
【図７】本発明の第３の実施の形態に係るクライアントサーバシステムの概略構成を示す図である。
【符号の説明】
【００５３】
１…サーバ、２…クライアント、３…ネットワーク、４…データソース、１０，２０…送受信部、１１…データソースインタフェース、１２…データベース、１３…データ生成部、１４…変化検出部、１５…期限管理部、２１…要求処理部、２２…記憶部、２３…有効性判断部、２４…アプリケーションソフトウェア。
【図１】
2010067131.tif 000003
【図２】
2010067131.tif 000004
【図３】
2010067131.tif 000005
【図４】
2010067131.tif 000006
【図５】
2010067131.tif 000007
【図６】
2010067131.tif 000008
【図７】
2010067131.tif 000009