在Bigquery作业提交时,可能会出现“Bigquery作业ID已存在”的错误信息,这通常是因为之前的作业没有正常地完成或被取消。要避免这个问题,可以通过以下方式:
示例代码:
from google.cloud import bigquery import uuid
client = bigquery.Client() query_job = client.query("SELECT * FROM mytable LIMIT 1000")
try: # 生成随机的作业ID job_config = bigquery.QueryJobConfig() job_config.job_id = str(uuid.uuid4())
query_job.result(job_config=job_config)
except Exception as e: print(e)
query_job = client.get_job(job_id=job_id) query_job.done() # 返回True表示作业完成
如果作业没有完成,可以使用以下代码取消作业:
query_job.cancel()
这些方法可以避免“Bigquery作业ID已存在”的错误,确保作业正常提交和运行。