JPH03108063A - 後方一致検索方法および装置 - Google Patents

後方一致検索方法および装置

Info

Publication number
JPH03108063A
JPH03108063A JP1243409A JP24340989A JPH03108063A JP H03108063 A JPH03108063 A JP H03108063A JP 1243409 A JP1243409 A JP 1243409A JP 24340989 A JP24340989 A JP 24340989A JP H03108063 A JPH03108063 A JP H03108063A
Authority
JP
Japan
Prior art keywords
index
search
record
word
reverse
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
JP1243409A
Other languages
English (en)
Inventor
Masaharu Ashihara
葦原 雅晴
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP1243409A priority Critical patent/JPH03108063A/ja
Publication of JPH03108063A publication Critical patent/JPH03108063A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はデータベース検索に関し、特に後方一致検索の
処理速度向上に関する。
〔従来の技術〕
近年、コンビエータの普及にともなってデータベースの
利用があらゆる分野に浸透しつつある。
しかし、データ量の増大にともない、必要なデータを探
し出すための検索時間の増加も否めない。
特に、後方一致検索の効率向上に関しては、これまで特
別の工夫が凝らされることなく通常の前方一致検索方法
がそのまま用いられてきた。
以下、この種のデータベース検索方法について図面を用
いて説明する。第4図はレコード1、レコード2、・・
・・・・ レコード6の6レコードから成るデータベー
スの例であシ、それぞれのレコードは記号(DBK−1
) 、 (DBK−2) 、・・・・・・(DBK−6
)で表されるレコードキー43f:持っている。レコー
ドキー43は属性値に対する論理演算処理やレコードの
更新を行なうときに、レコ−ドヘアクセスするのに使わ
れる見出しであ)、レコードとは1対1に対応している
。それぞれのレコード実体は索引語41と複数の属性の
組42(a l e a 2 s・・・・・・ a□)
とレコードキー43から構成される。一般的には一つの
レコードに複数の索引語があるが、この例では説明を簡
単にするために一つのレコードには一つの索引語しか無
いものとする。索引語は属性の一種でもあるが、データ
ベース利用者とのインタフェースを円滑にするために設
けられているキーワードである。異なるレコードが同一
の索引語を持ったシ、一つのレコードが複数の索引語を
持ったシする点がレコードキーとは異なる。
第5図はデータベースの使用者が指定する検索語(デー
タベース側で用意されている索引語を利用するためのキ
ーワード−で、索引語集合に含まれていることが必要が
ある)とレコードとの対応付けをするために用意された
索引語とレコードキーとから成る索引(以下インデック
スと呼ぶ)である。インデックスでの索引語は、普通、
昇順にソートされている。第5図のように索引語が数字
以外の文字列である場合は、例えば5o音順にソートす
る。いま、検索語「サシスセソ」が指定されたとすると
、索引語の欄をサーチして検索語「サシスセソ」に等し
い索引語「ナシスセソ」のレコードキー(DBK−3)
と(DBK−5)を見つけ、次のステップで第4図のレ
コードキー43が(DBK−3)のレコード3と、(D
BK−5)のレコード5とが選択される。この時、既に
昇順にソートされている第5図の索引語をサーチするに
は、バイナリサーチ(索引語の集合の中央値と検索語の
大小関係を調べて検索語が含まれる側を決める。
次に検索語が含まれる側の索引語の集合の中央値と検索
語の大小関係を調べて検索語が含まれる側を決める、と
いう手順を繰)返すことによ)、最大でも2Nmまでの
索引語集合ではN回の比較で検索語とム致する索引語を
見つけることができる)をすることによって、大幅にサ
ーチ時間を短縮することができる。
次に、後方−数棟索について説明する。検索語「ギジェ
ツ」が指定されたとき、索引語の語尾に「ギジ為ツ」と
いう文字列を持つ索引語、例えば「コククウギジェッ」
、「ドゴクギジェッ」等が検索の対象になる。前記第4
図のデータベースレコードの例に戻シ、後方−数棟索と
検索語「ウエオ」が指定されたとする。そこで第5図の
インデックスを参照し、索引語の最下位桁から始まる長
さが3文字の文字列「ウエオ」、「クケコ」、「スセソ
」、「ツテト」、「ウエオ」を切シ出し、検索語と一致
する文字列を見つけるべくサーチする。しかし、索引語
61は完全な文字列についてソートされているので、上
記の3文字の文字列についてバイナリサーチをすること
ができない。したがって、端から順番に全数サーチして
索引語が「アイウェオ」のレコードキー62の(DBK
 −1)と、索引語61が「ラリフェオ」のレコードキ
