Connecteur de source de données personnalisé - Amazon Kendra

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Connecteur de source de données personnalisé

Utilisez une source de données personnalisée lorsque vous disposez d'un référentiel qui Amazon Kendra ne fournit pas encore de connecteur de source de données pour. Vous pouvez l'utiliser pour consulter les mêmes statistiques d'historique d'exécution que celles fournies par Amazon Kendra les sources de données, même lorsque vous ne pouvez pas utiliser les sources Amazon Kendra de données pour synchroniser vos référentiels. Utilisez-le pour créer une expérience de surveillance de synchronisation cohérente entre les sources de Amazon Kendra données et les sources personnalisées. Plus précisément, utilisez une source de données personnalisée pour voir les métriques de synchronisation d'un connecteur de source de données que vous avez créé à l'aide du BatchPutDocumentet BatchDeleteDocumentAPIs.

Pour résoudre les problèmes liés à votre connecteur de source de données personnalisé Amazon Kendra, consultez. Dépannage des sources de données

Lorsque vous créez une source de données personnalisée, vous contrôlez totalement la manière dont les documents à indexer sont sélectionnés. Amazon Kendra fournit uniquement des informations métriques que vous pouvez utiliser pour surveiller vos tâches de synchronisation de sources de données. Vous devez créer et exécuter le robot d'exploration qui détermine les documents indexés par votre source de données.

Vous devez spécifier le titre principal de vos documents à l'aide de l'objet Document, _source_uri DocumentAttributeafin de l'avoir DocumentTitle et de l'DocumentURIinclure dans la réponse du Query résultat.

Vous créez un identifiant pour votre source de données personnalisée à l'aide de la console ou du CreateDataSourceAPI. Pour utiliser la console, donnez un nom à votre source de données, éventuellement une description et des balises de ressources. Une fois la source de données créée, un identifiant de source de données est affiché. Copiez cet ID à utiliser lors de la synchronisation de la source de données avec l'index.

Form for specifying data source details, including name, description, and optional tags.

Vous pouvez également créer une source de données personnalisée à l'aide du CreateDataSourceAPI. APIRenvoie un ID à utiliser lors de la synchronisation de la source de données. Lorsque vous utilisez le CreateDataSource API pour créer une source de données personnalisée, vous ne pouvez pas définir Configuration les Schedule paramètres RoleArn ou. Si vous définissez ces paramètres, Amazon Kendra renvoie une ValidationException exception.

Pour utiliser une source de données personnalisée, créez une application chargée de mettre à jour l' Amazon Kendra index. L'application dépend d'un robot d'exploration que vous créez. Le robot lit les documents de votre dépôt et détermine ceux à qui ils doivent être envoyés Amazon Kendra. Votre application doit suivre les étapes suivantes :

  1. Explorez votre référentiel et dressez une liste des documents ajoutés, mis à jour ou supprimés.

  2. Appelez le StartDataSourceSyncJobAPIpour signaler qu'une tâche de synchronisation est en cours de démarrage. Vous fournissez un ID de source de données pour identifier la source de données en cours de synchronisation. Amazon Kendra renvoie un ID d'exécution pour identifier une tâche de synchronisation particulière.

  3. Appelez le BatchDeleteDocumentAPIpour supprimer des documents de l'index. Vous fournissez l'ID de source de données et l'ID d'exécution pour identifier la source de données synchronisée et la tâche à laquelle cette mise à jour est associée.

  4. Appelez le StopDataSourceSyncJobAPIpour signaler la fin de la tâche de synchronisation. Après avoir appelé le StopDataSourceSyncJobAPI, l'ID d'exécution associé n'est plus valide.

  5. Appelez le ListDataSourceSyncJobsAPIavec l'index et les identifiants de source de données pour répertorier les tâches de synchronisation pour la source de données et pour voir les métriques relatives aux tâches de synchronisation.

Une fois que vous avez terminé une tâche de synchronisation, vous pouvez en démarrer une nouvelle. Il peut s'écouler un certain temps avant que tous les documents soumis soient ajoutés à l'index. Utilisez le ListDataSourceSyncJobs API pour voir l'état de la tâche de synchronisation. Si le résultat Status de la tâche de synchronisation est le casSYNCING_INDEXING, certains documents sont toujours en cours d'indexation. Vous pouvez démarrer une nouvelle tâche de synchronisation lorsque le statut de la tâche précédente est FAILED ouSUCCEEDED.

Après avoir appelé le StopDataSourceSyncJobAPI, vous ne pouvez pas utiliser d'identifiant de tâche de synchronisation dans un appel au BatchPutDocument ou BatchDeleteDocumentAPIs. Dans ce cas, tous les documents soumis sont renvoyés dans le message de FailedDocuments réponse duAPI.

