Bulk Insert in Amplify Datastore



我有25000个批量数据插入数据存储。目前我可以通过迭代来实现。但是需要更多的时间,有时浏览器会崩溃。

const savePosts = async (posts) => {
for (let post of posts) {
try {
await DataStore.save(new Post(post));
} catch (err) {
console.error(err);
}
}
};

我想在单个调用中进行批量插入。我怎么能做到呢?你能建议一个合适的方法吗?

你应该试试promise . allsettle

const savePosts = async (posts) => {
let batchOperations = [];
for (let post of posts) {
batchOperations.push(DataStore.save(new Post(post)))
}
const resultArray = await Promise.allSettled(batchOperations);
for (let result of resultArray) {
if (result.status === 'rejected') {
console.log(result.reason);
}
}
};

最新更新