説明

データ集計装置およびデータ集計プログラム

【課題】 本発明は、ランダムな時刻に送信されてくるデータを格納しておき、期間の指定を受けてその期間内のデータが集計された集計データを算出するデータ集計装置等に関し、期間の指定を受けてその期間内の集計データを短時間に算出する。
【解決手段】 集計データを求めるための期間の指定を待たずに、期間の指定の単位となる所定の第1の期間ごと(1日間ごと)の集計データが、複数の第1の期間からなる所定の第2の期間(1カ月間)に至るまで、第1の期間を重ねるごとに順次累計された累計データを作成しておく累計データ作成部と、集計データを算出するための期間の指定を受けて、累計データ作成部で作成されている累計データに基づいて、指定された期間内の集計データを作成する期間集計データ作成部とを備えた。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ランダムな時刻に送信されてくるデータを格納しておき、期間の指定を受けてその期間内のデータが集計された集計データを算出するデータ集計装置、および、プログラムを実行する情報処理装置内で実行され、その情報処理装置を上記のデータ集計装置として動作させるデータ集計プログラムに関する。
【背景技術】
【0002】
例えば小売業における売上データ(POSデータ)などを取り扱うシステムでは、日々発生する多数のデータをデータベース上に取り込んでおき、ある期間内の売上の集計データが欲しいときはその期間を指定してデータベースをアクセスしその期間内の集計データを入手することが行なわれている(例えば、特許文献1参照)。
【0003】
このようなシステムにおける集計データを算出する方法として、従来大別して以下の2つの方法が知られている。
【0004】
(a)期間が指定されてから直接にそのデータベースをアクセスしてその期間内のデータを集計していく方法
(b)その日一日が終わるごとにその日一日分の集計データを作成しておき、期間の指定を受けると、その期間内の一日一日の集計データを集めてきてさらに集計することによりその期間内の集計データを算出する方法
ところが、上述の小売業におけるPOSデータなどは、大規模チェーン店などでは日々数百万件ものPOSデータが発生し、したがって上記(a)の方法では期間を指定から集計結果を得るまでに時間がかかり過ぎ、厖大な量のデータを取り扱うシステムには本質的に不向きである。
【0005】
また、上記(b)の方法は、指定された期間内の日数分集計すればよいため上記(a)よりははるかに短時間で集計を完了させることができるものの、指定された期間が長い場合、例えば6ヵ月分の期間を指定した場合などはやはり集計に時間がかかり過ぎるという性能上の問題が発生することになる。特に、商品アイテム数や店舗数など、分析の切り口となるカテゴリ数が増々増える傾向にあり、指定された期間だけの問題ではなくカテゴリ数が増えることによってもその分集計に時間がかかることになり、その分性能が劣化していくという問題がある。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開平11−250132号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
本発明は、上記事情に鑑み、期間の指定を受けてその期間内の集計データを短時間に算出することができるデータ集計装置およびデータ集計プログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
本件のデータ集計装置は、期間の指定を受けてその期間内のデータが集計された集計データを算出するデータ集計装置であって、
期間指定の単位となる所定の第1の期間ごとの集計データを複数の第1の期間からなる所定の第2の期間に至るまで順次累計することで、第2の期間中の全てを累計した総累計データを含む当該第2の期間中に含まれる第1の期間の集計データを順次累計する毎に得た累計データ群を作成することを繰り返すことにより、各第2の期間毎に得た複数の累計データ群を作成して保存する累計データ作成部と、
集計データを算出するための期間の指定を受け、累計データ作成部にて作成保存された複数の累計データ群にもとづき、
当該指定期間が一の第2の期間内に属するときは、当該第2の期間の累計データ群中の当該指定期間の最後の第1の期間の集計データまでを累計した累計データから当該指定期間の最初の第1の期間の一つ前の第1の期間の集計データまでを累計した累計データを減算したデータを集計データとして作成するとともに、
当該指定期間が異なる第2の期間に跨がるときには、当該指定期間の最初の第1の期間が含まれる第2の期間の累計データ群から得た当該最初の第1の期間の一つ前まで第1の期間の集計データまでを累計した累計データから当該第2の期間の総累計データを減算して得たデータと、当該指定期間の最後の第1の期間の集計データが含まれる累計データ群から得た当該最後の第1の期間までを累計した累計データと、を加算したデータを使用して集計データを作成する期間集計データ作成部と、
を備えたことを特徴とする。
【0009】
ここで、本件のデータ集計装置において、上記第1の期間が1日間であり、上記第2の期間が1ヵ月間であって、累計データ作成部が、その月の初日の集計データからなる第1の累計データ、その月の初日と2日目の集計データの和からなる第2の累計データ、……、および、その月全体の集計データの和からなる総累計データを作成するものであってもよい。
【0010】
また、本件のデータ集計プログラムは、プログラムを実行する情報処理装置内で実行され、その情報処理装置を、送信されてくるデータを順次格納しておき、期間の指定を受けてその期間内のデータが集計された集計データを算出するデータ集計装置として動作させるデータ集計プログラムであって、
上記情報処理装置を、
期間指定の単位となる所定の第1の期間ごとの集計データを複数の第1の期間からなる所定の第2の期間に至るまで順次累計することで、第2の期間中の全てを累計した総累計データを含む当該第2の期間中に含まれる第1の期間の集計データを順次累計する毎に得た累計データ群を作成することを繰り返すことにより、各第2の期間毎に得た複数の累計データ群を作成して保存する累計データ作成部と、
集計データを算出するための期間の指定を受け、累計データ作成部にて作成保存された複数の累計データ群にもとづき、
当該指定期間が一の第2の期間内に属するときは、当該第2の期間の累計データ群中の当該指定期間の最後の第1の期間の集計データまでを累計した累計データから当該指定期間の最初の第1の期間の一つ前の第1の期間の集計データまでを累計した累計データを減算したデータを集計データとして作成するとともに、
当該指定期間が異なる第2の期間に跨がるときには、当該指定期間の最初の第1の期間が含まれる第2の期間の累計データ群から得た当該最初の第1の期間の一つ前まで第1の期間の集計データまでを累計した累計データから当該第2の期間の総累計データを減算して得たデータと、当該指定期間の最後の第1の期間の集計データが含まれる累計データ群から得た当該最後の第1の期間までを累計した累計データと、を加算したデータを使用して集計データを作成する期間集計データ作成部と、
を備えたデータ集計装置として動作させることを特徴とする。
【0011】
ここで、本件のデータ集計プログラムにおいても、上記第1の期間が1日間であり、上記第2の期間が1ヵ月間であって、累計データ作成部が、その月の初日の集計データからなる第1の累計データ、その月の初日と2日目の集計データの和からなる第2の累計データ、……、および、その月全体の集計データの和からなる総累計データを作成するものであってもよい。
【発明の効果】
【0012】
本発明によれば、集計データ算出のための期間の指定とは無関係にあらかじめ上記の累計データを作成しておくため、期間の指定を受けた後、極めて短時間に、その指定された期間の集計データを作成することができる。
【図面の簡単な説明】
【0013】
【図1】本発明のデータ集計装置を含むシステムの全体構成図である。
【図2】図1に示すデータ集計装置を構成するコンピュータシステムのハードウェア構成図である。
【図3】図1に示す累計データ作成部で作成される累計データ、および期間集計データ作成部で作成される集計データの概念図である。
【図4】図1に示す情報DBの内容を示す図である。
【図5】図4に示す情報DBの内容から作成した2004年8月4日の集計ファイルである。
【図6】前日(2004年8月3日)の累計ファイルを示す図である。
【図7】当日(2004年8月4日)の累計ファイルを示す図である。
【図8】累計データ作成部の処理を示すフローチャートである。
【図9】問合せ端末における表示画面を示す図である。
【図10】期間集計データ作成部の処理を示すフローチャートである。
【図11】POSシステムから過去の売上データの訂正があったときの処理を示す図である。
【発明を実施するための形態】
【0014】
以下、本発明の実施形態について説明する。
【0015】
図1は、本発明のデータ集計装置を含むシステムの全体構成図である。
【0016】
この図1の中央に示したデータ集計装置100は、後述する図2に概略構成を示すコンピュータシステムで構成されており、通信回線網600を介して、多数の店舗に設置されたPOSシステム201,202,…,20nに接続されるとともに、同じく通信回線網600を介して複数の問合せ端末301,302,…,30mに接続されている。これらPOSシステム201,202,…,20nおよび問合せ端末301,302,…,30mも、基本構成はそれぞれ図2と同様のコンピュータシステムで構成されている。ただしPOSシステム201,202,…,20nは、例えばキーボードは汎用のコンピュータ用のキーボードとは異なりPOSシステムに特化されたキーボードであり、また、商品に付されたバーコードを読み取るためのバーコードリーダが取り付けられているなど、POSシステムとして特化された機能となっている。また、問合せ端末301,302,…,30mは、ここでは機能に着目してPOSシステムとは別に示したが、POSシステムと同一の装置であってもよく、あるいは店舗からは離れて管理センタ等に設置されたコンピュータシステムであってもよい。
【0017】
ここでの主題はデータ集計装置100であるので、POSシステム201,202,…,20nおよび問合せ端末301,302,…,30mについてのこれ以上の説明は省略する。
【0018】
図2は、図1に示すデータ集計装置100を構成するコンピュータシステムのハードウェア構成図である。
【0019】
このハードウェア構成図には、CPU111、RAM112、ハードディスクコントローラ113、FDドライブ114、CD/DVDドライブ115、マウスコントローラ116、キーボードコントローラ117、ディスプレイコントローラ118、および通信用ボード119が示されており、それらはバス110で相互に接続されている。
【0020】
FDドライブ114、CD/DVDドライブ115は、それぞれ、FD710、CDあるいはDVD700が装填されて、装填されたFD710、CDあるいはDVD700をアクセスするものである。通信用ボード119は通信回線600に接続される。
【0021】
また、図2には、ハードディスクコントローラ113によりアクセスされるハードディスク120、マウスコントローラ116により制御されるマウス104、キーボードコントローラ117により制御されるキーボード103、およびディスプレイコントローラ118により制御されるディスプレイ102も示されている。
【0022】
図1に戻って説明を続ける。
【0023】
図1に示すデータ集計装置100は、図2に示すハードウェア資源を利用してそのコンピュータシステム内に構築されたデータ集計装置であり、ここでは、以下のような処理が行なわれる。
【0024】
多数のPOSシステム201,202,…,20nからは、ランダムな時刻に通信回線網600を経由して売上データが送信されてくる。データ集計装置100では、それらの売上データを受信するたびに基幹DB(データベース)10に順次蓄積する。この売上データは、後述する図4の1レコード分(横一列分)の情報、すなわち、その売上データを送信してきた店舗の店舗名、商品名、…、売上年月日、売上額、売上個数等の情報を有するものである。
【0025】
基幹DB10にはランダムな時刻ではあるが間断なく売上データが蓄積されるため、累計データ作成のためにその日一日の終了時(24時)にその日一日分の売上データが情報DB20に移され、累計データ作成部30は、その情報DB20の内容を参照しながら累計データを作成して、累計データファイル40に格納する。基幹DB10から情報DB20に一日分の売上データを移して累計データを作成し累計データファイルに格納するまでの処理は、一日に一回、ランダムに送信されてくる売上データを基幹DB10に蓄積する処理のバックグラウンド処理として実行される。
【0026】
問合せ端末301,302,…,30mのいずれかから通信回線網600を介して期間を指定しての集計データ作成要求を受けると、期間集計データ作成部50は、累計データファイル40を参照してその指定された期間の集計データを作成し集計データファイル60に格納する。その後このデータ集計装置100はその集計データ作成要求元の問合せ端末に向けて、その集計データファイル60を送信する。
【0027】
以上が、このデータ集計装置100における処理の全体の流れである。ここで、基幹DB10、情報DB20、累計データファイル40、および集計データファイル60は、図2に示すハードディスク120内に構築されるデータベースないしデータファイルであり、累計データ作成部30および期間集計データ作成部50は、CPU111で実行されるプログラム部品である。
【0028】
これらの詳細については後述する。
【0029】
図3は、図1に示す累計データ作成部30で作成される累計データ、および期間集計データ作成部50で作成される集計データの概念図である。
【0030】
ここでは、2004年8月の1ヵ月分を取り上げており、2004年8月1日が終了した(8月2日になった)時点で8月1日一日分の集計データ(累計データ)が作成され、2004年8月2日が終了した時点で、8月1日の累計に8月2日の累計を加算した、2日間の累計データが作成され、以下同様にして、8月31日に至るまで、前日までの累計に当日の累計を加算した累計データが作成される。
【0031】
ここで、8月1日の1日間のみの累計データ、8月1日と8月2日との2日間の累計データ、8月1日〜3日の3日間の累計データ、…、8月1日〜31日の31日間の累計データは全て保存しておく。
【0032】
ここでは2004年8月を取り上げて説明しており、2004年9月に移ると、また9月の初日から順次、この図3と同様の集計データが作成される。
【0033】
図1の累計データファイル40には、この図3に示すような累計データが日々格納されている。
【0034】
ここで、問合せ端末から、2004年8月6日から2004年8月26日までの集計データ作成要求があると、図1に示す期間集計データ作成部50は、累計データファイル40を参照して、その指定された期間(2004年8月6日から2004年8月26日)の最終日(8月26日)の累計データと、その指定された期間の初日(8月6日)の前日(8月5日)の累計データを取り出し、それら2つの累計データの差分を計算することによって、その期間(8月6日〜26日)の集計データを計算する。
【0035】
本実施形態では、基本的には、このような単純な計算で、したがって極めて短時間に指定された期間の集計データを求めることができる。
【0036】
以下、さらに具体的に説明する。
【0037】
図4は、図1に示す情報DB20の内容を示す図である。
【0038】
ここでは、2004年8月4日の売上データを例に挙げている。
【0039】
図5は、図4に示す情報DBの内容から作成した2004年8月4日の集計データファイルである。
【0040】
ここでは、図4に示す情報DBの内容が、各店舗ごとに商品別にまとめた集計データが作成されている。
【0041】
図6は、前日(2004年8月3日)の累計データファイルを示す図である。
【0042】
ここには、2004年8月1日、2日、3日の累計としての、各店舗別、各商品別の売上高、売上個数が記録されている。
【0043】
図7は、当日(2004年8月4日)の累計データファイルを示す図である。
【0044】
図6に示す前日の累計データファイルに図5に示す当日の集計データファイルを店舗別、商品別に加算することにより、図7に示す当日の累計データファイルが作成される。
【0045】
図8は、累計データ作成部の処理を示すフローチャートである。
【0046】
先ず今日が何年何月何日であるかという当日の日付をデータ集計装置100を構成するコンピュータプログラム内のカレンダ機能より獲得し(ステップa1)、当日の集計データファイルを作成する(ステップa2)。
【0047】
前述したとおり、図5には一例として2004年8月4日当日の集計データファイルが示されている。
【0048】
次に、当日(今日)は1日、すなわちその月の初日であるかどうかが判定される(ステップa3)。その月の初日の場合は、その当日の集計データファイルをそのままその日の累計データファイルとして採用すればよいため、ステップa7に進み、累計データファイル名が作成されて、累計データファイルが保存される(ステップa8)。
【0049】
ここで、ステップa7における累計ファイル名とは、例えば、図7に2004年8月4日の累計ファイルの累計ファイル名が示されている、「店舗別、商品別売_20040804」と同様のものである。
【0050】
ステップa3で、当日がその月の初日ではなかったときは、ステップa4に進み、前日の累計データファイルを取得し(図6参照)、当日の集計データファイル(図5参照)と前日の累計データファイル(図6参照)との間でキー項目の突合せ(ステップa5)、およびデータのマージ(加算)を行ない(ステップa6)、これを全てのキー項目について行なった後、そのようにして作成された累計データファイル(図7参照)に累計ファイル名が付けられて(ステップa7)、その累計データファイルが保存される(ステップa8)。
【0051】
次に期間を指定してその期間内の集計データを作成する場面について説明する。
【0052】
図9は、問合せ端末における表示画面を示す図である。
【0053】
図1に示す問合せ端末301,302,…,30mのいずれかから期間を指定してその期間内の集計データの作成を要求するにあたっては、その問合せ端末では図9(A)に示す画面が表示され、その表示画面上に期間を入力して「帳票表示」のボタンをクリックする。すると、その問合せ端末から通信回線網600(図9参照)を経由してデータ集計装置100に、その指定期間についての集計データ作成要求が送信される。
【0054】
図9(B)は、データ集計装置100から送信されてきた、その集計データ作成要求に基づいて作成された集計データに基づく画面である。
【0055】
ここでは、2004年4月21日〜2004年6月20日の期間が指定されたものとし、図9(B)にはその指定期間内の、店舗別、商品別の売上数と個数が示されている。
【0056】
図10は、期間集計データ作成部の処理を示すフローチャートである。
【0057】
ここでは、指定期間を取得し(ステップb1)、その指定期間の開始日の前日の累計ファイルを取得し(ステップb2)、さらにその指定期間の終了日当日の累計ファイルを取得する(ステップb3)。
【0058】
ここでは、一例として、2004年4月21日〜2004年6月20日が指定されたものとする。このとき、ステップb2では、「店舗別・商品別売上_20040420」の累計データファイルが取得され、ステップb3では、「店舗別・商品別売上_20040620」の累計データファイルが取得される。次に、その指定期間の開始日と終了日が同一の年月に属するかあるいは年月が異なるかが判定され(ステップb4)、年月が異なるときは、その指定期間中の毎月の最終日の累計データファイルを取得し(ステップb5)、これをその指定期間に含まれる月数分繰り返す。ここでは、「店舗別・商品別売上_20040430」および「店舗別・商品別売上_20040531」の累計データファイルがこれに相当する。
【0059】
次に、このようにして抽出した累計ファイルについてキー項目の突合せ(ステップb6)やデータのマージを行ない(ステップb7)、これを全てのデータ項目にわたって、かつその指定期間に含まれる月数分全てにわたって行ない、その指定期間についての集計データファイルが作成されて保存される(ステップb8)。
【0060】
データ集計装置100(図1参照)は、このようにして作成されて保存された期間集計データファイルを、その集計データファイル作成要求を行なった問合せ端末に向けて送信する。その問合せ端末では、その集計データファイルが受信され、その集計データファイルに基づいて、図9(B)に示すような集計データが表示される。
【0061】
図11は、POSシステムから過去の売上データの訂正があったときの処理を示す図である。
【0062】
例えば2004年9月5日の累計データまで作成されている時点で、2004年9月3日の売上の更新があり、その結果、3日の集計が図11に斜線を付して示した差分ファイルの分だけ変動を生じた場合、その差分は、3日の累計だけでなく、その日以降の全ての累計データすなわち、ここでは4日および5日の累計データにも反映させておく。こうすることにより、ここで説明してきた累計の考え方は売上データの訂正にも柔軟に対処することが可能である。売上データの更新は、例えばPOSシステムが一時不良となり、後日になってから売上データを入力した場合や、一旦売上として計上した後、返品があった場合などに発生する可能性がある。
【0063】
以上の実施形態によれば、
・データベースへ直接問い合わせるのは元より、単純に日々のデータを加算していくよりも性能がよい。
【0064】
・日毎のファイルを保持しているので、ファイル名に年月日の日付を持たせることで、管理がしやすい(例 売上データ_20040826.csvなど)。
【0065】
・当日までのデータも組み合わせて累計結果を出力できるため、速報性が高い。
【0066】
・累計ファイルそのものは前日までのファイルを使用しており、累計当日のデータのみをデータベースへ問い合わせるだけでよいので、作成が早く、夜間バッチ処理にて、より多くのパターンの累計ファイルを作ることができる。
【0067】
・データに対して更新が発生した場合も、影響が少なくなる。
など様々なメリットがある。
【符号の説明】
【0068】
10 基幹DB
20 情報DB
30 累計データ作成部
40 累計データファイル
50 期間集計データ作成部
60 集計データファイル
100 データ集計装置
111 CPU
120 ハードディスク
201,202,…,20n POSシステム
301,302,…,30m 問合せ端末
600 通信回線

