C# 拒绝BigQuery中的结果

C# 拒绝BigQuery中的结果,c#,google-bigquery,C#,Google Bigquery,我有一个使用作业执行查询的代码。如果查询需要5分钟以上才能完成,我需要拒绝这些结果。有没有办法拒绝查询结果 这是我的代码: while (true) { Job pollJob = s.Jobs.Get(projectId, jobId.JobId).Execute(); elapsedTime = DateTime.Now.Ticks - startTime; if (pollJob.Status.State.Equals("DONE")) return "OK";

我有一个使用作业执行查询的代码。如果查询需要5分钟以上才能完成,我需要拒绝这些结果。有没有办法拒绝查询结果

这是我的代码:

while (true)
{
    Job pollJob = s.Jobs.Get(projectId, jobId.JobId).Execute();
    elapsedTime = DateTime.Now.Ticks - startTime;
    if (pollJob.Status.State.Equals("DONE")) return "OK";
    else if (DateTime.Now > minutes5) {
          //I don't want that the results are append in the table
    }
    Thread.Sleep(10000);
}

BigQuery还不支持显式作业取消,尽管它作为功能请求进行跟踪。请参见

听起来像是将查询结果附加到表中。一种选择是将结果写入另一个临时位置,然后使用append将临时表复制到结果表中。也就是说,如果目标表是dataset.results,则可以将查询结果写入dataset_temp.temp_results。如果创建临时结果的查询足够快地完成,则可以通过复制操作和write_append write处置将其追加到dataset.results表中


临时表有几个选项。您可以每次创建新表,但要指定一个过期时间,以便自动清理这些表。或者,您可以每次使用write_truncate write disposition覆盖它们,这样它们将始终只有一个时间片的数据。

是的,我将把查询结果附加到一个表中。第一个选项听起来不错,但是,您能断言复制操作可以让我获得稳定的响应时间吗?