JPH03260867A - データ処理システム - Google Patents

データ処理システム

Info

Publication number
JPH03260867A
JPH03260867A JP2060451A JP6045190A JPH03260867A JP H03260867 A JPH03260867 A JP H03260867A JP 2060451 A JP2060451 A JP 2060451A JP 6045190 A JP6045190 A JP 6045190A JP H03260867 A JPH03260867 A JP H03260867A
Authority
JP
Japan
Prior art keywords
node
data
rank
registered
data processing
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
JP2060451A
Other languages
English (en)
Inventor
Seiji Okuma
大熊 清司
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2060451A priority Critical patent/JPH03260867A/ja
Publication of JPH03260867A publication Critical patent/JPH03260867A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 この発明は、主メモリ上のデータを2分木構造の登録簿
により管理するデータ処理システムに関するものである
〔従来の技術〕
第5図は従来のデータ処理システムにおける登録簿のデ
ータ構造を示す概念図であり、図において、1は1つの
データに対応した該データの管理データであるノードで
、各データに対応するノードが連結されて登録簿を構成
している。また、このノードは主メモリにロードされて
いるデータ名を示すキー値1a(以下、KEYという)
、主メモリにロードされているデータへのポインタ1b
(以下、DPといつ)、左方向の下位ノード1へのポイ
ンタIC(以下、LPという)、右方向への下位ノード
1へのポインタ1d(以下、RPという)から構成され
ている。2は前記DP1bにより示されるKEYlaに
対応した主メモリ上のデータである。
次に動作について第6図のフローチャートを用いて説明
する。
通常、データ処理では第6図(a)に示すようにディス
ク等の記憶装置から主メモリへ必要なデータをロードし
くステップ5T2)、このロードしたデータを計算等に
使用する(ステップ5T3)動作をデータ処理の回数文
に従って繰返すが(ステップ5TI)、このようなデー
タ処理では該データの数が増加すると前記記憶装置への
アクセス回数も多くなり、処理性能が低下するので、第
6図(b)に示すようにすでにロードした主メモリ上の
データなノード1として登録簿で管理しながらデータ処
理を行うのが一般的である。すなわち、必要なデータが
ロード済か否かを登録簿を構成するノード1のKEYl
aを検索して確認しくステップST5 )、もし、該デ
ータに対応するノード1のKEYlaと一致するノード
1が確認できれば必要なデータは主メモリ上にすでに存
在しているのでロードは行わず、確認でき々い場合のみ
記憶装置から必要なデータを主メモリにロードしくステ
ップST6 )、さらに登録簿にロードしたデータに対
応するノード1を登録する(ステップ5T7)。
そして、このロードしたデータを計算等に使用する(ス
テップ5T8)動作をデータ処理の回数文に従って繰返
す(ステップST4 )。
ここで、登録簿へのノード1の登録動作は第6図(C)
のように行われる。すなわち、登録簿を構成するノード
1の最上位ノードから最下位ノードまで検索するデータ
名と該ノード1のKEYlaが一致するか否かを判定し
くステップST9.5T10)、もし、検索中に一致す
ることが確認できればこのデータは主メモリ上にすでに
存在しているので登録動作は行わず、すべてのノード1
のKEYiaと一致しない場合のみ新しいノード1の追
加を指示する(ステップSTI 1 )。
このように、「基礎レッスン”C言語”■基礎習得編」
(株式会社技術評論社発行、P170゜昭和63年2月
25日初版)にも示されているが、2分木構造で登録簿
を生成すると、例えば、D。
B、A、F、H,C,Yという名前のデータがこの順に
登録される場合、第7図(a)のようにデータが管理さ
れる(分かりやすくするためにKEYlaの部分だけを
取り出して表している)。この時、登録されたYを検索
する場合、第7図(b)のように2分木ではむく単純に
登録するならば、Yは最後に登録されるので7回の比較
判定が必要であるが、第7図(a)のように登録順を考
慮して登録されると3回の比較判定で済むので効率がよ
い。
〔発明が解決しようとする課題〕
従来のデータ処理システムは以上のように構成されてい
るので、例えばA、B、C,D、F、H。
Yの順にデータが登録された場合、第7図(C)のよう
に単方向の2分木が生成されるので、データの登録順を
考慮しなければ本来の2分本のメリットが活かされない
。また、データの登録をまとめて行うような場合は、最
適な2分木を生成することも考えられるが、オンライン
で登録し、即使用する場合(どのような順序でデータが
登録されるか判らないような場合)も同様に2分本のメ
リットが活かされないtxどの課題があった。
この発明は上記のよう?zl!題を解消するためになさ
れたもので、データの登録順によって単方向の2分木が
生成されることを防ぎ、そのよう々場合でも効率のよい
2分本を生成し、検索効率を向上させるデータ処理シス
テムを得ることを目的とする。
〔課題を解決するための手段〕
この発明に係るデータ処理システムは、2分木を生成す
るときに単純に登録順に生成されることのないように、
登録簿に新しいノードが登録されると(2分木を生成す
ると)、このノードの1つ上位のノードから最上位のノ
ードまでの各ノードについて再編成チェックを行い、骸
再編成チェックで判定する条件を満たすことを確認して
前記2分木を再編成するようにしたものである。
〔作 用〕
この発明におけるデータ処理システムは、登録簿に新し
いノードが登録されると、とのノードの1つ上位のノー
ドから最上位のノードまでの各ノードについて再編成チ
ェックを行い、効率の良い2分木を生成することにより
、登録簿でのデータの検索時間が短縮され、効率の良い
データ処理が行える。
〔発明の実施例〕
以下、この発明の一実施例を図について説明する。
第1図はこの発明の一実施例によるデータ処理システム
における登録簿のデータ構造を示す概念図であり、従来
のデータ処理システムにおける登録簿(第5図)と同−
又は相当部分には同一符号を付して説明を省略する。
図において、各ノード1はKEYla、DPlb、LP
lc、RPldの他に、1つ上位のノードへのポインタ
1e(以下、HPという)、咳上位ノードがこのノード
の左向きにあるか、あるいは右向きにあるかを示す上位
ノードへの方向1f(以下、HDという)、下位左方向
のノードの深さ1g(以下、LDという)、下位右方向
のノードの深さ1h(以下、RDという)により構成さ
れる。
次に動作について第2図のフローチャートを用いて説明
する。
第2図(a)に示すように必要なデータがロード済か否
かを登録簿を構成するノード1のKEYlaを検索して
確認しくステップ5T13)、もし、該データに対応す
るノード1のKEYlaと一致するノード1が確認でき
れば必要々データは主メモリ上にすでに存在しているの
でロードは行わず、確認できない場合のみ記憶装置から
必要なデータを主メモリにロードしくステップ5T14
)、さらに登録簿にロードしたデータに対応するノード
1を登録して新た々登録簿を生成する(ステップ5T1
5)。そして、このロードしたデータを計算等に使用す
る(ステップ5T16)動作をデータ処理の回数文に従
って繰返すのであるが(ステップ5T12)、この登録
簿の検索処理から新たな登録簿を生成するまでの処理(
ステップ5TI3〜5T15)については第2図(b)
に示すフローチャートを用いて説明する。
すなわち、登録簿を構成するノード1の最上位ノードか
ら最下位ノードまで検索するデータ名と該ノード1のK
EYlaが一致するか否かを判定しくステップ5T17
,5T18)、もし、検索中に一致することが確認でき
ればこのデータは主メモリ上にすでに存在しているので
登録動作は行わず、すべてのノード1のKEYlaと一
致しない場合のみ新しいノード1の登録動作に進む。ま
ず、登録簿内に新ノード用の領域を確保しくステップ5
T19)、この確保した領域へのポインタをカレントノ
ード(ポインタで連結された1つ上位のノード)のLP
ICあるいはRPldに格納する(ステップ5T20、
終端ノード1のKEYlaが検索データより小さければ
RPldへ、そうでtxければLPlcへ格納する)。
そして、この新ノードのLD1g及びRDlhを0とし
くステップ8T21)、HPleにカレントノードへの
ポインタを設定しくステップ5T22)、HDlfにカ
レントノードへの方向(右か左か)を設定しくステップ
8T23)、LPle及びRPIdを0(下位ノードが
々いことを示す)として初期設定を行う(ステップ5T
24 )。
次に、新ノードの登録が終了すると、まず、ノードが1
つ追加されたことにより、カレントノードのLD1gあ
るいはRDlhを1だけ加算する(ステップ5T26、
カレントノードのHDlfが左を示していればRDlh
を、そうでなげればLD1gを加算する)。その結果、
該カレントノードのLD1gとRDlhとの差を判定し
くステップ5T27)、その差が2以上であれば以下の
再編成条件をチェックする(ステップ5T28)。
■ そのノードが最上位ノードである。
■ 1つ上位のノードのLPlcあるいはRPldが0
でない(このノードのHDlfが左を示していればt、
plc、そうでむければRPld)。
■ 1つ上位のノードのRDlgとLDlhの差が1よ
り小さい。
この3条件のいずれかを満たすとノードの再編成を行い
(ステップ5T29)、もし、満たされていなければ次
の上位ノードについて再編成チェックを行う。さらに、
再編成を行った場合はカレントノードが変わるので骸カ
レントノードを再設定しくステップ5T30)、以上の
動作をカレントノードから最上位のノードまで繰返す(
ステップ5T25)。
第3図はこの再編成の例を示した図であり、第3図(a
)において再編成チェックを繰返してきてノードBでL
D1gとRDlhとの差(11と9)が2以上になった
ので再編成を行う。この再編成では以下の7つの処理が
行われる。
■ ノードAへのポインタをノードCのHDlfに格納
する。
■ ノードBのポインタをノードCのLPlcに格納す
る。
■ ノードBのLD1g(1だげ加算されている)をノ
ードCのLD1gへ格納する。
■ ノードCへのポインタをノードBのLPlcへ格納
する。
■ 上位ノードが右方向であることをノードBのHDl
fへ設定する。
■ ノードBのRPldへ0を格納する。
■ ノードBのRDlhに0を格納する。
この処理を行った結果、第3図(b)に示すように再編
成される。
なお、上記実施例では主メモリ上のデータを管理するた
めの登録簿の検索処理について適用したが、トランザク
シーンデータの管理に適用してもよい。
〔発明の効果〕 以上のようにこの発明によれば、登録簿に新しいノード
が登録されると、このノードの1つ上位のノードから最
上位のノードまでの各ノードについて再編成チェックを
行い、効率の良い2分木を生成するようにしたので、登
録簿でのデータの検索時間を短縮し、効率の良いデータ
処理が行えるなどの効果がある。
例えば、A、B、C−、Y、Z、ZA、ZB。
ZC・・・、zy、zzという順で52個のデータが登
録された場合、単純に2分木へ登録すれば、第3図(a
)のように単方向に並べられる。よって、22を検索す
る場合は52回の比較判定が必要である。しかし、この
発明によるデータ処理システムでは第3図(b)のよう
に効率の良い2分木が構成され、22を検索する場合で
も19回の比較判定で済む。
【図面の簡単な説明】
第1図はこの発明の一実施例によるデータ処理システム
における登録簿のデータ構造を示す概念図、第2図はこ
の発明によるデータ処理システムの動作を説明するフロ
ーチャート、第3図はこの発明における登録簿を構成す
る2分木の再編成を説明する概念図、第4図は従来のデ
ータ処理システムにおいて生成される2分木とこの発明
のデータ処理システムにおいて生成される2分木の生成
事例を示す図、第5図は従来のデータ処理システムにお
ける登録簿のデータ構造を示す概念図、第6図は従来の
データ処理システムの動作を説明するフローチャート、
第7図は従来のデータ処理システムにおいて生成される
2分木の生成例を示す、図である。 図において、1はノード、2はデータである。 なお、図中、同一符号は同一、又は相当部分な示す。 (で/′)1 ) 第 o1 \ \ 図 \ W Y 第 5 図 0 (′tの3 ) 第 図 (b) (ゼの2) 第 図 1 cl

