1
當我們處理查詢/加載作業時,我們有時會遇到SocketReadTimeOut,建議使用in this book
我們希望自己設置作業ID,這樣我們就可以在這種情況下檢查作業狀態,並確保沒有提交重複作業來使我們的數據無效。但它不起作用,因爲每次BigQuery會生成一個新的工作id。例如,如下圖所示:Bigquery:爲什麼設置job id不起作用?
...
job.setConfiguration(config);
job.setId("job_wRGTy7WaCKKcTdlE-nDWGDTZVI4");
Bigquery.Jobs.Insert insert = sBIGQUERY.jobs().insert(mProjectId, job,content);
JobReference jobRef = insert.execute().getJobReference();
System.out.println(jobRef.getJobId());
從最後一行打印輸出不是 「job_wRGTy7WaCKKcTdlE-nDWGDTZVI4」,而是 「job_CnuEOr4IEKHjLls-U1UDSBS0K-4」。爲什麼?我如何正確設置作業ID?
但是在提交之前,我實際上從job.getJobReference() – foxwendy 2014-09-18 18:18:39
中得到null。我嘗試jobRef =新的JobReference(),jobRef.setJobId(..),job.setJobReference(jobRef),然後提交該作業,它的工作原理。 – foxwendy 2014-09-18 19:10:55