>백엔드 개발 >PHP 튜토리얼 >PHP와 Elasticsearch를 사용하여 효율적인 필터링 기능을 구축하는 방법

PHP와 Elasticsearch를 사용하여 효율적인 필터링 기능을 구축하는 방법

王林
王林원래의
2023-07-17 12:51:101399검색

PHP와 Elasticsearch를 통해 효율적인 필터링 기능을 구축하는 방법

소개:
Elasticsearch는 효율적인 검색 엔진이나 대규모 데이터 필터링 기능을 구축할 때 매우 강력한 솔루션입니다. 대용량 데이터를 빠르게 처리하고, 풍부한 쿼리 및 필터링 기능을 제공하며, PHP를 통해 상호 작용할 수도 있는 분산 검색 엔진 기반의 오픈 소스 도구입니다. 이 기사에서는 Elasticsearch 설치 및 구성, 데이터 필터링을 위해 PHP 및 Elasticsearch 사용 등을 포함하여 PHP 및 Elasticsearch를 통해 효율적인 필터링 기능을 구축하는 방법을 소개합니다.

1. Elasticsearch 설치 및 구성

  1. Java 설치: Elasticsearch는 Java를 기반으로 작성되었으므로 먼저 Java를 설치해야 합니다. Java 공식 웹사이트에서 Java 설치 패키지를 다운로드한 후 설치 마법사를 따라 설치할 수 있습니다.
  2. Elasticsearch 다운로드 및 압축 풀기: Elasticsearch 공식 웹사이트에서 사용 중인 운영 체제에 맞는 Elasticsearch 압축 패키지를 다운로드한 후 설치하려는 위치에 압축을 풀어주세요.
  3. Elasticsearch 시작: Elasticsearch의 압축 해제 디렉터리에 들어가서 bin/elasticsearch 명령을 실행하여 Elasticsearch를 시작합니다. bin/elasticsearch来启动Elasticsearch。
  4. 验证Elasticsearch是否成功启动:在浏览器中输入http://localhost:9200

  5. Elasticsearch가 성공적으로 시작되었는지 확인: 브라우저에 http://localhost:9200를 입력합니다. 다음과 유사한 정보가 반환되면 Elasticsearch가 성공적으로 시작된 것입니다.
{
  "name" : "Node-1",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "42n3GoOpQkm7Bs6NOEXf0A",
  "version" : {
 "number" : "7.15.1",
 "build_flavor" : "default",
 "build_type" : "zip",
 "build_hash" : "unknown",
 "build_date" : "2022-10-26T18:07:47.101138203Z",
 "build_snapshot" : false,
 "lucene_version" : "8.10.1",
 "minimum_wire_compatibility_version" : "6.8.0",
 "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}

    2. PHP 및 Elasticsearch를 사용한 데이터 필터링
  1. Elasticsearch PHP 클라이언트 설치: Composer를 사용하여 PHP용 Elasticsearch 클라이언트 라이브러리를 설치합니다. 터미널에서 다음 명령을 실행합니다.
  2. composer require elasticsearch/elasticsearch

  3. PHP 파일을 만들고 Elasticsearch PHP 클라이언트 라이브러리를 가져옵니다.
  4. require 'vendor/autoload.php';
    use ElasticsearchClientBuilder;

  5. Elasticsearch에 연결:
  6. $client = ClientBuilder::create()->build();

  7. 인덱스 및 매핑 만들기:
  8. $params = [
     'index' => 'my_index',
     'body' => [
         'mappings' => [
             'properties' => [
                 'name' => ['type' => 'text'],
                 'age' => ['type' => 'integer']
             ]
         ]
     ]
    ];
    $response = $client->indices()->create($params);

  9. 일부 문서 추가:
  10. $params = [
     'index' => 'my_index',
     'body' => [
         ['index' => ['_index' => 'my_index']],
         ['name' => 'John Doe', 'age' => 25],
         ['index' => ['_index' => 'my_index']],
         ['name' => 'Jane Smith', 'age' => 30]
     ]
    ];
    $response = $client->bulk($params);

  11. 데이터 필터링:
$params = [
 'index' => 'my_index',
 'body' => [
     'query' => [
         'bool' => [
             'must' => [
                 ['match' => ['name' => 'John']]
             ]
         ]
     ]
 ]
];
$response = $client->search($params);
print_r($response);


요약: 🎜위 단계를 통해 Elasticsearch를 성공적으로 설치 및 구성하고 PHP와 Elasticsearch를 사용하여 간단한 필터링 기능을 구축했습니다. Elasticsearch의 강력한 쿼리 및 필터링 기능을 통해 다양한 조건에 따라 대규모 데이터를 빠르게 필터링하고 검색할 수 있습니다. 이 기사가 도움이 되기를 바라며 향후 프로젝트에 이 지식을 적용할 수 있기를 바랍니다. 🎜

위 내용은 PHP와 Elasticsearch를 사용하여 효율적인 필터링 기능을 구축하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.