검색 서비스 - 일반 가이드라인

첫 번째 설계 작업은 검색할 수 있는 데이터를 결정하는 것입니다. 어느 필드를 검색할 수 있기를 원합니까? 검색에서 어느 데이터가 리턴되기를 원합니까? 여기에 여러 절충이 있으므로 이들에 대해 주의 깊게 생각해 보는 것이 좋습니다.

우선, 색인에는 가능한 한 적은 필드가 포함되어야 합니다. 필드 수가 적으면 런타임에 색인이 더 작으므로 시스템 자원을 덜 사용합니다. 필요한 경우 외에는 검색 서비스에 넣지 마십시오.

색인의 각 필드는 indexed(즉, 검색 가능), stored(즉, 값을 검색할 수 있음) 또는 둘 다가 될 수 있습니다. 필드를 색인화하는 이유는 명백합니다. 필드를 기준으로 검색할 수 있기를 원하기 때문입니다. 그러나 사람이 읽을 수 없는 ID와 같이 검색하기를 원하지 않는 필드도 있습니다. 이들을 검색 서비스에 stored이지만 indexed가 아닌 필드로 추가하면 검색 결과를 기준으로 데이터베이스 검색을 수행할 수 있습니다. 필드를 색인화할 필요가 없는 경우에는 색인화하지 마십시오. 그러면 추출 프로세스가 더 빨리 실행되고 색인이 시스템 자원을 덜 소비합니다.

마찬가지로 필드 값의 저장 여부를 선택할 수 있습니다. 일반적으로 색인은 필드의 원래 값을 저장하지 않으며 검색 가능한 표현만 보관합니다. 검색이 유용하려면 일반적으로 하나 이상의 필드(데이터베이스 레코드의 해당 기본 키)를 저장해야 합니다.

그런 다음 필드의 저장 여부는 절충입니다. 필요한 모든 필드를 저장하여 검색 결과를 표시할 수도 있고 데이터베이스 ID만 저장하고 이를 사용하여 데이터베이스에서 표시할 데이터를 검색할 수도 있습니다. 첫 번째 옵션을 선택하면 색인이 매우 커지지만 데이터베이스가 필요하지 않으므로 검색 결과가 더 빠르게 표시됩니다.