【问题标题】:How to get BigQuery table expiration date via query / cli / go?如何通过查询/cli/go 获取 BigQuery 表的到期日期?
【发布时间】:2019-12-01 09:52:50
【问题描述】:

我找不到不通过控制台 (https://console.cloud.google.com/) 提取表到期日期的方法。 我们在 BQ 中维护了数千张表,并且我们希望强制使用表到期日期 - 所以唯一的方法是自动收集数据。 这可以通过 query/cli/go/python/perl/whatever 实现吗?

【问题讨论】:

  • @TheFool 控制台不是bq cli(命令行界面)...
  • @TheFool 控制台为“console.cloud.google.com”
  • 所有来自已经收集所有表上数据的程序@TheFool
  • @TheFool 我知道我可以 ssh 到 gcp 领事。但是使用 bq cli 更简单,因为使用一个命令我得到了我需要的信息

标签: go google-cloud-platform google-bigquery


【解决方案1】:

这可以通过查询 INFORMATION_SCHEMA.TABLE_OPTIONS 来完成:

SELECT * FROM `my_project.my_dataset.INFORMATION_SCHEMA.TABLE_OPTIONS`
where option_name='expiration_timestamp'

该值将在option_name 列中。

【讨论】:

    【解决方案2】:

    如果你想从一个数据集中的多个表中提取过期时间,你可以参考这个文档 [1](@EldadT 提供的相同查询),它返回一个数据集中表的目录,带有过期时间选项。

    因此,如果您想在 Python 中创建脚本来获取此查询的结果,您还可以检查客户端 Bigquery 库 [2] 以运行该查询并获取数据集中每个表的到期时间。

    [1]https://cloud.google.com/bigquery/docs/tables#example_1_2

    [2]https://cloud.google.com/bigquery/docs/reference/libraries#client-libraries-usage-python

    【讨论】:

      【解决方案3】:

      您可以使用 BigQuery CLI:

      bq show mydataset.mytable
      

      输出:

      Last modified         Schema         Total Rows   Total Bytes     Expiration      Time Partitioning   Clustered Fields   Labels
      ----------------- ------------------- ------------ ------------- ----------------- ------------------- ------------------ --------
       16 Aug 10:42:13   |- col_1: integer   7            106           21 Aug 10:42:13
                         |- col_2: string
      

      【讨论】:

        猜你喜欢
        • 2018-09-15
        • 1970-01-01
        • 2018-04-07
        • 2019-11-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多