В настоящее время я работаю с API-интерфейсом DynamoDB AWS и только что нашел два разных способа сделать, по-видимому, одно и то же, мне было интересно, есть ли какая-либо производительность или преимущество для пользователя, а не другого.Мой текущий сценарий ограничен только таблицей, поэтому я буду манипулировать только этим, не углубляясь в дальнейшие действия.
Есть ли какая-либо выгода от использования этого (что, я думаю, в моем сценарии проще, чем формирование запросакаждый раз, когда я хочу проверить существование ключа, я также могу иметь фиксированный 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