我需要使用云形成的dynamodb列表

时间:2017-02-24 22:15:10

标签: amazon-dynamodb serverless-framework

我有一个用户表和一个请求表。许多请求一个用户。我想在users表中有一个请求列表。但我不知道如何编写云形成调用来构建它。目前我只有一组扁平的属性:

resources:  
  Resources:
    DynamoDbTable:
      Type: AWS::DynamoDB::Table
      Properties:
        TableName: Employee
        AttributeDefinitions:
          - AttributeName: employeeid
            AttributeType: S
          - AttributeName: name
            AttributeType: S
          - AttributeName: requests
            AttributeType: S
        KeySchema:
          - AttributeName: employeeid
            KeyType: HASH

我希望请求是用户的请求ID列表,而不是字符串值,所以没有S类型,所以我可以遍历它们并调用我想要的那些。如果我的架构没问题,请告诉我。提前致谢。

1 个答案:

答案 0 :(得分:2)

查看以下documentation。请注意,只要您不将该属性用作索引,就不需要定义它。

  

DynamoDB是一个NoSQL数据库,并且是无模式的,这意味着,   除主键属性外,您不需要定义任何属性   表创建时的属性或数据类型。

因此,在您的情况下,serverless.yml只应指定:

resources:  
  Resources:
    DynamoDbTable:
      Type: AWS::DynamoDB::Table
      Properties:
        TableName: Employee
        AttributeDefinitions:
          - AttributeName: employeeid
            AttributeType: S
        KeySchema:
          - AttributeName: employeeid
            KeyType: HASH

在您的代码中,您可以动态地写入包含集合,映射甚至json的表属性。