Claims (1)

    【特許請求の範囲】
  1. すでにロード済の主メモリ上の各データに対応するノー
    ドにより構成される2分木構造の登録簿を検索し、未だ
    登録されていないデータのみロードして、新たに該登録
    簿にロードされたデータのノードを登録して管理するデ
    ータ処理システムにおいて、前記登録簿にロードされた
    データのノードが登録されると、該ノードの1つ上位の
    ノードから最上位のノードまでの各ノードについて再編
    成チェックを行い、該再編成チェックで判定する条件を
    満たすことを確認して前記2分木を再編成することを特
    徴とするデータ処理システム。
JP2060451A 1990-03-12 1990-03-12 データ処理システム Pending JPH03260867A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2060451A JPH03260867A (ja) 1990-03-12 1990-03-12 データ処理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2060451A JPH03260867A (ja) 1990-03-12 1990-03-12 データ処理システム

Publications (1)

Publication Number Publication Date
JPH03260867A true JPH03260867A (ja) 1991-11-20

Family

ID=13142652

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2060451A Pending JPH03260867A (ja) 1990-03-12 1990-03-12 データ処理システム

Country Status (1)

Country Link
JP (1) JPH03260867A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1040255A (ja) * 1996-07-29 1998-02-13 Nec Software Ltd ハッシュ表管理装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1040255A (ja) * 1996-07-29 1998-02-13 Nec Software Ltd ハッシュ表管理装置