ー62の(DBK−4)を見つける手順が必要である。
〔発明が解決しようとする課題〕
しかしながら、上記従来の検索方法ではインデックスの
索引語配列は前方−数棟索を念頭に考えられているため
、後方−数棟索に適した配列になっていなかった。した
がって、後方−数棟索をする場合はすべての索引語を順
次調べるというサーチ方法しかなかった。上記例では索
引語は5個であったが、実用のデータベースでは致方か
ら数10万の規模になるため、検索時間が非常に大きく
なるという欠点がありた。
本発明はこのような従来の問題を解決するものであ〕、
後方−数棟索における検索時間を大幅に短縮することが
できる優れた後方一致検索方法および装置を提供するこ
とを目的とするものである。
〔課題を解決するための手段〕
上記の目的を達成するために、本発明においては、索引
語を持つレコードから成るデータベースの後方一致検索
方法と装置において、入力された検索語の文字列順序を
反転させる検索語文字列反転処理手段と、この反転され
次検索語と前方一致する索引[を見いだしてこの索引語
に対応するレコードキーを特定するサーチ手段と、デー
タベースの全レコードについて索引語の和の集合に含ま
れるすべての索引語の文字列順序を反転させる索引語文
字列反転処理手段と、この反転された索引語集合をソー
トするソート手段と、この反転、ソートされた索引語集
合の並び方を変えることなく配列された索引語、および
反転、ソート以前の索引語とレコードキーとの対応関係
を保存して配列されたレコードキーを持つリバースイン
デックスとを備えることによって、後方一致検索をする
ように構成するものである。
〔作用〕
本発明はこのように構成されているので、後方一致検索
が要求された場合には、リバースインデックスに用意さ
れているリバースキーをバイナリサーチすることによっ
て、検索語に一致するリバースキーを短時間で見つける
ことができるので、目的とするデータベースレコーダを
迅速に入手することができるという作用がある。
〔実施例〕
以下本発明の実施例を図面によって説明する。
第1図は本発明の後方一致検索方法および装置の全体の
構成を示している。第1図において、lはデータベース
使用者が指定した検索語文字列の順序が逆になった文字
列を生成するように構成した検索語文字列反転処理手段
である。2は検索語文字列反転処理手段1の出力文字列
と前方一致する文字列をリバースキー31の中からサー
チし、一致するリバースキーが見つかるとそれに対応す
るレコードキーをデータベースマネージメントシステム
(以下DBMSと呼ぶ)4へ出力するように構成したサ
ーチ手段である。3は第2図にその論理構造を示したよ
うに、リバースキー31とレコード+−32t−持ち、
IJ /4−スキーRVK −1(1= 1゜・・・・
・・、p)を指定することによってこれに対応するレコ
ードキー(DBK−j ) (j =1 p・・・・・
・tq)が得られるように論理構造を構成し九リバース
インデックスである。第2図の例は次のことを表す。
リバースキー31がRVK−1という値または文字列を
持つレコードは4つあシ、そのレコードキー32は(D
BK−1)または(DBK−2)または(DBK−3)
または(DBK−4)であることを表している。flV
K−2以下についても同様である。
4はレコードが集合したデータベース、およびデータベ
ースの管理手順を含むDBMBであシ、サーチ手段2よ
シ出力されるレコードキーを受は取ってこのレコードキ
ーを持つレコーーの属性を出力するように構成しである
。5はリバースインデックス作成手段である。索引語文
字列反転処理手段51はD BMSからの指示に基づい
て、レコード1、レコード2、・・・・・・ レコード
nの全レコードについて索引語の和集合を求め、この索
引語の和集合に対して文字列の反転処理を行なう。前記
の全レコードについての索引語の和集合は次のように定
義する。
全レコードについての索引語の和集合:RIUR2U−
・・・・・URn= (tltεR1vt ei’tz・・・・・・tεRn
)レコードlの索引語の集合:teR1 記号AUBは集合Aと集合Bの和集合を表す。
記号aVbはaとbの論理和を表す。tは索引語を表す
ソート手段52は索引語文字列反転処理手段51の出力
に対して昇順または降順にソートした索引語を使りてリ
バースキー31の内容を書き換えるように構成する。
次に、第4図のデータベースレコードを例に動作を説明
する。第4図の全レコードについての索引語の和集合を
とった結果は、第5図の索引語欄に示したように、「ア
イウェオ」、「カキクケコ」、「サシスセソ」、「タチ
ツテト」、「2リクエオ」の5通りである。この索引語
は索引語文字列反転処理手段51はこの索引語を、それ
ぞれ「オエウイア」、「コケクキ力」、「ソセスシサ」
、「トテッチタ」、「オエウリラ」の文字列に反転する
次にソート手段52は昇順にソートして「オエウィア」
、「オエクリラ」、「コケクキ力」、「ソセスシサ」、
「トテツチタ」の文字列配列としてリバースインデック
ス3のリバースキー31に生成する。
第3図はこのようにして反転、ソートした文字列、1に
リバースキー31に持つリバースインデックスの構成例
を示している。レコードキー32は反転、ソート前の第
5図のインデックスの索引語61との対応を保存した状
態でレコードキー62をコピーして構成される。上記に
説明したリバースキー31の作成は、データベースが更
新された時のみDBMf34の指示によりて実行される
次に後方−数棟索語「ウエオ」が指定された時の後方一
致検索の動作を説明する。検索語「ウエオ」は検索語文
字列反転処理手段1によ)「オニク」という文字列にな
る。リバースキー31は既に反転された索引語で表され
ているので、サーチ手段2は普通の前方一致検索方法と
同じ方法でサーチすることができる。リバースキ−31
はソートが済んでいるからバイナリサーチをして容易に
リバースキー「オニクイア」と「オエウリラ」を見つけ
ることができて、サーチ手段2はレコードキー(DBK
−1)と(DBK−4)をDBMS 4へ出力する。D
BMS 4ではこの(DBK−1)と(DBK−4)t
−レコードキー43に持つ第4図のレコード1とレコー
ド4を出力す・る。
〔発明の効果〕 本発明によれば、上記実施例から明らかなように、リバ
ースキーを持つリバースインデックスを用イて後方一致
検索を行なうことによ〕、バイナリサーチ手段の様な通
常の前方一致検索と同じ手法を使用できるので、目的と
するデータベースレコードを短時間で探すことができる
という利点を有する。
【図面の簡単な説明】
第1図は本発明の一実施例における後方一致検索方法装
置の構成図、第2図はリバ−スインデックスの論理構造
の説明図、第3図はリバースインデックスの構成例を示
す図、第4図はデータベースレコードの構成例を示す図
、第5図は通常使用されているインデックスの構成であ
る。 l°°°検索語文字列反転処理手段 2・・・サーチ手段 3・・・リバースインデックス 4・・・データベースマネージメントシステム5・・・
リバースインデックス作成手段第1図 オ史宗語X刀 第2図 第3図 糾コートエ刀

