bigquery实用程序的集合
bq-utils的Python项目详细描述
bq utils-bigquery实用程序的集合
目前,此库中包含的实用程序仅限于管理表和视图描述。 把字段描述放在 bigquery ui和这个库上的schema选项卡和查询编辑器窗格可以帮助您上传和复制它们。
安装
pip install bq-utils
Python
在表和视图之间复制描述
fromgoogle.cloudimportbigqueryfrombqutils.bigquery_description_managerimportBigQueryDescriptionManagerbq_client=bigquery.Client()description_manager=BigQueryDescriptionManager(bq_client)source_table_id='s_project.s_dataset.s_table'target_table_id='t_project.t_dataset.t_table'description_manager.copy_field_descriptions(source_table_id,target_table_id)
从csv上传描述
fromgoogle.cloudimportbigqueryfrombqutils.bigquery_description_managerimportBigQueryDescriptionManagerbq_client=bigquery.Client()description_manager=BigQueryDescriptionManager(bq_client)descriptions_csv_path='table_descriptions.csv'target_table_id='t_project.t_dataset.t_table'description_manager.upload_field_descriptions(descriptions_csv_path,target_table_id)
命令行
使用量
usage: __main__.py [-h][--source SOURCE] --target TARGET [--csv_path CSV_PATH][--debug]{desccopy,descupload} Copy or upload field descriptions for BigQuery tables/views positional arguments: {desccopy,descupload} optional arguments: -h, --help show this help message and exit --source SOURCE fully-qualified source table ID --target TARGET fully-qualified target table ID --csv_path CSV_PATH path for the csv file --debug set debug mode on, default is false
在表和视图之间复制描述
python -m bqutils desccopy --source s_project.s_dataset.s_table --target t_project.t_dataset.t_table
从csv上传描述
python -m bqutils descupload --csv_path table_descriptions.csv --target t_project.t_dataset.t_table