gpt4 book ai didi

java - Google App-Engine Java 批量更新

转载 作者:行者123 更新时间:2023-12-02 08:32:47 25 4
gpt4 key购买 nike

我需要上传 .csv 文件并将记录保存在 bigtable 中。我的应用程序成功解析 csv 文件中的 200 条记录并保存到表中。

这是我保存数据的代码。

for (int i=0;i<lines.length -1;i++) //lines hold total records in csv file
{
String line = lines[i];

//The record have 3 columns integer,integer,Text

if(line.length() > 15)
{
int n = line.indexOf(",");

if (n>0)
{
int ID = lInteger.parseInt(ine.substring(0,n));
int n1 = line.indexOf(",", n + 2);

if(n1 > n)
{
int Col1 = Integer.parseInt(line.substring(n + 1, n1));
String Col2 = line.substring(n1 + 1);

myTable uu = new myTable();

uu.setId(ID);
uu.setCol1(MobNo);

Text t = new Text(Col2);
uu.setCol2(t);

PersistenceManager pm = PMF.get().getPersistenceManager();
pm.makePersistent(uu);
pm.close();
}
}
}
}

但是当没有记录增长时,就会出现超时错误。

csv 文件最多可包含 800 条记录。可以在 App-Engine 中执行此操作吗?

(类似于批量更新)

最佳答案

GAE 将您的应用请求限制为 30 秒,并且您无法运行长时间任务。

最好的方法是将此 CSV 分成更小的 block ,然后逐一单独处理它们。如果您只能将其作为一个大文件上传,则可以将其存储为二进制数据,然后使用 Task Queue 进行处理(拆分和解析) (请注意,每个请求也限制为 10 分钟,但您始终可以创建一系列任务)。或者您可以使用后端来处理。

关于java - Google App-Engine Java 批量更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2854948/

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