【发布时间】:2022-08-18 23:53:54
【问题描述】:
我正在从 bq 获取分页数据,因为数据量很大,需要花费大量时间来处理它们。
while (results.hasNextPage()) {
results = results.getNextPage();
count += results.getValues().spliterator().getExactSizeIfKnown();
results
.getValues()
.forEach(row ->
{
//Some operations.
}
);
logger.info(\"Grouping completed in iteration {}. Progress: {} / {}\", i, count, results.getTotalRows());
i++;
}
我用 visualVm 检查了我的程序,我意识到大部分时间都花在了results.getNextPage 行上,该行正在获取下一页数据。有没有办法让它平行?我的意思是在不同的线程中获取每批数据(在我的情况下是 20K)。我正在使用java客户端com.google.cloud.bigquery
标签: google-bigquery