Attributs requis

Lorsque vous soumettez un document à Amazon Kendra l'aide du BatchPutDocumentAPI, chaque document nécessite deux attributs pour identifier la source de données et le cycle de synchronisation auxquels il appartient. Vous devez fournir les deux attributs suivants pour mapper correctement les documents de votre source de données personnalisée vers un Amazon Kendra index :

  • _data_source_id: l'identifiant de la source de données. Cela est renvoyé lorsque vous créez la source de données à l'aide de la console ou du CreateDataSourceAPI.

  • _data_source_sync_job_execution_id: identifiant de la synchronisation exécutée. Ceci est renvoyé lorsque vous lancez la synchronisation de l'index avec le StartDataSourceSyncJobAPI.

Les informations suivantes sont JSON requises pour indexer un document à l'aide d'une source de données personnalisée.

{ "Documents": [ { "Attributes": [ { "Key": "_data_source_id", "Value": { "StringValue": "data source identifier" } }, { "Key": "_data_source_sync_job_execution_id", "Value": { "StringValue": "sync job identifier" } } ], "Blob": "document content", "ContentType": "content type", "Id": "document identifier", "Title": "document title" } ], "IndexId": "index identifier", "RoleArn": "IAM role ARN" }

Lorsque vous supprimez un document de l'index à l'aide du BatchDeleteDocumentAPI, vous devez spécifier les deux champs suivants dans le DataSourceSyncJobMetricTarget paramètre :

  • DataSourceId: l'identifiant de la source de données. Cela est renvoyé lorsque vous créez la source de données à l'aide de la console ou du CreateDataSourceAPI.

  • DataSourceSyncJobId: identifiant de la synchronisation exécutée. Ceci est renvoyé lorsque vous lancez la synchronisation de l'index avec le StartDataSourceSyncJobAPI.

Les informations suivantes sont JSON requises pour supprimer un document de l'index à l'aide du BatchDeleteDocumentAPI.

{ "DataSourceSyncJobMetricTarget": { "DataSourceId": "data source identifier", "DataSourceSyncJobId": "sync job identifier" }, "DocumentIdList": [ "document identifier" ], "IndexId": "index identifier" }

Affichage des métriques

Une fois qu'une tâche de synchronisation est terminée, vous pouvez utiliser le DataSourceSyncJobMetricsAPIpour obtenir les métriques associées à la tâche de synchronisation. Utilisez-le pour surveiller les synchronisations de vos sources de données personnalisées.

Si vous soumettez le même document plusieurs fois, soit dans le cadre du BatchPutDocument API BatchDeleteDocumentAPI, soit s'il est soumis à la fois pour ajout et suppression, le document n'est pris en compte qu'une seule fois dans les statistiques.

  • DocumentsAdded: le nombre de documents soumis BatchPutDocument API à l'aide du fichier associé à cette tâche de synchronisation ajoutés à l'index pour la première fois. Si un document est soumis pour ajout plusieurs fois lors d'une synchronisation, il n'est pris en compte qu'une seule fois dans les métriques.

  • DocumentsDeleted: le nombre de documents soumis BatchDeleteDocument API à l'aide du fichier associé à cette tâche de synchronisation supprimés de l'index. Si un document est soumis pour suppression plusieurs fois lors d'une synchronisation, il n'est pris en compte qu'une seule fois dans les statistiques.

  • DocumentsFailed: le nombre de documents associés à cette tâche de synchronisation dont l'indexation a échoué. Il s'agit de documents qui ont été acceptés Amazon Kendra pour indexation mais qui n'ont pas pu être indexés ou supprimés. Si un document n'est pas accepté par Amazon Kendra, son identifiant est renvoyé dans la propriété de FailedDocuments réponse du BatchPutDocument et BatchDeleteDocumentAPIs.

  • DocumentsModified: le nombre de documents modifiés soumis à l'aide du BatchPutDocument API fichier associé à cette tâche de synchronisation qui ont été modifiés dans l' Amazon Kendra index.

Amazon Kendra émet également des Amazon CloudWatch métriques lors de l'indexation des documents. Pour plus d'informations, consultez la section Surveillance Amazon Kendra avec Amazon CloudWatch.

Amazon Kendra ne renvoie pas la DocumentsScanned métrique pour les sources de données personnalisées. Il émet également les CloudWatch métriques répertoriées dans le document Métriques pour les sources de Amazon Kendra données.

En savoir plus

Pour en savoir plus sur l'intégration Amazon Kendra à votre source de données personnalisée, consultez :