현재 위치: > 최신 기사 목록> PHP 통합 Manticore 검색을 사용하여 검색 결과 관련성을 최적화하십시오

PHP 통합 Manticore 검색을 사용하여 검색 결과 관련성을 최적화하십시오

M66 2025-07-18

PHP와 Manticore 검색의 조합

검색 기능은 현대 웹 응용 프로그램에서 중요한 역할을합니다. 데이터 볼륨이 급증함에 따라 사용자는 검색 결과의 정확성과 관련성에 대한 높은 요구 사항을 제시했습니다. 고성능 검색 경험을 달성하기 위해 개발자는 일반적으로 효율적인 전체 텍스트 검색 엔진을 통합하도록 선택합니다. Manticore Search는 빠르고 정확한 검색을 위해 설계된 오픈 소스 솔루션입니다. 이 기사는 PHP 및 Manticore 검색을 사용하여 강력한 검색 기능을 구축하는 방법을 설명합니다.

Manticore 검색이란 무엇입니까?

Manticore Search는 많은 기능을 향상시키는 스핑크스 기반 지점 프로젝트입니다. 전체 텍스트 검색, 퍼지 매칭, 사용자 정의 스코어링 메커니즘, JSON 형식 스토리지 등을 지원하며 전자 상거래 플랫폼, 컨텐츠 관리 시스템 및 엔터프라이즈 검색과 같은 다양한 시나리오에 적합합니다. Manticore Search는 풍부한 API 인터페이스를 제공함으로써 PHP 응용 프로그램과 쉽게 통합되어 유연하고 효율적인 검색 솔루션을 구축 할 수 있습니다.

Manticore 검색을 설치하십시오

Manticore Search의 공식 웹 사이트를 방문하여 최신 버전을 다운로드하고 공식 문서에 따라 설치 및 구성을 완료 할 수 있습니다. 설치가 완료되면 서비스가 정상적으로 실행 중인지 확인하십시오.

PHP에서 인덱스를 만듭니다

검색 기능을 구축하는 첫 번째 단계는 인덱스를 만드는 것입니다. 인덱스는 구조화 된 정보를 저장하는 데 사용되는 핵심 구성 요소입니다. 인덱스 생성을위한 PHP 샘플 코드는 다음과 같습니다.

 <?php
$index = new ManticoreSearchIndex($client, 'products');
$index->create([
    'product_id' => ['type' => 'integer', 'indexed' => true, 'docvalues' => true],
    'name' => ['type' => 'text', 'indexed' => true, 'tokenized' => true],
    'price' => ['type' => 'float'],
]);
?>

위의 코드는 제품 ID, 이름 및 가격의 세 가지 필드를 포함하는 "Products"라는 색인을 만듭니다. 비즈니스 요구에 따라 더 많은 분야를 추가 할 수 있습니다.

인덱스에 문서를 추가하십시오

문서는 색인의 특정 데이터 항목이며 각 문서는 검색 개체를 나타냅니다. 다음 코드는 인덱스에 제품 문서를 추가하는 방법을 보여줍니다.

 <?php
$document = new ManticoreSearchDocument($index);
$document->setId(1);
$document->setFields([
    'product_id' => 1,
    'name' => 'iPhone 11',
    'price' => 999.99,
]);
$index->addDocuments([$document]);
?>

원하는만큼 문서를 추가 할 수 있으며 각 문서의 필드는 색인 정의와 일치해야합니다.

검색 작업을 수행하십시오

문서를 추가 한 후 검색 쿼리를 실행할 수 있습니다. 다음 PHP 예제는 간단한 키워드 검색 프로세스를 보여줍니다.

 <?php
$search = new ManticoreSearchSearch($client, ['index' => 'products']);
$result = $search->search('iPhone');
foreach ($result['hits'] as $hit) {
    echo $hit['product_id'] . ': ' . $hit['name'] . ' - ' . $hit['price'] . "\n";
}
?>

이 코드는 키워드 "iPhone"을 포함하는 모든 제품 정보를 반환하여 형식으로 출력합니다. 가격 범위, 페이징, 정렬 등과 같은 검색 기준을 확장 할 수도 있습니다.

검색 결과 관련성을 최적화합니다

검색 품질을 더욱 향상시키기 위해 Manticore Search는 결과 상관 관계를 최적화하기위한 다양한 메커니즘을 제공합니다. 한 가지 방법은 필드의 무게를 설정하여 분류 알고리즘에 영향을 미치는 것입니다.

 <?php
$index->update([
    'base' => 'products',
    'expr' => 'rank_expr',
    'ranker' => 'expr',
]);
?>

설명 정보보다 제품 이름 무게를 높이는 등 비즈니스 로직을 기반으로 Rank Expressions를 사용자 정의 할 수 있습니다. 또한 Manticore는 부울 쿼리, 문구 검색, 유사성 쿼리 등과 같은 고급 기능을 지원하여 복잡한 검색 논리를 구축 할 수있는 유연한 도구를 제공합니다.

요약

PHP와 Manticore 검색을 결합하여 개발자는 강력하고 성능 검색 서비스를 신속하게 구축 할 수 있습니다. 이 기사에서는 검색 엔진을 설치하고 인덱스 생성, 문서 추가, 쿼리 실행 및 관련성 조정과 같은 주요 단계에 대해 설명합니다. 실제 응용 프로그램에서 특정 비즈니스 시나리오를 기반으로 검색 전략의 미세 조정은 사용자의 검색 경험을 크게 향상시킬 것입니다.