Tworzenie aliasu indeksu w usłudze Azure AI Search

Ważne

Aliasy indeksów są obecnie dostępne w publicznej wersji zapoznawczej i są dostępne w ramach dodatkowych warunków użytkowania.

W usłudze Azure AI Search alias indeksu jest nazwą pomocniczą, która może służyć do odwoływania się do indeksu do wykonywania zapytań, indeksowania i innych operacji. Możesz utworzyć alias mapujący na indeks wyszukiwania i zastąpić nazwę aliasu w miejscach, w których w przeciwnym razie odwołujesz się do nazwy indeksu. Alias zwiększa elastyczność, jeśli musisz zmienić indeks wskazujący aplikację. Zamiast aktualizować odwołania w aplikacji, wystarczy zaktualizować mapowanie aliasu.

Głównym celem aliasów indeksu jest ułatwienie zarządzania indeksami produkcyjnymi. Jeśli na przykład musisz wprowadzić zmianę definicji indeksu, taką jak edytowanie pola lub dodawanie nowego analizatora, musisz utworzyć nowy indeks wyszukiwania, ponieważ wszystkie indeksy wyszukiwania są niezmienne. Oznacza to, że należy usunąć i ponownie skompilować indeks lub utworzyć nowy indeks, a następnie przeprowadzić migrację aplikacji do tego indeksu.

Zamiast usuwać i kompilować indeks, możesz użyć aliasów indeksu. Typowy przepływ pracy to:

  1. Tworzenie indeksu wyszukiwania
  2. Tworzenie aliasu mapowania na indeks wyszukiwania
  3. Aplikacja wysyła żądania zapytań/indeksowania do aliasu, a nie nazwy indeksu
  4. Gdy musisz wprowadzić zmianę w indeksie, która wymaga ponownego skompilowania, utwórz nowy indeks wyszukiwania
  5. Gdy nowy indeks będzie gotowy do przejścia, zaktualizuj alias do mapowania na nowy indeks, a żądania zostaną automatycznie kierowane do nowego indeksu

Tworzenie aliasu indeksu

Alias można utworzyć przy użyciu interfejsu API REST w wersji zapoznawczej, zestawów SDK w wersji zapoznawczej lub za pośrednictwem witryny Azure Portal. Alias składa się z name aliasu i nazwy indeksu wyszukiwania, do którego jest mapowany alias. W tablicy można określić tylko jedną nazwę indeksu indexes .

Aby utworzyć alias indeksu, można użyć aliasu tworzenia lub aktualizowania (wersja zapoznawcza REST).

POST /aliases?api-version=2023-10-01-preview
{
    "name": "my-alias",
    "indexes": ["hotel-samples-index"]
}

Wysyłanie żądań do aliasu indeksu

Po utworzeniu aliasu możesz rozpocząć korzystanie z niego. Aliasy mogą być używane dla wszystkich operacji dokumentów, w tym zapytań, indeksowania, sugestii i autouzupełniania.

W poniższym zapytaniu zamiast wysyłać żądanie do hotel-samples-index, możesz zamiast tego wysłać żądanie do my-alias i będzie odpowiednio kierowany.

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

Jeśli oczekujesz aktualizacji indeksu produkcyjnego, określ alias, a nie nazwę indeksu w aplikacji po stronie klienta. Scenariusze wymagające ponownego kompilowania indeksu są opisane w temacie Drop and rebuild an index (Usuwanie i ponowne kompilowanie indeksu).

Uwaga

Możesz użyć aliasu tylko z operacjami dokumentu lub pobrać i zaktualizować definicję indeksu. Aliasy nie mogą służyć do usuwania indeksu, nie można ich używać z interfejsem API analizowania tekstu i nie można ich używać jako targetIndexName indeksatora.

Propagacja aktualizacji aliasu przez system może potrwać do 10 sekund, dlatego przed wykonaniem dowolnej operacji w indeksie, która została zamapowana lub ostatnio została zamapowana na alias, należy poczekać co najmniej 10 sekund.

Zamienianie indeksów

Teraz, gdy musisz zaktualizować aplikację, aby wskazywała nowy indeks, wystarczy zaktualizować mapowanie w aliasie. Funkcja PUT jest wymagana do aktualizacji zgodnie z opisem w temacie Tworzenie lub aktualizowanie aliasu (wersja zapoznawcza REST).

PUT /aliases/my-alias?api-version=2023-10-01-preview
{
    "name": "my-alias",
    "indexes": ["hotel-samples-index2"]
}

Po wprowadzeniu aktualizacji do aliasu żądania automatycznie zaczną być kierowane do nowego indeksu.

Uwaga

Propagacja aktualizacji aliasu w systemie może potrwać do 10 sekund, dlatego przed usunięciem indeksu, do którego alias został wcześniej zamapowany, należy poczekać co najmniej 10 sekund.

Zobacz też