JPH06231172A - 索引方式 - Google Patents

索引方式

Info

Publication number
JPH06231172A
JPH06231172A JP5015153A JP1515393A JPH06231172A JP H06231172 A JPH06231172 A JP H06231172A JP 5015153 A JP5015153 A JP 5015153A JP 1515393 A JP1515393 A JP 1515393A JP H06231172 A JPH06231172 A JP H06231172A
Authority
JP
Japan
Prior art keywords
bucket
value
data
depth
entry
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
JP5015153A
Other languages
English (en)
Other versions
JP3164257B2 (ja
Inventor
Yasuhiro Hirano
泰宏 平野
Fumimitsu Miura
史光 三浦
Nobuyuki Kobayashi
伸幸 小林
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP01515393A priority Critical patent/JP3164257B2/ja
Publication of JPH06231172A publication Critical patent/JPH06231172A/ja
Application granted granted Critical
Publication of JP3164257B2 publication Critical patent/JP3164257B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】 【目的】 データを挿入する時間を短縮し、プロセス間
の同時走行性を高める。 【構成】 キー値からハッシュ値を計算するハッシュ関
数計算手段と、データの格納場所を保持するポインタま
たはデータ3−2〜6−2および局所深さ3−1〜6−
1を保持するバケット3〜6と、前記バケットの格納場
所を保持する0番から2の整数(≧大域深さ)乗−1番
までの2の整数乗個のエントリ1−2〜1−9および大
域深さ1−1を持ちエントリ数を変化させうるディレク
トリ1と、作業用変数2とでアクセス手段を構成し、デ
ータを検索する際にバケットの局所深さが作業変数値以
下であるバケットを見つけるまでバケット探索を繰り返
すことにより、バケット分割時に更新する必要のあるエ
ントリ数を削減できるようにし、また、ディレクトリの
メンテナンスを行なうことによって、バケット探索を繰
り返す回数を削減できるようにしている。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、記憶装置に格納された
データの中から条件を満たすデータを取り出すアクセス
手段における索引方式に関するものである。
【0002】
【従来の技術】一つまたは複数のフィールドから構成さ
れるデータを記憶装置に格納し、一つまたは複数のフィ
ールドからなるキーが指定した値であるようなデータが
該記憶装置に格納されている位置を検索したり新しいデ
ータを格納する位置を決定する処理を高速に行なう索引
方式としては、ツリー構造を用いたものと、ハッシュを
用いたもの等がある。
【0003】データ数をnとすると検索に要する時間
は、ツリーではO(log n)、ハッシュでは最短ではO
(1)となり、アクセス時間を短縮するためには、ハッシ
ュが有効である。
【0004】ところが、データを格納する領域が静的に
割り当てられる静的ハッシュではデータ量が増減する環
境には適応できない。割り当てられた領域サイズを越え
てデータを追加する場合、領域を再構成する必要があ
る。
【0005】そこで、領域サイズが可変で、再構成の必
要がない動的ハッシュ法が R.J.Enbody,H.G.Du, "Dynamic Hashing Schemes" ACM C
omputingServeys,Vol.20,No.2,pp.85-113 に示されてい
る。
【0006】動的ハッシュ法の1つに拡張可能ハッシュ
がある。拡張可能ハッシュは、図7に示す如く、大域深
さと、{2の(大域深さ)乗}個のエントリを持つディ
レクトリと、該エントリからポイントされデータまたは
データの格納されるアドレスと局所深さを記憶するバケ
ットと、キーの値からハッシュ値を計算するハッシュ関
数計算手段とから構成される。
【0007】キーが所望の値を持つデータを検索する際
には、ハッシュ関数計算手段を用いてキーの値からハッ
シュ値を計算し、ハッシュ値の下位から大域深さ分のビ
ットを用いてエントリを参照し、該エントリが指すバケ
ット内のデータを検索して所望のデータを得る。
【0008】データを挿入する際には、ハッシュ関数計
算手段を用いて該データのキーの値からハッシュ値を計
算し、ハッシュ値の下位から大域深さ分のビットを用い
てエントリを参照し、該バケットに格納領域があれば該
バケットに該データを格納する(図8(a)参照)。
【0009】該バケットに格納領域がなければ、該バケ
ット内の全てのデータまたはポインタと挿入したいデー
タまたは該データへのポインタに関してハッシュ値の下
位から{(該バケットの局所深さ)+1}ビットの値に
よって該データまたはポインタを2つのバケットに分割
し、2つのバケットの局所深さを{(該バケットの局所
深さ)+1}とする。
【0010】そして、該2つのバケットの局所深さが大
域深さ以下であれば(図8(b)参照)、該分割された
バケットを指していた全てのエントリを、エントリ番号
の下位から(該2つのバケットの局所深さ)ビットの値
と該エントリが指すバケット内のポインタが指すデータ
またはデータのハッシュ値の下位から(該バケットの局
所深さ)ビットの値が等しくなるように更新する。
【0011】該2つのバケットの局所深さが大域深さよ
り大きければ(図8(c)参照)、(2の大域深さ乗)
番から[{2の(該2つのバケットの局所深さ)乗}−
1]番までのエントリをディレクトリに追加し、追加し
た全てのエントリと該分割されたバケットを指していた
エントリを該エントリが指すバケット内のポインタが指
すデータまたはデータのハッシュ値の下位から(該バケ
ットの局所深さ)ビットの値とエントリ番号の下位から
(該バケットの局所深さ)ビットの値が等しくなるよう
に更新し、大域深さを該2つのバケットの局所深さと等
しくする。
【0012】拡張可能ハッシュでは、複数のエントリが
1つのバケットを指す場合があり、その場合、エントリ
番号の(該バケットの局所深さ)ビット以下が全て等し
いエントリが、該バケットを指す。
【0013】
【発明が解決しようとする課題】上記拡張可能ハッシュ
では、バケットの分割時に多くのエントリの更新を必要
とする場合があり、また、ディレクトリ拡張の際に多数
のエントリをコピーする必要があるため、挿入の処理時
間が長くなっていた。さらに、その間、他のプロセスは
該バケットおよびディレクトリの更新ができないため、
プロセス間の同時走行性が低下するという問題があっ
た。
【0014】本発明は、上記に鑑みてなされたもので、
その目的としては、データを挿入する時間を短縮し、プ
ロセス間の同時走行性を高めた索引方式を提供すること
にある。
【0015】
【課題を解決するための手段】上記目的を達成するた
め、データを格納する記憶装置と、該記憶装置に格納さ
れたデータのうち所望のキー値を持つデータの格納場所
を調べるためのアクセス手段を具備する計算機システム
において、本発明は、前記アクセス手段を、キー値から
ハッシュ値を計算するハッシュ関数計算手段と、データ
の格納場所を保持するポインタまたはデータおよび局所
深さを保持するバケットと、前記バケットの格納場所を
保持する0番から2の整数(≧大域深さ)乗−1番まで
の2の整数乗個のエントリおよび大域深さを持ちエント
リ数を変化させうるディレクトリと、作業用変数とで構
成し、所望のキー値を持つデータを検索する際には、キ
ー値からハッシュ値を計算し、大域深さを作業用変数に
代入し、ハッシュ値の下位から該作業用変数値分のビッ
トを用いてエントリを参照し、該エントリがポイントす
るバケットの局所深さと該作業用変数値を比較し、該作
業用変数値を越えている場合には該作業用変数値に1を
加えたものを該作業用変数値の新しい値として再度上記
エントリの参照を行ない、該バケットの局所深さが該作
業用変数値以下の場合には該バケット内のデータを検索
して所望のデータを得るようにし、また、データを挿入
する際には、該データのキー値からハッシュ値を計算
し、前記大域深さを作業用変数に代入し、ハッシュ値の
下位から該作業用変数値分のビットを用いてエントリを
参照し、該エントリがポイントするバケットの局所深さ
と該作業用変数値を比較し、該作業用変数値を越えてい
る場合には該作業用変数値に1を加えたものを該作業用
変数値の新しい値として再度上記エントリの参照を行な
い、該バケットの局所深さが該作業用変数値以下の場合
には該バケットに格納領域があれば該バケットに該デー
タを格納し、該バケットに格納領域がなければ、該バケ
ット内の全てのデータまたはポインタと挿入したいデー
タまたは該データへのポインタに関してハッシュ値の下
位から該バケットの局所深さ+1ビットの値によって該
データまたはポインタを2つのバケットに分割し、2つ
のバケットの局所深さを該バケットの局所深さ+1と
し、該バケットを指していた全てのエントリを、エント
リ番号の下位から該2つのバケットの局所深さビットの
値と該エントリが指すバケット内のポインタが指すデー
タまたはデータのハッシュ値の下位から該バケットの局
所深さビットの値が等しくなるように更新することを要
旨とする。
【0016】
【作用】本発明の索引方式では、データを検索する際に
バケットの局所深さが作業変数値以下であるバケットを
見つけるまでバケット探索を繰り返すことにより、バケ
ット分割時に更新する必要のあるエントリ数を削減でき
る。
【0017】また、ディレクトリのメンテナンスを行な
うことによって、バケット探索を繰り返す回数を削減で
きる。
【0018】
【実施例】以下、図面を用いて本発明の実施例を説明す
る。
【0019】図1は本発明の一実施例の構成を示す図
で、1はディレクトリ、1−1は大域深さ、1−2〜1
−9はエントリ、2は作業変数、3〜6はバケット、3
−1〜6−1は局所深さ、3−2〜6−2はデータであ
る。なお、エントリ1−4,1−6,1−8,1−9は
使用されていないものとする。
【0020】次に、本実施例の作用を、データの検索、
データの挿入およびディレクトリのメンテナンスの処理
に大別して説明する。
【0021】まず、データの検索について、図2に示す
処理フローチャートを用いて説明する。
【0022】作業変数2に大域深さ1−1の値を代入し
て(ステップ100)、ハッシュ値の下位から作業変数
2の値ビットを用いてディレクトリ1を検索し、エント
リの指すバケットを参照する(ステップ110)。
【0023】局所深さが作業変数2の値を越えていれば
(ステップ120)、作業変数2の値に1を加えてステ
ップ110に戻るが(ステップ130)、局所深さが作
業変数2の値以下であれば(ステップ120)、ステッ
プ140に進んで、バケットの中にあるデータを検索す
る。
【0024】具体例として、図1でハッシュ値の下位3
ビットが000,011のデータを検索する場合で更
に、説明することにする。
【0025】まず、ハッシュ値が000のデータを検索
する場合、作業変数2に大域深さ1−1の値を代入する
(ステップ100)。
【0026】作業変数2の値は1であるので、ハッシュ
値の下位1ビット0を用いてエントリ1−2の指すバケ
ット3を参照する(ステップ110)。
【0027】ここで、局所深さ3−1が作業変数2の値
以下であるので、バケット3の中にあるデータを検索す
ることになる(ステップ120,140)。
【0028】次に、ハッシュ値が011のデータを検索
する場合、作業変数2に大域深さ1−1の値を代入する
(ステップ100)。
【0029】作業変数2の値は1であるので、ハッシュ
値の下位1ビット1を用いてエントリ1−3の指すバケ
ット4を参照する(ステップ110)。
【0030】しかし、この場合、局所深さ4−1が作業
変数2の値より大きいので、作業変数2の値に1を加え
てステップ110に戻る(ステップ120,130)。
【0031】今度は、作業変数2の値は2であるので、
ハッシュ値の下位2ビット11を用いてエントリ1−5
の指すバケット5を参照する(ステップ110)。
【0032】そして、局所深さ5−1が作業変数2の値
以下であるので、バケット5の中にあるデータを検索す
ることになる(ステップ120,140)。
【0033】次にデータの挿入について、図3に示す処
理フローチャートを用いて説明する。
【0034】挿入するデータのキー値を用いて、図2の
ステップ100〜130に示した検索手順でバケット
(バケットAとする)を検索する(ステップ200)。
【0035】バケットAにデータを挿入する空き領域が
あれば(ステップ210)、バケットAにデータを挿入
して処理を終了するが(ステップ270)、空き領域が
ない場合には、新しいバケット(バケットBとする)を
作成し、局所深さをバケットAの局所深さ+1とし、バ
ケットAのデータの内、ハッシュ値の下位からバケット
Aの局所深さ+1ビット目が1のものをバケットBに移
動する(ステップ210〜240)。そして、新しいデ
ータのハッシュ値の下位からバケットAの局所深さ+1
ビット目が0であればバケットAに、1であればバケッ
トBに、データを挿入することになる(ステップ25
0)。
【0036】この後、大域深さ<バケットAの局所深さ
の場合、作業変数2の大域深さ未満のエントリのうちエ
ントリ番号の下位バケットBの局所深さビットの値がバ
ケットB内のポインタが指すデータまたはデータのハッ
シュ値の下位かバケットBの局所深さビットの値と等し
いエントリがバケットBを指すように更新し、大域深さ
≧バケットAの局所深さの場合、バケットAのエントリ
番号+2のバケットAの局所深さ乗番目のエントリをバ
ケットBを指すように更新し、バケットAの局所深さに
1を加えて処理を終了する(ステップ260)。
【0037】具体例として、ハッシュ値が0001のデ
ータを挿入する場合を図4を用いて更に説明する。
【0038】作業変数2に大域深さ1−1の値を代入す
る(図2のステップ100)。
【0039】作業変数2の値は1であるので、ハッシュ
値の下位1ビット1を用いてエントリ1−3の指すバケ
ット4を参照する(図2のステップ110)。
【0040】ここで、局所深さ4−1が作業変数2の値
より大きいので、作業変数2の値に1を加えて図2のス
テップ110に戻ることで、作業変数2の値は2となる
ので、ハッシュ値の下位2ビット01を用いてエントリ
1−3の指すバケット4を再び参照する(図2のステッ
プ120,130)。ここでも、局所深さ4−1が作業
変数2の値より大きいので、作業変数2の値に1を加え
て再度図2のステップ110に戻ることで、作業変数2
の値は3となるので、ハッシュ値の下位3ビット001
を用いてエントリ1−3の指すバケット4を参照する
(図2のステップ120,130)。
【0041】今度は、局所深さ4−1が作業変数2の値
以下であるので、バケット4にデータを挿入する空き領
域があれば、バケット4にデータを挿入して処理を終了
するが(ステップ200,210,270)、空き領域
がない場合には、新しいバケット7を作成し、局所深さ
7−1を4とし、バケット4のデータ4−1の内ハッシ
ュ値の下位4ビットが1001のものをバケット7に移
動した上で、新しいデータをバケット4に挿入するので
ある(ステップ210〜250)。
【0042】この後、バケット4の局所深さ4−1を4
とし、エントリ1−11がバケット7を指すように更新
して処理を終了する(ステップ260)。
【0043】次に、ディレクトリのメンテナンスについ
て図5に示す処理フローチャートを用いて説明する。
【0044】大域深さをGにするとし、変数m,n,i
をそれぞれm=2のG−1乗、n=2のG乗、i=0に
初期設定する(ステップ300)。
【0045】i番目のエントリが指すバケット(バケッ
トAとする)の局所深さをL,2のL乗をKとして、L
とGの値を比較する(ステップ310,320)。
【0046】L≧Gでなければ、iの下位から(L+
1)〜Gビットが全て0か否か判断し、全て0であれ
ば、変数j(j≠m,j≠n,j≠i)を(i+K)と
した上で、変数jの値が変数nの値を越えない範囲で変
数jについて(j+K)なる演算を行いつつj番目のエ
ントリがバケットAを指すように更新する(ステップ3
20〜370)。
【0047】一方、L≧Gである場合、iの下位から
(L+1)〜Gビットに0でないビットがある場合、お
よび変数jの値が変数nの値を越えた場合には、いずれ
もステップ380に進んで、変数iの値を1だけインク
リメントして、i≦mが成立している間はステップ31
0に戻り処理を繰り返す(ステップ320,330,3
50,380,390)。
【0048】そして、i≧mが成立しなくなった場合に
は、大域深さをGにして処理を終了する(ステップ39
0,400)。
【0049】ディレクトリ1をメンテナンスする具体例
を図6を用いて更に説明する。
【0050】大域深さGを3とすると、変数m,nはm
=4,n=8となり、iを0として初期設定を終了する
(ステップ300)。
【0051】0(000)番めのエントリ1−2の指す
バケット3の局所深さ3−1は1なので、L=1,K=
2となる。ここでは、L≧Gが成立せず(ステップ32
0)、iの下位から(L+1)〜Gビットがすべて0な
ので(ステップ330)、ステップ340〜370の処
理が行なわれる結果、2,4,6番目のエントリ1−
4,1−6,1−8がバケット3を指すように更新され
る(図6(a)参照)。
【0052】この後、ステップ380に進んで、変数i
がインクリメントされてi≦mなのでステップ310に
処理が戻るが、1(001)番めのエントリ1−3の指
すバケット4の局所深さ4−1は3なので、L=3とな
り、L≧Gなので(ステップ320)、ステップ38
0,390を経てステップ310に再び戻る。2(01
0)番めのエントリ1−4の指すバケット3の局所深さ
3−1は1なので、L=1となり、L≧Gではないが、
2の下位からL+1〜Gビットに0でないビットがある
ので(ステップ330)、やはりステップ380,39
0を経てステップ310に戻る。
【0053】3(011)番めのエントリ1−5の指す
バケット5の局所深さ5−1は2なので、L=2,K=
4となる。ここでは、L≧Gが成立せず(ステップ32
0)、iの下位から(L+1)〜Gビットがすべて0な
ので(ステップ330)、ステップ340〜370の処
理が行なわれる結果、7番目のエントリ1−9がバケッ
ト5を指すように更新される(図6(b)参照)。
【0054】この後、i=4でi≧mとなるので、図6
(c)に示す如く、大域深さをG=3にして処理が終了
する(ステップ390,400)。
【0055】したがって、本実施例によれば、ディレク
トリ拡張時に1つのエントリを更新するだけで良く、従
来の拡張可能ハッシュのようにエントリ1−2,1−4
〜1−9をそれぞれエントリ1−10,1−12〜1−
17にコピーする必要がないので、データを挿入する時
の処理を少なくすることができる。
【0056】
【発明の効果】以上説明したように、本発明の索引方式
によれば、データを検索する際にバケットの局所深さが
作業変数値以下であるバケットを見つけるまでバケット
探索を繰り返すと共に、ディレクトリのメンテナンスを
行なうことで、バケット分割時に更新するエントリ数や
ディレクトリ拡張時にコピーするエントリ数を少なく
し、エントリの更新やコピーを省略または後回しにする
ことによって、データを挿入する時間を短縮し、プロセ
ス間の同時走行性を高めることができる。
【図面の簡単な説明】
【図1】本発明の一実施例の構成を示す図である。
【図2】データを検索する場合の処理フローチャートを
示す図である。
【図3】データを挿入する場合の処理フローチャートを
示す図である。
【図4】図1にデータを挿入した場合の具体例を示す図
である。
【図5】ディレクトリをメンテナンスする場合の処理フ
ローチャートを示す図である。
【図6】図1でディレクトリのメンテナンスを行なった
場合の具体例を示す図である。
【図7】従来例を示す図である。
【図8】当該従来例の作用を説明するための図である。
【符号の説明】
1 ディレクトリ 1−1 大域深さ 1−2〜1−17 エントリ 2 作業用変数 3〜7 バケット 3−1〜7−1 局所深さ 3−2〜7−2 データ

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 データを格納する記憶装置と、該記憶装
    置に格納されたデータのうち所望のキー値を持つデータ
    の格納場所を調べるためのアクセス手段を具備する計算
    機システムにおいて、 前記アクセス手段を、キー値からハッシュ値を計算する
    ハッシュ関数計算手段と、データの格納場所を保持する
    ポインタまたはデータおよび局所深さを保持するバケッ
    トと、前記バケットの格納場所を保持する0番から2の
    整数(≧大域深さ)乗−1番までの2の整数乗個のエン
    トリおよび大域深さを持ちエントリ数を変化させうるデ
    ィレクトリと、作業用変数とで構成し、 所望のキー値を持つデータを検索する際には、キー値か
    らハッシュ値を計算し、大域深さを作業用変数に代入
    し、ハッシュ値の下位から該作業用変数値分のビットを
    用いてエントリを参照し、該エントリがポイントするバ
    ケットの局所深さと該作業用変数値を比較し、該作業用
    変数値を越えている場合には該作業用変数値に1を加え
    たものを該作業用変数値の新しい値として再度上記エン
    トリの参照を行ない、該バケットの局所深さが該作業用
    変数値以下の場合には該バケット内のデータを検索して
    所望のデータを得るようにし、 また、データを挿入する際には、該データのキー値から
    ハッシュ値を計算し、前記大域深さを作業用変数に代入
    し、ハッシュ値の下位から該作業用変数値分のビットを
    用いてエントリを参照し、該エントリがポイントするバ
    ケットの局所深さと該作業用変数値を比較し、該作業用
    変数値を越えている場合には該作業用変数値に1を加え
    たものを該作業用変数値の新しい値として再度上記エン
    トリの参照を行ない、該バケットの局所深さが該作業用
    変数値以下の場合には該バケットに格納領域があれば該
    バケットに該データを格納し、該バケットに格納領域が
    なければ、該バケット内の全てのデータまたはポインタ
    と挿入したいデータまたは該データへのポインタに関し
    てハッシュ値の下位から該バケットの局所深さ+1ビッ
    トの値によって該データまたはポインタを2つのバケッ
    トに分割し、2つのバケットの局所深さを該バケットの
    局所深さ+1とし、該バケットを指していた全てのエン
    トリを、エントリ番号の下位から該2つのバケットの局
    所深さビットの値と該エントリが指すバケット内のポイ
    ンタが指すデータまたはデータのハッシュ値の下位から
    該バケットの局所深さビットの値が等しくなるように更
    新することを特徴とする索引方式。
  2. 【請求項2】 前記アクセス手段にあっては、全てのバ
    ケットに関して、2のn乗番目未満のエントリの内、エ
    ントリ番号の該バケットの局所深さビット以下が全て等
    しいエントリが該バケットを指すように更新して大域深
    さをnとするディレクトリのメンテナンスを任意の時点
    で行なうことを特徴とする請求項1記載の索引方式。
JP01515393A 1993-02-02 1993-02-02 索引方法 Expired - Fee Related JP3164257B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP01515393A JP3164257B2 (ja) 1993-02-02 1993-02-02 索引方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP01515393A JP3164257B2 (ja) 1993-02-02 1993-02-02 索引方法

Publications (2)

Publication Number Publication Date
JPH06231172A true JPH06231172A (ja) 1994-08-19
JP3164257B2 JP3164257B2 (ja) 2001-05-08

Family

ID=11880861

Family Applications (1)

Application Number Title Priority Date Filing Date
JP01515393A Expired - Fee Related JP3164257B2 (ja) 1993-02-02 1993-02-02 索引方法

Country Status (1)

Country Link
JP (1) JP3164257B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102460392A (zh) * 2009-04-08 2012-05-16 英特尔公司 对多线程应用的杂凑表执行并行的重杂凑
CN115935200A (zh) * 2023-01-12 2023-04-07 北京三维天地科技股份有限公司 一种基于哈希和海明距离的海量数据相似性计算方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102548603B1 (ko) * 2021-08-31 2023-07-05 주식회사 코리아라이프라인 축광식 비상구 유도등 표지판

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102460392A (zh) * 2009-04-08 2012-05-16 英特尔公司 对多线程应用的杂凑表执行并行的重杂凑
JP2012523610A (ja) * 2009-04-08 2012-10-04 インテル・コーポレーション マルチスレッドアプリケーション用のハッシュテーブルのコンカレントリハッシュの実行
US9563477B2 (en) 2009-04-08 2017-02-07 Intel Corporation Performing concurrent rehashing of a hash table for multithreaded applications
CN115935200A (zh) * 2023-01-12 2023-04-07 北京三维天地科技股份有限公司 一种基于哈希和海明距离的海量数据相似性计算方法
CN115935200B (zh) * 2023-01-12 2023-09-08 北京三维天地科技股份有限公司 一种基于哈希和海明距离的海量数据相似性计算方法

Also Published As

Publication number Publication date
JP3164257B2 (ja) 2001-05-08

Similar Documents

Publication Publication Date Title
US5542087A (en) Linear hashing for distributed records
US7469253B2 (en) Associative hash partitioning using pseudo-random number generator
US9575976B2 (en) Methods and apparatuses to optimize updates in a file system based on birth time
KR101467589B1 (ko) 데이터 구조를 가지는 하나 이상의 장치 판독가능 매체, 및장치 실행가능 명령어를 구비한 하나 이상의 장치 판독가능 매체
JPH0554076A (ja) メモリ内のデータサーチ及びデータ保持方法
US6745198B1 (en) Parallel spatial join index
WO2021173490A1 (en) Vectorized queues for shortest-path graph searches
Sloan et al. Automatic element reordering for finite element analysis with frontal solution schemes
US20230342395A1 (en) Network key value indexing design
CN112148738A (zh) 哈希冲突处理方法及系统
JPH06231172A (ja) 索引方式
CN114840498B (zh) 基于Java技术实现内存键值数据管理的方法及其装置
JP3115599B2 (ja) 拡張テーブルを使用するページングシステム
Kwok et al. An efficient data structure for the advancing‐front triangular mesh generation technique
JPH06215037A (ja) インデックスの自動更新装置
Robinson Order preserving linear hashing using dynamic key statistics
CN113342706A (zh) 一种基于非易失性内存的写优化可扩展哈希索引结构以及插入、刷新和删除方法
CN109359111B (zh) 一种安卓视图的存取方法和装置
Wu et al. Associative searching in multiple storage units
KR102388458B1 (ko) 데이터 키 값 변환 방법 및 장치
CN109815225B (zh) 基于前缀树结构的并行化前缀数据检索方法和系统
Devroye et al. Fast delaunay point location with search structures.
Lixiang et al. Research on K Nearest Neighbor Skyline Query in Time Dependent Road Network
CN115470208A (zh) 一种基于动态hash的数据存储方法、装置及存储介质
CN116467073A (zh) 池化内存管理方法、装置、电子设备及可读存储介质

Legal Events

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