Espressioni di proiezione - Amazon DynamoDB

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Espressioni di proiezione

Per leggere i dati da una tabella, vengono utilizzate operazioni quali GetItem, Query oppure Scan. Amazon DynamoDB restituisce tutti gli attributi dell'elemento per impostazione predefinita. Per ottenerne solo alcuni degli attributi e non tutti, usa un'espressione di proiezione.

Un'espressione di proiezione è una stringa che identifica gli attributi che desideri. Per recuperare un singolo attributo, specificane il nome. Per più attributi, i nomi devono essere separati da una virgola.

Di seguito sono riportati alcuni esempi di espressioni di proiezione basate sull'elemento ProductCatalog da Riferimento agli attributi degli elementi quando si utilizzano espressioni in DynamoDB:

  • Un singolo attributo di primo livello.

    Title

  • Tre attributi di livello superiore DynamoDB recupera l'intero set Color.

    Title, Price, Color

  • Quattro attributi di livello superiore. DynamoDB restituisce l'intero contenuto di RelatedItems e ProductReviews.

    Title, Description, RelatedItems, ProductReviews

Nota

L'espressione di proiezione non ha alcun effetto sul consumo di throughput assegnato. DynamoDB determina le unità di capacità consumate in base alle dimensioni degli elementi, anziché alla quantità di dati restituiti a un'applicazione.

Parole riservate e caratteri speciali

DynamoDB contiene parole riservate e caratteri speciali. DynamoDB consente di utilizzare queste parole riservate e caratteri speciali per i nomi, ma si consiglia di evitare di farlo perché è necessario utilizzare degli alias ogni volta che si utilizzano questi nomi in un'espressione. Per un elenco completo, consulta Parole riservate in DynamoDB.

Dovrai utilizzare i nomi degli attributi di espressione al posto del nome effettivo se:

  • Il nome dell'attributo si trova nell'elenco delle parole riservate in DynamoDB.

  • Il nome dell'attributo non soddisfa il requisito che il primo carattere sia a-z o A-Z e che il secondo carattere (se presente) sia a-ZA-Z, o. 0-9

  • Il nome dell'attributo contiene un # (cancelletto) o: (due punti).

L' AWS CLI esempio seguente mostra come utilizzare un'espressione di proiezione con un'GetItemoperazione. Questa espressione di proiezione recupera un attributo scalare di primo livello (Description), il primo elemento in un elenco (RelatedItems[0]) e un elenco nidificato in una mappa (ProductReviews.FiveStar).

aws dynamodb get-item \ --table-name ProductCatalog \ --key '"Id": { "N": "123" } \ --projection-expression "Description, RelatedItems[0], ProductReviews.FiveStar"

Per questo esempio JSON verrebbe restituito quanto segue.

{ "Item": { "Description": { "S": "123 description" }, "ProductReviews": { "M": { "FiveStar": { "L": [ { "S": "Excellent! Can't recommend it highly enough! Buy it!" }, { "S": "Do yourself a favor and buy this." } ] } } }, "RelatedItems": { "L": [ { "N": "341" } ] } } }