Similar Documents

Publication Publication Date Title
Brayton et al. An exact minimizer for Boolean relations
CN112016921A (zh) 交易处理方法、装置及设备
CN110399387A (zh) 基于表关联关系动态生成查询sql的方法及装置
WO2020096823A1 (en) Static data masking
CN107451204B (zh) 一种数据查询方法、装置及设备
JPH03260867A (ja) データ処理システム
CN112035530A (zh) 一种分布式实时支付***中的交易报文匹配方法及***
Gimbert On the control of asynchronous automata
JP2010521751A (ja) プログラム命令の圧縮のための圧縮エントリーの最適選択
CN110083603A (zh) 一种基于邻接表实现节点路径的查询方法及***
CN109542631A (zh) 一种备机的重演方法、装置、服务器及存储介质
CN109688014B (zh) 关键字驱动的Web服务自动组合方法
JP3293640B2 (ja) 回路データ接続追跡システム
JP2855133B2 (ja) エキスパートシステム
JP2001154890A (ja) Rdbデータキャッシングシステム及び記録媒体
JP2959606B2 (ja) 論理接続データ格納方法
CN118069713A (zh) 区块链中的交易读写集获取方法及区块链节点
KR100250997B1 (ko) 지리정보 시스템을 위한 벡터 도면 데이타 축약 방법
JPH11143749A (ja) リレーショナルデータベースマネジメントシステムおよびデータ管理方法
CN104572047A (zh) 一种基于Apache Tomcat的WEB数据库开发组件方法
JPH04220772A (ja) 設計支援システム
KR20010019831A (ko) 티에스피의 최적해를 순차적으로 생성하는 방법
CN114398847A (zh) 多输出实例的cnf生成方法、等价性验证方法、存储介质
JPS62121579A (ja) 機能ブロック展開装置
JPS6191723A (ja) 順序監視分類処理方式