将多个项目写入 DynamoDB table
Write multiple items to DynamoDB table
我有以下词典列表:
datalist = [
{'Business': 'Business A', 'Category': 'IT', 'Title': 'IT Manager'},
{'Business': 'Business A', 'Category': 'Sourcing', 'Title': 'Sourcing Manager'}
]
我想以下列格式上传到 DynamoDB:
table.put_item(Item={
'Business':'Business A would go here',
'Category':'IT would go here',
'Title':'IT Manager would go here'
},
{
'Business':'Business B would go here',
'Category':'Sourcing would go here',
'Title':'Sourcing Manager would go here'
}
)
我试过先将字典列表转换为字典,然后以这种方式访问元素或尝试遍历 Items 参数,但没有成功。任何帮助将不胜感激。
这是我的 DynamoDB 结构,3 列(业务、类别、标题):
{
"Business": {
"S": "Business goes here"
},
"Category": {
"S": "Category goes here"
},
"Title": {
"S": "Title goes here"
}
}
put_item
API 调用允许您只上传一个项目,您试图同时上传两个项目,这是行不通的。
您可以使用 boto3 对多个放置项请求进行批处理,以减少 API 调用的次数。这是改编自 documentation:
的示例
with table.batch_writer() as batch:
for item in datalist:
batch.put_item(
Item=item
)
这将在后台自动创建批写入。
我有以下词典列表:
datalist = [
{'Business': 'Business A', 'Category': 'IT', 'Title': 'IT Manager'},
{'Business': 'Business A', 'Category': 'Sourcing', 'Title': 'Sourcing Manager'}
]
我想以下列格式上传到 DynamoDB:
table.put_item(Item={
'Business':'Business A would go here',
'Category':'IT would go here',
'Title':'IT Manager would go here'
},
{
'Business':'Business B would go here',
'Category':'Sourcing would go here',
'Title':'Sourcing Manager would go here'
}
)
我试过先将字典列表转换为字典,然后以这种方式访问元素或尝试遍历 Items 参数,但没有成功。任何帮助将不胜感激。
这是我的 DynamoDB 结构,3 列(业务、类别、标题):
{
"Business": {
"S": "Business goes here"
},
"Category": {
"S": "Category goes here"
},
"Title": {
"S": "Title goes here"
}
}
put_item
API 调用允许您只上传一个项目,您试图同时上传两个项目,这是行不通的。
您可以使用 boto3 对多个放置项请求进行批处理,以减少 API 调用的次数。这是改编自 documentation:
的示例with table.batch_writer() as batch:
for item in datalist:
batch.put_item(
Item=item
)
这将在后台自动创建批写入。