JPH04315260A - 文字列照合方式 - Google Patents

文字列照合方式

Info

Publication number
JPH04315260A
JPH04315260A JP3108902A JP10890291A JPH04315260A JP H04315260 A JPH04315260 A JP H04315260A JP 3108902 A JP3108902 A JP 3108902A JP 10890291 A JP10890291 A JP 10890291A JP H04315260 A JPH04315260 A JP H04315260A
Authority
JP
Japan
Prior art keywords
character string
line
matching
search word
document data
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
JP3108902A
Other languages
English (en)
Inventor
Sueji Miyahara
末治 宮原
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 JP3108902A priority Critical patent/JPH04315260A/ja
Publication of JPH04315260A publication Critical patent/JPH04315260A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

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

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、自然言語の文書データ
を文字コード列として蓄積した文書データベースの中か
ら、所望の文字列を高速に検索することを可能にした文
字列照合方式に関するものである。
【0002】
【従来の技術】従来、プロセッサエレメント(PE)を
複数個有する単一命令多重データ処理(SIMD(Si
ngle Instruction Multiple
 Data))形の並列処理装置に外部から入力された
所望の文字列である検索単語と同一、あるいは類似の文
字列をデータベース内の被検索文である被検索文書デー
タ中から検出する文字列照合の処理において、文書デー
タベースの中から所望の文字列を高速に検索する技術と
しては、専用のハードウェアによって、文字列相互間の
照合を行うように構成したものが多かった(たとえば「
あいまい検索が可能な文字列検索LSI」:日経エレク
トロニクス、1987.6.1,No422) 。
【0003】この原理を図示すると図5に示すような文
字列照合装置になる。
【0004】図5において、1は検索単語入力部、2は
文字列照合部、3は文書データ格納部(データベース)
、4は照合結果格納部、5はデータ転送バス、6は照合
処理制御部である。なお(20)1 ……(20)N 
は個別単語照合部を示す。
【0005】文字列照合部2の詳細な構成を図6に示す
【0006】図6において20は個別単語照合部、21
は検索単語格納部、22は被検索データ保持部、23は
文字列一致検出部、24は検索単語入力部、25は被検
索データ入力部、26は一致情報出力部である。
【0007】この装置を動作するには、図5に示す検索
単語入力部1から、検索単語(ここでは例として文字列
と云う単語を使用する)“文字列”が入力されたとする
と、その単語は一旦文字列照合部2の中の検索単語格納
部21の各レジスタ(211,212,………)に格納
され、被検索データが転送されて来るのを待つ。
【0008】被検索データは文書データ格納部3の中か
ら順次読み出され、被検索データ入力部25を経由して
被検索データ保持部22の各レジスタ(221,222
,………)に送られる。
【0009】被検索データ保持部22では被検索データ
を1文字づつ入力し、そのつど文字列一致検出部23の
比較器(231,232,………)で、検索単語のデー
タとこれまでに入力した被検索データとの文字列が一致
するか否かを判定し、一致した時点で一致情報出力部2
6から一致情報を出力し、一致位置の情報を照合結果格
納部4に記録する。
【0010】図7,図8は文字列照合の際の個別単語照
合部20の処理内容の状態変化の様子を示したものであ
る。
【0011】すなわち、例として検索単語格納部21に
検索単語“文字列”が設定された後、被検索データ“高
速に文字列を走査して………”が被検索データ保持部2
2に入力されて、その中に存在する“文字列”が検出さ
れるまでの個別単語照合部20内の処理過程の様子を示
している。
【0012】図7は、検索単語と同じ被検索データの“
文字列”が個別単語照合部20の被検索データ保持部2
2に入力を開始した時点の状態図であり、図8は、図7
の状態から3つの文字が被検索データ保持部22に入力
されて検索単語との文字列一致が検出された状態を示す
【0013】
【発明が解決しようとする課題】図5に示した従来方式
の被検索データは、入力系にデータ幅の狭い一組のデー
タ転送バス5を通して送られてくるため、データ転送バ
ス5の転送速度がネックになって、検索速度の速いもの
が得られない。
【0014】また、文字列照合部2が、ハードウェアで
固定化されているので、検索単語長が長くなった場合な
どの検索条件の変化に対して柔軟に対処できない、など
の問題がある。
【0015】本発明の目的は従来の問題点を解決し、文
字列の検索処理において、汎用の並列処理装置を効率よ
く運用することにより、高速に文字列検索を行なうこと
ができる文字列照合方式を提供することにある。
【0016】
【課題を解決するための手段】本発明は上記目的を達成
するため、プロセッサエレメントを複数個有する単一命
令多重データ処理形の並列処理装置に外部から入力され
た所望の文字列である検索単語と同一、あるいは類似の
文字列をデータベース内の被検索文である被検索文書デ
ータ中から検出する文字列照合の処理において、前記プ
ロセッサエレメントが直接アクセス可能なメモリ領域に
文書データを分割して格納しておき、検索の要求に対し
て検索単語との一致を照合判定するライン内文字列照合
工程と、ライン内文字列照合工程で検出された文字列位
置から文書データ内の文字列位置を算出する文字列位置
補正処理工程とを有することを特徴とする。
【0017】
【作用】本発明は、従来の文字列照合装置とは異なった
装置構成、すなわち、装置内プログラムの入れ替えによ
って処理の内容を自由に変更できる汎用の並列処理装置
を用いて、高速な文字列照合を実現するもので、汎用の
並列処理装置を用いて高速な文字列照合ができ、また被
検索データを格納したデータ領域のライン間にまたがる
文字列に対しても高速に検索できる。
【0018】以下図面にもとづき実施例について説明す
る。
【0019】
【実施例】図1は本発明の実施例を説明する図であって
、1は検索単語入力部、3は文書データ格納部(データ
ベース)、4は照合結果格納部、5はデータ転送バス、
6は照合処理制御部、7は並列処理部、71は照合処理
プログラム格納部、72は文字列並列照合部、73は大
容量データバス、74は検索情報格納部(照合データメ
モリ)、721、722、………、72Rはプロセッサ
エレメントである。
【0020】なお741は検索単語格納領域、742は
被検索データ格納領域、743は照合結果一次格納領域
、744は照合結果二次格納領域を示す。
【0021】図2は並列処理部7の一部(照合処理系)
の詳細図であり、R個のプロセッサエレメント(721
,722,・・・,72R)を一次元(ライン)的に使
用する場合の様子を概念的に示した図である。
【0022】このとき、検索情報格納部74は検索単語
格納領域741と被検索データ格納領域742とに分割
して使用され、文字列並列照合部72のプロセッサエレ
メント(721,722,・・・,72R)とのデータ
の送受はプロセッサエレメントの個数Rに相当する組数
分用意された大容量データバス73を経由して行なわれ
る。
【0023】これを動作するには、予め文書データ格納
部3から被検索データを並列処理部7の被検索データ格
納領域742に文書データを転送しておき、検索単語入
力部1からの検索単語の入力に備える。
【0024】このとき被検索データ格納領域742の中
には検索単語の最大文字数nに相当する文字が、mライ
ンの末尾と(m+1)ラインの先頭部分にオーバラップ
して記録され、ライン間にまたがる文字列が検索できな
くなるのを防いでいる。
【0025】次に、検索単語入力部1から検索単語“文
字列”が入力されると、その単語は並列処理部7内の検
索単語格納領域741に格納された後、直ちに照合処理
が実行される。
【0026】図3,図4は照合処理工程の中のライン内
文字列照合工程を説明する図であり、プロセッサエレメ
ントがラインとしてはR=256個で構成されている場
合で、かつ検索単語の最長文字数が6の場合を仮定して
図示している。
【0027】この図における処理の第1段階は、図3の
文字列の並列処理部7のデータ配置を示したものであり
、これは被検索データである“高速に文字列を照合して
………一致させて文字列を検索する………”と云う文の
中から検索単語“文字列”の存在する位置を検出するた
めの照合開始の初期状態を示したものである。
【0028】被検索データはプロセッサエレメントの個
数単位に分割されて“高速に”から“一致させて文字”
までが一つのラインとして記録され、『致させて文字』
の6文字をオーバラップさせた“到させて文字列を検索
する………”以降は次のライン(m+1)として検索情
報格納部74の被検索データ格納領域742に記録保持
される。
【0029】検索単語は検索単語格納領域741の中に
各プロセッサエレメント721の深さ方向に記録されて
照合の処理に備える。
【0030】次に図4に示す第2段階の処理の照合処理
、すなわちライン内文字列照合工程では、図3に示す状
態から被検索データをプロセッサエレメント721に読
み込んだ後、検索単語との照合を行なう。
【0031】このとき被検索データと検索単語の照合は
文字単位(16ビット単位)で行ない、検索単語の先頭
文字から順次行なっていく。
【0032】照合結果は、図4に示すように照合結果一
次格納領域743に一致(0)、不一致(1)の形で格
納される。
【0033】この図では検索単語の最大語長rを6文字
とし、検索単語長nが3文字から成る“文字列”で構成
されている場合を示している。
【0034】すなわち、一致文字が存在することを示す
“0”が1プロセッサエレメントづつずらした形で出現
することになる。
【0035】この状態から検索単語と同一の文字列位置
を検出するには、検索単語のα文字目に対応する照合結
果一次格納領域743の各行の値を(α−1)個づつ左
側にシフトし、右端からは“0”をつめる。
【0036】この処理によって図4に示すように、照合
結果二次格納領域744の検索単語に対応する各行にお
いて一致文字列の先頭の位置に相当する部分に“0”が
プロセッサエレメントの深さ方向に並ぶことになる。
【0037】次に、図4の照合結果二次格納領域744
内のライン間のANDをとることによって、“0”が存
在する位置から検索単語と同一の文字列が存在すること
が分かる。
【0038】この処理によってライン内の先頭から(2
56−n)文字内に検索単語と同一の文字列が存在する
こと、および末尾のn文字、あるいは次ラインの文字並
びを検査する事によってライン間における検索単語の存
在の有無を知ることができる。
【0039】最後に、この検索結果に対して各ラインが
(256−n)文字で構成されていることを考慮して、
出現位置の位置補正、すなわち“ライン数×(256−
n)+ライン内検索単語の出現位置”を求めることによ
り、検索単語の出現位置を知ることができる。
【0040】図4の照合処理の〔I〕に文書データのm
ライン目の処理を示し、〔II〕に文書データの(m+
1)ライン目の処理を示す。
【0041】
【発明の効果】以上説明したように、本発明は次のよう
な特長を持つ。
【0042】(イ)汎用の並列処理装置を用いて高速な
文字列照合ができる。
【0043】(ロ)被検索データを格納したデータ領域
のライン間にまたがる文字列に対しても高速に検索でき
る。
【0044】従って、本発明は、■検索時間が短くてよ
い、■検索漏れがないなどの利点を持つ。
【図面の簡単な説明】
【図1】本発明の文字列照合処理方式の構成図である。
【図2】文字列並列照合部の構成である。
【図3】文字列並列照合の処理工程を説明するための初
期状態図である。
【図4】文字列並列照合の処理工程の照合処理を説明す
るための状態図である。
【図5】文字列照合の従来方式の構成図である。
【図6】従来方式の文字列照合部の構成である。
【図7】従来方式の文字列照合部の状態変化の様子その
1である。
【図8】従来方式の文字列照合部の状態変化の様子その
2である。
【符号の説明】
1  検索単語入力部 2  文字列照合部 3  文書データ格納部 4  照合結果格納部 5  データ転送バス 6  照合処理制御部 7  並列処理部 20  個別単語照合部 21  検索単語格納部 22  被検索データ保持部 23  文字列一致検出部 24  検索単語入力部 25  被検索データ入力部 26  一致情報出力部 71  照合処理プログラム格納部 72  文字列並列照合部 73  大容量データバス 74  検索情報格納部(照合データメモリ)721,
722,・・・,72R  プロセッサエレメント 741  検索単語格納領域 742  被検索データ格納領域 743  照合結果一次格納領域 744  照合結果二次格納領域

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】  プロセッサエレメントを複数個有する
    単一命令多重データ処理形の並列処理装置に外部から入
    力された所望の文字列である検索単語と同一、あるいは
    類似の文字列をデータベース内の被検索文である被検索
    文書データ中から検出する文字列照合の処理において、
    前記プロセッサエレメントが直接アクセス可能なメモリ
    領域に文書データを分割して格納しておき、検索の要求
    に対して検索単語との一致を照合判定するライン内文字
    列照合工程と、前記ライン内文字列照合工程で検出され
    た文字列位置から文書データ内の文字列位置を算出する
    文字列位置補正処理工程とを有することを特徴とする文
    字列照合方式。
