Zuordnen angereicherter Felder zu einem durchsuchbaren IndexHow to map enriched fields to a searchable index

In diesem Artikel erfahren Sie, wie Sie angereicherte Eingabefelder Ausgabefeldern in einem durchsuchbaren Index zuordnen.In this article, you learn how to map enriched input fields to output fields in a searchable index. Nachdem Sie ein Skillset definiert haben, müssen Sie die Ausgabefelder aller Skills zuordnen, die Werte direkt für ein bestimmtes Feld in Ihrem Suchindex bereitstellen.Once you have defined a skillset, you must map the output fields of any skill that directly contributes values to a given field in your search index. Feldzuordnungen sind für das Verschieben von Inhalt aus angereicherten Dokumenten in den Index erforderlich.Field mappings are required for moving content from enriched documents into the index.

Verwenden von „outputFieldMappings“Use outputFieldMappings

Um Felder zuzuordnen, fügen Sie outputFieldMappings zu Ihrer Indexerdefinition hinzu, wie unten gezeigt:To map fields, add outputFieldMappings to your indexer definition as shown below:

PUT https://[servicename].search.windows.net/indexers/[indexer name]?api-version=2019-05-06
api-key: [admin key]
Content-Type: application/json

Der Text der Anforderung ist wie folgt strukturiert:The body of the request is structured as follows:

{
    "name": "myIndexer",
    "dataSourceName": "myDataSource",
    "targetIndexName": "myIndex",
    "skillsetName": "myFirstSkillSet",
    "fieldMappings": [
        {
            "sourceFieldName": "metadata_storage_path",
            "targetFieldName": "id",
            "mappingFunction": {
                "name": "base64Encode"
            }
        }
    ],
    "outputFieldMappings": [
        {
            "sourceFieldName": "/document/content/organizations/*/description",
            "targetFieldName": "descriptions"
        },
        {
            "sourceFieldName": "/document/content/organizations",
            "targetFieldName": "orgNames"
        },
        {
            "sourceFieldName": "/document/content/sentiment",
            "targetFieldName": "sentiment"
        }
    ]
}

Setzen Sie für jede Ausgabefeldzuordnung den Namen des angereicherten Feldes (sourceFieldName) und den Namen des im Index referenzierten Feldes (targetFieldName) fest.For each output field mapping, set the name of the enriched field (sourceFieldName), and the name of the field as referenced in the index (targetFieldName).

Der Pfad in einem sourceFieldName kann ein Element oder mehrere Elemente darstellen.The path in a sourceFieldName can represent one element or multiple elements. Im obigen Beispiel stellt /document/content/sentiment einen einzelnen numerischen Wert dar, während /document/content/organizations/*/description für mehrere Organisationsbeschreibungen steht.In the example above, /document/content/sentiment represents a single numeric value, while /document/content/organizations/*/description represents several organization descriptions. In Fällen, in denen es mehrere Elemente gibt, werden diese zu einem Array „vereinfacht“, das jedes der Elemente enthält.In cases where there are several elements, they are "flattened" into an array that contains each of the elements. Für das Beispiel /document/content/organizations/*/description würden die Daten im Feld Beschreibungen demnach wie ein flaches Array von Beschreibungen aussehen, bevor sie indiziert werden:More concretely, for the /document/content/organizations/*/description example, the data in the descriptions field would look like a flat array of descriptions before it gets indexed:

 ["Microsoft is a company in Seattle","LinkedIn's office is in San Francisco"]

Nächste SchritteNext steps

Nachdem Sie Ihre angereicherten Felder den durchsuchbaren Feldern zugeordnet haben, können Sie die Feldattribute für jedes der durchsuchbaren Felder als Teil der Indexdefinition festlegen.Once you have mapped your enriched fields to searchable fields, you can set the field attributes for each of the searchable fields as part of the index definition.

Weitere Informationen zu Feldzuordnungen finden Sie unter Feldzuordnungen in Azure Search-Indexern.For more information about field mapping, see Field mappings in Azure Search indexers.