我正在使用Boto3和Python开发Dyanamodb。我发现的问题之一是我们应该在什么时候使用dynamodb.client、dynamodb.resource和dynamodb.Table
发布于 2019-02-04 21:34:03
dynamodb.client提供了对DynamoDB apis的低级别直接访问。您只能调用here中列出的apis。
像dynamodb.resource这样的服务resource对象提供了一种更面向对象的方式来访问亚马逊网络服务资源。就你在亚马逊网络服务中创建的不同种类的东西而言,DynamoDB是一个相当简单的服务。(基本上,您创建的主要对象是表,而不是像EC2这样的服务,其中您有许多不同类型的对象(实例、安全组、启动配置等)。
dynamodb.Table对象提供了一种访问表中数据的简化方法。它会自动将数据从DynamoDB格式编组和解组为更简单的格式。
使用dynamodb.Client数据的格式示例可能如下所示
{
"id": {
"S": "a unique id"
},
"date": {
"N": "12345678901234"
}
}而使用Table资源,您将获得如下所示的数据
{
"id": "a unique id",
"date": 12345678901234
}我建议使用Table资源,因为它简化了数据访问。
发布于 2019-02-01 02:03:26
它们是做同一件事的三种不同方式,只是语法略有不同。随便选一个你喜欢的。
https://stackoverflow.com/questions/54454691
复制相似问题