JP2788303B2 - 可変長データの格納方式 - Google Patents

可変長データの格納方式

Info

Publication number
JP2788303B2
JP2788303B2 JP1261567A JP26156789A JP2788303B2 JP 2788303 B2 JP2788303 B2 JP 2788303B2 JP 1261567 A JP1261567 A JP 1261567A JP 26156789 A JP26156789 A JP 26156789A JP 2788303 B2 JP2788303 B2 JP 2788303B2
Authority
JP
Japan
Prior art keywords
record
character
comparing
directory
address
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
JP1261567A
Other languages
English (en)
Other versions
JPH03123970A (ja
Inventor
五雄 酒井
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP1261567A priority Critical patent/JP2788303B2/ja
Publication of JPH03123970A publication Critical patent/JPH03123970A/ja
Application granted granted Critical
Publication of JP2788303B2 publication Critical patent/JP2788303B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】 [発明の目的] (産業上の利用分野) この発明は、文字列等の可変長データの格納方式に関
する。
(従来の技術) 可変長データを格納する方法は種々のものが実用化さ
れてる。文字列のように構成文字の符号化された値を基
に昇順または降順に並べ易いものについては、先頭文字
が同一であるブロックの先頭格納番地を別のテーブルに
ディレクトリとして持つ、第3図に示す構成が一般に用
いられている。この方式で、ある文字列が登録されてい
るか否かを検索するには、まず検索したい文字列の先頭
文字のコードからディレクトリを参照してその文字から
始まるレコード群の先頭番地を求め、その先頭レコード
から文字列を比較し、不一致であればレコード中の文字
長データの現対象番地に加算して、次のレコードと比較
するという操作を順次繰返し行い、昇順の場合は、一致
するか又は第二文字目の場合にはレコード内容の方が大
きくなった場合に、又、降順の場合は逆に小さくなった
場合に終了する。
(発明が解決しようとする課題) しかしながら上述した従来例によれば、レコードの内
容にかかわらず、検索時間が長いという欠点があった。
この発明は上記事情に鑑みてなされたものであり、高
速にデータ検索の可能な可変長データの格納方式を提供
することを目的とする。
[発明の構成] (課題を解決するための手段) 本発明は、自己のデータ長を表わす符号を含む、可変
長の文字列を昇順または降順に並べたレコード群と、各
レコードの第一文字単位に格納番地を対比参照するため
のディレクトリ部より構成され、該ディレクトリは同一
第一文字のレコード郡のほぼ中央の番地を示すととも
に、当該番地の前後で各々のレコード毎に格納順位が対
象的に逆順となっている事を特徴とする。検索装置は、
検索すべき文字列の第1文字のコードでディレクトリを
参照する手段と、ディレクトリにて示される番地のレコ
ードと比較しようとする文字列との比較により検索方向
を決定する手段と、1文字毎文字コードを数値ととみな
し大小比較する手段と、検索すべき次レコードの先頭番
地を算出する手段と、文字数分順次比較して文字列とし
ての大小比較を行う手段で構成される。
(作 用) 上述した構成にて、ディレクトリ部は、先頭文字が同
一であるレコード群のほぼ中央のレコードの格納番地を
登録し、データ格納部は、先頭文字が同一であるレコー
ド群を1ブロックとしてディレクトリ部で示されるレコ
ード以降の各レコードと、その直前のレコード以前の各
レコードとは、1レコード内でのデータ順序を対照的に
逆に格納することにより、検索の始めにディレクトリで
示されるレコード内容と比較して,順序向検索(アドレ
スを順次増加させる)か逆方向検索(アドレスを順次減
少させる)するかを決定することで、従来に比較して平
均的に検索時間の半減を実現できる。
(実施例) 以下、図面を使用して本発明実施例について詳細に説
明する。第1図は本発明の実施例を示すフローチャート
である。図中、符号Aは、対象レコード番地を求めるス
テップであり、比較(検索)しようとする文字列の第1
文字のコードでディレクトリを参照する。符号B1.B2は
比較レコード群の前、後を決定するステップであり、デ
ィレクトリで示された番地のレコードと比較しようとす
る文字列の比較により、前半レコードか後半レコードか
を決定する。符号Cは文字列の大小比較を行うステップ
であり、1文字毎に文字コードを数値とみなして大/小
/一致をチェックする。符号Dは次のレコードの先頭番
地を求めるステップであり、前半レコードが対象の場合
には現在の文字数+1だけ減算し、後半レコードが対象
の場合はそれを加算する。符号E1.E2は1文字を大小一
致比較するステップであり、文字数分順次比較して文字
列としての大/小/一致を比較する。
第2図に本発明の格納方式の一例を示す。この図で、
ディレクトリ部は、従来,同じ文字を第一文字とするレ
コード群の先頭番地が格納されていたのに対し,本発明
によるものは、レコード群のほぼ中央に位置するレコー
ドの格納番地が、それぞれ文字毎に対応した表形式とな
っている。
以下、本発明実施例の動作について詳細に説明する。
データ格納部は本発明で意図する範囲内において種々の
順序が考えられるが、この例ではディレクトリで示され
るレコードを基準に、それ以降を昇順に、その1語前の
レコードからは逆に番地を遡って揉読んだ結果が昇順と
なるように配列されている。図では理解し易い様に1行
にて1レコードを並べてあるが,実際の格納媒体中で
は、全てのデータが隙間なく連続しているのは言うまで
もない。また、本発明とは直接関係はないが、可変長デ
ータのレコード群の区切りを示すために従来も種々の手
法が用いられていたが,そのうちの「0」という記号
(数字)をレコード群の区切りを意味づけする方法で図
示している。
次に、この格納方式で文字列検索の実際を説明する。
検索したい文字列の先頭文字コードを手掛りにディレク
トリ部からデータ格納番地(A)を得る。具体的には、
ディレクトリ先頭番地+第1文字コードの下位6バイト
の番地の内容を読むと(A)が得られる。その次に、フ
ローチャートに示すように、(A)から格納されている
レコードと比較したい文字列の大小関係を比較し、その
文字列が格納されているとしたらレコード群の前半か否
かを決定する。この例の場合では、(A)の示すレコー
ド内容の方が大きければ前半、小さければ後半を以降の
検索エリアとする。具体的にはフローチャート中のDの
符号が前後を表している。以降は従来同様の比較方法で
レコード内容を順次取り出して、比較したい文字列と一
致するかどうかを調べ、一致フラグ、終了フラグで、一
致終了又は不一致終了が得られる。不一致終了の場合に
は,レコード群の区切り符号を手掛りに検索を終了しな
ければならないが、フローチャート上A´の処理で、内
容が0の場合に不一致終了とする処理を追加すればこの
方式に対応可能である。
このような処理により、従来の方式に比較して平均的
に検索時間が半減する。説明では、レコード格納順序は
昇順としたが、降順でも、前後半で両者をそれぞれ用い
ても同様の効果が得られるのは明らかである。
尚、本発明実施例では文字列が登録されているか否か
の検索の例のみ示したが、レコードそれぞれに固有のデ
ータを対応させる「テーブル」形式の場合も、レコード
の1部としてそのデータを後部に付加し、比較対象をレ
コードの文字列部分に限る等してこの発明による格納方
式が同じ要領で応用可能である。
[発明の効果] 以上説明のように本発明によれば、検索時間を削減で
きる。同一内容のデータで、従来の格納方式による検索
時間との比較では平均値で約1/2となる。
【図面の簡単な説明】
第1図は本発明実施例の動作を示すフローチャート、第
2図は本発明に従う可変長データの格納方式の一例を示
す図、第3図は従来の格納方式を示す図である。

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】自己のデータ長を表す符号を含む、可変長
    の文字列を昇順または降順に並べたレコード群と各レコ
    ードの第一文字位置に格納番地を対比参照するためのデ
    ィレクトリ部よりメモリが構成され、このディレクトリ
    部は同一第一文字のレコード群の中央近傍の番地を示す
    とともに、当該番地の前後で各々のレコード毎に格納順
    序が対照的に逆順となっており、検索装置は、検索すべ
    き文字列の第1文字のコードでディレクトリを参照する
    手段と、ディレクトリにて示される番地のレコードと比
    較しようとする文字列との比較により検索方向を決定す
    る手段と、上記比較対象データの各文字コードを1文字
    毎に数値とみなし大小比較して文字数分の比較により文
    字列としての大小比較を行う手段と、検索すべき次レコ
    ードの先頭番地を算出する手段と具備してなることを特
    徴とする可変長データの格納方式。
JP1261567A 1989-10-06 1989-10-06 可変長データの格納方式 Expired - Lifetime JP2788303B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1261567A JP2788303B2 (ja) 1989-10-06 1989-10-06 可変長データの格納方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1261567A JP2788303B2 (ja) 1989-10-06 1989-10-06 可変長データの格納方式

Publications (2)

Publication Number Publication Date
JPH03123970A JPH03123970A (ja) 1991-05-27
JP2788303B2 true JP2788303B2 (ja) 1998-08-20

Family

ID=17363704

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1261567A Expired - Lifetime JP2788303B2 (ja) 1989-10-06 1989-10-06 可変長データの格納方式

Country Status (1)

Country Link
JP (1) JP2788303B2 (ja)

Also Published As

Publication number Publication date
JPH03123970A (ja) 1991-05-27

Similar Documents

Publication Publication Date Title
US5153831A (en) Electronic text
US5778359A (en) System and method for determining and verifying a file record format based upon file characteristics
JP3554459B2 (ja) テキストデータ登録検索方法
JP2788303B2 (ja) 可変長データの格納方式
JPH067385B2 (ja) キ−ワ−ド自動抽出方式
WO2015055062A1 (zh) 数据文件写入方法及系统、数据文件读取方法及系统
EP2164005B1 (en) Content addressable storage systems and methods employing searchable blocks
JPH0546666A (ja) 情報検索装置
JP2596332B2 (ja) データ組合せ抽出方法およびその装置
JP2573577B2 (ja) ファイルアクセス装置
JPH05143648A (ja) 情報登録検索装置
JP2604492B2 (ja) 順編成ファイルのデータ圧縮処理方式
CN116737666A (zh) 一种高效的大数据存储文件结构及数据存储方法
JPS642970B2 (ja)
JPS61278932A (ja) デ−タ追加処理方法
JP2002049645A (ja) ハッシュ値算出方法、ハッシュ値算出装置、検索方法、検索装置、記録媒体
JPH08272814A (ja) 文字列検索装置
JP3092524B2 (ja) ルーチングシステム
JP2858798B2 (ja) 図書書誌情報の擬似可変長格納方式
JPH0816600A (ja) 構造化文書検索方法
JPS6373422A (ja) 情報検索装置
JPS61281368A (ja) 画像情報検索装置
JPH05173742A (ja) メッセージデータ管理方式
JPH07200553A (ja) 文書ファイルアクセス方法
JPH06110928A (ja) 2進数データを索引とする値の格納方式