iconv Linux实用程序效率低下

时间:2017-04-25 19:17:40

标签: mysql mongodb utf-8 etl iconv

我在ETL脚本中使用iconv实用程序将mongo生成的csv文件转换为将字符集转换为utf-8,然后再将它们加载到mysql中。

有时,实用程序会修改一列,同时将csv转换为utf-8

\N|SC|XYZ|false|\N|ABC|XYZ|XXX|123|XYZ|\N|\N|123|123|NC|\N|123||||||false||\N

\N|SC|XYZ|false|\N|ABC|XYZ|XXX|123|XYZ|\N|123|123|NC|\N|123||||||false||\N

用于转换的命令:

iconv -c -f us-ascii -t UTF-8 abc-raw.csv >> abc.csv

正如您在上面的示例中看到的那样,在转换后修剪了一个额外的空列( \ N ),这不是常规行为,它仅在某些天发生。它也不是特定于环境的。它发生在特定夜晚的所有服务器上。如果我回去看原始csv它不包含任何应该被修剪的非UTF-8字符。

任何人都可以解释我有没有办法缓解这个问题,提前谢谢。

还建议我是否有更好的工具将csv转换为UTF-8,然后再将它们加载到mysql中

0 个答案:

没有答案