gpt4 book ai didi

amazon-dynamodb - 如何使用 PHP 的 batchWriteItem 将超过 25 个项目写入 DynamoDB 表

转载 作者:行者123 更新时间:2023-12-02 11:17:00 25 4
gpt4 key购买 nike

我正在使用适用于 PHP 3.x 的 AWS 开发工具包

对 BatchWriteItem 的单次调用最多可写入 16 MB 的数据,其中可包含多达 25 个放置或删除请求。要写入的单个项目最大可达 400 KB。

  $result = $dynamodbClient->batchWriteItem([
'RequestItems' => [
$tableName => [
[
'PutRequest' => [
'Item' => [
'Id' => ['N' => '1'],
'AlbumTitle' => [
'S' => 'Somewhat Famous',
],
'Artist' => [
'S' => 'No One You Know',
],
'SongTitle' => [
'S' => 'Call Me Today',
],
],
],
],
],
],
]);

对于单个项目来说,它工作正常。我怎样才能写超过 25 条内容。

最佳答案

要写入超过 25 个项目,您必须重复调用 BatchWriteItem,从集合中添加项目,一次添加 25 个项目。

沿着这些思路(伪代码):

requests = []; // use an array to stage your put item requests
foreach(item in SourceCollection) {
addItem(item, requests); // add this item to the array
if(count(requests) == 25) { // when you have 25 ready..
// result = dynamodbClient->batchWriteItem(...)
requests = []; // clean up the array of put item requests
// handle the failed items from the result object
}
}

确保通过将每个batchWriteItem结果中的失败项目重新添加回请求来处理它们

关于amazon-dynamodb - 如何使用 PHP 的 batchWriteItem 将超过 25 个项目写入 DynamoDB 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43371962/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com