Konfigurera sökning efter Microsoft 365 multi-geo

I en geomiljö med flera platser har varje geoplats ett eget sökindex och ett sökcenter. När en användare söker visas frågan i alla index och de returnerade resultaten sammanfogas.

En användare på en geoplats kan till exempel söka efter innehåll som lagrats på en annan geoplats eller efter innehåll på en SharePoint-webbplats som är begränsad till en annan geoplats. Om användaren har åtkomst till innehållet visas resultatet i sökningen.

Vilka sökklienter fungerar i en geomiljö med flera sökklienter?

Dessa klienter kan returnera resultat från alla geoplatser:

  • OneDrive
  • Delve
  • Sidan SharePoint startsida
  • Sökcenter
  • Anpassade sökprogram som använder sök-API:t SharePoint sökfunktionen

OneDrive

Så snart multigeomiljön har ställts in kan användare som söker i OneDrive få resultat från alla geoplatser.

Delve

Så snart multigeomiljön har ställts in kan användare som söker i Delve få resultat från alla geografiska platser.

I Delve och profilkortet visas bara förhandsgranskningar av filer som lagras på den centrala platsen. För filer som lagras på satellitplatser visas ikonen för filtypen i stället.

Sidan SharePoint startsida

Så snart multigeomiljön har ställts in kan användarna se nyheter, senaste och följda webbplatser från flera geografiska platser på SharePoint startsida. Om de använder sökrutan SharePoint startsida får de sammanslagna resultat från flera geografiska platser.

Sökcenter

Efter att multigeomiljön har ställts in fortsätter varje sökcenter bara att visa resultat från sin egen geoplats. Administratörer måste ändra inställningarna för varje sökcenter för att få resultat från alla geoplatser. Därefter får användare som söker i sökcentret resultat från alla geoplatser.

Anpassade sökprogram

Som vanligt interagerar anpassade sökprogram med sökindex genom att använda de befintliga SharePoint REST-API:er. Om du vill få resultat från alla, eller vissa geoplatser, måste programmet anropa API:t och inkludera de nya parametrarna för multi-geofråga i begäran. Det här utlöser en fan av frågan på alla geoplatser.

Vad är så annorlunda med sökning i en geomiljö med flera platser?

Vissa sökfunktioner som du kanske är van vid fungerar annorlunda i en geomiljö med flera platser.

Funktion Så här fungerar det Lösning
Framhävda resultat Du kan skapa frågeregler med framhävda resultat på olika nivåer: för hela klientorganisationen, för en webbplatssamling eller för en webbplats. Definiera framhävda resultat på innehavarnivå i en geomiljö så att sökresultatet framhävs till sökcentren på alla geoplatser. Om du bara vill lyfta fram resultat i Sökcenter som finns på den geografiska platsen för webbplatssamlingen eller webbplatsen definierar du framhävda resultat på webbplatssamlingen eller webbplatsnivån. Dessa resultat framhävs inte på andra geografiska platser. Om du inte behöver olika framhävda resultat per geoplats, till exempel olika regler för resor, rekommenderar vi att du definierar framhävda resultat på innehavarnivå.
Sök förfining Sökningen returnerar förfiningar från alla geoplatser för en klientorganisation och aggregerar dem sedan. Aggregeringen är en bästa ansträngning, vilket innebär att förfiningen kanske inte är 100 % korrekt. För de flesta sökdrivna scenarier är den här precisionen tillräcklig. Om du vill att sökdrivna program som är beroende av förfiningens fullständighet ska du köra frågor för varje geoplats oberoende av varandra.
Geosökning med flera har inte stöd för dynamisk bucketing för numeriska förfining. Använd parametern "Diskretize" för numeriska förfining.
Dokument-IDs Om du utvecklar ett sökdrivna program som är beroende av dokument-ID:t är dokument-ID:t i en geomiljö inte unika för flera geografiska platser, utan unika per geoplats. Vi har lagt till en kolumn som identifierar geoplatsen. Använd den här kolumnen för att uppnå unikhet. Den här kolumnen heter "GeoLocationSource".
Antal resultat Sökresultatsidan visar kombinerade resultat från geoplatserna, men det går inte att ha mer än 500 resultat.
Hybridsökning I en SharePoint miljö med molnhybridsökningläggs lokalt innehåll till i Microsoft 365 för den centrala platsen.

Vad stöds inte för sökning i en geomiljö med flera enheter?

