ウェブサイトの高度なインデックス登録がデータストアで有効になっている場合は、サイトマップを送信して使用し、データストア内のウェブページのインデックス登録と更新を行うことができます。この機能は、 XML サイトマップとサイトマップ インデックスのみをサポートしています。
このページでは、サイトマップまたはサイトマップ インデックスを送信して、サイトマップ ベースのインデックス登録と更新をトリガーする方法について説明します。サイトマップを使用せずに自動更新と手動更新を理解して 実装するには、 ウェブページを更新するをご覧ください。
また、このページでは、データストア内のサイトマップを表示する方法や、サイトマップを削除する方法についても説明します。
サイトマップ ベースの更新のコンセプト
始めるにあたって役立つ主なコンセプトと用語は次のとおりです。
サイトマップ プロトコル: Agent Search がサポートするすべてのサイトマップとサイトマップ インデックスは、サイトマップ プロトコルに準拠している必要があります。
サイトマップ: サイトマップは UTF-8 でエンコードされた XML ファイルです。このファイルには、ウェブサイト内のウェブページとファイルの URL のリストが含まれています。また、ウェブページの最終 更新日や、ウェブサイト内の他の ウェブページに対するクローラによるウェブページの優先度など、その他の重要な情報も含まれている場合があります。サイトマップ プロトコルでは、1 つのサイトマップに最大 50,000 個の URL を含めることができ、最大サイズは 50 MB です。
サイトマップ インデックス: サイトマップが URL の最大数または最大サイズを超える場合は、 複数のサイトマップを作成し、それらのサイトマップをサイトマップ インデックス ファイルに記載できます。サイトマップ プロトコルでは、1 つの サイトマップ インデックスに最大 50,000 個のサイトマップをネストでき、最大サイズは 50 MB です。
Agent Search には、1 つ以上のサイトマップ、1 つ以上のサイトマップ インデックス、またはサイトマップとサイトマップ インデックスの組み合わせを送信できます。
サイトマップまたはサイトマップ インデックスを Agent Search データストア に 送信すると、次のアクションがトリガーされます。
データストア インデックスに含まれる URL のインデックス登録。
- サイトマップのみの更新の場合、このリストには、データストアに含まれる URL パターンに一致するサイトマップまたはサイトマップ インデックス内の URL のみが含まれます。
- 組み合わせ更新の場合、このリストには自動更新プロセスで検出されたすべての URL が含まれます。
これら 2 つの更新プロセスの詳細については、 ウェブサイトのデータストアの更新方法と サイトマップのみの更新をご覧ください。
サイトマップに追加、削除、更新された URL の毎日の更新。 更新された URL の例としては、サイトマップ内の URL の
lastmodフィールドを更新した場合などがあります。変更されていない URL の 14 日ごとの定期的な更新。
ウェブサイトのデータストアの更新方法
データストアにサイトマップ ベースの更新を組み込むには、次のいずれかの方法を選択します。
- サイトマップのみの更新: 初期インデックス登録と自動更新をオフにして、 サイトマップ ベースの更新のみを使用します。
- 組み合わせ更新: 初期インデックス登録と 自動更新でサイトマップ ベースの更新を使用します。
選択した更新方法に関係なく、データストア インデックス内の特定のウェブページはいつでも手動で更新できます。
サイトマップのみの更新
ウェブサイトのデータストアを作成する場合は、データストアのインデックスに含めるウェブページの URL パターンを指定する必要があります。デフォルトでは、ウェブサイトのデータストアの作成が完了すると、Agent Search はこれらのウェブページの初期インデックスを生成します。
ウェブサイトの高度なインデックス登録を使用するウェブサイトのデータストアの場合、初期インデックス登録 プロセスは自動更新の一部です。初期インデックス登録プロセスでは、Google 検索で利用可能なすべての URL がインデックスに登録されます。これらの URL の初期の鮮度は、Google 検索で利用可能な鮮度を反映しています。初期インデックス登録後、自動更新プロセスで新しいページが検出され、ベスト エフォート方式で更新されます。このプロセスでは、必要以上の URL が検出される可能性があるため、ページが比較的古くなり、インデックスが肥大化する可能性があります。
代わりに、サイトマップのみの更新を行うこともできます。これは、次のような場合に便利です。
- 最新の状態に保たれた、適切に管理されたサイトマップがある。
- ウェブサイトが大規模で、インデックスに登録するウェブページをより厳密に管理する必要がある。これにより、管理しやすい、無駄のないインデックスが作成されます。
- 追加および更新されたページを毎日更新し、削除されたページを削除する必要がある。これにより、サイトマップを反映した、より新しいインデックスが作成されます。
次の表に、データストア インデックスを更新するさまざまな方法を比較します。
| 更新方法 | 適合率 | 手動での操作 | 頻度 | 現状把握 |
|---|---|---|---|---|
| サイトマップ ベースの更新 | 正確。サイトマップ内の URL のみインデックスに登録されます。 | サイトマップまたはサイトマップ インデックスを送信した後は不要 | サイトマップに追加、削除、更新された URL の場合は毎日。変更されていない URL の場合は 14 日 | サイトマップで指定された範囲を超えない。 |
| 手動更新(再クロールとも呼ばれます) | 正確。再クロール リクエストで指定された URL のみインデックスに登録されます。 | 必須 | オンデマンド | いいえ。 |
| 自動更新 | 正確ではない。データストアはベスト エフォート方式で更新されます。 | 不要 | ランダムでベスト エフォート方式 | はい。Google 検索で利用可能な範囲を超えて URL を検出します。 |
始める前に
サイトマップまたはサイトマップ インデックスを Agent Search データストアに送信する前に、次のことを確認してください。
サイトマップ プロトコルに従って、 ウェブサイトのすべてのサイトマップを参照する XML サイトマップまたはサイトマップ インデックスを作成します。
- サイトマップの作成の基本を理解する。詳細については、 サイトマップ ベースの更新のコンセプトとサイトマップを作成して 送信するをご覧ください。
サイトマップまたはサイトマップ インデックスを Agent Search データストアに送信する場合、Google 検索に送信する必要はないことを理解する。
インデックスに登録するサイトマップ内のすべての URL は、データストアで確認された公開ドメインに属している必要があります。詳細については、 ウェブサイトのドメインの所有権を証明するをご覧ください。
ネストされたサイトマップ URI を含むサイトマップ URI またはサイトマップ インデックス URI は、一般公開されている必要があります。
ウェブサイトで
robots.txtファイルを使用している場合は、更新します。 詳細については、ウェブサイトの ファイルを準備する方法をご覧ください。robots.txt
サイトマップまたはサイトマップ インデックスをデータストアに送信する
データストアに含まれるウェブページのインデックス登録と更新をトリガーする手順は次のとおりです。
サイトマップのみの更新を行うか、他の方法と組み合わせて更新を行うかを決定します。
サイトマップのみの更新を行う場合は、この手順に沿って操作します。それ以外の場合は、次の手順に進みます。
初期インデックス登録と更新が行われている既存のデータストアは使用できません。構成を使用して初期インデックス登録と自動更新をオフにし、新しいデータストアを作成する必要があります。
AdvancedSiteSearchConfigREST
サイトマップの更新のみが有効になっているデータストアを作成します。これを行うには、初期インデックス登録と自動更新をオフにします。
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -H "X-Goog-User-Project: PROJECT_ID" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores?dataStoreId=DATA_STORE_ID&createAdvancedSiteSearch=true" \ -d '{ "displayName": "DATA_STORE_DISPLAY_NAME", "industryVertical": "GENERIC", "content_config": "PUBLIC_WEBSITE", "searchTier": "ENTERPRISE", "advancedSiteSearchConfig": { "disableInitialIndex": true, "disableAutomaticRefresh": true, } }'注:
disableAutomaticRefreshをtrueに設定すると、検出ベースの自動更新のみが無効になります。指定されたサイトマップに基づく毎日の自動更新(lastmodフィールドなどの変更の確認)には影響しません。次のように置き換えます。
PROJECT_ID: 実際の Google Cloud プロジェクト ID。DATA_STORE_ID: 作成する Agent Search データストアの ID。この ID には、小文字、数字、アンダースコア、ハイフンのみを含めることができます。DATA_STORE_DISPLAY_NAME: 作成する Agent Search データストアの表示名。
データストアに含めるサイトと除外するサイトの URL パターンを更新します。詳細については、ウェブサイトのコンテンツを使用してデータストアを作成するをご覧ください。
データストア に含まれるウェブページのドメインの所有権を証明します。
サイトマップのみの更新を選択した場合でも、組み合わせ 更新を選択した場合でも、サイトマップまたはサイトマップ インデックスの URI をデータストアに送信します。
sitemaps.createREST
サイトマップまたはサイトマップ インデックスを送信します。
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -H "X-Goog-User-Project: PROJECT_NUMBER" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_NUMBER/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/siteSearchEngine/sitemaps?sitemap.uri=SITEMAP_URI"
次のように置き換えます。
PROJECT_ID: 実際の Google Cloud プロジェクト ID。DATA_STORE_ID: Agent Search データストアの ID。SITEMAP_URI:送信する個々の サイトマップまたはサイトマップ インデックスの公開 URI。サイトマップ インデックスを送信する場合は、サイトマップ インデックスの URI を送信するだけで十分です。Agent Search は、サイトマップ インデックス内にネストされているすべての サイトマップに含まれる URL を自動的にインデックスに登録します。
サイトマップまたはサイトマップ インデックスをデータストアに送信すると、Agent Search は次の処理をトリガーします。
- サイトマップ内の対象 URL(データストアに含まれる URL)のインデックス登録。このプロセスが完了するまでには、平均して数時間かかります。サイトマップが大きいほど、インデックス登録に時間がかかることがあります。
- 対象 URL を含むウェブページの毎日の更新。
サイトマップまたはサイトマップ インデックスの変更が更新に与える影響については、 サイトマップとサイトマップ インデックスの変更をご覧ください。
サイトマップとサイトマップ インデックスの変更
最初の送信後、Agent Search はサイトマップまたはサイトマップ インデックスの変更を毎日検出し、これらの変更を次の方法で処理します。
- サイトマップの変更:
- URL を追加した場合: データストアの含まれる URL パターンに一致する URL がインデックスに追加され、毎日更新されます。
- URL を削除した場合: 削除された URL がインデックスにある場合は、インデックスから削除され、更新されなくなります。
- 既存の URL を更新した場合(サイトマップ内の URL の
lastmodフィールドを更新した場合など): データストアの含まれる URL パターンに一致する更新された URL が更新されます。通常、更新は更新後 24 時間以内に行われます。
- サイトマップ インデックスの変更:
- サイトマップを追加した場合: データストアの含まれる URL パターンに一致する新しいサイトマップ内の URL がインデックスに追加され、毎日更新されます。
- サイトマップを削除した場合: データストアの含まれる URL パターンに一致する URL は更新されなくなります。ただし、インデックスには残ります。サイトマップとその URL をインデックスから削除するには、 サイトマップとその URL をインデックスから削除するをご覧ください。
データストア内のサイトマップとサイトマップ インデックスを一覧表示する
データストア内のすべてのサイトマップとサイトマップ インデックスを一覧表示するには、
sitemaps.fetch メソッドを使用します。サイトマップ インデックスを送信した場合、このメソッドは個々のネストされたサイトマップではなく、サイトマップ インデックスを返します。
データストアにサイトマップがない場合、このリクエストは空の JSON ファイルを返します。
REST
データストア内のサイトマップとサイトマップ インデックスを一覧表示します。
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "X-Goog-User-Project: PROJECT_ID" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/siteSearchEngine/sitemaps:fetch"
次のように置き換えます。
PROJECT_ID: 実際の Google Cloud プロジェクト ID。DATA_STORE_ID: Agent Search データストアの ID。
サイトマップまたはサイトマップ インデックスがデータストアに存在するかどうかを確認する
サイトマップまたはサイトマップ インデックスがデータストアに存在するかどうかを確認するには、sitemaps.fetch メソッドを使用します。確認するサイトマップまたはサイトマップ インデックスがデータストアに送信されている場合、レスポンスにはサイトマップ名とサイトマップの URI が含まれます。サイトマップ インデックスを送信した場合、サイトマップ インデックス内の個々のサイトマップを確認しても、正しい結果は返されません。
REST
データストア内のサイトマップまたはサイトマップ インデックスを確認します。
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "X-Goog-User-Project: PROJECT_ID" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/siteSearchEngine/sitemaps:fetch?matcher.uris_matcher.uris=SITEMAP_URI_1&matcher.uris_matcher.uris=SITEMAP_URI_2"
次のように置き換えます。
PROJECT_ID: 実際の Google Cloud プロジェクト ID。DATA_STORE_ID: Agent Search データストアの ID。SITEMAP_URI_N: データストアで確認するサイトマップまたは サイトマップ インデックスの公開 URI。
データストアからサイトマップまたはサイトマップ インデックスを削除する
データストアからサイトマップを削除するには、
sitemap.delete メソッドを使用します。
サイトマップを削除しても、その URL はインデックスから削除されません。サイトマップとその URL をインデックスから削除するには、サイトマップとその URL をインデックスから削除するをご覧ください。
REST
サイトマップまたはサイトマップ インデックスを削除します。
curl -X DELETE \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "X-Goog-User-Project: PROJECT_ID" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/siteSearchEngine/sitemaps/SITEMAP_ID"
次のように置き換えます。
PROJECT_ID: 実際の Google Cloud プロジェクト ID。DATA_STORE_ID: Agent Search データストアの ID。SITEMAP_ID: サイトマップ またはサイトマップ インデックスを識別する一意の ID。この ID は、サイトマップまたはサイトマップ インデックスを 送信したとき、または データストア内のサイトマップとサイトマップ インデックスを一覧表示したときのレスポンスの name フィールドにあります。
サイトマップまたはサイトマップ インデックスとその URL をデータストア インデックスから削除する
サイトマップまたはサイトマップ インデックスとその URL をインデックスから削除する手順は次のとおりです。
データストアに送信されたサイトマップまたはサイトマップ インデックスのすべての URL を削除して、空にします。
サイトマップ インデックスをデータストアに送信した場合は、すべての URL を削除してネストされたサイトマップを空にし、サイトマップ インデックスからサイトマップを削除します。
Agent Search がこれらの変更を処理し、データストアのインデックスから URL を削除するまで 48 時間待ちます。