簡體   English   中英

如何在 bigquery 中獲取計划查詢的名稱

[英]How to get names of scheduled queries in bigquery

使用 python 客戶端連接 bigquery,我們如何獲取該項目中存在的所有計划查詢的名稱?

我嘗試跟進此鏈接 - https://cloud.google.com/bigquery/docs/reference/datatransfer/libraries

但是沒有關於預定查詢名稱的信息。

要使用Python BigQuery Client列出項目的所有計划查詢:

def get_scheduled_queries_configs():
    from google.cloud import bigquery_datatransfer

    transfer_client = bigquery_datatransfer.DataTransferServiceClient()

    project_id = "{project_id}"
    parent = transfer_client.common_location_path(project=project_id, location='EU')

    request = bigquery_datatransfer.ListTransferConfigsRequest(
        parent=parent,
        data_source_ids=['scheduled_query']
    )

    configs = transfer_client.list_transfer_configs(request=request)
    print("Got the following configs:")
    for config in configs:
        print(f"\tID: {config.name}, Schedule: {config.schedule}")
        print(f"\tDisplay name: {config.display_name}")

        config_name = config.name
        config_schedule = config.schedule
        config_display_name = config.display_name

    return configs


if __name__ == '__main__':
    scheduled_queries_configs = get_scheduled_queries_configs()

一些解釋:

  • 此代碼僅通過ListTransferConfigsRequest object 檢索計划查詢的transfer configs 。在本示例中,該請求采用包含項目和位置EU的父參數。 該請求還采用帶有scheduled_query值的data_source_ids參數
  • 該位置很重要,因為如果您的預定查詢在美國而您在歐盟執行請求,則結果將為空
  • config.display_name允許檢索計划查詢的名稱

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM