Google bigquery \\x96在BigQuery中不是有效的UTF-8字符串

Google bigquery \\x96在BigQuery中不是有效的UTF-8字符串,google-bigquery,Google Bigquery,我们看到,在管道分隔的csv文件中使用“-”(破折号)字符时,BigQuery会产生无效的utf-8错误。奇怪的是,这些字符都在一年多以前的文件中,没有改变,而BigQuery已经阅读了好几个月的文件,直到几天前都很好。下面是其中一个错误的示例 Christus Trinity Clinic \\x96 Rheumatology is not a valid UTF-8 string 字符串在原始文件中的外观如下所示: Christus Trinity Clinic – Rheumatolog

我们看到,在管道分隔的csv文件中使用“-”(破折号)字符时,BigQuery会产生无效的utf-8错误。奇怪的是,这些字符都在一年多以前的文件中,没有改变,而BigQuery已经阅读了好几个月的文件,直到几天前都很好。下面是其中一个错误的示例

Christus Trinity Clinic \\x96 Rheumatology is not a valid UTF-8 string
字符串在原始文件中的外观如下所示:

Christus Trinity Clinic – Rheumatology

是否有人知道此问题的修复方法,或者BigQuery是否以可能导致此问题的方式更改了其功能?我知道我可以上传一个已更正的文件,但在这种情况下,这些文件不应该为了审计目的而更改。

从昨天开始,我们看到同样的事情突然发生。
对我来说,解决方案是向loadconfig添加编码类型。
(我使用的是PHP客户端,但您的客户端可能也有此选项)


$loadConfig->encoding('ISO-8859-1')

从8月14日开始,我也有同样的问题。 我正在使用
gsutil
将csv加载到bigquery中

我在加载csv时使用了编码选项,它对我有效

编码:

bq --location=US load --skip_leading_rows=1 --encoding ISO-8859-1 --replace --source_format=CSV gcs.dim_employee
——编码ISO-8859-1

命令行:

bq --location=US load --skip_leading_rows=1 --encoding ISO-8859-1 --replace --source_format=CSV gcs.dim_employee

您如何将这些文件上载到BQ?直接从地面军事系统?主机使用Python客户端?Apache Beam?这些文件存储在Google存储中,由BigQuery作为外部表读取。如果这看起来像一个bug,请在BigQuery问题跟踪器上共享作业ID和文件位置。特别是如果这些文件没有更改,但行为已经更改。自8月13日星期二以来,我们面临着完全相同的问题。显然,这似乎是bq load csv文件行为的改变。我在这里打开了一个新的问题:仅供参考,如果你在google cloud slack上,我打开了一个关于这个的对话。到目前为止,一位用户也提出了同样的问题。