Sélectionner vos préférences de cookies

Nous utilisons des cookies essentiels et des outils similaires qui sont nécessaires au fonctionnement de notre site et à la fourniture de nos services. Nous utilisons des cookies de performance pour collecter des statistiques anonymes afin de comprendre comment les clients utilisent notre site et d’apporter des améliorations. Les cookies essentiels ne peuvent pas être désactivés, mais vous pouvez cliquer sur « Personnaliser » ou « Refuser » pour refuser les cookies de performance.

Si vous êtes d’accord, AWS et les tiers approuvés utiliseront également des cookies pour fournir des fonctionnalités utiles au site, mémoriser vos préférences et afficher du contenu pertinent, y compris des publicités pertinentes. Pour accepter ou refuser tous les cookies non essentiels, cliquez sur « Accepter » ou « Refuser ». Pour effectuer des choix plus détaillés, cliquez sur « Personnaliser ».

BatchGetItem

Mode de mise au point
BatchGetItem - AWS AppSync GraphQL

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.

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.

L'objet de BatchGetItem requête vous permet de demander à la fonction AWS AppSync DynamoDB d'envoyer une BatchGetItem demande à DynamoDB pour récupérer plusieurs éléments, éventuellement sur plusieurs tables. Pour cet objet de demande, vous devez spécifier les éléments suivants :

  • Les noms de tables à partir desquels récupérer les éléments

  • Les clés des éléments à récupérer dans chaque table

Les limites BatchGetItem DynamoDB s'appliquent et aucune expression de condition ne peut être fournie.

La structure de l'objet de BatchGetItem requête est la suivante :

type DynamoDBBatchGetItemRequest = { operation: 'BatchGetItem'; tables: { [tableName: string]: { keys: { [key: string]: any }[]; consistentRead?: boolean; projection?: { expression: string; expressionNames?: { [key: string]: string }; }; }; }; };

Les champs sont définis comme suit :

BatchGetItem champs

operation

L'opération DynamoDB à effectuer. Pour que vous puissiez effectuer l'opération DynamoDB BatchGetItem, ce champ doit être défini sur BatchGetItem. Cette valeur est obligatoire.

tables

Les tables DynamoDB à partir desquelles récupérer les éléments. La valeur est une carte où les noms de table sont spécifiés en tant que clés de la carte. Vous devez fournir au moins une table. Cette valeur tables est obligatoire.

keys

Liste des clés DynamoDB représentant la clé primaire des éléments à récupérer. Les éléments DynamoDB peuvent avoir une seule clé de hachage ou une clé de hachage et une clé de tri, selon la structure de la table. Pour plus d'informations sur la façon de spécifier une « valeur saisie », voir Système de types (mappage des demandes).

consistentRead

S'il faut utiliser une lecture cohérente lors de l'exécution d'une GetItemopération. Cette valeur est facultative et est définie comme faux par défaut.

projection

Projection utilisée pour spécifier les attributs à renvoyer par l'opération DynamoDB. Pour plus d'informations sur les projections, voir Projections. Ce champ est facultatif.

BatchGetItem liste des champs

operation

L'opération DynamoDB à effectuer. Pour que vous puissiez effectuer l'opération DynamoDB BatchGetItem, ce champ doit être défini sur BatchGetItem. Cette valeur est obligatoire.

tables

Les tables DynamoDB à partir desquelles récupérer les éléments. La valeur est une carte où les noms de table sont spécifiés en tant que clés de la carte. Vous devez fournir au moins une table. Cette valeur tables est obligatoire.

keys

Liste des clés DynamoDB représentant la clé primaire des éléments à récupérer. Les éléments DynamoDB peuvent avoir une seule clé de hachage ou une clé de hachage et une clé de tri, selon la structure de la table. Pour plus d'informations sur la façon de spécifier une « valeur saisie », voir Système de types (mappage des demandes).

consistentRead

S'il faut utiliser une lecture cohérente lors de l'exécution d'une GetItemopération. Cette valeur est facultative et est définie comme faux par défaut.

projection

Projection utilisée pour spécifier les attributs à renvoyer par l'opération DynamoDB. Pour plus d'informations sur les projections, voir Projections. Ce champ est facultatif.

Objets à mémoriser :

  • Si un élément n'a pas été récupéré à partir de la table, un élément null s'affiche dans le bloc de données pour cette table.

  • Les résultats d'invocation sont triés par table, en fonction de l'ordre dans lequel ils ont été fournis dans l'objet de demande.

  • Chaque Get commande contenue dans a BatchGetItem est atomique, mais un lot peut être partiellement traité. Si un lot est traité partiellement en raison d'une erreur, les clés non traitées sont renvoyées dans le cadre du résultat de l'appel dans le bloc unprocessedKeys.

  • BatchGetItem est limité à 100 clés.

Pour l'exemple de gestionnaire de demandes de fonction suivant :

import { util } from '@aws-appsync/utils'; export function request(ctx) { const { authorId, postId } = ctx.args; return { operation: 'BatchGetItem', tables: { authors: [util.dynamodb.toMapValues({ authorId })], posts: [util.dynamodb.toMapValues({ authorId, postId })], }, }; }

Le résultat de l'appel disponible dans ctx.result est le suivant :

{ "data": { "authors": [null], "posts": [ // Was retrieved { "authorId": "a1", "postId": "p2", "postTitle": "title", "postDescription": "description", } ] }, "unprocessedKeys": { "authors": [ // This item was not processed due to an error { "authorId": "a1" } ], "posts": [] } }

ctx.error contient des détails sur l'erreur. La présence des données clés, UnprocessedKeys, et de chaque clé de table fournie dans le résultat de l'objet de demande de fonction est garantie dans le résultat de l'appel. Les éléments ayant été supprimés apparaissent dans le bloc de données. Les éléments qui n'ont pas été traités sont marqués comme null dans le bloc de données et sont placés dans le bloc unprocessedKeys.

Sur cette page

Rubrique suivante :

BatchDeleteItem

Rubrique précédente :

Sync
ConfidentialitéConditions d'utilisation du sitePréférences de cookies
© 2025, Amazon Web Services, Inc. ou ses affiliés. Tous droits réservés.