Claims (1)

    【特許請求の範囲】
  1. 索引語を持つレコードから成るデータベースの後方一致
    検索方法および装置において、入力された検索語の文字
    列順序を反転させる検索語文字列反転処理手段と、この
    反転された検索語と前方一致する索引語を見いだしてこ
    の索引語に対応するレコードキーを特定するサーチ手段
    と、データベースの全レコードについて索引語の和の集
    合に含まれるすべての索引語の文字列順序を反転させる
    索引語文字列反転処理手段と、この反転された索引語集
    合をソートするソート手段と、この反転、ソートされた
    索引語集合の並び方を変えることなく配列された索引語
    、および反転、ソート以前の索引語とレコードキーとの
    対応関係を保存して配列されたレコードキーを持つリバ
    ースインデックスとを備えることによって、後方一致検
    索をするようにした後方一致検索方法および装置。
JP1243409A 1989-09-21 1989-09-21 後方一致検索方法および装置 Pending JPH03108063A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1243409A JPH03108063A (ja) 1989-09-21 1989-09-21 後方一致検索方法および装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1243409A JPH03108063A (ja) 1989-09-21 1989-09-21 後方一致検索方法および装置

Publications (1)

Publication Number Publication Date
JPH03108063A true JPH03108063A (ja) 1991-05-08