JP3108902A 1991-04-12 1991-04-12 文字列照合方式 Pending JPH04315260A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3108902A JPH04315260A (ja) 1991-04-12 1991-04-12 文字列照合方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3108902A JPH04315260A (ja) 1991-04-12 1991-04-12 文字列照合方式

Publications (1)

Publication Number Publication Date
JPH04315260A true JPH04315260A (ja) 1992-11-06

Family

ID=14496528

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3108902A Pending JPH04315260A (ja) 1991-04-12 1991-04-12 文字列照合方式

Country Status (1)

Country Link
JP (1) JPH04315260A (ja)

Similar Documents

Publication Publication Date Title
US4550436A (en) Parallel text matching methods and apparatus
US5060143A (en) System for string searching including parallel comparison of candidate data block-by-block
JPS5846742B2 (ja) 対話式デ−タ検索装置
JP3183669B2 (ja) 可変長の文字ストリング用のプロセッサ
JPH024026B2 (ja)
JPS61210478A (ja) ベクトル処理装置
JPH0869476A (ja) 検索システム
JPH04315260A (ja) 文字列照合方式
JPH07146880A (ja) 文書検索装置及び方法
US8117384B2 (en) Searching a content addressable memory with modifiable comparands
JPH04315259A (ja) 文字列照合処理方式
JPH04279973A (ja) 文字列比較方式
Healy A character-oriented context-addressed segment-sequential storage
JPH064600A (ja) イメージ検索方法およびイメージ検索装置
JP2835065B2 (ja) 文字列検索方法
JPH06274701A (ja) 単語照合装置
JP2590866B2 (ja) データ検索装置
JP2895892B2 (ja) データ処理装置
JPH05314169A (ja) 並列データ処理装置および並列形態素抽出方法
JPH10301758A (ja) ソート処理装置
US20040139063A1 (en) Pipelined binary search machine
JPH0371262A (ja) データ処理装置
JPH0281229A (ja) 定数登録処理方式
JPS61278933A (ja) デ−タのソ−ト方式
JPS63170742A (ja) 共通文字列検索処理装置