JPH0991268A - 集計装置 - Google Patents

集計装置

Info

Publication number
JPH0991268A
JPH0991268A JP24935295A JP24935295A JPH0991268A JP H0991268 A JPH0991268 A JP H0991268A JP 24935295 A JP24935295 A JP 24935295A JP 24935295 A JP24935295 A JP 24935295A JP H0991268 A JPH0991268 A JP H0991268A
Authority
JP
Japan
Prior art keywords
data
totalization
key
registered
record
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.)
Pending
Application number
JP24935295A
Other languages
English (en)
Inventor
Ai Futasugi
愛 二杉
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.)
KOBE NIPPON DENKI SOFTWARE KK
NEC Software Kobe Ltd
Original Assignee
KOBE NIPPON DENKI SOFTWARE KK
NEC Software Kobe 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 KOBE NIPPON DENKI SOFTWARE KK, NEC Software Kobe Ltd filed Critical KOBE NIPPON DENKI SOFTWARE KK
Priority to JP24935295A priority Critical patent/JPH0991268A/ja
Publication of JPH0991268A publication Critical patent/JPH0991268A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】集計データの挿入整列と加算を同時に行い、処
理時間の短縮とディスク容量の有効活用する。 【解決手段】集計装置1は、集計対象データ2からデー
タを取得するデータ取得手段2と、集計結果データを出
力するデータ出力手段4と、集計キーにてデータを管理
する集計テーブル5と、集計対象データのキーにて集計
テーブル5の登録位置を探索するキー探索手段6と、新
しいキーのデータを集計テーブルに登録と加算をする加
算登録手段7と、集計テーブル5から出力される集計デ
ータ8と、を備える。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、集計装置に関
し、特にデータをキー種別に整列と加算を同時に行って
集計する集計装置に関する。
【0002】
【従来の技術】従来は、まず集計対象データを集計キー
の順番に並べ換えて整列し、ワークファイルに格納した
後、該ワークファイルから集計対象データを取得し、キ
ーの一致/不一致を比較して、同一キーのデータを集計
する2段階の集計処理を行っていた。
【0003】まず、データを挿入整列する処理について
説明する。
【0004】集計対象のレコードをキーの順番に登録し
ておくソートテーブルに新たなレコードを登録する場
合、まずテーブルを前半と後半の二つに分け、該レコー
ドのキーが前半にあるべきキーか後半にあるべきキーか
を調べる。もし前半にあるべきキーなら、前半をさらに
二つに分け、それの前半と後半のどちらにあるべきかを
調べる。このような処理を繰り換して、キーが登録され
るべきソートテーブルの位置を探索発見する。
【0005】上述の挿入整列処理のフローチャートを図
5に示す。集計対象レコードから1レコード目を取得し
(ステップ201)、ソートテーブルの先頭S[0]に
登録する(ステップ202)。集計対象レコードから2
レコード目の処理対象レコードを取得する(ステープ2
03)。登録されるべきソートテーブル内の位置を設定
する変数Wを−1に、探索範囲の下限を設定する変数X
を0に、上限を設定する変数Yの(ソートテーブルに登
録されているレコード件数)−1を0に、それぞれ設定
する(ステップ205)。探索範囲の中心を設定する変
数Zに上述のパラメータによって、(X+Y)/2=
(0+0)/2=0を設定する(ステップ206)。ソ
ートテーブルのZ番目のレコード(以下S[Z]と記
す)、すなわち1件目のレコードと処理対象レコードの
キーを比較する。処理対象レコードのほうが小さい場合
(ステップ208のNO)、探索範囲がXからZの1つ
前までに絞り込める。つまり、上限YにZ−1=0−1
=−1を設定する(ステップ209)。X=0であるの
で、X>Yとなり(ステップ210のYES)、上限値
と下限値が逆転する。探索範囲内に同じキーが無いこと
が解り、かつ登録位置は比較したレコードの直前である
ことが確定できる。変数WにZ=0を設定する(ステッ
プ211)。W=0となってWが−1という条件は偽と
なるため(ステップ215のNO)、S[0]に設定さ
れていたレコードをS[1]に移動し、S[0]に処理
対象レコードを登録し、挿入整列する(ステップ21
6)。処理対象レコードのキーが1件目のキーより大き
い場合(ステップ208のYES)、探索範囲がZの1
つの後からYまでの間に絞り込めるため、XにZ+1を
設定する(ステップ212)。XとYを比較し、下限X
が条件Yより小さいとき(ステップ215のNO)W=
−1であるから(ステップ215のYES)、中心を設
定するZを更新し(ステップ206)、登録位置の探索
を繰返し、下限Xが上限Yより大きくなって(ステップ
213のYES)、登録位置WにZ+1を設定し(ステ
ップ214)、Wが−1でないので(ステップ215の
NO)、S[W]にレコードを挿入整列する(ステップ
216)。
【0006】処理対象レコードと比較したテーブルのレ
コードが同じキーである場合(ステップ207)、比較
したレコードの登録位置の直後が処理対象レコードの登
録位置となる(ステップ217)。このようにどんどん
2分探索によって、範囲を絞り込んでゆくことにより、
登録すべき位置を探索する。探索処理を集計対象レコー
ド全てについて行い、全てのレコードをソートテーブル
に登録した後、中間ファイルへ順番にレコードを出力す
る(ステップ218)。
【0007】次に、キーの一致/不一致を比較して、同
一キーのレコードを集計処理するフローチャートを示す
図6を説明する。
【0008】中間ファイルから1レコード目をバッファ
Aに取得する(ステップ301)。2レコード目をバッ
ファBに取得し(ステップ302)、バッファAとバッ
ファBのキーを比較する(ステップ304)。キーが一
致する場合はBのレコードをAに加算し(ステップ30
5)、バッファBに次のレコードを取得する(ステップ
302)。キーが不一致の場合、バッファAのレコード
を出力し(ステップ306)、バッファBをバッファA
にコピーする(ステップ307)。次のレコードをバッ
ファBに取得し(ステップ302)、キーを比較する
(ステップ304)。全てのレコードに対して以上の処
理を繰り返す。
【0009】以上の説明のように、レコードを挿入整列
した中間ファイルからキー毎にレコ−ドを集計した集計
結果ファイルが出力される。
【0010】
【発明が解決しようとする課題】上述の従来の集計処理
における第1の問題点は、処理に時間がかかることであ
る。なぜならば、挿入整列による並べ換えの為のキー比
較と集計処理の為のキー比較とを別々に行わなければな
らず、重複した比較が行われているからである。
【0011】また第2の問題点は、(元レコードのファ
イルの大きさ+カテゴリキー数×レコード長)のディス
ク領域を確保しておかなければならないことである。そ
の理由は、集計キーによってファイルを整列するため、
集計対象ファイルの整列結果と集計結果分の要領が必要
となるからである。
【0012】
【課題を解決するための手段】この発明の目的は、集計
対象データの挿入整列と加算を同時に行い、挿入整列終
了と集計を同時に完了し、集計処理の高速化と中間ファ
イルの削減にある。
【0013】そのため、この発明のデータ種別を示すキ
ーとデータからなる集計データを取得するデータ取得手
段と、挿入整列と同時に同一キーの集計データを加算し
て登録する集計テーブルと、集計データを挿入整列する
前記集計テーブル内の位置を発見するキー探索手段と、
前記位置に登録済みの集計データがあるとき、集計デー
タを前記登録済み集計データに加算して、前記位置に登
録し、前記位置に登録済みの集計データがないとき、集
計データを前記位置に挿入登録する加算登録手段と、前
記集計テーブル内に整列されてキー毎に加算された集計
データを出力する集計出力手段と、を有することを特徴
とする。
【0014】
【発明の実施の形態】この発明について、図面によって
説明する。
【0015】この発明の一実施例の構成を示す図1を参
照すると、集計装置1は、集計対象データ2からデータ
を取得するデータ取得手段3と、集計キーにて各データ
を挿入整列と集計を同時に行って登録する集計テーブル
5と、データのキーで集計テーブル5の登録位置を探索
するキー探索部6と、新しいキーのデータを集計テーブ
ル5に登録あるいは既登録データに加算する加算登録部
7と、集計テーブル5から整列された集計データ8を出
力する集計出力手段4とを含む。
【0016】集計対象データ2を例示する図2を参照す
ると、集計対象データ2は、集計キーとデータを有す
る。集計キーを列1、加算対象のデータを列2とし、レ
コードの値を[列1,列2]で以下表記する。また、集
計対象データ2の挿入整列と加算処理したときの集計テ
ーブル5の挿入整列の経過を図3(a)乃至図3(d)
に例示する。図3(a)は図2に示す1レコード目を登
録したとき、図3(b)は図2に示す2レコード目を登
録したとき、図3(c)は図2に示す3レコード目を登
録したとき、図3(d)は図2に示す4レコード目を登
録したとき、をそれぞれ例示する。
【0017】次に、この実施例の動作を示す図4を、図
2の集計対象データ2および図3の集計テーブル5の例
示を援用して説明する。先ず図4に使用される符号を説
明する。T[0],T[1]…T[M]は集計テーブル
5に集計対象データ2のデータの登録位置を上から順に
示す。Wはデータの登録位置を探索する変数である。X
は2分岐探索における探索範囲の下限のテーブル番号で
ある。Yは2分岐探索における探索範囲の上限のテーブ
ル番号である。Zは2分岐探索のための変数で、探索範
囲の中心位置のテーブル番号である。集計対象データの
キーであるA,B…Xは、A,B…Xの順の大きい値に
なるとする。
【0018】集計対象データ2より1レコード目のデー
タ[B,1]21を取得し(ステップ101)、図3
(a)に示すように集計テーブル5の先頭にT0[B,
1]511として登録する(ステップ102)。
【0019】集計対象データ2より2レコード目のデー
タ[A,2]22を取得する(ステップ103)。登録
されるべき位置を設定する変数Wを−1で初期化し、探
索範囲の下限位置を設定する変数Xに0、上限位置を設
定する変数Yに集計テーブル5に登録されているデータ
件数1から1を減算して0を設定する(ステップ10
5)。探索範囲の中心位置を設定する変数Zに(X+
Y)/2=(0+0)/2=0を設定する(ステップ1
06)。集計テーブル5のZ番目のデータ(以下T
[0],T[1],…T[M]の順に記す)、すなわち
1件目のデータT0[B,1]511とデータ[A,
2]22のキーを比較する(ステップ107のNO)。
集計テーブル5のデータはT[0][B,1]511、
データは2レコード目の[A,2]22なので、データ
[A,2]22のほうがT[0][B,1]511より
小さい(ステップ108のNO)。よって、探索範囲を
XからZの1つ前までに絞り込める。つまり上限YにZ
−1=0−1=−1を設定する(ステップ109)。X
=0であるので、X>Yとなる(ステップ110のYE
S)。上限値と下限値が逆転し、探索範囲内に同じキー
が無いことが解り、かつ登録位置T[Z]は比較したデ
ータの直前であることが確定できる。変数WにZ=0を
設定する(ステップ111)。Wが−1という条件は偽
となるため(ステップ115のNO)、T[0]に設定
されていた図3(a)の[B,1]511を図3(b)
に示すようにT[1]に移動し、[B,1]522に、
T[0]に[A,2]521を登録する(ステップ11
6)。 集計対象データ2より3レコード目のデータ
[C,3]23を取得する(ステップ103)。変数W
に−1、変数Xに0、変数Yに集計テーブル5に登録さ
れているデータ件数−1=2−1=1を設定する(ステ
ップ105)。変数1に(1+0)/2=0(小数点以
下切り捨て)を設定する(ステップ106)。最初の比
較は、T[0]の[A,2]521とデータ[C,3]
23であるから、データ23のキーが大きい(ステップ
108のYES)。よって、探索範囲をZの1つ後から
Yまでの間に絞り込めるため、XにZ+1を設定し、Z
=0であるからXは1となる(ステップ112)。Yは
集計テーブル5に2データを既に登録しているので、Y
=2−1=1である。またXは1であるからY=1=X
となり、X>Yは偽となる(ステップ113のNO)。
Wは−1のままなので(ステップ115)は真となり
(ステップ115のYES)、探索処理が繰り返され
る。X=1,Y=1であるからZに(1+1)/2=1
を設定する(ステップ106)。データ[C,3]23
はT[1]の[B,1]522より大であるから(ステ
ップ108のYES)、XにZ+1=2を設定すると
(ステップ112)、X>Yとなり(ステップ113の
YES)、Wに2を設定する(ステップ114)。従っ
て、T[2]にデータ23を設定する(ステップ11
6)。図3(c)に示す集計テーブルは、T[0]の
[A,2]531、T[1]の[B,1]532、T
[2]の[C,3]533となる(ステップ116)。
集計対象データ2より4レコード目のデータ[B,4]
24を取得する(ステップ103)。変数Wに−1、変
数Xに0、変数Yに集計テーブル5に登録されているデ
ータ件数−1=3−1=2を設定する(ステップ10
5)。Y=2,X=0であるから変数Zに(2+0)/
2=1を設定する(ステップ106)。T[1]の
[B,1]532、データ[B,4]24であるから、
集計対象データのキーと同じである(ステップ107の
YES)。T[1]の[B,1]532に集計対象デー
タ[B,4]24の4を加算する。集計テーブル5は、
図3(d)に示すようにT[0]の[A,2]541、
T[1]の[B,5]542、T[2]の[C,3]5
43となる(ステップ117)。
【0020】最後に集計テーブル5の各データを出力し
て(ステップ118)、集計処理を終了する(ステップ
119)。
【0021】
【発明の効果】以上の説明のように、この発明によれ
ば、集計対象データを1データづつ取得しながら、新し
いキーのデータは集計テーブルに登録、既に登録されて
いるキーのデータは加算することにより、集計キーによ
るファイルのソートと集計を同時に行える。
【0022】また、この発明によれば、ソート時のファ
イルI/O時間、キーの一致/不一致の比較処理、さら
にソートと集計の中間ファイルを削減できるので、処理
速度の向上、使用ディスク容量の削減を実現できる。
【図面の簡単な説明】
【図1】この発明の一実施例の構成を示す構成図であ
る。
【図2】集計対象データを例示する図である。
【図3】分図(a)乃至(d)は、集計対象データの1
件目,2件目,3件目,4件目の挿入整列と集計の途中
経過をそれぞれ示す図である。
【図4】この発明の動作を示すフローチャートである。
【図5】従来の動作のソート処理を示すフローチャート
である。
【図6】従来の動作の集計処理を示すフローチャートで
ある。
【符号の説明】
1 集計装置 2 集計データ 3 データ取得手段 4 集計出力手段 5 集計テーブル 6 キー探索手段 7 加算登録手段 8 集計データ

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 データ種別を示すキーとデータからなる
    集計データを取得するデータ取得手段と、 挿入整列と同時に同一キーの集計データを加算して登録
    する集計テーブルと、 集計データを挿入整列する前記集計テーブル内の位置を
    発見するキー探索手段と、 前記位置に登録済みの集計データがあるとき、集計デー
    タを前記登録済み集計データに加算して、前記位置に登
    録し、前記位置に登録済みの集計データがないとき、集
    計データを前記位置に挿入登録する加算登録手段と、 前記集計テーブル内に整列されてキー毎に加算された集
    計データを出力する集計出力手段と、 を有することを特徴とする集計装置。
