KR100240243B1 - 데이터 검색장치 - Google Patents

데이터 검색장치 Download PDF

Info

Publication number
KR100240243B1
KR100240243B1 KR1019970004166A KR19970004166A KR100240243B1 KR 100240243 B1 KR100240243 B1 KR 100240243B1 KR 1019970004166 A KR1019970004166 A KR 1019970004166A KR 19970004166 A KR19970004166 A KR 19970004166A KR 100240243 B1 KR100240243 B1 KR 100240243B1
Authority
KR
South Korea
Prior art keywords
data
index file
record
record number
request
Prior art date
Application number
KR1019970004166A
Other languages
English (en)
Other versions
KR970066948A (ko
Inventor
데쓰야 기노시타
다카마사 오야마
츄이치 기쿠치
Original Assignee
모리시타 요이찌
마쯔시다덴기산교 가부시키가이샤
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 모리시타 요이찌, 마쯔시다덴기산교 가부시키가이샤 filed Critical 모리시타 요이찌
Publication of KR970066948A publication Critical patent/KR970066948A/ko
Application granted granted Critical
Publication of KR100240243B1 publication Critical patent/KR100240243B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/31Indexing; Data structures therefor; Storage structures
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99932Access augmentation or optimizing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99934Query formulation, input preparation, or translation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

검색 요구와 등록요구를 수용하는 요구수용 수단과; 상기 등록요구에 응답하여 상기 레코드 번호 데이터를 유일하게 규정하는 법칙에 의해 상기 데이터에 포함된 색션 데이터에 따라 등록될 데이터 단위인 각각의 레코드에 레코드 번호를 제공하는 레코드 번호 제공수단과; 상기 레코드 번호와 하나 이상의 스페어 레코드가 그룹중 하나의 그룹을 형성하도록 상기 레코드를 그룹화하고 그룹화한 번호로부터의 그룹번호 데이터가 대응 상대 번호 데이터를 발생시키는 상대 번호 부여수단과; 상기 상대 레코드 번호 데이터와 상기 그룹 번호 데이터를 이용하여 상기 데이터로부터 인덱스 파일을 발생시키는 인덱스 파일 발생수단과; 상기 인덱스 파일을 저장하는 인덱스 파일 저장수단과; 상기 요구 수용수단으로부터의 상기 검색요구에 응답하여 상기 인덱스 파일 저장수단의 상기 인덱스 파일에 따라 상기 검색 요구에 의해 표시된 레코드를 검색하는 인덱스 파일 저장수단과; 상대 번호 데이터와 하나의 검색된 레코드의 그룹 번호 데어터를 상기 레코드 번호 데이터로 반환하는 절대 번호 부여수단과; 상기 절대 번호 부여수단에 따라 검색결과를 출력시키는 검색결과 출력수단을 구비한 데이터 검색장치를 제공하는 것이다.

Description

데이터 검색장치
본 발명은 요구에 응답하여 데이터를 검색하기 위해 데이터를 제공하는 데이터 검색장치에 관한 것이다.
등록문서를 관리하기 위해 데이터 베이스에 기록될 문서를 레코드로 분할하고 이 레코드에 번호를 부여하여 레코드 번호 데이터를 저장하는 데이터 검색장치가 공지되어 있고 각각의 레코드는 등록검색을 위해 데이터 베이스에 저장된 데이터 단위이다.
이러한 종래의 데이터 검색장치는 소정의 메모리 영역에 레코드번호와 문자출현 데이터를 저장한다.
제17도는 선행기술의 데이터 검색장치에 의해 이용되는 인덱스 파일의 데이터 포맷의 예시도이다.
제17도에서, 인데스 파일로 32비트의 소정의 메모리 영역은 레코드 번호 데이터의 12 비트와 문자출현데이터의 12 비트를 저장한다. 따라서, 인덱스 파일의 이 포맷은 1048576(220)레코드만의 관리를 제공한다는 문제점이 있다. 또한, 선행기술에서, 인덱스 파일의 크기(비트)는 레코드의 번호가 증가하는 경우 증가해야 한다는 문제점이 있다.
또한, 선행기술의 데이터 검색장치에서, 문서번호, 페이지번호 및 레코드번호 사이의 대응을 나타내는 대응표를 제공해야 한다. 따라서, 새로운 대응표가 필요하고 문서갱신으로 인한 페이지 수가 증가하는 경우 대응표를 분류해야 한다는 문제점이 있다.
본 발명의 목적은 개량된 데이터 검색장치를 제공하는 것이다.
본 발명에 따라, 제1데이터 검색장치는 검색 요구 데이터를 포함하는 검색요구와 등록 요구를 수용하는 입력부; 이 데이터에 포함된 색션 데이터에 따라 등록할 데이터를 레코드의 단위에 색션시키기 위해 입력부로 부터의 등록 요구에 응답하는 색션부; 모든 소정의 번호가 하나이 그룹으로 글룹하기 위해 레코드를 그룹화하여 번호를 부여하고 그룹번호 데이터와 번호가 부여되어 그룹화된 레코드로 인한 상대 레코드 번호 데이터를 발생시키는 번호 부여부; 이에따라 그룹 번호 데이터와 상대적인 레코드 번호 데이터를 저장하는 저장부; 입력부로 부터의 검색요구 데이터 및 저장부의 그룹 데이터 및 상대 레코드 번호 데이터에 따라 레코드중하나를 검색하는데 이용 될 검색 데이터를 발생시켜 출력시키는 검색 데이터 발생부를 구비하고 있다.
본 발명에 따라, 제2데이터 검색장치는 검색 데이터를 포함하는 검색 요구와 등록 요구를 수용하는 요구수용부; 등록 용구에 응답하여 레코드 번호 데이터를 등록될 데이터의 단위인 각 레코드에 제공하는 레코드 번호 제공부; 레코드 번호데이터를 그룹으로 그룹시키고 레코드 번호내의 그룹 번호 데이터와 상대 레코드번호 데이터로 변환하는 상대 번호 부여부; 이 데이터 및 상대 레코드 번호 데이터로부터 인덱스 파일 발생하는 인덱스 파일 발생부; 이 인덱스 파일을 저장하는 인덱스 파일 저장부; 요구수용부로 부터의 검색 요구에 응답하여 인덱스 파일 저장부의 인덱스 파일에 따라 검색 데이터에 의해 표시된 레코드중 하나를 검색하는 인덱스 파일 검색부; 레코드중 검색된 레코드의 상대 번호 데이터 및 그룹 번호 데이터를 레코드 번호 데이터로 변환하는 절대 번호 부여부; 절대번호 부여부로 부터의 레코드 번호 데이터에 따라 검색결과를 출력시키는 검색결과 출력부를 구비하고 있다.
제2데이터 검색장치는 데이터 파일 저장부가 인덱스 파일을 저장할 때 인데스 파일을 장치 인덱스 파일 저장부에 저장하기 위해 저장공간을 인덱스 파일 저장부에 제공하는 삽입 영역 발생부를 구비하고 있다.
제2데이터 검색장치에서, 레코드 번호 제공부는 레코드 번호 데이터와 이 데이터에 포함된 색션 데이터 사이의 대응을 나타내는 레코드 번호 대응표를 더 포함하고 검색결과 출력부는 레코드 번호 대응표에 따라 절대 번호부여부로 부터의 레코드 번호 데이터로부터의 검색결과를 출력시킨다.
제2데이터 검색장치에서, 인덱스 파일 발생부는 각각의 그룹 번호 데이터를 저장하는 헤더와 상대 레코드번호 데이터 및 대응 인덱스 데이터를 저장하기 위해 헤더를 추종하는 인덱스 데이터 영역을 포함하는 인덱스 파일을 발생시킨다.
본 발명에 따라, 제3데이터 검색장치는 검색요구와 등록요구를수용하는 요구수용부와; 등록요구에 응답하여 레코드 번호 데이터를 유일하게 규정하는 법칙을 통해 데이터에 속한 색션데이터에 따라 등록된 데이터의 단위인 각각의 레코드에 레코드 번호를 제공하는 레코드 번호 제공부; 레코드 번호와 하나 이상의 스페어 레코드가 그룹중 하나를 형성하도록 레코드를 그룹화하고, 그룹번호 데이터와 그룹화한 레코드 번호로부터의 대응상태 번호 데이터를 발생하는 상대 번호부여부와; 요구수용부로부터의 검색요구에 응답하여 인덱스 파일 저장부의 인덱스 파일에 따라 검색요구에 의해 표시된 레코드 중 하나를 검색하는 인덱스 파일 검색부와; 레코드중 검색된 레코드의 상대 번호 데이터와 그룹 번호 데이터를 기록번호 데이터로 변환하는 절대번호 부여부와; 이 절대번호 부여부로부터의 레코드 번호에 따라, 검색결과를 출력시키는 검색결과 출력부를 구비한다. 제3검색장치는 인덱스 파일 저장부가 인덱스 파일을 저장할 때 인덱스 데이터를 장치, 인덱스 파일저장부에 저장하기 위해 저장공간을 인덱스 저장부에 제공하는 삽입영역 발생부를 더 포함한다.
본 발명의 제1실시예를 아래에서 설명할 것이다.
제1도는 제3실시예에서 언급한 본 발명의 제1실시예의 데이터 검색 장치의 블록도이다.
데이터 검색장치는 각 처리의 요구를 수용하는 요구수용부(1), 등록해야할 문서에 레코드 번호(데이터)를 할당하고 문서번호, 페이지번호 및 레코드번호 사이의 대응을 나타내는 기록번호 대응표를 발생시키는 레코드 번호 제공부(2), 레코드번호 제공부(2)에 의해 발생된 레코드 번호 대응표를 저장하는 레코드 번호 대응표(3), 레코드 번호 제공부(2)에 의해 제공된 레코드 번호(데이터)를 그룹화하고 레코드 번호를 그룹내의 상대번호를 변환시키는 상대번호 부여부(4)와; 상대번호 부여부(4)에 의해 제공된 상대번호와 등록된 데이터로부터 데이터 파일을 발생시키는 인덱스 파일 발생부(5)와; 이 인덱스 파일 발생부(5)에 의해 발생된 인덱스 파일을 저장하는 인덱스 파일 저장부(6)와; 인덱스 파일 저장부(6)의 인덱스 파일을 사용하여 검색을 실행하는 인덱스 파일 검색부(7)와; 인덱스 파일 검색부(7)에 의해 검색된 상대 레코드 번호를 절대 레코드 번호로 변환하는 절대 번호 부여부(8)과; 레코드 번호 대응표 저장부(3)의 레코드 번호 대응표를 이용하여 문서번호와 페이지번호로 절대 번호부여부에 의해 검색된 레코드 번호로 변환하는 문서번호 변환부(9)와; 검색된 문서번호를 디스플레이하는 검색결과 출력부(10)와; 인덱스 파일 발생부(5)가 인덱스 파일을 인덱스 파일 저장부(6)에 저장하는 동안 앞서서 부가적인 데이터를 저장하기 위해 데이터 영역을 제거하는 삽입 영역 발생부(11)를 포함하고 있다. 제1실시예에서, 삽입영역 발생부(11)는 이용되지 않는다.
제1실시예에의 작동을 설명할 것이다. 제2도는 제2및 제3실시예에서 언급한 제1실시예의 흐름도를 도시한다. 제3도는 레코드된 문서의 상태를 도시한 실시예를 나타낸다. 제4도는 대응표의 상태를 도시한 실시예를 도시한다. 데이터 검색장치에 포함된 cpu(데이터 검색장치에 포함되었지만 도시되지 않은 중아처리장치)는 제2도의 흐름도에 도시되어 있듯이 프로그램을 실행한다.
사용자가 문서를 등록할 때, 문서등록 요구를 수용하고 이에 응답하여 레코드 번호 제공부(2)는 단계(s1)에서 등록된 데이터의 단위인 각각의 레코드에 레코드 번호를 제공한다. 즉, 등록될 데이터인 문서는 페이지를 포함하는 모든 페이지는 레코드 번호가 제공된 레코드로 처리된다.
예를 들어, 문서가 제3도에 도시되어 있듯이 등록되면, 문서(D1)의 1 페이지에는 레코드번호 1에 제공되고, 문서(D1)의 2 페이지에는 레코드 번호 2가 제공되고, 문서(D2)의 1페이지에는 레코드 번호 3에 제공된다.
cpu는 레코드번호, 문서번호 및 페이지 번호 사이의 관계를 나타내는 레코드 번호 대응표에 대해 테이블 데이터를 발생시킨다. cpu는 테이블 데이터를 사용하여 레코드 번호 대응표를 갱신하고 단계(s2)에서 대응표 저장부(3)에서 갱신된 레코드 번호 대응표를 저장한다.
제3도에 도시된 문서가 등록될 때, 레코드 번호 대응표의 데이터 상태가 제4도에 도시된 것처럼 된다. cpu는 단계(s3)에서 레코드를 그룹화한다. 65536레코드가 하나의 그룹으로 그룹화된다고 하면 그룹번호는 그룹 번호 = 크기 로드번호/65536 으로 주어진다. 단, 은 몫 즉, 그룹 번호가 레코드번호/65536의 분수를 제거함으로써 제공된 정수이다.
다음 단계(s4)에서 그룹의 상대 레코드 번호가 상대 레코드 번호 = 레코드번호 %/65536 이고 단 오퍼레이터 %는 나머지를 나타낸다.
절대 레코드 번호와 상대 번호 사이의 관계를 나타내는 실시예를 도시한 제5도에 도시되어 있듯이, 절대 레코드 번호가 상대 번호로 변환된다. 예를들면, 절대 레코드 번호 65537 그룹 1에서 상대 레코드 번호로 변환 되고 그룹 2에서 레코드 번호 13072 는 상대 레코드 번호 0으로 변환된다.
다음, cpu는 단계(s5)에서 인덱스 파일을 발생시킨다. 제6도는 인덱스 파일을 도시한 실시예를 예시한다. 인덱스 파일은 두 개의 문자를 포함하는 체인에서의 두 개의 문자의 출현도 정보수의 번호를 포함한다.
제7a도는 문자의 트레인과 출련시간의 번호사이의 관계를 도시한다.
제7b도는 두 개의 소정의 문자를 포함하는 문자열과 출현도 정보수의 번호 사이의 관계를 도시한다. 등록된 데이터가 "abaabcac"이면, 각각의 문자의 출현 시간의 번호가 제7a도에 도시되어 있다. 다음, 문자 체인이 중첩을 지닌 등록된 데이터의 상부로부터 연속적으로 제공되도록 등록된 데이터가 분할된다. 즉,문자열이 두 개의 문자마다 색션되고 이색션점이 하나의 문자마다 시프트된다.
다음, 문자열이(a, b)이고 이의 출현도 정보수의 번호가(1, 1)이다. 다음 문자열이(b, a)이고 출현도 정보수의 번호가(1, 2)이다.
이와 유사하게, cpu는 모든 문자열의 출현도 정보수의 번호를 얻는다. 제8도는 인덱스 파일을 도시한 실시예의 예시이다.. 그룹 1에서 레코드 번호에 등록된 데이터가 "ababcbcbcababc"이면 그룹 1에서의 레코드번호(2)에 등록된 "bbaabbcabc" 이고 그룹 2의 레코드 번호 1에서 등록된 데이터가 "bcababcbc" 이고 그룹(2)의 레코드 번호(2)에 등록된 데이터가 "acbcabbaabc 이다. cpu는 제8도에 도시되어 있듯이, 문자열(a, b) 및 (b, c)에 대한 출현시간의 번호를 산출한다. 최종 레코드가 인덱스 파일을 제공하도록 처리될때까지 cpu는 인덱스 파일을 발생하기 위해 단계(s1-s7)을 반복 실행한다. 즉 cpu는 최종 레코드가 단계(s6)에서 처리되었는지를 결정한다. 만일 레코드가 최종이 아니면, 처리기 단계(s1)에 복귀한다.
검색 처리를 설명할 것이다.
제9도와 제10도는 본 실시예의 검색처리의 흐름도를 도시한다.
사용자가 검색될 문자열(검색문자열)의 데이터을 포함하는 검색요구를 입력할 때, 요구수용부(1)는 검색요구를 수용하고 검색문자의 데이터를 인덱스 파일부(7)에 공급한다. 인덱스 파일 검색부(7)는 문자열을 문자체인으로 분할한다.
검색 문자열이 abc 이면 인덱스 파일 검색부(7)는 단계 (s11)에서 이를 문자체인(a, b) 및 (b, c)로 분할한다. 인덱스 파일 검색부(7)는 단계(s12)에서 인덱스 파일 저장부(6)의 각각의 파일에 있어서의 문자체인(a, b) 및 문자체인 (b, c)의 출현도 정보수 파일로부터 문자체인(a, b) 및 (b, c)의 출현도 정보수를 얻는다.
제8도의 경우, 그룹 1의 레코드 번호 1에서 문자체인(a, b)의 출현도 정보수의 번호는 (1, 1)이고, 문자체인(b, c)의 출현도 정보수의 번호는(1, 1)이고, 문자체인(b, c)의 출현도 정보수의 번호는(2, 1)이다. 따라서, 인덱스 파일 검색부(7)는 인데스 파일 저장부(6)로부터 문자체인(a, b)의 출현도 정보수(1, 1)의 번호와 문자체인(b, c)의 출현도 정보수(2, 1)의 번호를 얻는다.
다음, 인덱스 파일 검색부(7)는 단계(s13)에서 인덱스 파일 저장부(6)의 문자체인(a, b) 및 (b, c)의 출현도 정보수의 얻어진 번호의 그룹번호들을 비교한다. 출현도 정보수의 얻어진 번호가 같지 않으면, 인덱스 파일 검색부(7)는 그룹번호가 작은 그룹에 존재하는 문자체인(a, b) 및 (b, c)의 인덱스 파일의 포인터중 하나를 다음 그룹의 출현도 정보수의 번호의 최고치까지 증가시키는 단계(s13) 및 (s14)를 되풀히 한다. 문자체인(a, b) 및 (b, c)의 출현시간, 데이터의 얻어진 번호의 그룹번호가 같으면, 인덱스 파일 검색부(7)는 단계(15)에서 출현도 정보수의 얻어진 번호의 레코드 번호를 비교한다.
제8도의 경우에, 모든 그룹 번호가 1이기 때문에, 인덱스 파일 검색부(7)는 레코드 번호를 비교한다.
상대 레코드 번호가 동일한 그룹에서 서로 다르면, 인덱스 파일 검색부(7)는 출현도 정보수의 얻어진 번호가 단계(s16)에서 그룹의 최종 데이터 인지를 결정한다. 만일 출현도 정보수의 얻어진 번호가 그룹에서 최종 데이터가 아니면, 인덱스 파일 검색부(7)는 단계(s17)에서 레코드 번호가 적은 출현도 정보수의 후행번호를 얻는다. 인덱스 파일 검색부(7)는 단계(s15)~ 단계(s17)의 처리를 되풀이 한다. 출현도 정보수의 얻어진 번호가 그룹의 최종 데이터이면, 인덱스 파일 검색부(7)는 단계(s18)에서 후행그룹의 상부에서 출현도 정보수의 번호를 얻고, 단계(s13)~단계 (s18)의 처리를 되풀이 한다. 그룹의 레코드 번호가 같으면, 인덱스 파일 검색부(7)는 단계(s19)에서 출현시간의 번호들을 비교한다.
제8도의 경우에, 그룹의 양 레코드 번호가 1 이기 때문에, 인덱스 파일 검색부(7)는 출현도 정보수의 번호들을 비교한다.
인덱스 파일 검색부(7)는 다음과 같이 출현도 정보수의 번호를 비교한다.
문자체인(a, b)에서의 문자"b" 의 출현 시간의 비교는 문자체인(b,c)에서의 문자 "b"의 출현도 정보수의 번호와 비교된다. 출현도 정보수의 양번호가 서로 일치하면, 문자체인(a, b)의 문자 "b"가 문자체인(b, c)의문자 "b"와 같은 문자이다. 이것은 두 개의 문자체인 연속 문자열, 즉, 문자열(abc)라는 것을 의미한다.
출현시간의 양번호가 서로 일치하지 않으면, 인덱스 파일 검색부(7)는 단계(s10)에서 출현도 정보수의 번호가 작은 문자체인에 대해 추종하는 문자체인이 출현도 정보수의 번호를 얻고, 단계(s5)로부터 처리를 되풀이 한다.
제8도의 경우에, (a, b)의 출현도 정보수의 번호가 (1, 1)이고 (b, c)이 출현도 정보수가 (2, 1)이어서 문자체인(a, b)의 제2문자(b)의 출현시간의 번호가 문자체인(b, c)(COM1)의 제1문자(b)의 출현시간 번호와 일치하지 않기 때문에, 인덱스 파일 검색부(7)는 동일한 그룹(2, 2)의 레코드 번호(1)의 출현도 정보수의 번호를 얻고 값이 작은 출현시간의 번호를 갖는 문자체인(a, b)에 대해 추종한다.
다음, 출현도 정보수의 양번호가 동일한 레코드 번호 및 동일한 그룹에 있기때문에 인덱스 파일 검색부(7)는 양출현 주파수(COM2)를 비교한다. 출현도 정보수의 번호가 2 이기 때문에 문자(abc)가 검색되어진다.
출현도 정보수가 서로 일치하면, 즉, 문자열에 검색되면, 레코드 번호가 단계(s11)에서 다음식에 의해 그룹번호 및 레코드 번호로부터 산출된다.
레코드 번호 = 65536 * 그룹번호 + 그룹의 레코드 번호.
다음, 인덱스 파일 검색부(7)는 단계(s12)에서 레코드 번호 대응표 저장부(3)에 저장된 제4도에 도시된 대응표를 이용하여 레코드 번호로부터 문서번호와 페이지 번호를 얻는다.
다음 단계(s13)에서 인덱스 파일 검색부(7)는 검색될 문서번호와 페이지 번호로 단계(s12)에서 얻어진 문서번호와 페이지번호를 출력시킨다. 최종 데이터가 처리될때까지 이 처리가 되풀이 된다.
인덱스 파일 발생부(5)는 각각의 그룹번호 데이터를 저장하는 헤더(60)와 상대 레코드 번호 데이터를 저장하여 인덱스 파일에 대응시키기 위해 헤더(60)에 대해 추종하는 인덱스 데이터 영역(62)를 포함하는 인덱스 파일을 발생시킨다. 헤더(60)과 각각의 인덱스데이터 영역(62)는 크기가 동일하다. 언급했듯이 본 실시예의 데이터 검색장치에서, 문서가 등록될 때, 레코드 번호가 모든 페이지에 할당되고, 이 레코드 번호는 그룹화되어 제어될 상대 레코드 번호로 변환되어 동일한 범위의 레코드 번호가 모든 그룹에 되풀이하여 이용될 수 있다.
본 실시예에서, 인덱스 파일이 두 개의 문자를 포함하는 문자체인의 출현도 정보수에 의해 제공된다. 그러나, 문제차인의 절대 위치 데이터와 같은 문자체인의 출현을 나타내는 기타 데이터가 인덱스 파일에 대해 이용될 수 있다. 또한, 본 실시예에서, 등록의 하나의 데이터가 모든 페이지에 제공된다. 그러나, 하나의 레코드를 기간 등과 같은 데이터를 색션함으로써 색션된 모든 문서, 페이지 또는 모든 항(패러그래프)와 같은 모든 소정의 색션에 제공할 수 있다.
제2실시예를 설명할 것이다.
제11도는 제2실시예에 데이터 검색장치의 블록도이다.
제2실시예의 데이터 검색장치는 여러처리를 위해 요구를 수용하는 요구수용부(12), 문서번호 및 페이지 번호로부터 레코드 번호를 유일하게 결정하는 법칙에 따라 레코드 번호를 제공하는 레코드 번호 제공부(13), 이 레코드 번호 제공부(13)에 의해 제공된 레코드 번호를 그룹화 하는 상대 번호 부여부(14), 등록될 상대 번호 부여부(14) 데이터에 의해 변환된 상대 레코드 번호를 포함하는 인덱스 파일을 발생시키는 인덱스 파일 발생부(15), 인덱스 파일 발생부(15)에 의해 발생된 인덱스 파일을 저장하는 인덱스 파일 저장부(16), 인덱스 파일 저장부(16)에 저장된 인덱스 파일을 이용하여 데이터를 검색하는 인덱스 파일 검색부(17), 인덱스 파일 검색부(17)에 의해 검색된 레코드의 상대 레코드 번호를 절대번호로 변환하는 절대번호부여부(18), 레코드 번호 제공부(13)에 의해 실행된 변환이 역변환을 통해 레코드 번호로부터 문서번호와 페이지 번호를 제공하는 문서번호 변환부(19) 및 검색결과로 문서 번호를 출력시키는 검색결과 출력부(20)를 포함한다.
먼저, 문서를 등록하는 작동을 설명할 것이다. 제12도는 문서등록 작동을 도시한 제2실시예의 흐름도를 도시한다. 제13도는 문서의 레코드 번호를 도시한 제2실시예의 예시이다.
사용자가 등록요구를 요구수용부(12)에 입력할 때, 용구수용부(12)는 이동록요구를 수용한다. 다음, 레코드 번호 부여부(13)는 문서번호 및 페이지 번호로부터의 레코드 번호를 유일하게 결정하는 법칙에 의해 레코드 번호를 제공한다.
레코드 번호는 다음식으로부터 산출된다. 레코드 번호 = (문서번호 -1) * 하나의 문서의 페이지의 최대번호 + 페이지번호, 단, 레코드 번호는 제13도에 도시되어 있듯이, 하나의 문서의 페이지 번호를 소정의 번호에 설정함으로써 유일하게 결정될 수 있다.
이처리후 문서를 등록하는 처리는 제2도에 도시된 단계(s3 ~ s8)의 처리와 유사하다.
검색작동은 제19도 및 제10도에 도시된 처리에 의해 수용된다. 그러나,문서 번호와 페이지 번호는 다음식에 의해 단계(s12)에서 레코드 번호로부터 산출된다.
문서번호 P 레코드 번호/하나의 문서의 페이지의 최대수 + 1.
페이지 번호 = 레코드 번호 % 하나의 문서의 최대 페이지 번호.
언급했듯이, 제2실시예의 데이터 검색 장치에서 많은량의 레코드 번호가 레코드 번호를 그룹화하고, 상대 레코드 번호로 제어함으로써 제어될 수 있어서 하나의 문서의 최대 페이지 번호로부터의 레코드 번호 및 페이지 번호를 유일하게 결정하는 법칙에 의해 페이지 번호를 할당할 수 있다.
따라서, 제1실시예에서 필요한 대응표를 발생할 필요가 없다. 또한, 문서를 갱신함으로써 페이지 번호가 증가하면, 레코드 번호의 번호 부여가 소정의 최소 페이지내에 규칙적으로 제공될 수 있다.
또한, 레코드 번호의 기타 변환이 레코드 번호 = 문서의 최대번호 *(페이지수 -1) + 문서번호와 같은 문서번호 및 페이지 번호로부터의 레코드 번호를 유일하게 결정하면 본 실시예에 응용가능하다.
제3실시예를 설명할 것이다.
제3실시예의 구조와 작동은 제1실시예와 유사하다. 제1실시예와 제3실시예의 차이전은 삽입 영역 발생부(11)가 더 제공되었다는 것이다. 삽입영역 발생부(11)는 삽입영역은 발생시키고 출현도 정보수를 이 삽입영역에 저장하는 반면, 인덱스 파일 발생부(5)는 인덱스 파일을 인덱스 파일 저장부(6)에 저장한다.
문서등록작동은 제2도에 도시된 단계 1~4의 처리와 유사하게 실행된다.
제14도는 인덱스파일 발생 처리를 도시한 제3실시예의 흐름도를 도시한다.
단계(s41)에서, 인덱스 파일 발생부는 제1실시예와 유사한 것으로 두 개의 문자를 포함하는 문자 체인의 출현도 정보수를 발생시킨다. 인덱스 파일 발생부(5)는 단계(s42)에서 출현도 데이터수를 저장하기 위해 삽입 영역이 없는지를 결정한다. 출현도 정보의 수를 저장하는 삽입 영역에 없는 경우 삽입영역 발생부(11)는 단계(s43)에서 저장영역이 소정의 크기를 발생한다. 단계(s42)에서 출현도 정보수를 저장하기 위한 삽입영역이 있는 경우, 인덱스 파일 발생부(5)는 단계(s44)에서 출현도 정보수를 삽입영역에 저장시킨다.
제15도는 인덱스 파일을 도시한 제3실시예의 예시이다. 제16도는 인덱스 파일을 발생하기 위해 데이터를 도시한 제3실시예의 예시이다. 그룹1에서 레코드 번호 1을 지닌 문장을 "ababcbcababc"이고, 그룹 1에서 레코드 번호(2)를 갖는 문장이 "bbaabbcabc" 이고, 그룹2에서 레코드 번호 2를 갖는 문장이 "bcababcbc"라고 했다. 다음, 인덱스 파일 발생부(5)는 제1실시예와 유사하게 문자체인(a, b)의 출현도 정보의수를 나타내는 인덱스 파일을 발생시키고, 소정의 크기의 또 다른 인덱스 영역이 제16도에 도시되어 있듯이 모든 그룹에 끼워진다.
출현도 정보수를 인덱스 파일에 더하는 경우는 문서가 더 등록되고 등록된 문서가 갱신되어 출현도 정보수가 갱신되어야 한다.
이처리후 데이터 등록 처리는 데이터 등록 처리를 완료하기 위해 제2도에 도시되어 있듯이 제1실시예에 단계(s6~s7)의 처리와 유사하게 실행된다.
검색 작동은 제9도 및 제10도에 도시된 처리와 유사하게 실행된다.
언급했듯이 제3실시예의 데이터 검색 장치에서 소정의 크기의 삽입 영역을 발생시킨다. 따라서, 등록된 문서가 갱신되거나 새로운 문서가 더 갱신되면, 삽입영역에 부가된 출현도 정보수를 부가할 수 있어서 데이터 삽입으로 인한 등록 속도를 감소시키는 것을 방지한다.
본 실시예에서, 레코드 번호가 상대적으로 번호를 부여함으로써 제공된다. 그러나, 상대적으로 번호가 부여되지 않은 일반 레코드 번호를 지닌 레코드 번호를 제어할 수 있다.
제1도는 본 발명의 제3실시예에 이용된 본 발명의 제1실시예의 데이터 검색장치의 블록도.
제2도는 제2및 제3실시예에 언급된 제1실시예의 흐름도.
제3도는 기록된 문서의 상태를 도시한 제1실시예의 예시도.
제4도는 대응표의 상태를 도시한 제1실시예의 예시도.
제5도는 절대 레코드 번호와 상태번호 사이의 관계를 도시한 제1실시예의 예시도.
제6도는 인덱스 파일을 도시한 제1실시예의 예시도.
제7a도는 문자열과 출현도수 사이의 관계를 도시한 예시도.
제7b도는 두 개의 소정의 문자를 포함하는 문자체인과 출현도 정보수 사이에 관계를 도시한 예시도.
제8도는 인덱스 파일을 도시한 실시예의 예시도.
제9도 및 제10도는 제1실시예의 검색처리의 흐름도.
제11도는 제2실시예의 데이터 검색장치의 블록도.
제12도는 문서등록작동을 도시한 제2실시예의 흐름도.
제13도는 문서의 레코드 번호를 도시한 제2실시예의 예시도.
제14도는 인덱스 파일 발생처리를 도시한 제3실시예의 흐름도.
제15도는 인덱스 파일을 도시한 제3실시예의 예시도.
제16도는 인덱스 파일을 발생하는 데이터를 도시한 제3실시예의 예시도.
제17도는 선행기술의 데이터 검색장치에 의해 이용된 인덱스 파일의 데이터 포맷의 예시도.
* 도면의 주요부분에 대한 부호의 설명
1 : 요구수용부 2 : 레코드번호 제공부
3 : 레코드번호 대응표 저장부 4 : 상대 번호 부여부
5 : 인덱스 파일 발생부 6 : 인덱스 파일 저장부
7 : 인덱스 파일 검색부 8 : 절대번호 부여부
9 : 문서번호 변환부 10 : 검색결과 출력부

Claims (7)

  1. 검색 요구 데이터를 포함하는 검색요구와 등록요구를 수용하는 입력수단과; 상기입력수단으로 부터의 상기 등록요구에 응답하여 상기 데이터에 포함된 색션 데이터에 따라 레코드의 단위로 등록될 데이터를 색션하는 색션수단과; 상기 레코드의 모든 소정의 번호가 하나의 그룹으로 그룹화 되도록 상기 레코드를 그룹화하여 번호를 부여하고 번호가 부여되어 그룹화한 레코드로 인한 그룹번호 데이터와 상대 레코드 번호 데이터를 발생시키는 번호 부여수단과; 상기 그룹번호 데이터와 이로 인한 상기 상대 레코드 번호 데이터를 저장하는 저장수단과; 상기 입력수단으로 부터의 상기 검색요구 데이터와 상기 저장수단의 상대 레코드 번호 데이터에 따라 하나의 상기 레코드를 검색하기 위해 사용되는 검색 데이터를 발생하여 출력시키는 검색 데이터 발생수단을 구비한 데이터 검색장치.
  2. 검색데이터를 포함하는 검색요구 및 등록 요구를 수용하는 요구 수용수단과; 상기 등록 요구에 응답하여 등록될 데이터의 단위인 각각의 레코드에 레코드번호 데이터를 제공하는 레코드 번호 제공수단과; 상기 레코드 번호 데이터를 그룹으로 그룹화하고 상기 레코드 번호 데이터를 각각의 상기 그룹내의 그룹 번호 데이터 및 상대 레코드 번호 데이터는 변환하는 상대 번호 부여수단과; 상기 데이터와 상기 상대 레코드 번호 데이터로부터 인덱스 파일을 반생시키는 인덱스 파일 발생수단과; 상기 인덱스 파일을 저장하는 인덱스 파일 저장수단과; 상기 요구 수용수단으로 부터의 상기 검색요구에 응답하여 상기 인덱스 파일저장수단의 상기 인덱스 파일에 따라 상기 검색 데이터에 의해 표시된 하나의 레코드를 검색하는 인덱스 파일 검색수단과; 상기 번호 데이터와 상기 검색된 하나의 레코드의 그룹번호 데이터를 상기 레코드 번호 데이터를 변환하는 절대번호 부여수단과; 상기 절대번호 부여수단으로부터의 레코드 번호 데이터에 따라 검색결과를 출력시키는 검색결과 출력수단을 구비한 데이터 검색장치.
  3. 제2항에 있어서, 상기 레코드 번호 제공부는 상기 레코드 번호 데이터와 상기 데이터에 포함된 색션 데이터 사이의 대응을 나타내는 대응표에 레코드 번호를 발생시키고, 상기 검색결과 출력수단을 상기 레코드번호 대응표에 따라 절대번호부여수단으로부터의 상기 레코드 번호 데이터로부터 상기 검색결과를 출력시키는 데이터 검색장치.
  4. 제2항에 있어서, 상기 인덱스 파일 발생수단은 각각의 상기 그룹번호 데이터를 저장하기 위한 헤더와 상대 레코드 번호 데이터를 저장하기 위해 상기 헤더에 대해 추종하고 상기 인덱스 데이터에 대응하는 상기 인덱스 데이터 영역을 포함하는 인덱스 파일을 발생시키고, 상기 헤더와 각각의 상기 인덱스 데이터 영역은 크기가 같은 데이터 검색장치.
  5. 검색요구와 등록요구를 수용하는 요구수용 수단과; 상기 등록요구에 응답하여 상기 레코드 번호 데이터를 유일하게 규정하는 법칙에 의해 상기 데이터에 포함된 색션 데이터에 따라 등록될 데이터 단위인 각각의 레코드에 레코드 번호를 제공하는 레코드 번호 제공수단과; 상기 레코드 번호와 하나 이상의 스페어 레코드가 그룹중 하나의 그룹을 형성하도록 상기 레코드를 그룹화하고 그룹화한 번호로부터의 그룹번호 데이터가 대응 상대 번호 데이터를 발생시키는 상대 번호 부여수단과; 상기 상대 레코드 번호 데이터와 상기 그룹 번호 데이터를 이용하여 상기 데이터로부터 인덱스 파일을 발생시키는 인덱스 파일 발생수단과; 상기 인덱스 파일을 저장하는 인덱스 파일 저장수단과; 상기 요구수용수단으로부터의 상기 검색요구에 응답하여 상기 인덱스 파일 저장수단의 상기 인덱스 파일에 따라 상기 검색 요구에 의해 표시된 레코드를 검색하는 인덱스 파일 검색수단과; 상대 번호 데이터와 하나의 검색된 레코드의 그룹 번호 데이터를 상기 레코드 번호 데이터로 반환하는 절대 번호 부여수단과; 상기 절대 번호 부여수단에 따라 검색결과를 출력시키는 검색결과 출력수단을구비한 데이터 검색장치.
  6. 제2항에 있어서, 상기 인데스 파일 저장수단이 상기 인덱스 파일을 저장할때 장치 상기 인덱스 데이터를 상기 인덱스 파일 저장수단에 저장하기 위해 상기 저장 공간을 상기 인덱스 저장수단에 제공하는 삽입영역 발생수단을 구비한 데이터 검색장치.
  7. 제5항에 있어서, 상기 인덱스 파일 저장수단의 상기 인덱스 파일을 저장할때 장치 상기 인덱스 파일 저장수단의 저장공간을 상기 인덱스 파일 저장수단의 상기 인덱스 데이터를 제공하는 삽입영역 발생부를 더 구비한 데이터 검색장치.
KR1019970004166A 1996-03-12 1997-02-12 데이터 검색장치 KR100240243B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP96-54588 1996-03-12
JP8054588A JP2888188B2 (ja) 1996-03-12 1996-03-12 情報検索装置

Publications (2)

Publication Number Publication Date
KR970066948A KR970066948A (ko) 1997-10-13
KR100240243B1 true KR100240243B1 (ko) 2000-01-15

Family

ID=12974892

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970004166A KR100240243B1 (ko) 1996-03-12 1997-02-12 데이터 검색장치

Country Status (6)

Country Link
US (1) US5915248A (ko)
EP (1) EP0806732B1 (ko)
JP (1) JP2888188B2 (ko)
KR (1) KR100240243B1 (ko)
CN (1) CN1094218C (ko)
DE (1) DE69712568T2 (ko)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3571201B2 (ja) * 1997-12-12 2004-09-29 富士通株式会社 データベース検索装置及びデータベース検索プログラムを記録したコンピュータ読み取り可能な記録媒体
NO992269D0 (no) * 1999-05-10 1999-05-10 Fast Search & Transfer Asa S°kemotor med todimensjonalt skalerbart, parallell arkitektur
US6745196B1 (en) * 1999-10-08 2004-06-01 Intuit, Inc. Method and apparatus for mapping a community through user interactions on a computer network
US6480857B1 (en) 2001-06-07 2002-11-12 David Chandler Method of organizing hierarchical data in a relational database
US7222160B2 (en) * 2001-07-20 2007-05-22 Sharp Laboratories Of America, Inc. Object search and retrieval service for an ad hoc data communication system
AUPR894801A0 (en) * 2001-11-20 2001-12-13 Unisearch Limited A system and method for searching data sources
CN100346347C (zh) * 2002-04-12 2007-10-31 科学 通过多个面部原型合成的健壮面部注册
CN100411336C (zh) * 2003-12-10 2008-08-13 联想(北京)有限公司 无线网格下共享文件的搜索方法
US7636710B2 (en) * 2004-03-04 2009-12-22 Symantec Operating Corporation System and method for efficient file content searching within a file system
JP4802672B2 (ja) * 2005-11-14 2011-10-26 株式会社日立製作所 電子文書管理装置、電子文書管理プログラム、電子文書管理システム
US20110060718A1 (en) * 2009-09-04 2011-03-10 Song You Method and Apparatus for Organizing Hierarchical Data in a Relational Database
CN103136242B (zh) * 2011-11-28 2016-09-21 上海可鲁系统软件有限公司 一种多源数据索引存储、读取方法及装置
JP5942634B2 (ja) 2012-06-27 2016-06-29 富士通株式会社 秘匿化装置、秘匿化プログラムおよび秘匿化方法
US9729327B2 (en) 2013-10-29 2017-08-08 International Business Machines Corporation Computer-based optimization of digital signature generation for records based on eventual selection criteria for products and services
CN105097785A (zh) * 2014-05-09 2015-11-25 群创光电股份有限公司 显示面板的多重静电放电环装置
CN106947722B (zh) * 2017-04-28 2020-10-30 连云港中新污水处理有限公司 微生物菌剂及其制备方法和在污水处理中的应用

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5164897A (en) * 1989-06-21 1992-11-17 Techpower, Inc. Automated method for selecting personnel matched to job criteria
US5257365A (en) * 1990-03-16 1993-10-26 Powers Frederick A Database system with multi-dimensional summary search tree nodes for reducing the necessity to access records
US5530855A (en) * 1992-10-13 1996-06-25 International Business Machines Corporation Replicating a database by the sequential application of hierarchically sorted log records
JP3170095B2 (ja) * 1993-04-14 2001-05-28 富士通株式会社 情報検索システム
GB9311580D0 (en) * 1993-06-04 1993-07-21 Phonelink Data Limited Data retrieval system
US5734886A (en) * 1994-11-16 1998-03-31 Lucent Technologies Inc. Database dependency resolution method and system for identifying related data files
US5717919A (en) * 1995-10-02 1998-02-10 Sybase, Inc. Database system with methods for appending data records by partitioning an object into multiple page chains

Also Published As

Publication number Publication date
EP0806732A2 (en) 1997-11-12
KR970066948A (ko) 1997-10-13
CN1162154A (zh) 1997-10-15
DE69712568T2 (de) 2002-10-31
EP0806732A3 (en) 1998-12-23
JPH09245043A (ja) 1997-09-19
US5915248A (en) 1999-06-22
DE69712568D1 (de) 2002-06-20
CN1094218C (zh) 2002-11-13
EP0806732B1 (en) 2002-05-15
JP2888188B2 (ja) 1999-05-10

Similar Documents

Publication Publication Date Title
KR100240243B1 (ko) 데이터 검색장치
JP3849279B2 (ja) インデクス作成方法および検索方法
JP4717130B2 (ja) オフセット表を使用する完全ハッシュの生成
US4785400A (en) Method for processing a data base
US6212525B1 (en) Hash-based system and method with primary and secondary hash functions for rapidly identifying the existence and location of an item in a file
US6862602B2 (en) System and method for rapidly identifying the existence and location of an item in a file
JP4848317B2 (ja) データベースのインデックス作成システム、方法及びプログラム
EA006562B1 (ru) Способ кодирования ключей в базе данных и база данных
JP3003915B2 (ja) 単語辞書検索装置
JPH09179872A (ja) 有限状態トランスデューサを用いてデータベースのインデックス付けを行う方法及び装置
JP2001331509A (ja) リレーショナルデータベース処理装置、リレーショナルデータベースの処理方法及びリレーショナルデータベースの処理プログラムを記録したコンピュータ読み取り可能な記録媒体
Schuegraf Compression of large inverted files with hyperbolic term distribution
KR890016474A (ko) 데이타베이스 대상물 분석방법 및 시스템
JP2007048318A (ja) リレーショナルデータベースの処理方法およびリレーショナルデータベース処理装置
JP3019286B2 (ja) 文書検索装置
JPH06251076A (ja) データ・ベース検索装置および方法
JP3288063B2 (ja) 可変長データの格納および参照システム
JP2020135530A (ja) データ管理装置、データ検索方法及びプログラム
EP0567668A1 (en) A computer system for retrieval of information
JP2722684B2 (ja) ファイルシステムの検索装置
JPH0991305A (ja) 情報処理方法及び装置
Irving et al. Extracting the Sparse Longest Common Prefix Array from the Suffix Binary Search Tree
JPH05225248A (ja) データベース検索システム
CN115292322A (zh) 一种数据查询方法、装置、设备及介质
JPH0514938B2 (ko)

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20041012

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee