【问题标题】:Using requests or straight DynamoDB object to retrieve items from table?使用请求或直接 DynamoDB 对象从表中检索项目?
【发布时间】:2019-02-13 16:14:42
【问题描述】:

我目前正在使用 DynamoDB AWS API,只是发现了两种不同的方法来做同样的事情,我实际上想知道用户是否有任何性能或好处而不是另一个用户。

我目前的场景仅限于一张桌子,所以我将只操作那张桌子而不会进一步。

使用它有什么好处(我认为在我的场景中,每次我想检查密钥是否存在时都形成一个请求更简单,而且我也可以有一个固定的Table 对象来请求任何时候我需要)...

    AmazonDynamoDB client = AmazonDynamoDBClientBuilder.standard().build();
    DynamoDB dynamoDB = new DynamoDB(client);

    Table table = dynamoDB.getTable("my-table");
    table.getItem("sample");

...用这个?

    AmazonDynamoDB client = AmazonDynamoDBClientBuilder.standard().build();

    HashMap<String, AttributeValue> key = new HashMap<String, AttributeValue>();
    key.put("Artist", new AttributeValue().withS("sample1"));
    key.put("SongTitle", new AttributeValue().withS("sample2"));

    GetItemRequest request = new GetItemRequest()
        .withTableName("my-table")
        .withKey(key);

我从 AWS 网站上的实际示例中获取了代码。

https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Programming.SDKs.Interfaces.LowLevel.html

https://docs.aws.amazon.com/en_en/amazondynamodb/latest/developerguide/JavaDocumentAPIWorkingWithTables.html#JavaDocumentAPIListTables

【问题讨论】:

    标签: amazon-web-services amazon-dynamodb


    【解决方案1】:

    Table 或多或少是 DynamoDB 客户端对象的轻量级包装器。 (您可以通过在 Guthub 上查看其 source code 来了解这一点。)您可以使用您认为使您的代码最具可读性和可维护性的任何一个。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-01-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-02-09
      相关资源
      最近更新 更多