Vissa av de sökfunktioner du kanske är van vid stöds inte i en miljö med flera geofunktioner.

Sökfunktion Obs!
Endast appautentisering Endast programautentisering (behörighet från tjänster) stöds inte i Multi-Geo-sökning.
Gäster Gäster får bara resultat från den geoplats de söker från.

Hur fungerar sökning i en geomiljö med flera sökverktyg?

Alla sökklienter använder de befintliga REST SHAREPOINT-API:erna för sökning för att interagera med sökindexen.

Diagram som visar SharePoint REST-API:er för sökning interagerar med sökindexen.

  1. En sökklient anropar SÖK REST-slutpunkten med frågeegenskapen EnableMultiGeoSearch= true.
  2. Frågan skickas till alla geoplatser i klientorganisationen.
  3. Sökresultat från varje geoplats sammanfogas och rangordnas.
  4. Klienten får enhetliga sökresultat.

Observera att vi inte slår samman sökresultaten förrän vi har fått resultat från alla geoplatser. Det innebär att flera geosökningar har ytterligare fördröjning jämfört med sökningar i en miljö med bara en geoplats.

Hämta ett sökcenter för att visa resultat från alla geografiska platser

Varje sökcenter har flera lodräta och du måste konfigurera varje lodrätt individuellt.

  1. Se till att du utför de här stegen med ett konto som har behörighet att redigera sökresultatsidan och webbdelen Sökresultat.

  2. Gå till sidan med sökresultat (se listan över sökresultatsidor)

  3. Markera den lodräta för att konfigurera, Inställningar kugghjulsikonen i det övre högra hörnet och klicka sedan på Redigera sida. Sidan med sökresultat öppnas i redigeringsläge.

    Redigera sidmarkering i Inställningar.

  4. I webbdelen Sökresultat flyttar du pekaren till det övre högra hörnet av webbdelen, klickar på pilen och klickar sedan på Redigera webbdel på menyn. Verktygsfönstret för webbdelen Sökresultat öppnas under menyfliksområdet längst upp till höger på sidan.

    Redigera webbdelsval.

  5. I verktygsfönstret Webbdel i Inställningar, under Inställningar för resultatkontroll, väljer du Visa multi georesultat för att få webbdelen Sökresultat för att visa resultat från alla geografiska platser.

  6. Klicka på OK för att spara ändringen och stänga verktygsfönstret Webbdel.

  7. Kontrollera ändringarna i webbdelen Sökresultat genom att klicka på Checka in på fliken Sida i huvudmenyn.

  8. Publicera ändringarna med hjälp av länken som finns i anteckningen högst upp på sidan.

Hämta anpassade sökprogram för att visa resultat från alla eller vissa geografiska platser

Anpassade sökprogram får resultat från alla, eller vissa, geoplatser genom att ange frågeparametrar med begäran till SharePoint REST API. Beroende på frågeparametrarna är frågan borta från alla geoplatser eller till vissa geografiska platser. Om du till exempel bara behöver söka efter relevant information på en delmängd av geoplatserna kan du hålla koll på endast dessa. Om begäran lyckas returnerar SharePoint REST API svarsdata.

Krav

För varje geoplats måste du säkerställa att alla användare i organisationen har beviljats läsbehörighetsnivå för rotwebbplatsen (till exempel contoso APAC.sharepoint.com/ och contoso EU.sharepoint.com/). Läs mer om behörigheter.

Frågeparametrar

EnableMultiGeoSearch – Det här är ett booleskt värde som anger om frågan ska rensas mot index för andra geoplatser för den geoklientorganisationen. Sätt det på sant för att skapa en bra fråga; false för att inte ta bort frågan. Om du inte tar med den här parametern är standardvärdet falskt , förutom när du ringer ett REST API-anrop mot en webbplats som använder Sökcenter-mallen för företag, är standardvärdet sant. Om du använder parametern i en miljö som inte innehåller flera geovärden ignoreras parametern.

ClientType – det här är en sträng. Ange ett unikt klientnamn för varje sökprogram. Om du inte tar med den här parametern är frågan inte borta från andra geoplatser.

MultiGeoSearchConfiguration – Det här är en valfri lista över vilka geoplatser i multi-geoklientorganisationen som du kan ta frågan till när EnableMultiGeoSearch är sant. Om du inte tar med den här parametern eller lämnar den tom kommer frågan att visas för alla geoplatser. För varje geoplats anger du följande objekt i JSON-format:

