【发布时间】:2016-10-02 01:14:13
【问题描述】:
在为 GBQ 中的新表设置到期时间方面需要帮助。
我正在使用以下代码在 gbq 中创建/上传一个新文件作为表格,
def uploadCsvToGbq(self, table_name, jsonSchema, csvFile, delim):
job_data = {
'jobReference': {
'projectId': self.project_id,
'job_id': str(uuid.uuid4())
},
#"expires":str(datetime.now()+timedelta(seconds=60)),
#"expirationTime": 20000,
#"defaultTableExpirationMs":20000,
'configuration': {
'load': {'writeDisposition': 'WRITE_TRUNCATE',
'fieldDelimiter': delim,
'skipLeadingRows': 1,
'sourceFormat': 'CSV',
'schema': {
'fields': jsonSchema
},
'destinationTable': {
'projectId': self.project_id,
'datasetId': self.dataset_id,
'tableId': table_name
}
}
}
}
upload = MediaFileUpload(csvFile,
mimetype='application/octet-stream', chunksize=1048576,
# This enables resumable uploads.
resumable=True)
start = time.time()
job_id = 'job_%d' % start
# Create the job.
return self.bigquery.jobs().insert(projectId=self.project_id,
body=job_data,
media_body=upload).execute()
这是一个完美的代码,可以将该文件作为新表上传到 GBQ,现在我需要设置表的过期时间,我已经尝试设置(已注释)过期、过期时间和 defaultTableExpirationMs,但没有任何效果。
有人知道吗?
【问题讨论】:
标签: python-2.7 api google-bigquery