2014-04-01 59 views
1

我試圖將數據從BigQuery的導出到GCS使用曾研發代碼:爲什麼BigQuery導出作業會產生內部錯誤?

logger.log("Exporting BigQuery data for date:" + dayString + "<br/>"); 

JobConfigurationExtract extractConfig = new JobConfigurationExtract(); 
extractConfig.setDestinationFormat("NEWLINE_DELIMITED_JSON"); 
String applicationId = ServerUtils.getApplicationId(); 
String dataFile = "gs://"+applicationId+"_analytics/" + accountName + "-" + dayString + "-*.json"; 
extractConfig.setDestinationUri(dataFile); 

String tableName = dayString.replaceAll("-","_"); 
TableReference bigQuerytableToExtractFrom = new TableReference().setProjectId(BigQueryUtils.PROJECT_NUMBER).setDatasetId(getDatasetName(accountName)).setTableId(tableName); 

extractConfig.setSourceTable(bigQuerytableToExtractFrom); 

JobConfiguration config = new JobConfiguration().setExtract(extractConfig); 
Job job = new Job().setConfiguration(config); 
Job queuedJob = BigqueryUtils.getClient().jobs().insert(BigQueryUtils.PROJECT_NUMBER, job).execute(); 


String jobIdString = queuedJob.getJobReference().getJobId(); 
jobIdString = jobIdString.substring(jobIdString.indexOf(':')+1); 

return jobIdString; 

然而,今天的作業信息總是返回:

今天
{"errorResult":{"message":"Unexpected. Please try again.","reason":"internalError"},"errors":[{"message":"Unexpected. Please try again.","reason":"internalError"}],"state":"DONE"} 

是BigQuery的有問題?如果有的話,是否有預計要修復的ETA?

按奔騰10的建議,這裏有一些失敗的作業ID:job_nGY3gTVibV07Y38PWJRIQ79SxaE,job_lJJBUibG_W42Lrl8Bwux0_RD_yw,

+0

我們如何知道答案? –

+2

請添加失敗的作業ID。 @RobertHarvey有來自Bigquery的支持人員在回顧這些Q&A,他們會回答。 – Pentium10

+0

@ Pentium10:我們拭目以待。 –

回答

4

啊......問題是,你要導出表已經通過流進口寫入。這目前不起作用,因爲我們的導出流水線不知道如何讀取流緩衝區。我提交了一個錯誤。

作爲一種解決方法,如果您複製表格(通過bq cp,通過Web UI),它應該生成一個可導出的表格,但可能會丟失最後幾分鐘的數據。如果你想要一個絕對最新版本的表格,你可以用allowLargeResults和一個目標表格運行一個select *查詢,然後導出它。

相關問題