Google cloud platform Dataprep:创建列以转换为大查询时间戳类型

Google cloud platform Dataprep:创建列以转换为大查询时间戳类型,google-cloud-platform,google-cloud-dataprep,Google Cloud Platform,Google Cloud Dataprep,我一直在疯狂地尝试从现有的Datetime列类型创建一个列,该列将“发布”到一个大的查询“timestamp”列。我尝试了Dataprep函数“unixtime”和“unixtimeformat”的每一种排列,但都没有成功:我总是让Dataprep发布到“string”或“datetime”列类型 更新:我的工作流程如下:GCS.csv文件==>Dataprep==>BQ 请帮忙!! 谢谢 解决方案:Trifacta的员工(即CloudDataprep)提供了解决方案。创建一个带有“Timest

我一直在疯狂地尝试从现有的Datetime列类型创建一个列,该列将“发布”到一个大的查询“timestamp”列。我尝试了Dataprep函数“unixtime”和“unixtimeformat”的每一种排列,但都没有成功:我总是让Dataprep发布到“string”或“datetime”列类型

更新:我的工作流程如下:GCS.csv文件==>Dataprep==>BQ

请帮忙!! 谢谢

解决方案:Trifacta的员工(即CloudDataprep)提供了解决方案。创建一个带有“Timestamp”类型列(比如名为“dt”)的BQ表,并使用Dataprep的“Append”发布功能以及源列类型“Datetime”(同名为“dt”)

检查,“时间戳”数据类型不受支持

但是,如果Dataprep中的列是Datetime(timestamp)类型,那么当您写入BigQuery时,它将保持timestamp类型(请参阅)

下面是一个虚拟示例:

  • 将数据集从BigQuery导入具有架构的表

  • 添加配方并运行作业:
  • 将结果导出到GCS并将其加载回BigQuery。
    • “dataformatt_timestamp_col”是字符串类型,但
    • “datetime\u col”可以“发布”到一个大的查询时间戳列

  • 这不是一个理想的解决方案,但有助于我的案例:

  • 创建值为datetime格式的BQ表(
    oldTable
    ),例如名为
    event\u time
  • 通过选择所有数据创建表(
    newTable
    ),并将
    event\u time
    转换为时间戳:

  • 我知道文件上说了什么。你有没有亲自尝试过让这一切成功?如果是,那么请解释。我不知道这是如何回答我的问题的。我需要Dataprep将我的Datetime列之一导出为BQ时间戳列。您好@jldupont,我的观点是Dataprep中的Datetime列“datatime\u col”被发布到BQ中的时间戳列。你能在这里分享一行你的GCS.csv文件吗?要添加到他的解决方案中,这是一个带有具体示例的链接:
    CREATE TABLE
      newTable AS (
      SELECT
        col1,
        col2,
        ...,
        timestamp(event_time) as event_time,
        ...,
        colN
      FROM
        oldTable
      );