JP24935295A 1995-09-27 1995-09-27 集計装置 Pending JPH0991268A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP24935295A JPH0991268A (ja) 1995-09-27 1995-09-27 集計装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP24935295A JPH0991268A (ja) 1995-09-27 1995-09-27 集計装置

Publications (1)

Publication Number Publication Date
JPH0991268A true JPH0991268A (ja) 1997-04-04

Family

ID=17191756

Family Applications (1)

Application Number Title Priority Date Filing Date
JP24935295A Pending JPH0991268A (ja) 1995-09-27 1995-09-27 集計装置

Country Status (1)

Country Link
JP (1) JPH0991268A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7080087B2 (en) 2000-06-01 2006-07-18 Nihon Intersystems Co., Ltd. Automatic aggregation method, automatic aggregation apparatus, and recording medium having automatic aggregation program

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH047758A (ja) * 1990-04-26 1992-01-13 Nec Software Ltd ファイル処理装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH047758A (ja) * 1990-04-26 1992-01-13 Nec Software Ltd ファイル処理装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7080087B2 (en) 2000-06-01 2006-07-18 Nihon Intersystems Co., Ltd. Automatic aggregation method, automatic aggregation apparatus, and recording medium having automatic aggregation program

Similar Documents

Publication Publication Date Title
US20150302058A1 (en) Database system with highly denormalized database structure
ZA200100187B (en) Value-instance-connectivity computer-implemented database.
JPH07253991A (ja) ジョイン処理方式
JPH06223117A (ja) 検索解収束方法
JPH0991268A (ja) 集計装置
US6182071B1 (en) Sorting and summing record data including generated sum record with sort level key
JPH08235033A (ja) オブジェクト指向データベース管理システムにおける結合演算方式
JP3534471B2 (ja) マージソート方法及びマージソート装置
JPH08314957A (ja) データベースシステム
JPS59121436A (ja) デ−タ群のソ−ト方法
JPH0773187A (ja) 検索システム
JPH0644309A (ja) データベース管理方式
JP2959497B2 (ja) データ処理装置及びデータ処理方法
JPH047758A (ja) ファイル処理装置
JPH0477947B2 (ja)
JP2000123014A (ja) データ検索システムおよび方法
JPH03223965A (ja) 関係型データベースシステムにおける不等号条件結合方式
JP2673085B2 (ja) リレーショナルデータベースの結合処理方法
JPH0352068A (ja) 論理演算方式
JPH05165891A (ja) データベースのデータ登録・検索方式
JPS63131227A (ja) デ−タ処理方式
US9350383B2 (en) Run total encoded data processing
JPH0546666A (ja) 情報検索装置
JPH03242764A (ja) 算術演算条件結合方式
US20020111952A1 (en) Real title

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 19981110