Een indexalias maken in Azure Cognitive Search

Belangrijk

Indexaliassen zijn momenteel in openbare preview en beschikbaar onder aanvullende gebruiksvoorwaarden.

In Azure Cognitive Search is een indexalias een secundaire naam die kan worden gebruikt om te verwijzen naar een index voor het uitvoeren van query's, indexering en andere bewerkingen. U kunt een alias maken die is toegewezen aan een zoekindex en de aliasnaam vervangen op plaatsen waar u anders naar een indexnaam zou verwijzen. Een alias voegt flexibiliteit toe als u wilt wijzigen naar welke index uw toepassing verwijst. In plaats van de verwijzingen in uw toepassing bij te werken, kunt u gewoon de toewijzing voor uw alias bijwerken.

Het belangrijkste doel van indexaliassen is om het eenvoudiger te maken om uw productie-indexen te beheren. Als u bijvoorbeeld een wijziging wilt aanbrengen in uw indexdefinitie, zoals het bewerken van een veld of het toevoegen van een nieuwe analyse, moet u een nieuwe zoekindex maken omdat alle zoekindexen onveranderbaar zijn. Dit betekent dat u de index moet verwijderen en opnieuw moet opbouwen of een nieuwe index moet maken en vervolgens uw toepassing naar die index moet migreren.

In plaats van de index te verwijderen en opnieuw op te bouwen, kunt u indexaliassen gebruiken. Een typische werkstroom is het volgende:

  1. Uw zoekindex maken
  2. Een alias maken die is toegewezen aan uw zoekindex
  3. Laat uw toepassing query-/indexeringsaanvragen verzenden naar de alias in plaats van de indexnaam
  4. Wanneer u een wijziging in uw index moet aanbrengen waarvoor opnieuw moet worden opgebouwd, maakt u een nieuwe zoekindex
  5. Wanneer de nieuwe index klaar is voor gebruik, werkt u de alias bij om toe te wijzen aan de nieuwe index. Aanvragen worden automatisch doorgestuurd naar de nieuwe index

Een indexalias maken

U kunt een alias maken met behulp van de preview-REST API, de preview-SDK's of via de Azure Portal. Een alias bestaat uit de name van de alias en de naam van de zoekindex waaraan de alias is toegewezen. Er kan slechts één indexnaam worden opgegeven in de indexes matrix.

U kunt de Alias maken of bijwerken (REST preview) gebruiken om een indexalias te maken.

POST /aliases?api-version=2021-04-30-preview
{
    "name": "my-alias",
    "indexes": ["hotel-samples-index"]
}

Aanvragen verzenden naar een indexalias

Nadat u uw alias hebt gemaakt, kunt u deze gaan gebruiken. Aliassen kunnen worden gebruikt voor alle documentbewerkingen , inclusief query's, indexering, suggesties en automatisch aanvullen.

In de onderstaande query kunt u in plaats van de aanvraag te verzenden naar hotel-samples-index, de aanvraag verzenden naar my-alias . Deze wordt dan dienovereenkomstig gerouteerd.

POST /indexes/my-alias/docs/search?api-version=2021-04-30-preview
{
    "search": "pool spa +airport",
    "searchMode": any,
    "queryType": "simple",
    "select": "HotelId, HotelName, Category, Description",
    "count": true
}

Als u een productie-index wilt bijwerken, geeft u een alias op in plaats van de indexnaam in uw toepassing aan de clientzijde. Scenario's waarvoor een index opnieuw moet worden opgebouwd, worden beschreven in Een index neerzetten en opnieuw opbouwen.

Notitie

U kunt een alias alleen gebruiken met documentbewerkingen of om een indexdefinitie op te halen en bij te werken. Aliassen kunnen niet worden gebruikt om een index te verwijderen, kunnen niet worden gebruikt met de Analyze Text-API en kunnen niet worden gebruikt als de targetIndexName op een indexeerfunctie.

Indexen wisselen

Wanneer u nu uw toepassing moet bijwerken zodat deze verwijst naar een nieuwe index, hoeft u alleen maar de toewijzing in uw alias bij te werken. PUT is vereist voor updates, zoals beschreven in Alias maken of bijwerken (REST preview).

PUT /aliases/my-alias?api-version=2021-04-30-preview
{
    "name": "my-alias",
    "indexes": ["hotel-samples-index2"]
}

Nadat u de alias hebt bijgewerkt, worden aanvragen automatisch doorgestuurd naar de nieuwe index.

Notitie

Het kan tot 10 seconden duren voordat een update van een alias via het systeem is doorgegeven. Wacht dus ten minste 10 seconden voordat u de index verwijdert waaraan de alias eerder is toegewezen.

Zie ook