Optimize

Optimize()

인덱스 세그먼트를 병합하여 인덱스 세그먼트 수를 최소화합니다. 이 작업은 검색 성능을 향상시킵니다.

public void Optimize()

이 예는 인덱스 세그먼트를 병합하는 방법을 보여줍니다.

string indexFolder = @"c:\MyIndex\";
string documentsFolder1 = @"c:\MyDocuments1\";
string documentsFolder2 = @"c:\MyDocuments2\";
string documentsFolder3 = @"c:\MyDocuments3\";

Index index = new Index(indexFolder); // 지정된 폴더에 인덱스 생성

index.Add(documentsFolder1); // 지정된 폴더에서 문서 인덱싱
index.Add(documentsFolder2); // Add를 호출할 때마다 인덱스에 하나 이상의 새 세그먼트가 생성됩니다.
index.Add(documentsFolder3);

// 인덱스 세그먼트 병합
index.Optimize();

또한보십시오


Optimize(MergeOptions)

인덱스 세그먼트를 병합하여 인덱스 세그먼트 수를 최소화합니다. 이 작업은 검색 성능을 향상시킵니다.

public void Optimize(MergeOptions options)
모수 유형 설명
options MergeOptions 병합 옵션.

이 예는 특정 병합 옵션을 사용하여 인덱스 세그먼트를 병합하는 방법을 보여줍니다.

string indexFolder = @"c:\MyIndex\";
string documentsFolder1 = @"c:\MyDocuments1\";
string documentsFolder2 = @"c:\MyDocuments2\";
string documentsFolder3 = @"c:\MyDocuments3\";

Index index = new Index(indexFolder); // 지정된 폴더에 인덱스 생성

index.Add(documentsFolder1); // 지정된 폴더에서 문서 인덱싱
index.Add(documentsFolder2); // Add를 호출할 때마다 인덱스에 하나 이상의 새 세그먼트가 생성됩니다.
index.Add(documentsFolder3);

MergeOptions options = new MergeOptions();
options.IsAsync = true; // 비동기 작업
options.Cancellation = new Cancellation(); // 취소 객체 생성

// 인덱스 세그먼트 병합
index.Optimize(options); // 이 메서드는 작업이 완료되기 전에 반환됩니다.

options.Cancellation.CancelAfter(10000); // 최대 작업 시간을 10초로 설정

또한보십시오