bigquery如何获取本地CSV文件的插入作业的jobreference
我有一小段代码将CSV文件发送到bigquery表。 CSV文件位于本地HD上(不在google云存储上) 这里是csharp代码的简化版本(使用bigquery csharp API的2.1.5.0.122版) 问题是,当我收到完成状态时,文件已上载,但数据尚未在目标表中(即:作业仍在运行) 通常,如果可以获得作业的引用(或ID),我应该能够等待作业完成(“完成”),但我找不到在csharp API中获取该引用的方法bigquery如何获取本地CSV文件的插入作业的jobreference,csv,google-bigquery,Csv,Google Bigquery,我有一小段代码将CSV文件发送到bigquery表。 CSV文件位于本地HD上(不在google云存储上) 这里是csharp代码的简化版本(使用bigquery csharp API的2.1.5.0.122版) 问题是,当我收到完成状态时,文件已上载,但数据尚未在目标表中(即:作业仍在运行) 通常,如果可以获得作业的引用(或ID),我应该能够等待作业完成(“完成”),但我找不到在csharp API中获取该引用的方法 BigqueryService bq = someMethodToG
BigqueryService bq = someMethodToGetABigqueryServiceInstance();
JobConfigurationLoad loadJobCfg = new JobConfigurationLoad();
loadJobCfg.SourceFormat = "CSV";
.
.
.
Job job = new Job();
JobConfiguration config = new JobConfiguration();
config.Load = loadJobCfg;
job.Configuration = config;
FileStream fs = new FileStream(@"c:\temp\onecol.csv", FileMode.Open, FileAccess.Read, FileShare.Read);
JobsResource.InsertMediaUpload insert = bq.Jobs.Insert(job, projectId, fs, "application/octet-stream");
var progress = insert.Upload();
// wait for Google.Apis.Upload.UploadStatus.Completed
.
.
是否可以从JobsResource.InsertMediaUpload获取作业引用?
(insert.Body.JobReference为空)
或者是否有其他方法将本地文件上载到bigquery表?我们建议您将自己的作业引用传递给所有加载作业,这样在网络出现故障时,您就可以知道作业的状态。作业引用在项目中必须是唯一的,但创建一个随机数或使用当前时间很容易做到这一点。我们建议所有加载作业都传递自己的作业引用,这样在网络出现故障时,您就可以知道作业的状态。作业引用在项目中必须是唯一的,但创建一个随机数或使用当前时间很容易做到这一点