【特許請求の範囲】
【請求項1】
期間の指定を受けてその期間内のデータが集計された集計データを算出するデータ集計装置であって、
前記期間指定の単位となる所定の第1の期間ごとの集計データを複数の該第1の期間からなる所定の第2の期間に至るまで順次累計することで、第2の期間中の全てを累計した総累計データを含む当該第2の期間中に含まれる第1の期間の集計データを順次累計する毎に得た累計データ群を作成することを繰り返すことにより、各第2の期間毎に得た複数の累計データ群を作成して保存する累計データ作成部と、
前記集計データを算出するための期間の指定を受け、前記累計データ作成部にて作成保存された複数の累計データ群にもとづき、
当該指定期間が一の第2の期間内に属するときは、当該第2の期間の累計データ群中の当該指定期間の最後の第1の期間の集計データまでを累計した累計データから当該指定期間の最初の第1の期間の一つ前の第1の期間の集計データまでを累計した累計データを減算したデータを集計データとして作成するとともに、
当該指定期間が異なる第2の期間に跨がるときには、当該指定期間の最初の第1の期間が含まれる第2の期間の累計データ群から得た当該最初の第1の期間の一つ前まで第1の期間の集計データまでを累計した累計データから当該第2の期間の総累計データを減算して得たデータと、当該指定期間の最後の第1の期間の集計データが含まれる累計データ群から得た当該最後の第1の期間までを累計した累計データと、を加算したデータを使用して集計データを作成する期間集計データ作成部と、
を備えたことを特徴とするデータ集計装置。
【請求項2】
前記第1の期間が1日間であり、前記第2の期間が1ヵ月間であって、前記累計データ作成部が、その月の初日の集計データからなる第1の累計データ、その月の初日と2日目の集計データの和からなる第2の累計データ、……、および、その月全体の集計データの和からなる総累計データを作成するものであることを特徴とする請求項1記載のデータ集計装置。
【請求項3】
プログラムを実行する情報処理装置内で実行され、該情報処理装置を、送信されてくるデータを順次格納しておき、期間の指定を受けて該期間内のデータが集計された集計データを算出するデータ集計装置として動作させるデータ集計プログラムであって、
前記情報処理装置を、
前記期間指定の単位となる所定の第1の期間ごとの集計データを複数の該第1の期間からなる所定の第2の期間に至るまで順次累計することで、第2の期間中の全てを累計した総累計データを含む当該第2の期間中に含まれる第1の期間の集計データを順次累計する毎に得た累計データ群を作成することを繰り返すことにより、各第2の期間毎に得た複数の累計データ群を作成して保存する累計データ作成部と、
前記集計データを算出するための期間の指定を受け、前記累計データ作成部にて作成保存された複数の累計データ群にもとづき、
当該指定期間が一の第2の期間内に属するときは、当該第2の期間の累計データ群中の当該指定期間の最後の第1の期間の集計データまでを累計した累計データから当該指定期間の最初の第1の期間の一つ前の第1の期間の集計データまでを累計した累計データを減算したデータを集計データとして作成するとともに、
当該指定期間が異なる第2の期間に跨がるときには、当該指定期間の最初の第1の期間が含まれる第2の期間の累計データ群から得た当該最初の第1の期間の一つ前まで第1の期間の集計データまでを累計した累計データから当該第2の期間の総累計データを減算して得たデータと、当該指定期間の最後の第1の期間の集計データが含まれる累計データ群から得た当該最後の第1の期間までを累計した累計データと、を加算したデータを使用して集計データを作成する期間集計データ作成部と、
を備えたデータ集計装置として動作させることを特徴とするデータ集計プログラム。
【請求項4】
前記第1の期間が1日間であり、前記第2の期間が1ヵ月間であって、前記累計データ作成部が、その月の初日の集計データからなる第1の累計データ、その月の初日と2日目の集計データの和からなる第2の累計データ、……、および、その月全体の集計データの和からなる総累計データを作成するものであることを特徴とする請求項3記載のデータ集計プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate


【公開番号】特開2011−118940(P2011−118940A)
【公開日】平成23年6月16日(2011.6.16)
【国際特許分類】
【出願番号】特願2011−52598(P2011−52598)
【出願日】平成23年3月10日(2011.3.10)
【分割の表示】特願2005−63925(P2005−63925)の分割
【原出願日】平成17年3月8日(2005.3.8)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】