【问题标题】:Is it possible to include Table Description in JSON schema file?是否可以在 JSON 模式文件中包含表描述?
【发布时间】:2019-08-09 20:46:27
【问题描述】:

我正在尝试创建 JSON 文件以与 bq -mk 命令一起使用来创建 biqquery 表。表定义包括描述、标签、集群和分区。是否可以在 JSON 文件中包含表描述、聚类、标签和时间分区等参数,或者需要在 JSON 文件之外作为 bq 参数指定的参数?

我在 BQ GUI 中创建了带有 cmets、标签等的表,并将 JSON 模式导出为:

bq show --format=prettyjson [project]:[dataset].sample_table

... 这给了我以下信息:

{
  "clustering": {
    "fields": [
      "f1"
    ]
  },
  "description": "Test Table Description",
  "labels": {
    "subject_area": "test subject area"
  },
  "schema": {
    "fields": [
      {
        "description": "f1_description",
        "mode": "REQUIRED",
        "name": "f1",
        "type": "INTEGER"
      },
      {
        "name": "f2",
        "type": "STRING"
      },
     {
        "name": "f5",
        "type": "DATE"
      }
    ]
  },
  "timePartitioning": {
    "expirationMs": "31622400000",
    "field": "f5",
    "type": "DAY"
  }
}

当我将上面的 JSON 保存到 sample_table_test.json 文件中并尝试创建新表时,例如:

bq mk --schema sample_table_test.json --table [project]:[dataset].sample_table_test

我收到以下错误:

BigQuery error in mk operation: Error in "sample_table_test.json": Table schemas must be specified as JSON lists.

鉴于您可以通过 bq mk 开关指定描述、标签等,我正在尝试做的事情是否可能?

【问题讨论】:

    标签: google-bigquery


    【解决方案1】:

    现在,根据 Google 的文档,在 JSON 中指定此信息是不可能的。

    指定表描述、标签、集群和分区的唯一方法是使用bq mk 命令标志,例如thisthis

    我创建了一个feature request,以便 BigQuery 工程团队评估添加此功能的可能性。 请注意,对于功能请求,没有 ETA 或实施保证。 有关此功能请求的所有通信都将在此处完成。

    其中一部分,您收到该错误是因为您没有上传预期的 JSON,它必须像 this;预期的 JSON 是您使用 bq show 命令获得的 JSON 的子集:schema.fields 数组。在你的情况下,应该是这样的:

       [
          {
            "description": "f1_description",
            "mode": "REQUIRED",
            "name": "f1",
            "type": "INTEGER"
          },
          {
            "name": "f2",
            "type": "STRING"
          },
         {
            "name": "f5",
            "type": "DATE"
          }
       ]
    

    【讨论】:

    • 感谢您的澄清!我希望将来可以将此功能添加到 BigQuery 中。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-18
    • 1970-01-01
    • 2010-12-06
    • 2013-11-29
    • 1970-01-01
    • 2010-11-30
    • 1970-01-01
    相关资源
    最近更新 更多