Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Opmerking
Azure AI Zoeken is beschikbaar via de Azure-portal, REST API's en Azure-SDK's. Het vormt ook een basis voor Foundry IQ, de beheerde kennislaag die bedrijfsinhoud transformeert in herbruikbare, machtigingsbewuste knowledge bases voor agents in de Microsoft Foundry-portal.
In dit artikel wordt uitgelegd hoe u een bestaande index in Azure AI Zoeken bijwerkt met schemawijzigingen of inhoudswijzigingen via incrementele indexering.
Tip
Als u documenten onmiddellijk wilt bijwerken, gaat u naar Inhoud bijwerken. Zie Een indexschema bijwerken voor schemawijzigingen.
Voorwaarden
Een Azure AI Zoeken-service (een willekeurige laag). Maak een service of vind een bestaande service.
Een bestaande zoekindex met documenten. In dit artikel wordt ervan uitgegaan dat u al een index en geladen documenten hebt gemaakt.
Machtigingen voor het bijwerken of herbouwen van indexen:
- Verificatie op basis van sleutels: een beheer-API-sleutel voor uw zoekservice.
- Verificatie op basis van rollen: de rol Inzender voor zoekindexgegevens voor documentupdates of Inzender voor zoekservice voor schemawijzigingen.
Installeer voor SDK-ontwikkeling de Azure Search-clientbibliotheek:
- Python: azure-search-documents
- .NET: Azure. Search.Documents
- JavaScript: @azure/search-documents
- Java: azure-search-documents
Tip
Tijdens de actieve ontwikkeling is het gebruikelijk om indexen te verwijderen en opnieuw te bouwen bij het doorlopen van het indexontwerp. Werk met een kleine representatieve steekproef van gegevens, zodat het opnieuw indexeren sneller gaat. Voor wijzigingen in het productieschema maakt en test u een nieuwe index naast elkaar en gebruikt u vervolgens een indexalias om indexen te wisselen zonder toepassingscode te wijzigen.
Inhoud bijwerken
Incrementeel indexeren en synchroniseren van een index met wijzigingen in brongegevens is fundamenteel voor de meeste zoektoepassingen. In deze sectie wordt de werkstroom uitgelegd voor het toevoegen, verwijderen of overschrijven van de inhoud van een zoekindex via de REST API, maar de Azure-SDK's gelijkwaardige functionaliteit bieden.
De hoofdtekst van de aanvraag bevat een of meer documenten die moeten worden geïndexeerd. Binnen de aanvraag is elk document in de index:
- Geïdentificeerd door een unieke hoofdlettergevoelige sleutel.
- Gekoppeld aan een actie: 'uploaden', 'verwijderen', 'samenvoegen' of 'mergeOrUpload'.
- Gevuld met een set naam-/waardeparen voor elk veld dat u toevoegt of bijwerkt.
{
"value": [
{
"@search.action": "upload (default) | merge | mergeOrUpload | delete",
"key_field_name": "unique_key_of_document", (key/value pair for key field from index schema)
"field_name": field_value (name/value pairs matching index schema)
...
},
...
]
}
Verwijzing:Documenten - Index
Gebruik eerst de API's voor het laden van documenten, zoals Documents - Index (REST) of een equivalente API in de Azure-SDK's. Zie Documenten laden voor meer informatie over indexeringstechnieken.
Voor een grote update wordt batchverwerking (maximaal 1.000 documenten per batch of ongeveer 16 MB per batch, afhankelijk van de limiet die het eerst voorkomt) aanbevolen en worden de indexeringsprestaties aanzienlijk verbeterd.
Stel de
@search.actionparameter voor de API in om het effect op bestaande documenten te bepalen. GebruikmergeOrUploaddeze optie voor incrementele updates (meest voorkomende),deleteom documenten te verwijderen ofmergevoor gedeeltelijke veldupdates voor bestaande documenten.Actie Effect Verwijderen Hiermee verwijdert u het hele document uit de index. Als u een afzonderlijk veld wilt verwijderen, gebruikt u in plaats daarvan samenvoegen en stelt u het betreffende veld in op null. Verwijderde documenten en velden maken niet onmiddellijk ruimte vrij in de index. Elke paar minuten voert een achtergrondproces de fysieke verwijdering uit. Of u nu de Azure-portal of een API gebruikt om indexstatistieken te retourneren, u kunt een kleine vertraging verwachten voordat de verwijdering wordt doorgevoerd in de Azure-portal en via API's. Zie Documenten verwijderen in een zoekindex voor meer informatie. Samenvoegen Werkt een bestaand document bij en verwerpt een document dat niet kan worden gevonden. Samenvoegen vervangt bestaande waarden. Zorg er daarom voor dat u controleert op verzamelingsvelden die meerdere waarden bevatten, zoals velden van het type Collection(Edm.String). Als eentagsveld bijvoorbeeld begint met een waarde van["budget"]en u een samenvoegbewerking["economy", "pool"]uitvoert, istagsde uiteindelijke waarde van het["economy", "pool"]veld. Het zal niet zijn["budget", "economy", "pool"].
Hetzelfde gedrag is van toepassing op complexe verzamelingen. Als het document een complex verzamelingsveld bevat met de naam Ruimten met een waarde van[{ "Type": "Budget Room", "BaseRate": 75.0 }], en u een samenvoeging uitvoert met een waarde van[{ "Type": "Standard Room" }, { "Type": "Budget Room", "BaseRate": 60.5 }], is[{ "Type": "Standard Room" }, { "Type": "Budget Room", "BaseRate": 60.5 }]de uiteindelijke waarde van het veld Ruimten. Er worden geen nieuwe en bestaande waarden toegevoegd of samengevoegd.mergeOrUpload Gedraagt zich als samenvoegen als het document bestaat en uploaden als het document nieuw is. Dit is de meest voorkomende actie voor incrementele updates. Uploaden Vergelijkbaar met een upsert waarin het document wordt ingevoegd als het nieuw is en bijgewerkt of vervangen als het bestaat. Als het document ontbrekende waarden bevat die de index vereist, wordt de waarde van het documentveld ingesteld op null.
Query's blijven tijdens het indexeren worden uitgevoerd, maar als u bestaande velden bijwerkt of verwijdert, kunt u meer gemengde resultaten en een grotere frequentie van vertraging verwachten.
Opmerking
Er zijn geen volgorde garanties voor welke actie in de request body als eerste wordt uitgevoerd. Het wordt afgeraden om meerdere 'merge'-acties aan hetzelfde document te koppelen binnen één enkele aanvraag. Als er meerdere 'samenvoegacties' voor hetzelfde document vereist zijn, voer de samenvoeging aan de clientzijde uit voordat u het document bijwerkt in de zoekindex.
Reacties
Statuscode 200 wordt geretourneerd voor een geslaagd antwoord, wat betekent dat alle items duurzaam zijn opgeslagen en worden geïndexeerd. Indexering wordt op de achtergrond uitgevoerd en maakt nieuwe documenten (dat wil zeggen, opvraagbaar en doorzoekbaar) enkele seconden nadat de indexeringsbewerking is voltooid beschikbaar. De specifieke vertraging is afhankelijk van de belasting van de service.
Geslaagde indexering wordt aangegeven door de statuseigenschap die wordt ingesteld op waar voor alle items, evenals de statusCode eigenschap die wordt ingesteld op 201 (voor nieuw geüploade documenten) of 200 (voor samengevoegde of verwijderde documenten):
{
"value": [
{
"key": "unique_key_of_new_document",
"status": true,
"errorMessage": null,
"statusCode": 201
},
{
"key": "unique_key_of_merged_document",
"status": true,
"errorMessage": null,
"statusCode": 200
},
{
"key": "unique_key_of_deleted_document",
"status": true,
"errorMessage": null,
"statusCode": 200
}
]
}
Statuscode 207 wordt geretourneerd wanneer ten minste één item niet is geïndexeerd. Items die niet zijn geïndexeerd, hebben het statusveld ingesteld op false. De errorMessage en statusCode eigenschappen geven de reden voor de indexeringsfout aan:
{
"value": [
{
"key": "unique_key_of_document_1",
"status": false,
"errorMessage": "The search service is too busy to process this document. Please try again later.",
"statusCode": 503
},
{
"key": "unique_key_of_document_2",
"status": false,
"errorMessage": "Document not found.",
"statusCode": 404
},
{
"key": "unique_key_of_document_3",
"status": false,
"errorMessage": "Index is temporarily unavailable because it was updated with the 'allowIndexDowntime' flag set to 'true'. Please try again later.",
"statusCode": 422
}
]
}
De errorMessage eigenschap geeft indien mogelijk de reden voor de indexeringsfout aan.
In de volgende tabel worden de verschillende statuscodes per document uitgelegd die in het antwoord kunnen worden geretourneerd. Sommige statuscodes geven problemen aan met de aanvraag zelf, terwijl andere tijdelijke foutvoorwaarden aangeven. De laatste moet u opnieuw proberen na een vertraging.
| Statuscode | Betekenis | Opnieuw proberen | Notities |
|---|---|---|---|
| 200 | Het document is gewijzigd of verwijderd. | N/a | Verwijderbewerkingen zijn idempotent. Zelfs als er geen documentsleutel in de index bestaat, resulteert een verwijderbewerking met die sleutel in een statuscode van 200. |
| 201 | Het document is succesvol gemaakt. | N/a | |
| 400 | Er is een fout opgetreden in het document waardoor het niet kon worden geïndexeerd. | Nee | Het foutbericht in het antwoord geeft aan wat er mis is met het document. |
| 404 | Het document kan niet worden samengevoegd omdat de opgegeven sleutel niet in de index bestaat. | Nee | Deze fout treedt niet op bij uploads, omdat ze nieuwe documenten aanmaken, en treedt ook niet op bij verwijderingen, omdat deze idempotent zijn. |
| 409 | Er is een versieconflict gedetecteerd bij het indexeren van een document. | Ja | Dit kan gebeuren wanneer u hetzelfde document meerdere keren tegelijk probeert te indexeren. |
| 422 | De index is tijdelijk niet beschikbaar omdat deze is bijgewerkt met de vlag allowIndexDowntime ingesteld op 'true'. | Ja | |
| 429 | Te veel aanvragen | Ja | Als u deze foutcode krijgt tijdens het indexeren, betekent dit meestal dat u weinig opslagruimte hebt. Wanneer u de opslaglimieten bijna hebt bereikt, kan de service een status invoeren waarin u niet kunt toevoegen of bijwerken totdat u bepaalde documenten verwijdert. Zie Capaciteit plannen en beheren als u meer opslagruimte wilt of ruimte vrijmaken door documenten te verwijderen voor meer informatie. |
| 503 | Uw zoekservice is tijdelijk niet beschikbaar, mogelijk vanwege zware belasting. | Ja | Uw code moet wachten voordat u opnieuw probeert; anders riskeert u dat de service niet beschikbaar blijft. |
Als uw clientcode vaak een 207-antwoord tegenkomt, is een mogelijke reden dat het systeem wordt belast. U kunt dit bevestigen door de statusCode-eigenschap op 503 te controleren. Als de statusCode 503 is, raden we u aan om indexeringsaanvragen te beperken. Als het indexeringsverkeer niet vermindert, kan het systeem alle verzoeken met 503-fouten weigeren.
Statuscode 429 geeft aan dat u het quotum voor het aantal documenten per index hebt overschreden. U moet een upgrade uitvoeren voor hogere capaciteitslimieten of een nieuwe index maken.
Opmerking
Wanneer u DateTimeOffset-waarden met tijdzonegegevens naar uw index uploadt, Azure AI Zoeken deze waarden normaliseert naar UTC. Bijvoorbeeld: 2024-01-13T14:03:00-08:00 wordt opgeslagen als 2024-01-13T22:03:00Z. Als u tijdzonegegevens wilt opslaan, voegt u een extra kolom toe aan uw index voor dit gegevenspunt.
Tips voor incrementeel indexeren
Indexers automatiseren incrementele indexering. Als u een indexeerfunctie kunt gebruiken en als de gegevensbron wijzigingen bijhouden ondersteunt, kunt u de indexeerfunctie uitvoeren volgens een terugkerend schema om doorzoekbare inhoud toe te voegen, bij te werken of te overschrijven, zodat deze wordt gesynchroniseerd met uw externe gegevens.
Als u indexoproepen rechtstreeks via de push-API maakt, gebruikt
mergeOrUploadu deze als zoekactie.De nettolading moet de sleutels of id's bevatten van elk document dat u wilt toevoegen, bijwerken of verwijderen.
Als uw index vectorvelden bevat en u de
storedeigenschap instelt op false, moet u de vector opgeven in de gedeeltelijke documentupdate, zelfs als de waarde ongewijzigd is. Een neveneffect van het instellenstoredop false is dat vectoren worden verwijderd bij een herindexeringsbewerking. Door de vector in de payload van documenten op te geven, voorkomt u dat dit gebeurt.Als u de inhoud van eenvoudige velden en subvelden in complexe typen wilt bijwerken, moet u alleen de velden weergeven die u wilt wijzigen. Als u bijvoorbeeld alleen een beschrijvingsveld hoeft bij te werken, moet de nettolading bestaan uit de documentsleutel en de gewijzigde beschrijving. Als u andere velden weglaat, blijven de bestaande waarden behouden.
Als u inlinewijzigingen wilt samenvoegen in een tekenreeksverzameling, geeft u de volledige waarde op. U herinnert zich het
tagsveldvoorbeeld uit de vorige sectie. Nieuwe waarden overschrijven de oude waarden voor een heel veld en er is geen samenvoeging binnen de inhoud van een veld.
Hier volgt een REST API-voorbeeld waarin deze tips worden gedemonstreerd:
### Get Stay-Kay City Hotel by ID
GET {{baseUrl}}/indexes/hotels-vector-quickstart/docs('1')?api-version=2026-04-01 HTTP/1.1
Content-Type: application/json
api-key: {{apiKey}}
### Change the description, city, and tags for Stay-Kay City Hotel
POST {{baseUrl}}/indexes/hotels-vector-quickstart/docs/search.index?api-version=2026-04-01 HTTP/1.1
Content-Type: application/json
api-key: {{apiKey}}
{
"value": [
{
"@search.action": "mergeOrUpload",
"HotelId": "1",
"Description": "I'm overwriting the description for Stay-Kay City Hotel.",
"Tags": ["my old item", "my new item"],
"Address": {
"City": "Gotham City"
}
}
]
}
### Retrieve the same document, confirm the overwrites and retention of all other values
GET {{baseUrl}}/indexes/hotels-vector-quickstart/docs('1')?api-version=2026-04-01 HTTP/1.1
Content-Type: application/json
api-key: {{apiKey}}
Verwijzing:Documenten - Index, Opzoekdocument
SDK-voorbeelden
In de volgende voorbeelden ziet u hoe u documenten bijwerkt met behulp van de Azure-SDK's.
from azure.core.credentials import AzureKeyCredential
from azure.search.documents import SearchClient
# Set up the client
service_name = "<your-search-service-name>"
index_name = "hotels-sample"
api_key = "<your-admin-api-key>"
endpoint = f"https://{service_name}.search.windows.net"
credential = AzureKeyCredential(api_key)
client = SearchClient(endpoint=endpoint, index_name=index_name, credential=credential)
# Update documents using merge_or_upload
documents = [
{
"HotelId": "1",
"Description": "Updated description for the hotel.",
"Tags": ["updated", "renovated"]
}
]
result = client.merge_or_upload_documents(documents=documents)
print(f"Updated {len(result)} document(s)")
Referentie:SearchClient, merge_or_upload_documents
Een indexschema bijwerken
Het indexschema definieert de fysieke gegevensstructuren die zijn gemaakt in de zoekservice, dus er zijn niet veel schemawijzigingen die u kunt aanbrengen zonder dat er een volledige herbouwbewerking wordt uitgevoerd.
Updates zonder herbouwing
In de volgende lijst worden de schemawijzigingen opgesomd die naadloos in een bestaande index kunnen worden geïntroduceerd. Over het algemeen bevat de lijst nieuwe velden en functionaliteit die worden gebruikt tijdens het uitvoeren van query's.
- Een indexbeschrijving toevoegen
- Een nieuw veld toevoegen
- Het
retrievablekenmerk voor een bestaand veld instellen - Bijwerken
searchAnalyzervoor een veld met een bestaandeindexAnalyzer - Een nieuwe analysedefinitie toevoegen in een index (die kan worden toegepast op nieuwe velden)
- Scoreprofielen toevoegen, bijwerken of verwijderen
- Synoniemenkaarten toevoegen, bijwerken of verwijderen
- Semantische configuraties toevoegen, bijwerken of verwijderen
- CORS-instellingen toevoegen, bijwerken of verwijderen
De volgorde van bewerkingen is:
Wijzig het schema met updates uit de vorige lijst.
Indexschema bijwerken in de zoekservice.
Werk indexinhoud bij zodat deze overeenkomt met uw herziene schema als u een nieuw veld hebt toegevoegd. Voor alle andere wijzigingen wordt de bestaande geïndexeerde inhoud gebruikt as-is.
Wanneer u een indexschema bijwerkt om een nieuw veld op te nemen, krijgen bestaande documenten in de index een null-waarde voor dat veld. In de volgende indexeringstaak vervangen waarden uit externe brongegevens de null's die door Azure AI Zoeken zijn toegevoegd.
Er mogen geen queryonderbrekingen optreden tijdens de updates, maar de queryresultaten variëren naarmate de updates van kracht worden.
Updates waarvoor een herbouwing is vereist
Voor sommige wijzigingen moet een index worden verwijderd en opnieuw worden opgebouwd, waarbij een huidige index wordt vervangen door een nieuwe index.
| Actie | Beschrijving |
|---|---|
| Een veld verwijderen | Als u alle traceringen van een veld fysiek wilt verwijderen, moet u de index opnieuw opbouwen. Wanneer een onmiddellijke herbouwing niet praktisch is, kunt u toepassingscode wijzigen om de toegang om te leiden van een verouderd veld, of gebruik de searchFields en select queryparameters om te kiezen welke velden doorzocht en geretourneerd worden. Fysiek blijft de velddefinitie en inhoud in de index staan totdat u het volgende opnieuw maakt, wanneer u een schema toepast dat het betreffende veld weglaat. |
| Een velddefinitie wijzigen | Revisies van een veldnaam, gegevenstype of specifieke indexkenmerken (doorzoekbaar, filterbaar, sorteerbaar, facetable) vereisen een volledige herbouw. |
| Een analyzer koppelen aan een veld | Analysefuncties worden gedefinieerd in een index, toegewezen aan velden en vervolgens aangeroepen tijdens het indexeren om te informeren hoe tokens worden gemaakt. U kunt op elk gewenst moment een nieuwe analysedefinitie toevoegen aan een index, maar u kunt alleen een analyse toewijzen wanneer het veld wordt gemaakt. Dit geldt voor zowel de eigenschappen analyzer als indexAnalyzer. De eigenschap searchAnalyzer is een uitzondering (u kunt deze eigenschap toewijzen aan een bestaand veld). |
| Een analysedefinitie in een index bijwerken of verwijderen | U kunt een bestaande analyseconfiguratie (analyse, tokenizer, tokenfilter of tekenfilter) in de index niet verwijderen of wijzigen, tenzij u de hele index opnieuw opbouwt. |
| Een veld toevoegen aan een suggestie | Als er al een veld bestaat en u het wilt toevoegen aan een suggesters-constructie , bouwt u de index opnieuw op. |
| Uw dienst of abonnement upgraden | Als u meer capaciteit nodig hebt, controleert u of u uw service kunt upgraden of kunt overschakelen naar een hogere prijscategorie. Zo niet, dan moet u een nieuwe service maken en uw indexen helemaal opnieuw bouwen. Om dit proces te automatiseren, kunt u een codevoorbeeld gebruiken dat een back-up van uw index maakt naar een reeks JSON-bestanden. Vervolgens kunt u de index opnieuw maken in een zoekservice die u opgeeft. |
De volgorde van bewerkingen is:
Haal een indexdefinitie op voor het geval u deze nodig hebt voor toekomstige naslaginformatie of als basis voor een nieuwe versie.
Overweeg om een back-up- en hersteloplossing te gebruiken om een kopie van indexinhoud te behouden. Er zijn oplossingen in C# en in Python. We raden de Python versie aan omdat deze up-to-date is.
Als u capaciteit hebt voor uw zoekservice, moet u de bestaande index behouden terwijl u de nieuwe index maakt en test.
Verwijder de bestaande index. Query's die gericht zijn op de index, worden onmiddellijk verwijderd. Houd er rekening mee dat het verwijderen van een index niet ongedaan kan worden gemaakt, waardoor fysieke opslag voor de verzameling velden en andere constructies wordt vernietigd.
Post een herziene index, waarbij de hoofdtekst van de aanvraag gewijzigde of gewijzigde velddefinities en -configuraties bevat.
Laad de index met documenten van een externe bron. Documenten worden geïndexeerd met behulp van de velddefinities en configuraties van het nieuwe schema.
Wanneer u de index maakt, wordt fysieke opslag toegewezen voor elk veld in het indexschema, met een omgekeerde index die is gemaakt voor elk doorzoekbaar veld en een vectorindex die voor elk vectorveld wordt gemaakt. Velden die niet doorzoekbaar zijn, kunnen worden gebruikt in filters of expressies, maar hebben geen omgekeerde indexen en zijn niet in volledige tekst of fuzzy doorzoekbaar. Bij het opnieuw opbouwen van een index worden deze omgekeerde indexen en vectorindexen verwijderd en opnieuw gemaakt op basis van het indexschema dat u opgeeft.
Als u onderbreking van toepassingscode wilt minimaliseren, kunt u een indexalias maken. Toepassingscode verwijst naar de alias, maar u kunt de naam bijwerken van de index waarnaar de alias verwijst.
Een indexbeschrijving toevoegen
Een index heeft een description eigenschap die u kunt opgeven en gebruiken wanneer een systeem toegang moet hebben tot verschillende indexen en een beslissing moet nemen op basis van de beschrijving. Overweeg een MCP-server (Model Context Protocol) die de juiste index tijdens runtime moet kiezen. De beslissing kan worden gebaseerd op de beschrijving in plaats van alleen de indexnaam.
Een indexbeschrijving is een schema-update en u kunt deze toevoegen zonder dat u de hele index opnieuw hoeft op te bouwen.
- Tekenreekslengte is maximaal 4000 tekens.
- Inhoud moet door mensen leesbaar zijn, in Unicode. Uw use-case moet bepalen welke taal moet worden gebruikt.
U kunt een indexbeschrijving toevoegen via de Azure-portal, de meest recente stabiele REST API of een Azure SDK-pakket dat de functie biedt.
De Azure-portal ondersteunt de nieuwste preview-API.
Ga naar uw zoekservice in de Azure portal.
Selecteer een index onderIndexen voor >.
Selecteer JSON bewerken.
Invoegen
"description", gevolgd door de beschrijving. De waarde moet kleiner zijn dan 4000 tekens en in Unicode.
Sla de index op.
Workloads verdelen
Indexering wordt niet op de achtergrond uitgevoerd, maar de zoekservice brengt indexeringstaken in balans met lopende query's. Tijdens het indexeren kunt u queryaanvragen monitoren in de Azure-portal om ervoor te zorgen dat query's tijdig worden voltooid.
Als het indexeren van workloads onaanvaardbare niveaus van querylatentie introduceert, voert u prestatieanalyse uit en bekijkt u deze prestatietips voor mogelijke risicobeperking.
Controleren op updates
U kunt beginnen met het uitvoeren van query's op een index zodra het eerste document is geladen. Als u de id van een document kent, retourneert de REST API voor opzoekdocument het specifieke document. Voor uitgebreidere tests moet u wachten totdat de index volledig is geladen en vervolgens query's gebruiken om de context te controleren die u verwacht te zien.
U kunt Search Explorer of een REST-client gebruiken om te controleren op bijgewerkte inhoud.
Als u een veld hebt toegevoegd of de naam ervan hebt gewijzigd, gebruik selecteer om dat veld te retourneren.
"search": "*",
"select": "document-id, my-new-field, some-old-field",
"count": true
De Azure-portal biedt indexgrootte en vectorindexgrootte. U kunt deze waarden controleren na het bijwerken van een index, maar vergeet niet om een kleine vertraging te verwachten wanneer de service de wijziging verwerkt en rekening houdt met de vernieuwingsfrequenties van de portal. Dit kan enkele minuten duren.
Problemen met opnieuw indexeren oplossen
De volgende tabel bevat veelvoorkomende problemen bij het bijwerken of herbouwen van indexen en het oplossen van deze problemen.
| Probleem | Oorzaak | Resolutie |
|---|---|---|
| 207-respons met gemengde resultaten | Sommige documenten zijn voltooid, andere zijn mislukt. | Controleer statusCode bij elk document als reactie. Als er een 503-fout optreedt, vertraagt u aanvragen en probeert u het opnieuw. |
| 409 Versieconflict | Gelijktijdige updates voor hetzelfde document. | Serialiseer updates naar hetzelfde document of implementeer een retry-mechanisme met exponentiële terugval. |
| 429 Te veel aanvragen | Het opslagquotum is overschreden of te veel gelijktijdige aanvragen. | Verwijder documenten om ruimte vrij te maken of upgrade de servicelaag voor meer capaciteit. |
| 503-service niet beschikbaar | Service onder zware belasting. | Wacht en probeer het opnieuw met exponentiële back-off. Overweeg om de batchgrootte te verkleinen. |
| Aantal documenten is ongewijzigd na verwijdering | Verwijdering is asynchroon. | Wacht 2-3 minuten totdat het achtergrondproces de fysieke verwijdering heeft voltooid. |
| Nieuw veld retourneert null | Veld toegevoegd aan schema, maar documenten worden niet opnieuw geïndexeerd. | Voer de indexeerfunctie uit of push bijgewerkte documenten om het nieuwe veld te vullen. |
| Schemawijziging geweigerd | Poging tot incompatibele wijziging (naam wijzigen, typewijziging). | Verwijder de index en bouw deze opnieuw. Gebruik de indexalias om downtime te minimaliseren. |
Zie ook
- Overzicht van indexeerfunctie
- Documenten uit een zoekindex verwijderen
- Grote gegevenssets op schaal indexeren
- Indexering in Azure-portal
- Azure SQL Database indexeerfunctie
- Azure Cosmos DB voor NoSQL indexeerfunctie
- Azure blob-indexer
- Azure indexeerfunctie voor tabellen
- Gegevens, privacy en ingebouwde beveiliging