Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JPH0471228B2 - - Google Patents
[go: Go Back, main page]

JPH0471228B2 - - Google Patents

Info

Publication number
JPH0471228B2
JPH0471228B2 JP61294203A JP29420386A JPH0471228B2 JP H0471228 B2 JPH0471228 B2 JP H0471228B2 JP 61294203 A JP61294203 A JP 61294203A JP 29420386 A JP29420386 A JP 29420386A JP H0471228 B2 JPH0471228 B2 JP H0471228B2
Authority
JP
Japan
Prior art keywords
key
hashing
processing
standard form
shift
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.)
Expired - Lifetime
Application number
JP61294203A
Other languages
Japanese (ja)
Other versions
JPS63146124A (en
Inventor
Masaaki Mitani
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP61294203A priority Critical patent/JPS63146124A/en
Publication of JPS63146124A publication Critical patent/JPS63146124A/en
Publication of JPH0471228B2 publication Critical patent/JPH0471228B2/ja
Granted legal-status Critical Current

Links

Landscapes

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

Description

【発明の詳細な説明】 〔概 要〕 データベースのアクセスを、キー項目によるハ
ツシングによつて行うデータ処理システムにおい
て、ハツシング対象のキー項目を標準形に変換
し、その単位データについて、種(seed)との加
算、奇数ビツトのシフト、偶数となる結果のビツ
ト反転を行うことにより、数値だけでなく、長さ
が異なる文字列に対しても、均質的なハツシング
を高速に実行できるようにしている。
[Detailed Description of the Invention] [Summary] In a data processing system that accesses a database by hashing using key items, the key items to be hashed are converted into a standard form, and the unit data is converted into a seed. By performing addition with , shifting odd bits, and reversing the bits of the even result, it is possible to perform homogeneous hashing at high speed not only for numbers but also for strings of different lengths. .

〔産業上の利用分野〕[Industrial application field]

本発明は、データベースへのレコードの格納/
検索位置を、ハツシングによつて決定するデータ
処理システムに係り、特に可変文字列キーに対し
ても均質的なハツシングを可能とした均質ハツシ
ング処理方式に関するものである。
The present invention provides a method for storing records in a database/
The present invention relates to a data processing system that determines a search position by hashing, and particularly to a homogeneous hashing processing method that enables homogeneous hashing even for variable character string keys.

キー項目の内容によつて、データベースにレコ
ードを格納する場合、格納場所の偏りをなくすた
めに、できるだけ均質的なハツシングを行うこと
が必要とされる。
When storing records in a database depending on the content of key items, it is necessary to perform hashing as homogeneously as possible to eliminate bias in storage locations.

〔従来の技術〕[Conventional technology]

従来から、データベースへのレコードの格納/
検索に必要とされるハツシングでは、種々の方式
が用いられている。これらの方式における数値タ
イプのキー項目に対するハツシングでは、ほぼ満
足できるものが多い。しかし、データベースのキ
ー検索では、数値だけでなく、長さの異なる文字
列をハツシングキーとして用いることが必要にな
ることが比較的多い。
Traditionally, storing records in a database/
Various methods are used for hashing required for searching. Hashing for numerical type key items in these methods is mostly satisfactory. However, in database key searches, it is relatively often necessary to use not only numerical values but also character strings of different lengths as hashing keys.

従来、このような可変長の文字列を、ハツシン
グ対象のキー項目とする場合、例えばその文字列
の各文字コードを加算し、数値に変換するとか、
可変長文字列の中から固定長の一部分を抽出し
て、それをハツシング対象とすることが行われて
いた。
Conventionally, when using such a variable-length character string as a key item for hashing, for example, each character code of the character string is added and converted to a numerical value.
A fixed-length portion of a variable-length character string is extracted and used for hashing.

〔発明が解決しようとする問題点〕[Problem that the invention seeks to solve]

文字列がハツシング対象のキー項目になる場
合、文字データの特性から、ハツシングの結果に
偏りが生じ易いという問題がある。ハツシング結
果に偏りがあると、異なるレコードの格納アドレ
スが同じ値になるため、余分な格納場所や処理が
必要になることがあり、データベースの性能が劣
化する。そこで、ハツシング結果に偏りが生じな
いように、多くのランダマイズ処理を実行すれ
ば、均質的なハツシング結果が得られるが、この
処理時間が長くなると、効率が悪くなるという問
題がある。
When a character string is a key item to be hashed, there is a problem in that the hashing results are likely to be biased due to the characteristics of the character data. If the hashing results are biased, the storage addresses of different records will have the same value, which may require extra storage space and processing, and the performance of the database will deteriorate. Therefore, if many randomization processes are performed to prevent bias in the hashing results, a homogeneous hashing result can be obtained, but there is a problem in that efficiency deteriorates as the processing time becomes longer.

本発明は上記問題点の解決を図り、比較的処理
時間が短くて、均質的なハツシング結果が得られ
る可変長文字列キー等のハツシングに適した均質
ハツシング処理方式を提供することを目的として
いる。
The present invention aims to solve the above-mentioned problems and provides a homogeneous hashing processing method suitable for hashing variable-length character string keys, etc., which takes a relatively short processing time and can obtain homogeneous hashing results. .

〔問題点を解決するための手段〕[Means for solving problems]

第1図は本発明の原理ブロツク図を示す。 FIG. 1 shows a block diagram of the principle of the present invention.

第1図において、10はハツシング対象となる
キー項目についてハツシングを行うハツシング処
理部、11はハツシング対象の各数値キーおよび
文字キーを標準形に変換する処理を行う標準形変
換処理部、12は標準形に変換されたキーを単位
データ毎に取り出して加算を含む演算を行う演算
部、13は演算部12による演算結果を奇数シフ
トにより混ぜ合わせるシフト処理部、14はシフ
ト結果が偶数であるときにビツト反転を行う反転
処理部である。
In FIG. 1, 10 is a hashing processing unit that performs hashing on key items to be hashed, 11 is a standard form conversion processing unit that converts each numeric key and character key to be hashed into a standard form, and 12 is a standard form conversion processing unit. 13 is a shift processing unit that mixes the calculation results of the calculation unit 12 by shifting an odd number; 14 is a shift processing unit that performs calculations including addition by extracting the key converted into a shape for each unit data; This is an inversion processing section that performs bit inversion.

ハツシング対象となる各キー項目Kiは、標準形
変換処理部11によつて、各種数値および文字に
共通な標準形のキーNiに変換される。このキー
Niは、演算部12によつて、例えば1バイトの
単位データ毎に順次取り出されて、ランダマイズ
の種(seed)となるIiまたは中間結果であるrj
の加算が行われる。シフト処理部13は、演算部
12の演算結果を、奇数ビツトの循環シフト等に
より、混ぜ合わせる処理を行う。反転処理部14
は、シフト処理部13によるシフト結果が隅数で
ある場合に、16進数の‘FFF…FF'との排他的論
理和をとることにより、中間結果を奇数にする。
Each key item K i to be hashed is converted by the standard form conversion processing unit 11 into a standard form key N i common to various numerical values and characters. this key
N i is sequentially extracted by the calculation unit 12, for example, in units of 1-byte data, and is added to I i , which is a seed for randomization, or r j , which is an intermediate result. The shift processing unit 13 performs a process of mixing the calculation results of the calculation unit 12 by cyclically shifting odd-numbered bits or the like. Reversal processing section 14
When the shift result by the shift processing unit 13 is a corner number, the intermediate result is made an odd number by performing an exclusive OR with the hexadecimal number 'FFF...FF'.

キーNiの各単位データについて、演算を繰り
返し、キーNiに含まれるすべての単位データ
(l個)について処理したならば、その結果rlを、
キーNiのランダマイズ結果Riとする。
If the calculation is repeated for each unit data of key N i and all unit data (l pieces) included in key N i are processed, the result r l is
Let R i be the randomization result of key N i .

〔作 用〕[Effect]

キー項目には、数値キーや文字キーがあり、数
値キーには、いわゆる外部10進、内部10進、2進
等の種々のタイプが存在する。本発明によれば、
標準形変換処理部11によつて、各種タイプの数
値および文字のキーを、標準形な形式に変換する
ので、各種タイプの数値および文字を、同様にラ
ンダマイズすることができる。
Key items include numeric keys and character keys, and there are various types of numeric keys, such as so-called external decimal, internal decimal, and binary. According to the invention,
Since the standard format conversion processing unit 11 converts various types of numerical values and character keys into standard formats, various types of numerical values and characters can be similarly randomized.

演算部12は、標準形に変換されたキーに含ま
れるすべての単位データを順次処理するので、特
にハツシング対象となるキーが可変長文字列であ
る場合に、その可変長文字列に含まれるすべての
文字が、ランダマイズのための演算に用いられる
ことになり、良好な結果が得られる。
Since the calculation unit 12 sequentially processes all the unit data included in the key converted to the standard form, especially when the key to be hashed is a variable length string, all the unit data included in the variable length string is characters will be used in the calculation for randomization, and a good result will be obtained.

シフト処理部13は、中間結果について、奇数
シフトを行い、反転処理部14は、その結果が偶
数である場合にビツト反転を行う。ランダマイズ
処理において、奇数を演算対象としたほうが、偶
数を演算対象とするよりも、良好なランダマイズ
結果が得られるので、これらによつて、より均質
的なハツシングが行われることになる。
The shift processing section 13 performs an odd number shift on the intermediate result, and the inversion processing section 14 performs bit inversion when the result is an even number. In the randomization process, better randomization results can be obtained when odd numbers are used as the calculation targets than when even numbers are used as the calculation targets, so that more homogeneous hashing is performed.

〔実施例〕〔Example〕

第2図は本発明が適用されるシステムの例、第
3図は複数のキー項目のランダマイズ処理概念説
明図、第4図は本発明の一実施例に係る標準形変
換処理説明図、第5図は本発明の一実施例に係る
ランダマイズ処理説明図、第6図は本発明の一実
施例処理フローを示す。
FIG. 2 is an example of a system to which the present invention is applied, FIG. 3 is a conceptual diagram of randomization processing of a plurality of key items, FIG. 4 is a diagram illustrating standard form conversion processing according to an embodiment of the present invention, and FIG. The figure is an explanatory diagram of randomization processing according to an embodiment of the present invention, and FIG. 6 shows a processing flow of an embodiment of the present invention.

本発明は、例えば第2図に示すようなシステム
に適用される。第2図において、10は第1図に
示すハツシング処理部と同じもの、20はCPU
およびメモリなどからなる処理装置、21はデー
タベース管理システム、22はレコード格納部、
23はキーによつてレコードを検索するレコード
検索部、24は入出力部、25はデータベースに
格納されるレコード、26は磁気デイスク装置等
の外部記憶装置、27はデータベース、28はデ
イスプレイ、29はキーボードを表す。
The present invention is applied to a system as shown in FIG. 2, for example. In Fig. 2, 10 is the same as the hashing processing section shown in Fig. 1, and 20 is the CPU.
21 is a database management system; 22 is a record storage unit;
23 is a record search unit that searches for records by key; 24 is an input/output unit; 25 is a record stored in a database; 26 is an external storage device such as a magnetic disk device; 27 is a database; 28 is a display; Represents the keyboard.

データベース27に新しいレコード25を格納
する場合、レコード格納部22は、レコード25
の所定のキーを用いて、ハツシング処理部10を
呼び出すことにより、外部記憶装置26における
格納位置を決定する。例えば、品名、産地、品種
番号によつて、データベース27におけるレコー
ドがユニークに定まるとすると、レコード25の
格納位置は、「リンゴ」,「AOMORI」の可変長文
字列と、「61105」の数値とによつて、予め定めら
れたハツシングにより、決定されることになる。
レコード検索部23による検索の場合にも、同様
のハツシングにより、検索対象レコードが存在す
る位置が決定される。
When storing a new record 25 in the database 27, the record storage unit 22 stores the record 25.
By calling the hashing processing unit 10 using a predetermined key, the storage position in the external storage device 26 is determined. For example, if a record in the database 27 is uniquely determined by the product name, production area, and variety number, the storage location of the record 25 will be the variable-length character strings "apple" and "AOMORI" and the numerical value "61105". It is determined by predetermined hashing.
In the case of a search by the record search unit 23, the position where the search target record exists is determined by similar hashing.

このハツシングが均質でないと、格納位置の衝
突が起こり、オーバフロー等の処理が必要となつ
て効率が悪くなる。
If this hashing is not homogeneous, collisions of storage positions will occur, and overflow processing will be required, resulting in poor efficiency.

複数キー項目によるハツシングのためのランダ
マイズは、第3図に示すように行われる。第3図
において、K1〜Koはキー項目であり、第2図の
ようなレコード25では、品名がK1、産地がK2
品種番号がK3となる。Iiはランダマイズのいわゆ
る種であり、Riはh(Ii,Ki)によるランダマイズ
結果である。
Randomization for hashing using multiple key items is performed as shown in FIG. In Fig. 3, K 1 to K o are key items, and in the record 25 as shown in Fig. 2, the product name is K 1 , the production area is K 2 ,
The product number is K3 . I i is the so-called seed of randomization, and R i is the randomization result by h(I i , K i ).

初期値として用いられる種I1は、例えばX‘
AAAAAAAA'(16進数)というような任意の定
数である。このI1とキー項目K1とをパラメータと
する所定のランダマイズ関数hによつて、R1
求められる。次のキー項目K2について処理する
場合、R1を種I2として、I2とK2とをパラメータと
するランダマイズ関数hによる演算を行う。同様
に各キーKiについて処理を進め、最後のキーKo
についての処理の出力結果Roが、ハツシングに
よる格納位置の決定に用いられる。
The species I 1 used as the initial value is, for example, X'
It is an arbitrary constant such as AAAAAAAAA' (hexadecimal number). R 1 is determined by a predetermined randomization function h using I 1 and key item K 1 as parameters. When processing the next key item K 2 , an operation is performed using a randomization function h using R 1 as a seed I 2 and I 2 and K 2 as parameters. Proceed in the same way for each key K i , and the last key K o
The output result R o of the processing for is used to determine the storage position by hashing.

その格納位置は、データベースにおけるプライ
ムページのページ数がPで、1ロジカルページ内
のページ数がLで、Eを求めるエントリロジカル
ページの番号であるとすると、 E=〔(|Ro|mod P)÷L〕 である。ここで、記号| |は絶対値の記号であ
り、記号〔 〕は、小数部分の切り捨てを行うこ
とを意味するガウス記号である。
Its storage location is as follows: Assuming that the number of prime pages in the database is P, the number of pages in one logical page is L, and the number of the entry logical page for which E is sought, E=[(|R o | mod P )÷L]. Here, the symbol | | is the symbol of absolute value, and the symbol [ ] is a Gauss symbol meaning that the decimal part is rounded down.

本発明は、均質的なハツシングを可能とする上
記ランダマイズ関数hに関する効率的な処理手段
を提供するものである。以下、実施例に従つて具
体的に説明する。
The present invention provides efficient processing means for the randomization function h that enables homogeneous hashing. Hereinafter, a detailed explanation will be given according to examples.

第1図に示す標準形変換処理部11は、例えば
第4図に示すような変換処理を行う。
The standard form conversion processing unit 11 shown in FIG. 1 performs conversion processing as shown in FIG. 4, for example.

キー項目が文字列である場合、第4図イに示す
ように、その全体をそのまま標準形とする。ま
た、数値については、元のキーが外部10進、内部
10進、2進のいずれの形式であつても、第4図ロ
〜ニ図示のように、10バイトの内部10進形式に変
換する。変換後の符号を示すS′は、値が正であれ
ば、16進の‘C'であり、負であれば、16進の‘
D'である。
If the key item is a character string, the entire string is taken into standard form as shown in Figure 4A. Also, for numbers, the original key is external decimal, internal
Regardless of whether it is in decimal or binary format, it is converted into a 10-byte internal decimal format as shown in FIG. S′, which indicates the sign after conversion, is a hexadecimal 'C' if the value is positive, and a hexadecimal ' if the value is negative.
It is D'.

この標準形への変換結果Niによつて、例えば
第5図に示すようなランダマイズ処理がなされ
る。以下、第5図に示す(a)〜(e)に従つて説明す
る。
Randomization processing as shown in FIG. 5, for example, is performed using the conversion result N i to the standard form. Hereinafter, explanation will be made according to (a) to (e) shown in FIG.

(a) rjにNiの左から(l−j)バイト目を加え、
これを中間結果RNDとする。なお、lは、Ni
のバイト長であり、jは0から(l−1)まで
のループ変数である。初期値r0には、ランダマ
イズの種Iiを用いる。RNDは、4バイトの2進
数である。
(a) Add the (l-j)th byte from the left of N i to r j ,
Let this be the intermediate result RND. Note that l is N i
j is a loop variable from 0 to (l-1). The randomization seed I i is used for the initial value r 0 . RND is a 4-byte binary number.

(b) 中間結果RNDを、例えば7ビツト、右方向
へ循環シフトする。
(b) Circularly shift the intermediate result RND to the right, for example by 7 bits.

(c) シフト後の中間結果RNDが、偶数であれば、
X‘FFFFFFFF'との排他的論理和によつてビ
ツト反転を行う。
(c) If the intermediate result RND after the shift is an even number,
Bit inversion is performed by exclusive OR with X'FFFFFFFF'.

(d) その中間結果RNDを、さらに7ビツト、右
方向へ循環シフトする。
(d) Circularly shift the intermediate result RND by an additional 7 bits to the right.

(e) シフトの結果RNDに、再度Niの左から(l
−j)バイト目を加える。jに1を加え、(j
+1)がlになるまで、同様に処理(a)〜処理(e)
を繰り返す。処理(e)の演算による中間結果
RNDが、処理(a)の入力となる。最終結果rL
ランダマイズ結果Riとされる。
(e) As a result of the shift, RND is again shifted from the left of N i (l
−j) Add byte. Add 1 to j, (j
Process (a) to process (e) in the same way until +1) becomes l.
repeat. Intermediate result of operation in process (e)
RND becomes the input for process (a). The final result r L is taken as the randomization result R i .

第6図は、具体的な本発明の一実施例フローで
ある。第6図で用いられている変数等の記号の意
味は、以下の通りである。
FIG. 6 is a flowchart of a specific embodiment of the present invention. The meanings of symbols such as variables used in FIG. 6 are as follows.

KEYITEM(N):ランダム・キー項目群 N :キー項目へのインデツクス S :ランダム・キー項目群の個数 X(I) :キーのバイト目 I :キーのバイト・インデツクス RND :4バイト長のランダム数 PS:対象レンジまたはサブレンジの先頭ページ PE:対象レンジまたはサブレンジの終了ページ PEN:エントリページ LP :1ロジカルページ中のページ数 mod:剰余を求める関数 〔 〕:商を求める記号 なお、第6図で行われる演算は、すべて符号な
しで行われている。以下の説明における〜
は、第6図に示す処理〜に対応する。
KEYITEM(N): Random key item group N: Index to key item S: Number of random key item groups X(I): Key byte number I: Key byte index RND: 4-byte random number P S : First page of the target range or subrange P E : End page of the target range or subrange P EN : Entry page LP: Number of pages in one logical page mod: Function for calculating the remainder [ ]: Symbol for calculating the quotient All operations performed in FIG. 6 are performed without signs. ~ in the following explanation
corresponds to the processing shown in FIG.

RNDに初期値“2863311530”を設定する。
これは、16進数のX‘AAAAAAAA'である。
またキー項目に対するインデツクスNを1に初
期化する。
Set the initial value “2863311530” to RND.
This is X'AAAAAAAAA' in hexadecimal.
Also, the index N for the key item is initialized to 1.

N番目のキー項目が数値タイプであるか文字
タイプであるかを判定する。
Determine whether the Nth key item is a numerical type or a character type.

N番目のキー項目が数値タイプである場合、
内部10進に変換し、それをXとする。Iは、キ
ー長の10にする。文字タイプである場合には、
キー項目の文字列をそのままXとし、Iを文字
列のバイト数とする。
If the Nth key item is of numeric type,
Convert it to internal decimal and call it X. I is the key length of 10. If it is a character type,
Let the character string of the key item be X as it is, and let I be the number of bytes of the character string.

RNDに、XのIバイト目を加える。 Add the Ith byte of X to RND.

RNDについて7ビツトの右回り循環シフト
を行う。
Perform a 7-bit clockwise circular shift on RND.

RNDが奇数であるか否かを判定する。奇数
であれば、次の処理をスキツプする。
Determine whether RND is an odd number. If the number is odd, skip the next process.

RNDについて全ビツトを反転する。なお、
(232−1)はX‘FFFFFFFF'である。
Invert all bits for RND. In addition,
(2 32 -1) is X'FFFFFFFF'.

RNDに、XのIバイト目を加える。 Add the Ith byte of X to RND.

RNDについて7ビツトの右回り循環シフト
を行う。
Perform a 7-bit clockwise circular shift on RND.

Iから1を引く。 Subtract 1 from I.

Xのすべてのバイトについて処理が終了した
か否かを、Iが0以下になつたか否かにより判
定する。0より大きければ、処理へ制御を戻
し、同様に処理を繰り返す。
Whether processing has been completed for all bytes of X is determined based on whether I has become 0 or less. If it is larger than 0, control is returned to the process and the process is repeated in the same way.

Iが0以下であれば、Nに1を加える。 If I is less than or equal to 0, add 1 to N.

すべてのキー項目について処理が終了したか
否かを判定する。NがSより小さければ、未終
了であるので、処理へ制御を戻し、次のキー
項目について処理を続ける。
Determine whether processing has ended for all key items. If N is smaller than S, the process has not finished, so control is returned to the process and processing continues for the next key item.

RNDを符号付2進数としてみた場合、負で
あるか正であるかを判定する。正であれば、次
の処理をスキツプする。
When RND is viewed as a signed binary number, it is determined whether it is negative or positive. If it is positive, skip the next process.

RNDを符号付32ビツトの2進数と考えた上
で、(RND+1)の絶対値を求める。
Considering RND as a signed 32-bit binary number, find the absolute value of (RND+1).

最終結果のRNDに基づき、レコードの格
納/検索位置であるエントリページPENを計算
する。
Based on the final result RND, the entry page PEN , which is the record storage/retrieval position, is calculated.

以上の処理では、通常の計算機が有している基
本的な命令等を利用することができるので、高速
に演算を実行することが可能である。
In the above processing, basic instructions and the like possessed by a normal computer can be used, so that calculations can be executed at high speed.

〔発明の効果〕〔Effect of the invention〕

以上説明したように、本発明によれば、可変長
文字列がハツシングキーとなつている場合でも、
簡単に均質的なハツシングを行うことができるよ
うになる。また、演算処理内容も比較的単純であ
り、高速にハツシングを行うことが可能である。
As explained above, according to the present invention, even when a variable length character string is used as a hashing key,
It becomes possible to easily perform homogeneous hashing. Furthermore, the content of the calculation process is relatively simple, and hashing can be performed at high speed.

【図面の簡単な説明】[Brief explanation of drawings]

第1図は本発明の原理ブロツク図、第2図は本
発明が適用されるシステムの例、第3図は複数キ
ー項目のランダマイズ処理概念説明図、第4図は
本発明の一実施例に係る標準形変換処理説明図、
第5図は本発明の一実施例に係るランダマイズ処
理説明図、第6図は本発明の一実施例処理フロー
を示す。 図中、10はハツシング処理部、11は標準形
変換処理部、12は演算部、13はシフト処理
部、14は反転処理部を表す。
Fig. 1 is a block diagram of the principle of the present invention, Fig. 2 is an example of a system to which the present invention is applied, Fig. 3 is a conceptual illustration of randomization processing of multiple key items, and Fig. 4 is an example of an embodiment of the present invention. An explanatory diagram of the standard form conversion process,
FIG. 5 is an explanatory diagram of randomization processing according to an embodiment of the present invention, and FIG. 6 shows a processing flow of an embodiment of the present invention. In the figure, 10 represents a hashing processing section, 11 a standard form conversion processing section, 12 a calculation section, 13 a shift processing section, and 14 an inversion processing section.

Claims (1)

【特許請求の範囲】 1 データベースへのレコードの格納/検索位置
を、所定のハツシング対象となる1または複数の
キー項目に基づいて決定するデータ処理システム
において、 上記キー項目となる数値キーおよび文字キー
を、所定の標準形に変換する変換処理手段11
と、 標準形に変換されたキーを、単位データ毎に取
り出して、加算を含む演算を行う演算手段12
と、 演算結果を奇数シフトにより混ぜ合わせるシフ
ト処理手段13と、 シフト結果が偶数であるときにビツト反転を行
う反転処理手段14とを備え、 上記標準形に変換されたキーを、単位データ毎
に、上記演算手段12、上記シフト処理手段1
3、上記反転処理手段14によりランダマイズ処
理するようにしたことを特徴とする均質ハツシン
グ処理方式。
[Scope of Claims] 1. In a data processing system that determines the storage/search position of records in a database based on one or more key items that are subject to predetermined hashing, numeric keys and character keys that are the key items are Conversion processing means 11 for converting into a predetermined standard form
and a calculation means 12 which extracts the key converted into the standard form for each unit of data and performs calculations including addition.
, a shift processing means 13 that mixes the operation results by shifting odd numbers, and an inversion processing means 14 that performs bit inversion when the shift result is an even number, and converts the key converted into the standard form into each unit data. , the arithmetic means 12, the shift processing means 1
3. A homogeneous hashing processing method characterized in that randomization processing is performed by the reversal processing means 14.
JP61294203A 1986-12-10 1986-12-10 Homogeneous hashing method Granted JPS63146124A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61294203A JPS63146124A (en) 1986-12-10 1986-12-10 Homogeneous hashing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61294203A JPS63146124A (en) 1986-12-10 1986-12-10 Homogeneous hashing method

Publications (2)

Publication Number Publication Date
JPS63146124A JPS63146124A (en) 1988-06-18
JPH0471228B2 true JPH0471228B2 (en) 1992-11-13

Family

ID=17804655

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61294203A Granted JPS63146124A (en) 1986-12-10 1986-12-10 Homogeneous hashing method

Country Status (1)

Country Link
JP (1) JPS63146124A (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2708625B2 (en) * 1990-10-19 1998-02-04 富士通株式会社 Homogeneous hashing processing method
EP0483424A1 (en) * 1990-10-30 1992-05-06 International Business Machines Corporation Key hashing in data processors

Also Published As

Publication number Publication date
JPS63146124A (en) 1988-06-18

Similar Documents

Publication Publication Date Title
US5442350A (en) Method and means providing static dictionary structures for compressing character data and expanding compressed data
US8499018B2 (en) Sortable floating point numbers
EP0951753B1 (en) Computer sorting system for data compression
US3675211A (en) Data compaction using modified variable-length coding
JP3229180B2 (en) Data compression system
EP0688105B1 (en) A bit string compressor with boolean operation processing capability
JPS6097435A (en) Arithmetic processor
US5832037A (en) Method of compressing and expanding data
US7068192B1 (en) System and method for encoding and decoding variable-length data
JP2746109B2 (en) Huffman code decoding circuit
Ord-Smith Generation of permutation sequences: part 1
JPH0471228B2 (en)
JPH0315221B2 (en)
JP3038233B2 (en) Data compression and decompression device
JPS6170635A (en) rounding control device
JP3199292B2 (en) Run-length extraction method, Huffman code conversion method, and MH coding processing method in Huffman code coding
JP2708625B2 (en) Homogeneous hashing processing method
JPH05241775A (en) Data compression method
JP3038234B2 (en) Dictionary search method for data compression equipment
JPS642970B2 (en)
JP3344755B2 (en) Ascending integer sequence data compression and decoding system
JP2772125B2 (en) Dictionary search method
JP2535655B2 (en) Dictionary search method
JPS6373422A (en) information retrieval device
JPH01239632A (en) Information retrieval system

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees