Когда использовать Dynamodb.client, DynamodB.resource и DynamodB.Table? - PullRequest
0 голосов
/ 31 января 2019

Я работаю на Dyanamodb, используя Boto3 и Python.Одна из проблем, которую я нахожу, это когда мы должны использовать dynamodb.client, dynamodb.resource и dynamodb.Table?

Ответы [ 2 ]

0 голосов
/ 04 февраля 2019

dynamodb.client обеспечивают низкоуровневый доступ непосредственно к API DynamoDB.Вы можете вызывать только перечисленные здесь API .

Сервис resource для объектов типа dynamodb.resource обеспечивает более объектно-ориентированный способ доступа к ресурсам AWS.DynamoDB - это довольно простой сервис с точки зрения различных видов вещей, которые вы создаете в AWS.(По сути, основным создаваемым вами объектом являются таблицы, в отличие от службы, подобной EC2, где у вас есть много разных типов объектов (экземпляры, группы безопасности, конфигурации запуска и т. Д.).

Объект dynamodb.Table предоставляетупрощенный способ доступа к данным в таблице. Он автоматически упорядочивает и отменяет маршалинг данных из формата DynamoDB, упрощая для вас.

Примеры форматирования Использование данных Dynamodb.Client может выглядеть следующим образом

{
  "id": {
    "S": "a unique id"
  },
  "date": {
    "N": "12345678901234"
  }
}

Принимая во внимание, что при использовании ресурса Table вы получите данные, которые выглядят следующим образом

{
  "id": "a unique id",
  "some": 12345678901234
}

Я рекомендую использовать ресурсы Table, поскольку это упрощает доступ к данным.

0 голосов
/ 31 января 2019

Это три разных способа сделать одно и то же, используя немного другой синтаксис.Выберите тот, который вам больше нравится.

...