首页 > 解决方案 > Spanner 到 CSV 数据流

问题描述

我正在尝试将表从扳手复制到大查询。我创建了两个数据流。一种从扳手复制到文本文件,另一种将文本文件导入bigquery。

表有一个以 JSON 字符串作为值的列。在从文本文件导入到 bigquery 时运行数据流作业时会出现问题。作业抛出以下错误:

INVALD JSON: :1:38 预期 eof 但发现,“602 ...

无论如何我可以在复制时排除此列,或者我可以以任何方式复制 JSON 对象吗?我尝试在架构文件中排除此列,但没有帮助。

谢谢!

标签: google-cloud-platformgoogle-bigquerygoogle-cloud-dataflowgoogle-cloud-spanner

解决方案


查看https://cloud.google.com/dataflow/docs/guides/templates/provided-batch#cloud-spanner-to-cloud-storage-text有 BigQuery 导入作业的选项允许跳过列,提取时会跳过列的 Cloud Spanner 选项。

我认为你最好的办法是编写一个自定义处理器来删除列,类似于使用数据流清理 CSV 文件中的数据

它更复杂,但您也可以尝试 DataPrep:http://cloud/dataprep/docs/html/Drop-Transform_57344635。应该可以将 DataPrep 作业作为 DataFlow 模板运行。


推荐阅读