Family

ID=17103434

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1243409A Pending JPH03108063A (ja) 1989-09-21 1989-09-21 後方一致検索方法および装置

Country Status (1)

Country Link
JP (1) JPH03108063A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05233710A (ja) * 1992-02-24 1993-09-10 Nec Corp 文字列照合方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05233710A (ja) * 1992-02-24 1993-09-10 Nec Corp 文字列照合方法

Similar Documents

Publication Publication Date Title
JP3672242B2 (ja) パターン検索方法、パターン検索装置、コンピュータプログラム及び記憶媒体
US4811199A (en) System for storing and manipulating information in an information base
US7080091B2 (en) Inverted index system and method for numeric attributes
JP3849279B2 (ja) インデクス作成方法および検索方法
Zhang et al. Bed-tree: an all-purpose index structure for string similarity search based on edit distance
US6523030B1 (en) Sort system for merging database entries
JP3914662B2 (ja) データベース処理方法及び実施装置並びにその処理プログラムを記憶した媒体
US6446066B1 (en) Method and apparatus using run length encoding to evaluate a database
US5398199A (en) Many-valued logic processor for data query systems
JP2003044267A (ja) データソート方法、データソート装置およびデータソートプログラム
US7882147B2 (en) File location naming hierarchy
JP2000163442A (ja) 記号辞書作成方法及び記号辞書検索方法
CN110795526B (zh) 一种用于检索系统的数学公式索引创建方法与系统
JP2001331509A (ja) リレーショナルデータベース処理装置、リレーショナルデータベースの処理方法及びリレーショナルデータベースの処理プログラムを記録したコンピュータ読み取り可能な記録媒体
JPH03108063A (ja) 後方一致検索方法および装置
JP2000090115A (ja) インデクス作成方法および検索方法
JP2001134598A (ja) T木インデックス構築方法及びt木インデックス検索方法及びt木インデックス構築装置及びt木インデックス検索装置及びt木インデックス構築プログラムを格納した記憶媒体及びt木インデックス検索プログラムを格納した記憶媒体
JP2001325293A (ja) 全文検索方法及び装置及び全文検索プログラムを格納した記憶媒体
JP2001117929A (ja) データ検索方法、データ整列方法およびデータ検索装置
JPH05313971A (ja) リレーショナル・データベースにおけるキーワード管理方式
JP3657680B2 (ja) 名標検索装置
JPH04195588A (ja) データベースの後方一致検索処理方式
JPH0452967A (ja) 集合ファイルに対する論理積演算処理方式
JPH04337867A (ja) データベース検索システム
Samanek Partial-match retrieval using multi-level superimposed codes: Jaroslav (Joe) Samanek