Gegevens importeren in Azure AI Search

In Azure AI Search worden query's uitgevoerd op inhoud die eigendom is van de gebruiker die in een zoekindex wordt geladen. In dit artikel worden de twee basiswerkstromen beschreven voor het vullen van een index: uw gegevens programmatisch naar de index pushen of de gegevens ophalen met behulp van een zoekindexeerfunctie.

Bij beide benaderingen worden documenten uit een externe gegevensbron geladen. Hoewel u een lege index kunt maken, kan er pas een query worden uitgevoerd als u de inhoud toevoegt.

Notitie

Als AI-verrijking een oplossingsvereiste is, moet u het pull-model (indexeerfuncties) gebruiken om een index te laden. Vaardighedensets worden gekoppeld aan een indexeerfunctie en worden niet onafhankelijk uitgevoerd.

Gegevens naar een index pushen

Push-model is een benadering die API's gebruikt om documenten te uploaden naar een bestaande zoekindex. U kunt documenten afzonderlijk of in batches uploaden tot 1000 per batch of 16 MB per batch, afhankelijk van de limiet die het eerst voorkomt.

De belangrijkste voordelen zijn:

  • Geen beperkingen voor het gegevensbrontype. De nettolading moet bestaan uit JSON-documenten die zijn toegewezen aan uw indexschema, maar de gegevens kunnen overal worden opgehaald.

  • Geen beperkingen voor de frequentie van uitvoering. U kunt wijzigingen naar een index pushen zo vaak als u wilt. Voor toepassingen met lage latentievereisten (bijvoorbeeld wanneer de index moet worden gesynchroniseerd met schommelingen in de productinventaris), is het pushmodel uw enige optie.

  • Verbinding maken iviteit en het veilig ophalen van documenten zijn volledig onder uw controle. Indexeerfunctieverbindingen worden daarentegen geverifieerd met behulp van de beveiligingsfuncties in Azure AI Search.

Gegevens pushen naar een Azure AI Search-index

Gebruik de volgende API's om één of meerdere documenten in een index te laden:

Er is geen ondersteuning voor het pushen van gegevens via Azure Portal.

Zie voor een inleiding tot de push-API's:

Indexeringsacties: uploaden, samenvoegen, mergeOrUpload, verwijderen

U kunt het type indexeringsactie per document beheren, opgeven of het document volledig moet worden geüpload, samengevoegd met bestaande documentinhoud of verwijderd.

Ongeacht of u de REST API of een Azure SDK gebruikt, worden de volgende documentbewerkingen ondersteund voor het importeren van gegevens:

  • Uploaden, vergelijkbaar met een 'upsert' waar 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.

  • samenvoegt een document dat al bestaat en mislukt 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 een tags veld bijvoorbeeld begint met een waarde van ["budget"] en u een samenvoegbewerking ["economy", "pool"]uitvoert, is ["economy", "pool"]de uiteindelijke waarde van het tags veld. Het zal niet zijn ["budget", "economy", "pool"].

  • mergeOrUpload gedraagt zich als samenvoegen als het document bestaat en upload of het document nieuw is.

  • 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.

Gegevens in een index ophalen

Het pull-model maakt gebruik van indexeerfuncties die verbinding maken met een ondersteunde gegevensbron, waarbij de gegevens automatisch naar uw index worden geüpload. Indexeerfuncties van Microsoft zijn beschikbaar voor deze platforms:

U kunt connectors van derden gebruiken, ontwikkeld en onderhouden door Microsoft-partners. Zie de galerie met gegevensbronnen voor meer informatie en koppelingen.

Indexeerfuncties verbinden een index met een gegevensbron (meestal een tabel, weergave of equivalente structuur) en wijzen bronvelden toe aan equivalente velden in de index. Tijdens de uitvoering wordt de rijenset automatisch omgezet naar JSON en in de opgegeven index geladen. Alle indexeerfuncties ondersteunen planningen, zodat u kunt opgeven hoe vaak de gegevens moeten worden vernieuwd. Met de meeste indexeerfuncties kunt u wijzigingen bijhouden als dit door de gegevensbron wordt ondersteund. Als u naast het herkennen van nieuwe documenten, wijzigingen en verwijderingen in een bestaand document bijhoudt, hoeft u de gegevens in een index via indexeerfuncties niet actief bij te houden.

Gegevens ophalen in een Azure AI Search-index

Gebruik de volgende hulpprogramma's en API's voor indexering op basis van indexeerfuncties:

De functionaliteit van de indexeerfunctie wordt weergegeven in [Azure Portal], de REST API en de .NET SDK.

Een voordeel van het gebruik van de portal is dat Azure AI Search meestal een standaardindexschema kan genereren door de metagegevens van de brongegevensset te lezen.

Gegevens importeren controleren met Search Explorer

Een snelle manier om een voorbereidende controle uit te voeren op het uploaden van documenten is door Search Explorer in de portal te gebruiken.

Screenshot of Search Explorer command in the Azure portal.

Met de explorer kunt u gegevens uit een index opvragen zonder code te schrijven. De zoekervaring is gebaseerd op standaardinstellingen, zoals de eenvoudige syntaxis en de standaard-queryparameter searchMode. Resultaten worden geretourneerd in JSON, zodat u het hele document kunt inspecteren.

Hier volgt een voorbeeldquery die u kunt uitvoeren in Search Explorer in de JSON-weergave. De "HotelId" is de documentsleutel van de hotels-sample-index. Het filter biedt de document-id van een specifiek document:

{
  "search": "*",
  "filter": "HotelId eq '50'"
}

Als u REST gebruikt, bereikt deze opzoekquery hetzelfde doel.

Zie ook