PHP と Elasticsearch を使用して効率的なフィルタリング機能を構築する方法

王林
リリース: 2023-07-17 12:52:01
オリジナル
1291 人が閲覧しました

PHP と Elasticsearch を使用して効率的なフィルタリング関数を構築する方法

はじめに:
Elasticsearch は、効率的な検索エンジンや大規模なデータ フィルタリング関数を構築する場合に非常に強力なソリューションです。これは分散検索エンジンをベースにしたオープンソース ツールで、大量のデータを迅速に処理し、豊富なクエリおよびフィルタリング機能を提供し、PHP を介して対話することもできます。この記事では、Elasticsearch のインストールと設定、PHP と Elasticsearch を使用したデータ フィルタリングなど、PHP と Elasticsearch を使用して効率的なフィルタリング機能を構築する方法を紹介します。

1. Elasticsearch のインストールと構成

  1. Java のインストール: Elasticsearch は Java に基づいて作成されているため、最初に Java をインストールする必要があります。公式 Java Web サイトから Java インストール パッケージをダウンロードし、インストール ウィザードに従ってインストールできます。
  2. Elasticsearch のダウンロードと解凍: Elasticsearch 公式 Web サイトからオペレーティング システムに適した Elasticsearch 圧縮パッケージをダウンロードし、インストールする場所に解凍します。
  3. Elasticsearchの起動: Elasticsearchの解凍ディレクトリに入り、コマンドbin/elasticsearchを実行してElasticsearchを起動します。
  4. 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 クライアント ライブラリをインストールします。ターミナルで次のコマンドを実行します:

    composer require elasticsearch/elasticsearch
    ログイン後にコピー
  2. PHP ファイルを作成し、Elasticsearch PHP クライアント ライブラリをインポートします:

    require 'vendor/autoload.php'; use ElasticsearchClientBuilder;
    ログイン後にコピー
  3. Elasticsearch に接続します:

    $client = ClientBuilder::create()->build();
    ログイン後にコピー
  4. インデックスとマッピングを作成します:

    $params = [ 'index' => 'my_index', 'body' => [ 'mappings' => [ 'properties' => [ 'name' => ['type' => 'text'], 'age' => ['type' => 'integer'] ] ] ] ]; $response = $client->indices()->create($params);
    ログイン後にコピー
  5. いくつかのドキュメントを追加します:

    $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);
    ログイン後にコピー
  6. フィルターデータ:

    $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 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!