2017-02-17 1 views
0

검색하는 동안 Lucene은 FST를 사용하여 용어와 일치시킵니다. 모든 검색에 대해 FST가 구성되어 있습니까? 아니면 한 번 구성되어 디스크에 저장됩니까? 저장된 경우 FST에서 인덱스의 변경 사항이 어떻게 업데이트됩니까?FST가 lucene에서 어떻게 생성 되었습니까?

FST를 메인 메모리에로드하는 데 필요한 시간과 메모리는 어떨까요?

답변

0

Lucene은 FST가 구성된 각 세그먼트에 대해 인덱스 구조와 같은 로그 구조의 병합 트리를 사용합니다. 병합 트리에서 세그먼트는 수정되지 않고 병합 (및 프로세스에서 필터링)됩니다. 병합에서 FST는 결합/재 작성됩니다.

세그먼트/FST는 일반적으로 MMapDirectoryReader를 사용하는지 여부에 따라 메모리 매핑됩니다.

그러나 이것은 메모리와 교양있는 추측에서만 발생합니다.

관련 문제