Objekt Beskrivning
DataLocation Geoplatsen, till exempel NAM.
EndPoint Slutpunkten som du vill ansluta till, till exempel https://contoso.sharepoint.com
SourceId GUID för resultatkällan, till exempel B81EAB55-3140-4312-B0F4-9459D1B4FFEE.

Om du utelämnar DataLocation eller EndPoint, eller om en DataLocation dupliceras, misslyckas begäran. Du kan få information om slutpunkten för en klientorganisations geografiska platser med hjälp av Microsoft Graph.

Svarsdata

MultiGeoSearchStatus – det här är en egenskap som SharePoint sök-API returnerar som svar på en begäran. Egenskapens värde är en sträng och ger följande information om de resultat som SharePoint Sök-API returnerar:

Värde Beskrivning
Fullständig Fullständiga resultat från alla geoplatser.
Delvis Ofullständiga resultat från en eller flera geografiska platser. Resultatet är ofullständigt på grund av ett tillfälligt fel.

Fråga med REST-tjänsten

Med en HÄMTA-begäran anger du frågeparametrar i URL-adressen. Med en POST-begäran skickar du frågeparametrarna i brödtexten i JavaScript Object Notation-formatet (JSON).

Frågerubriker

Namn Värde
Content-Type application/json;odata=verbose

Exempel på HÄMTA-begäran som är bortskad från alla geoplatser

https:// \<tenant\>/\_api/search/query?querytext='sharepoint'&Properties='EnableMultiGeoSearch:true'&ClientType='my\_client\_id'

Exempel på FÅ begäran att ta del av en del geografiska platser

https:// \<tenant\>/\_api/search/query?querytext='site'&ClientType='my_client_id'&Properties='EnableMultiGeoSearch:true, MultiGeoSearchConfiguration:[{DataLocation\\:"NAM"\\,Endpoint\\:"https\\://contosoNAM.sharepoint.com"\\,SourceId\\:"B81EAB55-3140-4312-B0F4-9459D1B4FFEE"}\\,{DataLocation\\:"CAN"\\,Endpoint\\:"https\\://contosoCAN.sharepoint-df.com"}]'

Anteckning

Kommatecken och kolon i listan över geografiska platser för egenskapen MultiGeoSearchConfiguration föregås av omstöpen snedstreck. Det beror på att HÄMTA-begäranden använder kolon för att separera egenskaper och kommatecken för att separera egenskapsargument. Utan om baksnedstrecket som ett escape-tecken tolkas egenskapen MultiGeoSearchConfiguration felaktigt.

Exempel på EFTER-begäran som är bortskad från alla geografiska platser

    {
    "request": {
            "__metadata": {
            "type": "Microsoft.Office.Server.Search.REST.SearchRequest"
        },
        "Querytext": "sharepoint",
        "Properties": {
            "results": [
                {
                    "Name": "EnableMultiGeoSearch",
                    "Value": {
                        "QueryPropertyValueTypeIndex": 3,
                        "BoolVal": true
                    }
                }
            ]
        },
        "ClientType": "my_client_id"
        }
    }

Exempel på INLÄGG-begäran som är bortskad från vissa geografiska platser

    {
        "request": {
            "Querytext": "SharePoint",
            "ClientType": "my_client_id",
            "Properties": {
                "results": [
                    {
                        "Name": "EnableMultiGeoSearch",
                        "Value": {
                            "QueryPropertyValueTypeIndex": 3,
                            "BoolVal": true
                        }
                    },
                    {
                        "Name": "MultiGeoSearchConfiguration",
                        "Value": {
                        "StrVal": "[{\"DataLocation\":\"NAM\",\"Endpoint\":\"https://contoso.sharepoint.com\",\"SourceId\":\"B81EAB55-3140-4312-B0F4-9459D1B4FFEE\"},{\"DataLocation\":\"CAN\",\"Endpoint\":\"https://contosoCAN.sharepoint.com\"}]",
                            "QueryPropertyValueTypeIndex": 1
                        }
                    }
                ]
            }
        }
    }

Fråga med CSOM

Här är ett exempel på en CSOM-fråga som är borta från alla geoplatser:

var keywordQuery = new KeywordQuery(ctx);
keywordQuery.QueryText = query.SearchQueryText;
keywordQuery.ClientType = <enter a string here>;
keywordQuery.Properties["EnableMultiGeoSearch"] = true;