【问题标题】:How do I restructure a json in YAML?如何在 YAML 中重构 json?
【发布时间】:2022-08-17 02:55:57
【问题描述】:

我想使用 Google Workflows(YAML 格式)将数据从 API 发送到 BigQuery 表。 但我要发送到 BigQuery 表的 API 响应与“insertAll”BigQuery 连接器功能不匹配。

main:
   params: [input]
   steps:
   - retrieveMatomoData:
       call: http.get
       args:
           url: https://.....
       result: matomoData
 
   - insertAll:
           call: googleapis.bigquery.v2.tabledata.insertAll
           args:
               datasetId: myDatasetId
               projectId: myProjectId
               tableId: myTableId
               body:
               \"rows\": [
           {
        json: should be the full \"matomoData\" response
       }
]

我使用的 API 的响应结构是:

{
 \"body\": [
    {
    …
    },
    {
    …
    }
]

(这是一个对应于要插入的几行的数组) 它与在 Bigquery 中插入行的结构不匹配:

\"rows\": [
           {
        json: …
       },
    json: …
]

你知道我该如何处理吗?

    标签: google-bigquery yaml google-workflows


    【解决方案1】:

    虽然 Workflows 语法和标准库可以执行简单的数据提取和转换,但更大的 JSON 转换目前在 Workflows 中可能很笨拙。我建议使用带有 JSON 转换库的云函数。

    【讨论】:

      【解决方案2】:

      我也在尝试执行类似的操作。幸运的是,如何构建包含日期时间/时间戳字段的复杂 JSON 数据,这些字段可以作为参数传递给 googleapis.bigquery.v2.tabledata.insertAll

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-10-30
        • 1970-01-01
        • 2017-09-01
        • 2012-02-19
        • 2020-04-09
        • 2014-07-07
        • 2015-04-25
        • 2016-12-11
        相关资源
        最近更新 更多