JP2007249772A - データ処理方法、データ処理システム及びデータ処理プログラム - Google Patents

データ処理方法、データ処理システム及びデータ処理プログラム Download PDF

Info

Publication number
JP2007249772A
JP2007249772A JP2006074497A JP2006074497A JP2007249772A JP 2007249772 A JP2007249772 A JP 2007249772A JP 2006074497 A JP2006074497 A JP 2006074497A JP 2006074497 A JP2006074497 A JP 2006074497A JP 2007249772 A JP2007249772 A JP 2007249772A
Authority
JP
Japan
Prior art keywords
data
secondary data
update
primary
time
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.)
Granted
Application number
JP2006074497A
Other languages
English (en)
Other versions
JP4808524B2 (ja
Inventor
Hitoshi Mizutani
仁 水谷
Atsushi Hirata
淳 平田
Hiroaki Nakai
博章 中井
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2006074497A priority Critical patent/JP4808524B2/ja
Priority to US11/480,972 priority patent/US7653662B2/en
Publication of JP2007249772A publication Critical patent/JP2007249772A/ja
Application granted granted Critical
Publication of JP4808524B2 publication Critical patent/JP4808524B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/087Inventory or stock management, e.g. order filling, procurement or balancing against orders

Landscapes

  • Business, Economics & Management (AREA)
  • Economics (AREA)
  • Engineering & Computer Science (AREA)
  • Marketing (AREA)
  • Quality & Reliability (AREA)
  • Finance (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Human Resources & Organizations (AREA)
  • Accounting & Taxation (AREA)
  • Operations Research (AREA)
  • Development Economics (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】参照するデータが最新であるか否かを判定し、最新でない場合に短時間で最新データに更新する。
【解決手段】データの生成手順が予め定義されたプログラムによって、一次データを基に要求された二次データを生成するデータ処理方法であって、一次データと、二次データと、一次データの更新時刻及び二次データの更新時刻を含むデータ更新情報とを記憶装置に格納し、二次データの取得を要求されたときに、要求された二次データを生成するために使用する一次データ及び二次データのデータ更新情報と、要求された二次データのデータ更新情報との関係が、所定の条件を満たさないとき、要求された二次データを生成するプログラムを実行する。
【選択図】図9

Description

本発明は、入力情報等の一次データを加工し、二次データを生成するデータ処理技術にに関する。
フランチャイズチェーンなどにおける在庫管理システムでは、店舗において商品の販売数量等の情報を端末から入力する。入力された販売数量などの一次データは、データセンター等に集められ、集計される。集められた一次データは、利用者が利用しやすい二次データに変換され、商品の在庫管理等に活用される。
ところで、オンラインで各店舗とデータセンターを接続した場合、リアルタイムに一次データを送信すると、ネットワークのトラフィックを増大させてしまうおそれがある。また、オンライン化自体が困難な場合も考えられる。
そこで、一次データを一時的に蓄積し、定期的にバッチ処理を実行することによって二次データを生成する方法が考えられる。しかし、このようなバッチ処理では、一次データを入力するタイミングと二次データを生成するタイミングとの時間差が発生する問題点があった。そのため、この時間差によってシステムに登録された在庫量と実際の在庫量に差が生じることによって、商品の欠品が生じたり過剰在庫を保有してしまうようなことがないことが望ましい。
これらの課題を改善するために、二次データを参照するときに必要に応じてデータを生成する方法も考えられる。しかし、二次データの生成に膨大な一次データを利用しなければならない場合は、その処理に多くの時間を要する。また、一部の一次データのみを更新した場合でも、二次データの生成に必要なすべてのプログラムが実行しなければならなかった。
そこで、一次データ、二次データ及び二次データの生成に必要なプログラムの関係を導き出すような技術が、特許文献1に開示されている。
特開2001−331354号公報
しかし、特許文献1に開示された技術では、一次データを更新することによって影響される範囲を取得するのみであった。そのため、参照する二次データは最新であることが望ましい。なお、二次データが最新であることとは、最後に二次データが生成されてから、二次データの生成に必要な一次データが更新されていないことをいう。
本発明は、前述した課題に鑑みてなされたものであり、参照する二次データが最新であるか否かを判断し、最新の状態に更新するために必要なプログラムを抽出し、実行することを目的とする。
本発明の代表的な実施の形態では、プロセッサと、前記プロセッサからアクセス可能なメモリと、記憶装置と、入力部と、出力部と、を備えるデータ処理システムにおける、一次データを基に、データの生成手順が予め定義されたプログラムによって、要求された二次データを生成するデータ処理方法であって、前記プロセッサは、前記プログラムを実行し、前記メモリは、前記プログラムを格納し、前記記憶装置は、前記一次データと、前記二次データと、前記一次データの更新時刻及び前記二次データの更新時刻を含むデータ更新情報とを格納し、前記プロセッサは、前記二次データの取得を要求されたときに、前記要求された二次データを生成するために使用する一次データ及び二次データのデータ更新情報と、前記要求された二次データのデータ更新情報との関係が、所定の条件を満たさないとき、前記要求された二次データを生成するプログラムを実行することを特徴とする。
本発明の代表的な実施の形態によれば、二次データを生成するために、必要なプログラムを実行すればよい。したがって、二次データを短時間で最新の状態に更新することができる。
以下、本発明の実施の形態について説明する。
図1Aは、本実施の形態のデータ処理システムを示す構成図である。
データ処理システムは、一次情報クライアント110、プロセスクライアント120、プロセスサーバ130、一次情報サーバ140、二次情報サーバ150、管理クライアント160及び管理サーバ170を備える。一次情報クライアント110、プロセスクライアント120、プロセスサーバ130、一次情報サーバ140、二次情報サーバ150、管理クライアント160及び管理サーバ170は、ネットワーク100によって互いに接続される。
一次情報クライアント110は、図1Bにて後述するように、利用者が入力したデータを受け付け、一次情報サーバ140に送信する。
一次情報サーバ140は、一次情報クライアント110に入力されたデータを受信する。一次情報サーバ140は、図1Cにて後述するように、受信したデータを格納する。
プロセスクライアント120は、図1Dにて後述するように、データの処理手順の入力を受け付ける。入力された処理手順は、ネットワーク100を通じてプロセスサーバ130に送信される。
プロセスサーバ130は、プロセスクライアント120が送信した処理手順を受信する。プロセスサーバ130は、図1Eにて後述するように、受信した処理手順を加工して実行可能な形式のプロセスを作成する。プロセスサーバ130は、管理サーバ170に作成したプロセスの関連情報を送信する。
プロセスとは、一次データを抽出し、予め定義された手順で一次データを加工して二次データを生成し、生成された二次データを格納する一連の処理である。例えば、一次データは商品の販売数量、販売単価及び原価であり、二次データは利益額とする。このとき、プロセスは販売単価と原価との差に販売数量を掛ける処理となる。また、プロセスは、一次データの抽出から二次データの生成及び格納までの処理を実行するプログラムとしてもよい。
二次情報サーバ150は、プロセスが生成した二次データを受信する。二次情報サーバ150は、図1Fにて後述するように、受信した二次データを格納する。
管理クライアント160は、図1Gにて後述するように、管理サーバ170にデータ分析の実行を指示する。また、管理クライアント160は、管理サーバ170から分析結果をネットワーク100を通じて受信する。管理クライアント160は、受信した分析結果を表示する。
管理サーバ170は、図1Hにて後述するように、管理クライアント160からの指示を受け、データ分析を実行する。データ分析では、利用者が参照する二次データの生成に必要な一次データ及びプロセスを抽出し、一次データの更新時刻とプロセスの実行履歴から参照する二次データが最新であるか否かを判断する。管理サーバ170は、参照する二次データが最新でない場合には、データの更新に必要なプロセスを抽出する。さらに、管理サーバ170は、データの更新に推定所要時間などを算出する。管理サーバ170は、分析結果をネットワーク100を通じて管理クライアント160に送信する。
図1Bは、本実施の形態の一次情報クライアント110を示す構成図である。
一次情報クライアント110は、プロセッサ112、メモリ113、入力部114、出力部115及びネットワークインターフェイス117を備える。プロセッサ112、メモリ113、入力部114、出力部115及びネットワークインターフェイス117は、内部バス118によって相互に接続される。
入力部114は、例えば、キーボード又はマウス等であり、一次情報が入力される。出力部115は、例えば、ディスプレイ等であり、入力画面及び入力結果などの情報を出力する。
プロセッサ112は、メモリ113に記憶されているプログラムを実行することによって、各種処理を行う。
メモリ113は、プロセッサ112によって実行されるプログラム及びプロセッサ112によって必要とされる情報を記憶する。メモリ113は、一次データ更新部111を格納する。一次データ更新部111は、入力部114から入力されたデータを一次情報サーバ140に送信する。
ネットワークインターフェイス117は、ネットワーク100と接続する。
図1Cは、本実施の形態の一次情報サーバ140を示す構成図である。
一次情報サーバ140は、メモリ143、プロセッサ145、記憶装置146及びネットワークインターフェイス147を備える。メモリ143、プロセッサ145、記憶装置146及びネットワークインターフェイス147は、内部バス148によって相互に接続される。
プロセッサ145は、メモリ143に記憶されているプログラムを実行することによって、各種処理を行う。
記憶装置146は、磁気ディスクドライブを備える。記憶装置146は、複数のディスクドライブによってRAIDを構成してもよい。記憶装置146は、外部入力データ142を格納する。外部入力データ142は、一次情報クライアント110からの入力情報である。
メモリ143は、プロセッサ145によって実行されるプログラム及びプロセッサ145によって必要とされる情報を記憶する。メモリ143は、一次データ管理部141を格納する。
一次データ管理部141は、一次情報クライアント120から送信された入力データを受信して外部入力データ142を更新する。また、一次データ管理部141は、外部入力データ142を更新した時刻を追加又は更新されたテーブル名とともに管理サーバ170に送信する。
ネットワークインターフェイス147は、ネットワーク100と接続する。
図1Dは、本実施の形態のプロセスクライアント120を示す構成図である。
プロセスクライアント120は、プロセッサ122、メモリ123、入力部124、出力部125及びネットワークインターフェイス127を備える。プロセッサ122、メモリ123、入力部124、出力部125及びネットワークインターフェイス127は、内部バス128によって相互に接続される。
入力部124は、例えば、キーボード又はマウス等であり、プロセスの処理内容等が入力される。出力部125は、例えば、ディスプレイ等であり、入力画面及び入力結果などの情報を出力する。
プロセッサ122は、メモリ123に記憶されているプログラムを実行することによって、各種処理を行う。
メモリ123は、プロセッサ122によって実行されるプログラム及びプロセッサ122によって必要とされる情報を記憶する。メモリ123は、プロセス編集部121を格納する。プロセス編集部121は、入力部124から入力されたプロセスの処理内容等をプロセスサーバ130に送信する。
ネットワークインターフェイス127は、ネットワーク100と接続する。
図1Eは、本実施の形態のプロセスサーバ130を示す構成図である。
プロセスサーバ130は、メモリ138A、プロセッサ138B及びネットワークインターフェイス139Aを備える。メモリ138A、プロセッサ138B及びネットワークインターフェイス139Aは、内部バス139Bによって相互に接続される。
プロセッサ138Bは、メモリ138Aに記憶されているプログラムを実行することによって、各種処理を行う。
メモリ138Aは、プロセッサ138Bによって実行されるプログラム及びプロセッサ138Bによって必要とされる情報を記憶する。メモリ138Aは、プロセス作成部131、プロセス実行管理部132及びプロセス記憶部137を格納する。
プロセス作成部131は、プロセスクライアント120から送信されたプロセスの処理内容等の情報からプロセス133を作成する。プロセス作成部131は、作成したプロセス133をプロセス記憶部137に格納し、所定の情報を管理サーバ170に送信する。
プロセス実行管理部132は、プロセスの実行指示を受信して指定されたプロセスの実行を制御する。また、日次処理のように所定のプロセスを定期的に実行する場合には、プロセス実行管理部132がプロセスの実行を制御する。
プロセス記憶部137は、複数のプロセス133を格納する。プロセス133は、プロセスクライアント120から受信した処理内容等に基づいてプロセス作成部131によって作成される。プロセス133は、データ抽出部134、データ加工部135及びデータ格納部136を備える。
データ抽出部134は、プロセス133の実行に必要なデータを一次情報サーバ140の外部入力データ142又は二次情報サーバ150のプロセス加工データ152から抽出する。
データ加工部135は、プロセス133に定義された手順に従ってデータを加工処理する。
データ格納部136は、データ加工部135によって加工された二次データを二次情報サーバ150のプロセス加工データ152に格納する。
ネットワークインターフェイス139Aは、ネットワーク100と接続する。
図1Fは、本実施の形態の二次情報サーバ150を示す構成図である。
二次情報サーバ150は、メモリ153、プロセッサ155、記憶装置156及びネットワークインターフェイス157を備える。メモリ153、プロセッサ155、記憶装置156及びネットワークインターフェイス157は、内部バス158によって相互に接続される。
プロセッサ155は、メモリ153に記憶されているプログラムを実行することによって、各種処理を行う。
メモリ153は、プロセッサ155によって実行されるプログラム及びプロセッサ155によって必要とされる情報を記憶する。メモリ153は、二次データ管理部151を格納する。二次データ管理部151は、プロセスサーバ130で生成された二次データを受信して記憶装置156に格納する。また、二次データ管理部151は、二次データを受信した時刻を更新されたテーブル名とともに管理サーバ170に送信する。
記憶装置156は、磁気ディスクドライブを備える。記憶装置156は、複数のディスクドライブによってRAIDを構成してもよい。記憶装置156は、プロセス加工データ152を格納する。プロセス加工データ152は、前述のようにプロセスサーバ130で生成された二次データである。なお、プロセス加工データ152は、一次情報サーバ140に格納された外部入力データ142及びプロセスサーバ130のプロセス記憶部137に格納されたプロセス133によって、再生成することができる。
ネットワークインターフェイス157は、ネットワーク100と接続する。
図1Gは、本実施の形態の管理クライアント160を示す構成図である。
管理クライアント160は、プロセッサ162、メモリ163、入力部164、出力部165及びネットワークインターフェイス167を備える。プロセッサ162、メモリ163、入力部164、出力部165及びネットワークインターフェイス167は、内部バス168によって相互に接続される。
入力部164は、例えば、キーボード又はマウス等であり、参照するテーブルの指定に必要な情報等が入力される。出力部165は、例えば、ディスプレイ等であり、入力画面及び取得した二次データ等を出力する。
プロセッサ162は、メモリ163に記憶されているプログラムを実行することによって、各種処理を行う。
メモリ163は、プロセッサ162によって実行されるプログラム及びプロセッサ162が必要とする情報を記憶する。メモリ163は、ユーザー要求受付部161及び表示部162を格納する。
ユーザー要求受付部161は、利用者が参照するテーブルの指定を受け付ける。ユーザー要求受付部161は、指定されたテーブルの内容を一次情報サーバ140又は二次情報サーバ150から取得する。さらに、ユーザー要求受付部161は、利用者から更新情報の表示を要求されると、管理サーバ170に指定されたテーブル名を送信し、データの分析及び更新情報の取得を依頼する。表示部162は、ユーザー要求受付部161に指定された二次データ及び更新情報を表示する。
ネットワークインターフェイス167は、ネットワーク100と接続する。
図1Hは、本実施の形態の管理サーバ170を示す構成図である。
管理サーバ170は、プロセッサ180、メモリ181、記憶装置182及びネットワークインターフェイス184を備える。プロセッサ180、メモリ181、記憶装置182及びネットワークインターフェイス183は、内部バス185によって相互に接続される。
プロセッサ180は、メモリ181に記憶されているプログラムを実行することによって、各種処理を行う。
メモリ181は、プロセッサ180によって実行されるプログラム及びプロセッサ180によって必要とされる情報を記憶する。メモリ181は、管理データ分析部171、プロセス手順管理部172、プロセス履歴管理部173及びテーブル管理部174を格納する。
記憶装置182は、プロセス手順テーブル176、プロセス履歴テーブル177及びテーブル管理テーブル178を格納する。
管理データ分析部171は、管理クライアント160からの分析指示を受け、データを分析する。管理データ分析部171は、プロセス手順取得部185、更新情報付加部186及びプロセス分析部187を含む。
プロセス手順取得部185及び更新情報付加部186は、プロセスの実行履歴を参照して指定されたテーブルの更新情報を生成する。
プロセス分析部187は、取得した更新情報を利用して指定されたテーブルを最新状態に更新するために必要なプロセスを抽出し、推定所要時間を算出する。なお、テーブルが最新状態であることとは、テーブルに格納された二次データが最新であることをいう。
プロセス手順管理部172は、プロセスサーバ130から送信されたプロセス情報を受信する。プロセス手順管理部172は、受信したプロセス情報をプロセス手順テーブル176に格納する。プロセス手順とは、プロセスに入力する一次データとプロセスから出力される二次データとの対応関係である。プロセス手順テーブル176の詳細は、図2にて説明する。
プロセス履歴管理部173は、直前に実行されたプロセス履歴をプロセス履歴テーブル177に格納する。プロセス履歴とは、プロセスの開始時刻及び終了時刻などの情報である。なお、プロセス履歴の情報は、プロセスに入力する一次データ及びプロセスから出力される二次データのデータ更新情報とみなすことができる。プロセス履歴テーブル177の詳細は、図3Aにて説明する。
テーブル管理部174は、外部入力データ142が登録又は更新されたとき、一次情報サーバ140から通知を受けてテーブル管理テーブル178に更新時刻を記録する。プロセス加工データ152についても、二次情報サーバ150から通知を受けて更新時刻をテーブル管理テーブル178に記録する。これらの記録された更新時刻は、一次データ及び二次データのデータ更新情報に含まれる。テーブル管理テーブル178の詳細は、図4にて説明する。
ネットワークインターフェイス183は、ネットワーク100と接続する。
次に、本実施形態に必要なデータを格納するテーブルについて説明する。
図2Aは、プロセス手順テーブル176の初期状態を示す。図2Bは、プロセス手順テーブル176の初期状態からデータを追加した状態を示す。
プロセス手順テーブル176は、プロセスに入力する一次データとプロセスから出力される二次データとの関係を保持する。プロセス手順テーブル176は、プロセス名201、出力先202及び入力元203を含む。
プロセス名201は、プロセスの名称を格納する。プロセス名201は、各プロセスを一意に識別する。
出力先202は、プロセスが出力する二次データを保持するテーブル及びカラムを格納する。出力先202は、プロセス名201との組み合わせでプロセス手順テーブル176のレコードを一意に識別する。
入力元203は、プロセスに入力される一次データを保持するテーブル及びカラムを格納する。
図2Bには、レコード204が追加されている。レコード204は、「Table−B」のカラム「01」及び「02」の内容をプロセス「P1」に入力すると、処理結果を「Table−A」のカラム「01」に出力することを示している。
図3Aは、プロセス履歴テーブル177の初期状態を示す。図3Bは、プロセス編集終了時の状態を示す。図3Cは、プロセス開始時の状態を示す。図3Dは、プロセス終了時の状態を示す。
プロセス履歴テーブル177は、前述のように、直前に実行されたプロセス履歴が格納される。プロセス履歴テーブル177は、図3Aに示すように、プロセス名301、開始時刻302、終了時刻303、通常開始時刻304及び処理時間305を含む。
プロセス名301は、プロセスの名称が格納される。プロセス名301は、各プロセスを一意に識別する。
開始時刻302は、最後に実行されたプロセスの開始時刻を格納する。
終了時刻303は、最後に実行されたプロセスの終了時刻を格納する。
通常開始時刻304は、プロセスが日次バッチなどにより定期的に実行される場合に、予め指定された実行開始日時を格納する。
処理時間305は、最後に実行されたプロセスの処理に要した時間を格納する。
図3Bに示すように、プロセスクライアント120によって新たにプロセスが追加又は更新されたときには、プロセス名301及び通常開始時刻304のみが登録される。
図3Cに示すように、プロセスが開始されると、開始時刻302は、管理サーバ170のプロセス履歴管理部173によって更新される。
図3Dに示すように、プロセスが終了すると、終了時刻304は、管理サーバ170のプロセス履歴管理部173によって更新される。さらに、プロセス履歴管理部173は、開始時刻と終了時刻から処理時間を算出し、処理時間305を更新する。
プロセス履歴テーブル177にデータが既に格納されている場合には、開始時刻302と終了時刻303は、そのまま上書きされる。したがって、開始時刻302に格納された時刻が終了時刻303に格納された時刻よりも後の時刻であれば、プロセスが実行中であることを意味する。
図4Aは、テーブル管理テーブル178の初期状態を示す。図4Bは、テーブルの追加時の状態を示す。図4Cは、テーブルの更新時の状態を示す。
テーブル管理テーブル178は、テーブルの更新時刻を格納する。テーブル管理テーブル178は、図4Aに示すように、テーブル名401及び更新時刻402を含む。
テーブル名401は、外部入力データ142又はプロセス加工データ152を格納するテーブルのテーブル名である。テーブル名401は、各テーブルを一意に識別する。
更新時刻402は、テーブル名401により指定されたテーブルが最後に更新された時刻を格納する。
テーブル管理テーブル178は、一次情報サーバ140又は二次情報サーバ150にテーブルが追加されると、図4Aに示す初期状態から図4Bに示すようにレコード403が追加される。さらに、「Table−A」が更新された場合には、更新時刻402は、図4Cに示すように、更新時刻が上書きされる。
次に、プロセス手順テーブル176、プロセス履歴テーブル177及びテーブル管理テーブル178のデータを格納する方法について、図5〜図7のフローチャートを参照して説明する。
図5は、プロセスの編集処理のフローチャートである。プロセスの編集とは、プロセスを追加、削除及び修正処理である。図5は、プロセスの追加処理を示す。
プロセスの追加は、プロセスクライアント120から入力されたプロセスの処理内容をプロセスサーバ130に格納する。さらに、プロセスの関連情報をプロセス手順テーブル176及びプロセス履歴テーブル177に格納する。
プロセス設計者は、プロセスクライアント120において、プロセス編集部121を起動する。プロセス設計者は、プロセスクライアント120の入力部124からプロセスを追加するために必要な情報を入力する。情報の入力が完了すると、プロセス編集部121は、追加するプロセスの編集内容をプロセスサーバ130に送信する(ステップ502)。プロセス編集部121は、追加するプロセスの送信が完了すると、その後、終了する。
プロセスサーバ130は、プロセスクライアント120から追加するプロセスの処理内容を受信する(ステップ511)。プロセス作成部131は、受信したプロセスの処理内容に基づいてプロセスを作成する(ステップ512)。作成されたプロセスは、プロセスサーバ130のプロセス記憶部137にプロセス133として格納される。
さらに、プロセス作成部131は、作成したプロセスの情報を管理サーバ170に送信する。プロセス作成部131は、プロセス名、出力先カラム、入力元カラム及びプロセスの通常開始時刻を送信する(ステップ513)。プロセス作成部131は、作成したプロセスの情報の送信が完了すると、その後、終了する。
管理サーバ170は、前述のプロセスの情報を受信する(ステップ521)。プロセス手順管理部172は、受信した情報を元に新規レコードを生成し、プロセス手順テーブル176に追加する(ステップ522)。具体的には、プロセス手順管理部172は、受信したプロセス名201、出力先202及び入力元203から新規レコードを生成し、プロセス手順テーブル176に追加する。図2Bは、プロセス手順テーブル176にレコードが追加された状態の例である。
次に、プロセス履歴管理部173は、受信した情報を元に新規レコードをプロセス履歴テーブル177に追加する(ステップ523)。具体的には、プロセス履歴管理部173は、受信したプロセス名及び通常開始時刻から新規レコードを生成し、プロセス履歴テーブル177に追加する。図3Bは、プロセス履歴テーブル177にレコードが追加された状態の例である。
また、プロセスの削除及び修正についても同様の手順で実行する。
図6は、外部入力データ142を更新する処理のフローチャートである。
外部入力データ142の更新処理は、一次情報サーバ140に格納された外部入力データ142を更新し、更新したテーブルの更新時刻をテーブル管理テーブルに記録する。
一次情報クライアント110の利用者は、一次データ更新部111を起動する。利用者は、一次情報クライアント110の入力部114から更新するデータを入力する。データの入力が完了すると、一次データ更新部111は、更新するデータの内容を一次情報サーバ140に送信する(ステップ602)。一次データ更新部111は、入力したデータの送信が完了すると、その後、終了する。
一次情報サーバ140は、更新するデータの内容を受信する(ステップ611)。一次データ管理部141は、記憶装置146に格納された外部入力データ142を受信した更新内容に従って更新する(ステップ612)。
外部入力データ142の更新が完了すると、一次データ管理部141は、管理サーバ170にデータを更新したテーブル名と現在時刻を送信する(ステップ613)。一次データ管理部141は、管理サーバ170への送信が完了すると、その後、終了する。
管理サーバ170は、更新された外部入力データ142のテーブル名と更新時刻を受信する(ステップ621)。テーブル管理部174は、受信したテーブル名がテーブル管理テーブル178に存在する場合には(ステップ622の結果が「YES」)、該当するレコードの更新時刻に受信した更新時刻を上書きする(ステップ624)。
例えば、受信したテーブル名が「Table−A」及び更新時刻が「2005/1/3 5:00」であるとき、テーブル管理テーブル178が図4Bに示す状態になっているとする。テーブル管理テーブル178には、テーブル名が一致するレコードが既に存在しているため、テーブル管理部174は、更新時刻を「2005/1/3 3:00」から「2005/1/3 5:00」に更新する。
一方、受信したテーブル名がテーブル管理テーブル178に存在しない場合には(ステップ622の結果が「NO」)、テーブル管理部174は、受信したテーブル名と更新時刻から新規レコードを生成し、テーブル管理テーブル178に追加する(ステップ623)。
図7は、プロセスサーバ130に格納されたプロセスを実行するフローチャートである。プロセスサーバ130のプロセス実行管理部132は、格納されたプロセスを定期的に実行する。また、必要に応じて手動でプロセスを実行させることもできる。
プロセス実行管理部132は、所定の実行条件を満たすと、指定されたプロセスの実行を指示する。プロセス実行管理部132は、指定されたプロセスを実行すると、管理サーバ170に実行したプロセスのプロセス名及び現在時刻を送信する(ステップ702)。
プロセス133は、プロセス実行管理部132からの実行命令を受けて、データ抽出部134が一次データを抽出する(ステップ703)。続いて、データ加工部135は、抽出した一次データを加工する(ステップ704)。さらに、データ格納部136は、生成された二次データを二次情報サーバ150に送信する(ステップ705)。
一方、管理サーバ170は、プロセスサーバ130が送信したプロセス名及び開始時刻を受信する(ステップ711)。プロセス履歴管理部173は、受信したプロセス名からプロセス履歴テーブル177の対応するレコードの開始時刻を更新する(ステップ712)。図3Cは、ステップ712が完了した時点のプロセス履歴テーブル177の状態を示している。なお、プロセス履歴管理部173は、ステップ712の処理をプロセスサーバ130におけるプロセスと並列して実行する。
二次情報サーバ150は、プロセスサーバ130で生成された二次データを受信する(ステップ721)。二次データ管理部151は、受信した二次データを記憶装置156のプロセス加工データ152に追加又は更新する(ステップ722)。さらに、二次データ管理部151は、プロセスサーバ130に対して二次データの更新が完了したことを通知する。そして、二次データ管理部151は、データを更新したテーブル名と現在時刻を管理サーバ170に送信する(ステップ723)。
管理サーバ170は、更新された二次データを格納するテーブルのテーブル名と更新時刻を受信する(ステップ731)。テーブル管理部174は、受信したテーブル名から該当するレコードを抽出し、更新時刻を更新する(ステップ732)。
一方、プロセスサーバ130は、プロセスの終了情報を管理サーバ170に送信する。プロセス実行管理部132は、二次データの更新が完了した旨の通知を受けた後、実行中のプロセス名と現在時刻を170に送信する(ステップ706)。
管理サーバ170は、プロセス名及び終了時刻を受信する(ステップ741)。プロセス履歴管理部173は、受信したプロセス名から該当するレコードを抽出し、終了時刻を更新する(ステップ742)。さらに、プロセス履歴管理部173は、開始時刻と終了時刻から処理時間を算出し、処理時間を更新する(ステップ743)。図3Dは、ステップ743の処理が完了した時点のプロセス履歴テーブル177の状態を示している。
図8は、管理クライアント160から、利用者が指定したテーブルを参照するテーブル参照画面800である。テーブル参照画面800は、出力部165に表示部162によって表示される。
テーブル参照画面800は、リスト801と、グリッド802及び更新情報ボタン803を含む。また、テーブル参照画面800は、入力部164から参照するテーブルが選択される。
リスト801は、参照するテーブルを選択する。リスト801は、選択可能なテーブルの一覧を格納している。リスト801は、左側にテーブル名の表示部を、右側にテーブル一覧を表示するボタンを備える。右側のボタンを押下すると、テーブル名の表示部が拡大し、利用者は参照するテーブルを選択できる。
グリッド802は、選択されたテーブルの内容を表示する。
更新情報ボタン803を押下すると、更新情報の内容を示す更新情報表示画面が表示される。更新情報表示画面は、図16にて後述する。更新情報は、加工プロセス関連情報と加工プロセス分析結果を含む。
加工プロセス関連情報とは、指定されたテーブルに格納されたデータを生成するために必要な一次データ、二次データ及びプロセスを階層構造としたものである。さらに、一次データ及び二次データは更新時刻が、プロセスは開始時刻、終了時刻、次回開始予定時刻及び処理時間が付加される。
加工プロセス分析結果は、指定されたテーブルの更新状況、最新状態に更新するために必要なプロセス、必要な処理時間及び次回更新予定時刻を含む。
図9は、更新情報を取得及び表示する処理のフローチャートである。
管理クライアント160は、図8に示したテーブル参照画面の更新情報ボタン803を押下されると、管理サーバ170に更新情報の取得を依頼する。管理クライアント160は、管理サーバ170で取得及び生成された更新情報を受信し、その内容を画面に表示する。利用者は、表示された更新情報を参照して必要に応じて部分更新依頼を実行して指定されたテーブルを最新状態に更新する。
ここで、更新情報の取得について詳細を説明する。図8に示すテーブル参照画面800の更新情報ボタン803を押下すると、ユーザ要求受付部161は、管理サーバ170に更新情報の取得の依頼とともに対象となるテーブル名を送信する(ステップ902)。
管理サーバ170は、更新情報の取得対象となるテーブルのテーブル名を受信する(ステップ911)。
管理データ分析部171は、受信したテーブル名をもとにプロセス手順取得処理を実行する(ステップ912)。プロセス手順取得処理は、指定されたテーブルに格納されたデータを生成するために必要なカラム及びプロセスを取得し、その生成順序に従って階層構造を構築する。この階層構造は、更新情報の加工プロセス関連情報に相当する。なお、プロセス手順取得処理の具体的な処理の内容は、図10及び図11にて詳細を後述する。
プロセス手順取得処理で構築された階層構造は、一次データ、二次データ及びプロセスの対応関係のみが構築されている。そこで、管理データ分析部171は、この階層構造に対して更新時刻などの情報を付加する(ステップ913)。なお、具体的な処理の内容は、図12及び図13にて詳細を後述する。
管理データ分析部171は、構築した階層構造からプロセス分析処理を行う(ステップ914)。
プロセス分析処理は、指定されたテーブルが最新状態にあるか否かを判断する。管理データ分析部171は、指定されたテーブルが最新状態でないとき、加工プロセス関連情報から指定されたテーブルを最新状態に更新するために必要なプロセスを抽出する。さらに、抽出されたプロセスの処理時間等から指定されたテーブルを更新するために必要な処理時間を算出する。なお、具体的な処理の内容は、図14及び図15にて詳細を後述する。
プロセス分析が終了すると、管理データ分析部171は、分析結果となる更新情報を管理クライアント160に送信する。
管理クライアント160が更新情報を受信すると(ステップ903)、表示部162は、受信した更新情報を表示する(ステップ904)。さらに、ユーザ要求受付部161は、利用者からの部分更新依頼を受け付けると(ステップ905の結果が「YES」)、テーブルを最新状態に更新するために必要なプロセスの実行を依頼する(ステップ906)。
プロセスサーバ130は、管理クライアント160から実行するプロセス名を受信する(ステップ921)。プロセス実行管理部136は、指定されたプロセスを順次実行する(ステップ922)。なお、指定されたプロセスは、前述の図7に示したフローチャートに従って実行される。
図10は、指定されたテーブルのデータを生成するために必要なカラム及びプロセスをノードとする階層構造を構築するフローチャートである。図11は、図10のフローチャートに従って構築された階層構造である。
管理データ分析部171は、受信したテーブル「Table−A」を階層構造のルートノードとして管理サーバ170のメモリ181に記録する(ステップ1002)。受信したテーブルのすべてのカラムについて、ステップ1003以降の処理を実行する。
管理データ分析部171は、処理対象となるカラム(対象カラム)を出力先とするプロセス(対象プロセス)をプロセス手順テーブル176から抽出する(ステップ1003)。ここで、図2Bに示すように、「Table−A.01」は、プロセス「P1」の出力先となっている。したがって、管理データ分析部171は、「Table−A.01」を出力先とするプロセス「P1」をプロセス手順テーブル176から抽出する。
なお、図2Bには、理解を容易にするために、「Table−A」のカラム「01」のみが表示されているが、実際には複数のカラムが存在する。階層構造のルートノードは、受信したテーブル「Table−A」のすべてのカラムを含む。
管理データ分析部171は、対象プロセスを抽出すると(ステップ1004の結果が「Yes」)、対象カラムが親となるように階層構造に対象プロセスを追加し、メモリ181に記録する(ステップ1005)。したがって、図11に示すように、「Table−A」に対応するルートノード1201には、プロセス「P1」に対応するノード1202が追加される。なお、データ分析部171は、対象プロセスが存在しない場合には(ステップ1004の結果が「No」)、本処理を終了する。
さらに、管理データ分析部171は、対象プロセスの入力元カラムを取得する。そして、対象プロセスが親となるように入力元カラム203を階層構造に追加し、メモリ181に記録する(ステップ1006)。プロセス「P1」の入力元カラムは、図2Bに示すように、「Table−B.01」及び「Table−B.02」となっている。そこで、管理データ分析部171は、図11に示すように、ノード1202の下階層に「Table−B.01」及び「Table−B.02」に対応するノード1203及び1204を追加する(ステップ1006)。
管理データ分析部171は、追加した入力元カラムを対象カラムとして、ステップ1003〜1006の処理を対象プロセスが存在しなくなるまで繰り返し実行する。図11に示す階層構造では、対象カラムを「Table−B.01」及び「Table−B.02」とし、ステップ1003〜1006の処理を実行する。
管理データ分析部171は、対象カラムが「Table−B.01」のときには、プロセス「P2」及びカラム「Table−C.01」を抽出する。また、対象カラムが「Table−B.02」のときには、プロセス「P2」、カラム「Table−D.01」及び「Table−E.01」を抽出する。このようにして、ノード1205〜1209が階層構造に追加され、図11に示す階層構造が完成する。
階層構造は、出力データが上階層、入力データが下階層となる。また、各ノード間の接続は、データの出力先から入力元に方向付けられた有向枝となる。この段階では、階層構造は、木構造(有向木)となっている。さらに、階層構造のルートノードからリーフノードまでの経路は、テーブル又はカラムと、プロセスとが交互に配置される。また、リーフノードは、必ずカラムに対応する。
図12は、階層構造に更新情報を付加するフローチャートである。図13は、図11に示した階層構造に図12のフローチャートに従って更新情報を付加した階層構造である。
管理データ分析部171は、プロセス手順取得処理(ステップ912)によって構築された階層構造の各ノードに対して更新時刻等の情報を付加する。ノードがテーブル又はカラムに対応する場合にはテーブルの更新時刻を、プロセスに対応する場合にはプロセス履歴を付加する。
まず、管理データ分析部171は、メモリ181に記録された階層構造を取得する(ステップ1102)。
次に、管理データ分析部171は、ルートノード1201に対して更新情報1211を付加する。ルートノードは、管理サーバ170が受信した「Table−A」に対応する。管理データ分析部171は、テーブル管理テーブル178から「Table−A」の更新時刻402を抽出し、ルートノード1201の更新情報1211に記録する(ステップ1103)。
管理データ分析部171は、基準ノードにルートノード1201を設定する(ステップ1108A)。基準ノードとは、下階層を探索する基準となるノードである。基準ノードは、更新情報を付加する処理を実行している間、一時的にメモリ181に記録される。
管理データ分析部171は、基準ノードの下階層にノードが連結されている場合には(ステップ1104の結果が「Yes」)、下階層のノードに対応する情報を取得する(ステップ1105)。
図13を参照すると、この時点の基準ノードであるルートノード1201には、ノード1202が連結している。ノード1202は、プロセス「P1」が対応する。さらに、ノード1202には、ノード1203及びノード1204が連結している。ノード1203は、プロセス「P1」の入力元カラム「Table−B.01」が対応する。同じく、ノード1204は、プロセス「P1」の入力元カラム「Table−B.02」が対応する。
管理データ分析部171は、基準ノードの下階層のノードに対応するプロセスのプロセス履歴を記録する(ステップ1106)。そこで、管理データ分析部171は、プロセス「P1」のプロセス履歴をプロセス履歴テーブル177から取得する。そして、管理データ分析部171は、プロセス「P1」の更新情報1212をノード1202に記録する。記録する更新情報1212は、プロセス「P1」の開始時刻、終了時刻、通常開始時刻及び処理時間を含む。
さらに、管理データ分析部171は、入力元カラムが含まれるテーブルの更新時刻を、対応するノードに記録する(ステップ1107)。テーブルの更新時刻は、テーブル管理テーブル178から取得される。したがって、管理データ分析部171は、「Table−B.01」及び「Table−B.02」を含むテーブル「Table−B」の更新時刻を取得し、更新情報1213及び1214にそれぞれ記録する。
その後、管理データ分析部171は、基準ノードを入力元カラムとし(ステップ1108B)、ステップ1104〜1108Bの処理を実行する。そして、管理データ分析部171は、残りのノード(1205〜1209)に更新情報(1215〜1219)を付加するまでステップ1104〜1108Bの処理を繰り返す。すべてのノードに更新情報を付加し、基準ノードの下階層にノードが存在しなくなると(ステップ1104の結果が「No」)、本処理を終了する。
図14は、図13の加工プロセス関連情報を分析するフローチャートである。図15Aは、二次データを最新するために必要なプロセスによって構成された階層構造を示す。図15Bは、加工プロセス分析結果を示す。
管理データ分析部171は、更新情報取得処理(ステップ913)で更新情報の付加された階層構造を元にプロセス分析を実行する。管理データ分析部171は、二次データの生成後に更新された一次データを特定する。
管理データ分析部171は、まず、メモリ181に記録された階層構造を複製する(ステップ1302)。
次に、管理データ分析部171は、各ノードに記録された更新情報を比較する。ここで、出力先カラムの更新時刻は、必ずプロセスの完了時刻以降になる。一方、入力元カラムの更新時刻は、対象となるプロセスの開始時刻以降に別のプロセスによって変更される場合がある。
そこで、管理データ分析部171は、プロセスの開始時刻とプロセスの入力元カラムの更新時刻を比較する(ステップ1303)。管理データ分析部171は、ルートノード1202から順に下階層に向かって各ノードを比較する。
すべてのプロセスについて、入力元カラムの更新時刻よりもプロセスの開始時刻が新しい場合には、「Table−A」が最新状態であると判断できる(ステップ1303の結果が「Yes」)。このとき、管理データ分析部171は、加工プロセス分析結果の更新状況1411に「最新データです」と記録する(ステップ1310)。そして、管理データ分析部171は、図13の加工プロセス関連情報及び図15Bの加工プロセス分析結果を管理クライアント160に送信し(1311)、本処理を終了する。
一方、入力元カラムの更新時刻が開始時刻よりも新しいプロセスが存在する場合には(ステップ1303の結果が「No」)、プロセスの実行後に入力元カラムが更新されている。したがって、管理データ分析部171は、更新状況1411に「最新データではありません」と記録する(ステップ1304)。
ここで、図13を参照すると、ノード1209に対応するカラム「Table−D.01」の更新時刻は、このカラムを入力元とするプロセス「P3」の開始時刻よりも新しい。したがって、「Table−D.01」の更新結果は、「Table−B.02」に反映されていないことがわかる。さらに、「Table−B.02」に対応するノード1204より上階層のノードについても同様に反映されていないことがわかる。
なお、一次データの更新が反映されているか否かの判定は、各プロセスの入力元カラムが更新されてから出力先カラムが更新されるまでの経過時間と、各プロセス毎に予め定められた経過時間とを比較してもよい。この予め定められた経過時間を各プロセスの標準的な処理時間とすると、入力元カラムが更新されてからこの標準的な処理時間を経過する前に出力先カラムが更新された場合には、プロセス実行後に入力元カラムが更新されたと判断することができる。また、この予め定められた経過時間を「0」に設定することで、利用者が必要に応じて随時更新することにしてもよい。
管理データ分析部171は、一次データの更新が反映されているカラム及び実行する必要のないプロセスを階層構造から削除する(ステップ1305)。
具体的には、プロセス「P1」の入力元カラム「Table−B.01」は、更新時刻がプロセス「P1」の開始時刻よりも古い。さらに、「Table−B.01」を出力先カラムとするプロセス「P2」の開始時刻は、入力元カラム「Table−C.01」の更新時刻よりも新しい。したがって、「Table−B.01」は、最新となっており、更新する必要はない。そこで、図13に示すように、プロセス「P1」とカラム「Table−B.01」との連結する枝を切断し、下層のノードを削除する。また、プロセス「P3」の入力元カラム「Table−E.01」についても、同様にノード1209を削除する。
このようにして、実行が必要なプロセスと入力元カラム及び出力先カラムのみを構成要素とする階層構造が構築される(図15A)。ここで、同一プロセスを示すノードが複数存在する場合には、これらのノードをマージする(ステップ1306)。この結果、階層構造は木構造ではなく循環路を持たない有向グラフとなる。
図15Aは、以上の処理によって構築された分析済の階層構造である。管理データ分析部171は、図15Aに示された分析済階層構造を元に、加工プロセス分析結果を生成する。
管理データ分析部171は、分析済階層構造に含まれるプロセスを列挙し、最新用プロセス1412に記録する(ステップ1307)。
管理データ分析部171は、参照するテーブルを最新状態に更新するための所要時間を推定し、部分更新所要時間1413に記録する(ステップ1308)。具体的には、ルートノード1201からリーフノード1208までの経路について、通過するノード1202、1204、1206のうちプロセスに対応するノード1202、1206の処理時間を合計して所要時間を推定する。したがって、プロセス「P1」の処理時間「0:30」とプロセス「P3」の処理時間「2:00」とを合計した時間「2:30」が、部分更新所要時間1413に記録される。
管理データ分析部171は、定期的に実行されるバッチ処理によって参照する二次データを最新に更新する時刻を次回更新予定1414に記録する(ステップ1309)。次回更新予定時刻は、ルートノード1202と連結するプロセスの通常開始時刻に処理時間を加算した時刻となる。ルートノード1202と連結するプロセスが複数存在する場合には、該当する各プロセスの通常開始時刻に処理時間を加算した時刻のうち、最も遅い時刻が次回更新予定時刻となる。
以上の処理が終了すると、管理データ分析部171は、図13の加工プロセス関連情報及び図15Bの加工プロセス分析結果を管理クライアント160に送信し(ステップ1311)、本処理を終了する。
図16は、「Table−A」の更新情報を表示する画面を示す図である。画面左側には、「Table−A」の加工プロセス関連情報1502が表示される。また、画面右側には、「Table−A」の加工プロセス分析結果1503が表示される。
管理クライアント160の表示部162は、管理サーバ170の管理データ分析部171から加工プロセス関連情報(図13)と加工プロセス分析結果(図15B)を受信し、出力部165に出力する。さらに、管理クライアント160より現在時刻を取得し、画面右上に現在時刻1501を表示する。
利用者は、加工プロセス関連情報1502によって、指定したテーブルに格納されるデータを生成するプロセス及びカラムを参照することができる。このとき、表示部162は、加工プロセス関連情報1502において、更新対象のカラムと更新対象でないカラムを区別して表示してもよい。こうすることによって、利用者は、指定したテーブルの更新に伴って影響を受ける二次データを認識することができる。
また、利用者は、加工プロセス分析結果1503の更新状況1511を参照することによって、指定したテーブルが最新状態であるか否かを確認することができる。表示部162は、指定したテーブルが最新状態でない場合には、画面右下に部分更新依頼ボタン1504を表示する。
利用者は、指定したテーブルを最新状態に更新するために実行するプロセス1512、部分更新所要時間1513及び次回の更新予定時刻1514を参照し、部分更新を実行するか否かを判断することができる。
利用者は、部分更新依頼ボタン1504を押下すれば(ステップ905の結果が「YES」)、部分更新を実行し、指定したテーブルを最新状態に更新することができる(ステップ906)。
さらに、部分更新は、プロセス分析によって抽出されたプロセスのみを実行するのではなく、予め指定されたプロセスを実行してもよい。予め指定されたプロセスとは、例えば、更新された一次データを基に二次データを生成するプロセスについて、密接に関連するプロセスをグループ化したものとすることができる。このようにプロセスをグループ化して実行することによって、密接に関連する二次データを一括して更新することができる。
図16の部分更新依頼ボタン1504を押下すると、表示部162は、一旦画面を消去し、指定したテーブルの内容を参照するテーブル参照画面800を表示する。図17A及び図17Bは、表示されたテーブル参照画面800を示す図である。
図17Aは、部分更新依頼ボタン1504を押下した直後に表示されるテーブル参照画面800を示す。表示部162は、部分更新がなされた旨及び更新完了の予定時刻を領域1711に表示する。更新完了の予定時刻は、図16の現在時刻1501に加工プロセス分析結果1503の部分更新所要時間1513を加算することによって算出される。このとき、バックグラウンドでは、図7に示すフローチャートに従って、指定されたプロセスが順次実行される。
その後、部分更新が完了してからテーブル参照画面800を表示させると、図17Bに示すように、更新後の「Table−A」の内容が表示される。
図17Cは、「Table−A」の更新情報を表示する画面である。図17Bの更新情報ボタン803を押下すると、管理サーバ170において、図9に示すフローチャートに従って処理が実行される。そして、管理クライアント160は、管理サーバ170から部分更新完了後の更新情報を受信して、図17Cに示す画面を表示する。
図17Cは、現在時刻1601に示すように、部分更新後(時刻17:30)の更新情報である。図16の時点(時刻15:00)と比較すると、加工プロセス関連情報におけるカラムとプロセスの更新情報(1611〜1616)及び加工プロセス分析結果の各項目(1621〜1624)が更新されている。利用者は、更新状況1621に示す「最新情報です」との情報から、図17Bで指定したテーブルが最新状態であることがわかる。
本実施の形態によれば、管理サーバ160は、指定したテーブルに格納されるデータを生成するプロセス及びデータの関係を表した階層構造を構築する。管理サーバ160は、取得した階層構造を元にプロセス分析を実行し、指定したテーブルの更新状態を確認することができる。さらに、指定したテーブルの次回更新時刻や最新状態に更新するために必要な推定所要時間が表示されるため、利用者はこれらの情報を元に更新を実行するか否かを判断することができる。
また、プロセス分析914によって指定したテーブルを最新状態に更新するために必要なプロセスが明らかにされているため、管理サーバ160は、最小限のプロセスをプロセスサーバ130に実行させればよい。このようにして、管理サーバ160は、指定したテーブルを最新状態に短時間で更新することができる。また、実行するプロセスを最小限に抑えることができるため、サーバのリソース消費量を低減させることができる。さらに、本実施の形態のように、データを格納する装置を分散して配置している場合には、ネットワークのトラフィック量を低減することができる。
一方、本実施の形態では、参照する二次データから関連するプロセス及び一次データを特定していたが、入力した一次データから関連する二次データを特定することも可能である。
概要を説明すると、一次データに対応するカラムを入力元カラムとするプロセスをプロセス手順テーブル176から取得する。さらに、取得した出力先カラムを入力元カラムとし、同様にプロセスを取得することを繰り返すことによって、一次データをルートノードとした階層構造を構築することができる。
こうして得られた階層構造を参照すると、一次データを変更することによって影響される二次データを容易に確認できる。
なお、各ノードの更新情報は、図12のフローチャートを用いることによって付加することができる。そして、更新情報が付加された階層構造を分析し、ルートノードからリーフノードまでの各経路の所要時間を計算することによって、二次データの更新に必要な時間を取得することができる。
さらに、本実施の形態では、複数のサーバ及びクライアントによって構成されているが、スタンドアロン環境でも適用することができる。
また、在庫管理システム以外のシステムにも適用可能である。例えば、工場の生産管理システムにも適用することができる。最終製品は、複数の材料を加工又は組み合わせて中間品を製造し、さらに中間品を組み合わせることによって完成するものとする。このとき、一次データは材料又は中間品、二次データは中間品又は最終製品に対応させることができる。そして、材料原価の変更に伴って最終製品の原価を再計算する場合には、本発明を適用することによって、原価が変更された材料を使用する中間品及び最終製品に対してのみ原価計算のためのプロセスを実行すればよい。
本発明の実施の形態のシステム構成を示す図である。 本実施の形態の一次情報クライアントのシステム構成を示す図である。 本実施の形態の一次情報サーバのシステム構成を示す図である。 本実施の形態のプロセスクライアントのシステム構成を示す図である。 本実施の形態のプロセスサーバのシステム構成を示す図である。 本実施の形態の二次情報サーバのシステム構成を示す図である。 本実施の形態の管理クライアントのシステム構成を示す図である。 本実施の形態の管理サーバのシステム構成図である。 本実施の形態のプロセス手順テーブルの初期状態を示す図である。 本実施の形態のプロセス手順テーブルの初期状態からデータを追加した状態を示す図である。 本実施の形態のプロセス履歴テーブルの初期状態を示す図である。 本実施の形態のプロセス履歴テーブルのプロセス編集終了時の状態を示す図である。 本実施の形態のプロセス履歴テーブルのプロセス実行開始時の状態を示す図である。 本実施の形態のプロセス履歴テーブルのプロセス実行終了時の状態を示す図である。 本実施の形態のテーブル管理テーブルの初期状態を示す図である。 本実施の形態のテーブル管理テーブルのテーブル追加時の状態を示す図である。 本実施の形態のテーブル管理テーブルのテーブルの更新時の状態を示す図である。 本実施の形態のプロセス編集のフローチャートである。 本実施の形態の一次データ更新のフローチャートである。 本実施の形態のプロセス実行のフローチャートである。 本実施の形態のテーブル参照画面を示す図である。 本実施の形態のテーブルの更新情報の表示及び部分更新依頼のフローチャートである。 本実施の形態のプロセス手順取得処理のフローチャートである。 本実施の形態のプロセス手順取得処理完了後のメモリに記憶された階層構造を示す図である。 本実施の形態の更新情報取得処理のフローチャートである。 本実施の形態の更新情報取得処理完了後のメモリに記憶された階層構造を示す図である。 本実施の形態のプロセス分析処理のフローチャートである。 本実施の形態のプロセス分析処理によって構築された階層構造を示す図である。 本実施の形態のプロセス分析処理の分析結果を示す図である。 本実施の形態の更新情報画面を示す図である。 本実施の形態の部分更新依頼処理実行直後のテーブル参照画面を示す図である。 本実施の形態の部分更新依頼処理完了後のテーブル参照画面を示す図である。 本実施の形態の部分更新依頼処理完了後の更新情報を示す図である。
符号の説明
110 一次情報クライアント
111 一次データ更新部
120 プロセスクライアント
121 プロセス編集部
130 プロセスサーバ
131 プロセス作成部
132 プロセス実行管理部
133 プロセス
134 データ抽出部
135 データ加工部
136 データ格納部
137 プロセス記憶部
140 一次情報サーバ
141 一次データ管理部
142 外部入力データ
150 二次情報サーバ
151 二次データ管理部
152 プロセス加工データ
160 管理クライアント
161 ユーザ要求受付部
162 表示部
170 管理サーバ
171 管理データ分析部
172 プロセス手順管理部
173 プロセス履歴管理部
174 テーブル管理部
176 プロセス手順テーブル
177 プロセス履歴テーブル
178 テーブル管理テーブル
185 プロセス手順取得部
186 更新情報付加部
187 テーブル管理部
201 プロセス手順テーブルのプロセス名カラム
202 プロセス手順テーブルの出力先カラム
203 プロセス手順テーブルの入力元カラム
301 プロセス履歴テーブルのプロセス名カラム
302 プロセス履歴テーブルの開始時刻カラム
303 プロセス履歴テーブルの終了時刻カラム
304 プロセス履歴テーブルの通常開始時刻カラム
305 プロセス履歴テーブルの処理時間カラム
401 テーブル管理テーブルのテーブル名カラム
402 テーブル管理テーブルの更新時刻カラム

Claims (18)

  1. プロセッサと、前記プロセッサからアクセス可能なメモリと、記憶装置と、入力部と、出力部と、を備えるデータ処理システムにおける、一次データを基に、データの生成手順が予め定義されたプログラムによって、要求された二次データを生成するデータ処理方法であって、
    前記プロセッサは、前記プログラムを実行し、
    前記メモリは、前記プログラムを格納し、
    前記記憶装置は、前記一次データと、前記二次データと、前記一次データの更新時刻及び前記二次データの更新時刻を含むデータ更新情報とを格納し、
    前記プロセッサは、前記二次データの取得を要求されたときに、前記要求された二次データを生成するために使用する一次データ及び二次データのデータ更新情報と、前記要求された二次データのデータ更新情報との関係が、所定の条件を満たさないとき、前記要求された二次データを生成するプログラムを実行することを特徴とするデータ処理方法。
  2. 前記所定の条件は、前記要求された二次データを生成するために使用する一次データ及び二次データの生成時刻が前記要求された二次データを生成するプログラムの開始時刻よりも新しいことであることを特徴とする請求項1に記載のデータ処理方法。
  3. 前記所定の条件は、前記一次データが生成された時刻から前記二次データが生成された時刻までの経過時間が予め定められた経過時間を超えていないという条件であることを特徴とする請求項1に記載のデータ処理方法。
  4. 前記プロセッサは、前記一次データと前記二次データとを対応付けて前記出力部へ出力することを特徴とする請求項1に記載のデータ処理方法。
  5. 前記出力される前記一次データと二次データは、前記二次データを生成するプログラムからみて二次データを上階層、一次データを下階層とする階層構造であり、
    前記階層構造は、前記一次データ、前記二次データ及び前記プログラムに対応するノードと、前記ノードを連結し、上階層から下階層に方向付けられた有向枝とからなる有向グラフによって表現されることを特徴とする請求項4に記載のデータ処理方法。
  6. 前記記憶装置は、前記プログラムの開始時刻、終了時刻、通常開始時刻及び処理時間を含むプロセス履歴を格納し、
    前記プロセッサは、前記一次データ及び前記二次データが更新されたときには、前記データ更新情報に更新時刻を記録し、前記プログラムが実行されたときには、前記プロセス履歴に開始時刻及び終了時刻を記録し、
    前記出力部は、出力要求に応えて前記一次データと、前記二次データの対応付けとともに前記データ更新情報及び前記プロセス履歴を出力することを特徴とする請求項4に記載のデータ処理方法。
  7. 前記プロセッサは、前記要求された二次データが最新であるか否かを判定し、
    前記出力部は、前記要求された二次データが最新であるか否かの判定結果を出力することを特徴とする請求項1に記載のデータ処理方法。
  8. 前記出力部は、前記要求された二次データが最新でない場合、前記要求された二次データの更新予定時刻を出力することを特徴とする請求項7に記載のデータ処理方法。
  9. 前記プロセッサは、前記要求された二次データが最新でない場合、最新の二次データに更新するために必要な時間を算出し、
    前記出力部は、前記算出された最新の二次データに更新するために必要な時間を出力することを特徴とする請求項7に記載のデータ処理方法。
  10. 前記プロセッサは、前記要求された二次データが最新でない場合、前記要求された二次データを更新するために必要なプログラムを特定し、前記特定されたプログラムを実行することを特徴とする請求項7に記載のデータ処理方法。
  11. 前記出力部は、前記必要なプログラムによって更新される二次データを含む情報を出力することを特徴とする請求項10に記載のデータ処理方法。
  12. 前記プロセッサは、前記要求された二次データが最新でない場合、予め指定されたプログラムを実行し、前記予め指定されたプログラムによって更新された二次データを含む情報を出力することを特徴とする請求項7に記載のデータ処理方法。
  13. 一次データを基に、データの生成手順が予め定義されたプログラムによって、要求された二次データを生成する二次データ生成システムであって、
    ネットワークによって接続された一次情報クライアント、管理クライアント、管理サーバ、及びプロセスサーバを備え、
    前記一次情報クライアントは、前記一次データを入力及び更新する一次データ更新部を備え、
    前記管理クライアントは、利用者からの二次データの更新要求を受け付け、前記管理サーバに送信する要求受付部を備え、
    前記管理サーバは、前記管理クライアントから送信された前記更新要求を受信し、前記更新要求を受けた二次データを更新するために必要なプログラムを特定し、前記プロセスサーバに前記必要プログラムの実行指示を送信するプロセス分析部を備え、
    前記プロセスサーバは、複数の前記プログラムを記憶するプロセス記憶部と、前記プログラムを実行するプロセス実行管理部とを備えることを特徴とする二次データ生成システム。
  14. 前記プロセス分析部は、前記一次データが更新された場合、前記更新された一次データを基に生成される二次データを特定することを特徴とする請求項13に記載のデータ処理システム。
  15. 前記プロセス分析部は、前記一次データが更新された場合、前記更新された一次データ又は前記更新された一次データから生成された二次データを基に二次データを生成するプログラムを特定することを特徴とする請求項13に記載のデータ処理システム。
  16. 前記プロセス分析部は、前記一次データが更新された場合、前記更新された一次データを基に生成される二次データの更新時刻を特定することを特徴とする請求項13に記載のデータ処理システム。
  17. 前記プロセス分析部は、前記一次データが更新された場合、前記更新された一次データ又は前記更新された一次データから生成された二次データを基に二次データを生成するプログラムを特定し、前記二次データを更新するために必要なプログラムを実行することを特徴とする請求項13に記載のデータ処理システム。
  18. 一次データを基に、データの生成手順が予め定義されたプログラムによって、要求された二次データを生成するプログラムであって、
    前記一次データを読み込む手順と、
    前記一次データの更新時刻を含む一次データ更新情報を格納する手順と、
    前記予め定義されたプログラムに基づいて二次データを生成する手順と、
    前記二次データの更新時刻を含む二次データ更新情報を格納する手順と、
    前記二次データの取得要求を受け付ける手順と、
    前記二次データの取得要求を受け付けたとき、前記要求された二次データを生成するために必要な前記一次データの前記一次データ更新情報及び前記二次データの前記二次データ更新情報を読み込んで、前記要求された二次データのデータ更新情報との関係を判定する手順と、
    前記判定結果が所定の条件を満たさないとき、前記要求された二次データを生成する予め定義されたプログラムを実行する手順とを計算機に実行させることを特徴とするデータ処理プログラム。
JP2006074497A 2006-03-17 2006-03-17 データ処理方法、データ処理システム及びデータ処理プログラム Expired - Fee Related JP4808524B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006074497A JP4808524B2 (ja) 2006-03-17 2006-03-17 データ処理方法、データ処理システム及びデータ処理プログラム
US11/480,972 US7653662B2 (en) 2006-03-17 2006-07-06 Method and system for data processing with data distribution managing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006074497A JP4808524B2 (ja) 2006-03-17 2006-03-17 データ処理方法、データ処理システム及びデータ処理プログラム

Publications (2)

Publication Number Publication Date
JP2007249772A true JP2007249772A (ja) 2007-09-27
JP4808524B2 JP4808524B2 (ja) 2011-11-02

Family

ID=38519308

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006074497A Expired - Fee Related JP4808524B2 (ja) 2006-03-17 2006-03-17 データ処理方法、データ処理システム及びデータ処理プログラム

Country Status (2)

Country Link
US (1) US7653662B2 (ja)
JP (1) JP4808524B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016045594A (ja) * 2014-08-20 2016-04-04 株式会社東芝 データ処理装置、データ処理方法及びデータ処理プログラム

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8065365B2 (en) * 2007-05-02 2011-11-22 Oracle International Corporation Grouping event notifications in a database system
US8448186B2 (en) * 2007-07-13 2013-05-21 Oracle International Corporation Parallel event processing in a database system
US20240054099A1 (en) * 2022-08-12 2024-02-15 SambaNova Systems, Inc. Cluster-Based Placement and Routing of Memory Units and Compute Units in a Reconfigurable Computing Grid

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01181125A (ja) * 1988-01-13 1989-07-19 Nippon Steel Corp 関係型データベース装置
JPH08328929A (ja) * 1995-06-06 1996-12-13 Hitachi Ltd データベース分割管理システム
JP2000181861A (ja) * 1998-12-21 2000-06-30 Hitachi Ltd アプリケーションサーバ連携装置
JP2001331354A (ja) * 2000-05-18 2001-11-30 Hitachi Ltd データ流通管理方法およびシステム

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5157663A (en) * 1990-09-24 1992-10-20 Novell, Inc. Fault tolerant computer system
US5633999A (en) * 1990-11-07 1997-05-27 Nonstop Networks Limited Workstation-implemented data storage re-routing for server fault-tolerance on computer networks
CA2065473C (en) * 1991-04-25 1999-08-10 Kouichi Shibao Knowledge base management system for an information reasoning apparatus
JPH05260134A (ja) * 1992-03-12 1993-10-08 Fujitsu Ltd 伝送装置の監視システム
US5787414A (en) * 1993-06-03 1998-07-28 Kabushiki Kaisha Toshiba Data retrieval system using secondary information of primary data to be retrieved as retrieval key
US5537533A (en) * 1994-08-11 1996-07-16 Miralink Corporation System and method for remote mirroring of digital data from a primary network server to a remote network server
US5742829A (en) * 1995-03-10 1998-04-21 Microsoft Corporation Automatic software installation on heterogeneous networked client computer systems
US5852724A (en) * 1996-06-18 1998-12-22 Veritas Software Corp. System and method for "N" primary servers to fail over to "1" secondary server
JP3901806B2 (ja) * 1997-09-25 2007-04-04 富士通株式会社 情報管理システム及び二次サーバ
US20040205473A1 (en) * 2000-01-27 2004-10-14 Gwyn Fisher Method and system for implementing an enterprise information portal
US6725446B1 (en) * 2000-11-01 2004-04-20 Digital Integrator, Inc. Information distribution method and system
US7383264B2 (en) * 2003-03-27 2008-06-03 Hitachi, Ltd. Data control method for duplicating data between computer systems
US7827262B2 (en) * 2005-07-14 2010-11-02 Cisco Technology, Inc. Approach for managing state information by a group of servers that services a group of clients

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01181125A (ja) * 1988-01-13 1989-07-19 Nippon Steel Corp 関係型データベース装置
JPH08328929A (ja) * 1995-06-06 1996-12-13 Hitachi Ltd データベース分割管理システム
JP2000181861A (ja) * 1998-12-21 2000-06-30 Hitachi Ltd アプリケーションサーバ連携装置
JP2001331354A (ja) * 2000-05-18 2001-11-30 Hitachi Ltd データ流通管理方法およびシステム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016045594A (ja) * 2014-08-20 2016-04-04 株式会社東芝 データ処理装置、データ処理方法及びデータ処理プログラム
US10073657B2 (en) 2014-08-20 2018-09-11 Toshiba Memory Corporation Data processing apparatus, data processing method, and computer program product, and entry processing apparatus

Also Published As

Publication number Publication date
US20070220215A1 (en) 2007-09-20
JP4808524B2 (ja) 2011-11-02
US7653662B2 (en) 2010-01-26

Similar Documents

Publication Publication Date Title
JP5775255B2 (ja) 統合設計アプリケーション
JP6319271B2 (ja) イベント解析装置、イベント解析システム、イベント解析方法、およびイベント解析プログラム
JP4808524B2 (ja) データ処理方法、データ処理システム及びデータ処理プログラム
US20090198362A1 (en) Apparatus and method for handling orders
CN103279347B (zh) 一种通用的软件产品线领域模型与应用模型的同步方法
JP2009157690A (ja) 製造工程管理装置、製造工程管理方法、そのプログラムおよび記憶媒体
JP2018077822A (ja) 生産支援システム、及び生産支援方法
JP2008134840A (ja) 情報処理装置およびその方法
US20190362283A1 (en) Working equipment specification support apparatus, working equipment specification support method, and working equipment specification support system
JP5255796B2 (ja) 運用管理サポートシステム、プログラム
JP5978836B2 (ja) ワークフロー抽出プログラム、ワークフロー抽出方法、及びワークフロー抽出装置
JP5892006B2 (ja) 分析プログラム、分析方法及び分析装置
JP2001265760A (ja) 文書履歴管理装置および文書履歴管理方法
JP6007320B2 (ja) 計算機、関連性算出方法及び記憶媒体
JP2011048459A (ja) プロジェクト立案支援システムおよびプロジェクト立案支援方法
JP7368404B2 (ja) 生産計画立案支援装置および方法
JP2007087276A (ja) 部品情報提供装置
JP2010102618A (ja) タグ付テキスト管理システム、装置、方法、プログラム、記録媒体
TWI820597B (zh) 計畫製定輔助系統及其方法
JP2011070369A (ja) データベース統合装置およびデータベース統合方法
JP2005316778A (ja) プラント監視制御装置
JP2009003780A (ja) モジュール管理方法、モジュール管理装置、モジュール管理システムおよびモジュール管理プログラム
JP2008059196A (ja) プロセス管理方法及びプロセス管理システム
JP2006251979A (ja) 可変項目検索システム
JP4352941B2 (ja) 設計業務支援装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080711

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110421

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110510

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110701

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

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

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

Free format text: PAYMENT UNTIL: 20140826

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4808524

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees