-
Notifications
You must be signed in to change notification settings - Fork 3
루씬의 핵심 클래스
Yongho Choi edited this page Feb 13, 2017
·
1 revision
- 색인을 새로 생성하거나 기존 색인을 열고 문서를 추가/수정/삭제 기능 담당.
- 색인 내용을 검색하거나 꺼내 볼 수는 없다.
- 루씬의 색인을 저장하는 공간.
- 본문이나 제목 등의 텍스트를 색인하기 전에 반드시 Analyzer를 거쳐 단어로 분리해야 한다.
- 지정된 텍스트를 색인할 단위 단어로 분리하고 필요 없는 단어를 제거하는 등의 역할을 담당.
- 루씬은 텍스트와 숫자만 다룰 수 있다.
- 개별 필드의 집합.
- 가상의 문서
- 문서 내부의 필드는 문서의 실제 내용이나 메타 정보를 담고 있다.
- 루씬에서 색인하고 검색하려면 원본 문서에서 뽑아낸 텍스트를 루씬의 Field 클래스에 담아 루씬에 넘겨준다.
- 색인의 각 문서는 모두 두 개 이상의 각자 이름이 지정된 개별 필드로 구성.
- Field 클래스로 표현
- key-value 형태
- 검색을 담당하는 클래스.
- 색인을 읽기 전용으로 열어 사용한다.
- 검색 과정을 구성하는 가장 기본적인 단위.
- key-value 형태
- 객체는 루씬 내부적으로 자동 생성된다.
- 검색 시점에는 Term 객체를 직접 생성해 TermQuery 질의에 사용할 수도 있다.
- 가장 최소한의 공통부분만 갖고 있는 최상위 질의 클래스.
- 루씬에서 지원하는 질의 중 가장 기본적인 기능을 갖고 있다.
- 특정 필드에 원하는 단어가 들어 있는 문서를 찾아낸다.
- 단순히 검색 결과 중 최상위 N개의 문서에 대한 링크를 담고 있는 결과 클래스.
- 결과마다 각 문서의 정수형 docID 값과 float형 점수를 담고 있다.
- docID를 사용해 실제 문서를 읽어올 수 있다.