2012-12-30 7 views
0

A la lecture sur AWS, il apparaît que DynamoDB UpdateItem peut ajouter un attribut à un élément existant.DynamoDB & UpdateItem

Ainsi, par exemple, si j'ai un élément - clé primaire: UserID ce qui a eu quelques attributs comme membre : 1 membre : 2 membre: 3

pourrais-je ajouter membre: 4?

* Le membre clé de l'attribut doit-il être unique? Si oui, y a-t-il un moyen de rendre cet élément unique lorsque le contenu de l'élément est juste une liste de numéros de membres (leurs amis sur le système)?

thx

Répondre

1

Oui, DynamoDB prend en charge String, Number et ensemble binaire comme attribut.

http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DataModel.html#DataModelDataTypes:

String, Number et binaire Définit

Amazon DynamoDB prend également en charge les combinaisons de jeu, jeux de cordes et binaire ensembles. Les attributs à valeurs multiples tels que l'attribut Authors dans un article de livre et l'attribut Color d'un article de produit sont des exemples d'attributs de type d'ensemble de chaînes . Notez que, comme il s'agit d'un ensemble, les valeurs de l'ensemble doivent être uniques à . Les ensembles d'attributs ne sont pas commandés. l'ordre des valeurs renvoyé dans un ensemble n'est pas conservé. Notez qu'Amazon DynamoDB ne prend pas en charge les ensembles vides.

1

Vous pouvez ajouter de nouveaux attributs autant que vous le souhaitez.

Vous devriez préférer utiliser le type d'attribut "Number Set" pour stocker les identifiants de membres d'amis plutôt que d'ajouter de nouveaux attr pour chaque ami.

Mais ne pas oublier la limitation

Il n'y a pas de limite explicite sur le nombre d'attributs associés à un élément individuel, mais la taille globale d'un élément, y compris tous les noms d'attributs et des valeurs d'attribut, est 64KB.

1

Dans Dynamodb, la clé primaire est appelée "clé de hachage". C'est unique. Nous devons définir en créant une table, quelles sont les clés de hachage (un seul). Dites dans ce cas

La clé de hachage est l'ID utilisateur. L'avantage de Dynamodb est que nous pouvons ajouter n'importe quel nombre d'attributs aux attributs existants. Exemple pour UserId 1 nous avons member1 member2 member3 Ensuite, pour l'utilisateur ID 2, nous pouvons avoir membre, member2, member3, member4, .... Nous n'avons pas besoin de créer une nouvelle colonne ou attribut au moment de la création de la table dans Dynamo-db pour les attributs à mettre à jour.