Elasticsearchはオープンソースの全文検索エンジンです。データの索引付けと検索を驚くほど速いスピードで行うために設計されたものです。

WordPressなら、Elasticsearchを使用しWordPressデータベースへのクエリをスピードアップすることができます。概要は、ウェブサイトのデータベースのコンテンツのインデックスを構築し、MySQLクエリが同じ検索を実行することができないほど速くElasticsearchでそのインデックスを検索することです。

時間とスキルのある非常に知識の豊富なWordPressとElasticsearchの開発者によっては、ElasticsearchはWordPressウェブサイトと統合することができます。ウェブサイトのWP_Queryが比較的標準である場合には、WordPress.orgから入手可能な10upによる無料のWordPressプラグインElasticPressをインストールすることによりもElasticsearch を統合できます。このプラグインはWP_Queryのオブジェクトと自動的に統合してMySQLではなくElasticsearchを使用してクエリ結果を生成します。

Elasticsearchが便利なウェブサイト

WP_Queryを多用するどのウェブサイトではElasticsearchが役に立ちます。役に立つ場合は例えば:

サイトに受け入れがたいほど遅いクエリがある場合、または大量のクエリがサイトのデータベースに過負荷をかけると思われる場合は、Elasticsearchを検討する価値があります。当社のWordPressの検索とそのスピードアップについての詳細なガイドも是非お読みください。

KinstaのサイトにElasticsearchを追加する

KinstaでホストされているサイトにElasticsearch追追加する場合は、次の手順に従います。

  1. Kinstaのサポートチームに連絡して、Elasticsearchをサイトに追加するように申請してください。
  2. KinstaのサポートチームがサイトコンテナーにElasticsearchをインストールし、財務がElasticsearchアドオンのサブスクリプションをアカウントに追加します。お支払いへのアクセス権を持つユーザー(企業の所有者、企業の管理者、企業の課金担当者)のみがアドオンの追加を承認できることにご注意ください。ご利用料金は、サイトあたり月額100ドルです。ElasticsearchをPHP環境およびMySQLデータベースと同じサーバーにインストールすることにより、別途でホストしたり、Elasticのホスト型Elasticsearchを使用したりする場合と比較すると、レイテンシーを減らすことができます。
  3. Kinstaのサポートチームは、ElasticPressプラグインもインストールし、サイトコンテナーで実行されるElasticpressサービスに接続します。
    WordPressプラグインElasticPress

    WordPressプラグインElasticPress

    ElasticPressには例えば、検索結果でのWooCommerce商品の表示、検索のオートコンプリート機能、インデックスを作成するものの選択機能、関連投稿のクエリの改善などの機能があります。別のプラグインを使用するか、独自の統合を構築する予定がある場合は、サポートチームにお知らせください。このステップをスキップいたします。

Elasticsearchの使用を中止する場合は、Elasticsearchをサイトコンテナーから削除するよう申請し、Elasticsearchアドオンのサブスクリプションもキャンセルする必要があります。 当社の返金ポリシーに従って、Elasticsearchアドオンの未使用のご利用料金を返金いたします。お支払いへのアクセス権を持つユーザー(企業の所有者、企業の管理者、企業の課金担当者)のみがアドオンの削除を依頼できることにご注意ください。

サイトにステージング環境と本番環境の両方がある場合の重要な注意事項:Elasticsearchは、ステージング環境にも本番環境にも個別にインストールする必要があります。サポートチームが片方の環境にElasticsearchをインストールするが、(バックアップの復元、ステージングの公開などにより)その環境が上書きされると、Elasticsearchも上書きされ、コンテナーから削除されます。設定中にElasticsearchが誤って削除されないように、サポートチームと協力してElastisearchのインストールを慎重に計画してください。

WordPressウェブサイトでElasticsearchを使用する

Elasticsearchをインストールした後に、サイトに統合する必要があります。その統合の最も一般的な方法は、ElasticPressをインストールすることです。通常のセットアップ中に、当社のサポートチームがElasticPressプラグインをインストールし、Elasticsearchサービスに接続します。

インストール後、ウェブサイトの管理画面にアクセスし、ElasticPressプラグインのセットアップを完了する必要があります。その一環として、サイトのコンテンツのインデックス作成を行います。サイトのコンテンツの容量が非常に多い場合、WordPress管理画面でのインデックス作成は失敗する可能性があります。ElasticPressのwp-cliコマンドを使用して、SSHでインデックス作成を行うことができます。

サイトでカスタムフィールドを使用しており、カスタムフィールドのコンテンツを検索する場合、ElasticPressでそれらのフィールドのインデックスを作成して検索するには、カスタム開発作業が必要になる場合があります。

KinstaによるElasticsearchのサポート範囲

Elasticsearchは、サーバー上でローカルに渡されたクエリまたはRESTful APIを介して渡されたクエリを受け入れることができます。Kinstaでは、Elasticsearchへのローカルアクセスのみをご利用いただけます。RESTful APIを介してElasticsearchにリクエストを渡すことはできず、これらのリクエストを受け入れるために必要なポートを開いていただけません。サイトにクエリ対象のHTTPリクエストを渡す必要がある場合は、WP WP REST APIを介して、またはAjax呼び出しを使用して、クエリをWordPressに渡す必要があります。

KibanaやLogstashなどのElasticsearchアドオン製品をサポートしません。これらをインストールもしません。当社のプラットフォームでのElasticsearchの使用は、クエリの高速化をサポートするためのWordPressとの統合に限られています。

KinstaによるElasticsearch のサポート範囲は、Elasticsearchと必要な依存関係をサイトコンテナーにインストールし、ElasticPressをインストールし、Elasticsearch をWordPressで使用できるようにすることです。Elasticsearchのウェブサイトへの統合と、オブジェクトのキャッシュからオブジェクトの特定のグループを除外することは、各ウェブサイトの所有者の責任です。カスタムフィールドのインデックス作成や検索など、Elasticsearchのウェブサイトへの適切な統合に支援を必要とする場合は、資格のあるWordPress開発者の力を借りる必要があります。


このチュートリアルが面白かった方なら、当社のサポートも大好きでしょう。Kinstaのすべてのホスティングプランには、ベテランのWordPress開発者とエンジニアによる24時間365日のサポートが付いています。フォーチュン500のお客様をサポートしているチームとチャットしませんか。当社のプランをご確認ください。