gpt4 book ai didi

hadoop - 使用 lazy simple serde hive 替换引号

转载 作者:可可西里 更新时间:2023-11-01 17:00:03 28 4
gpt4 key购买 nike

您好,我正在处理许多在数据中包含引号的文件,如下所示。

“ID”|“学生”|“年级”“123”|“约翰”|“9.7”“132”|“约翰尼”|“8.7”“143”|“罗尼”|“8.17”

我想从数据中删除引号,你能告诉我怎么做吗?如果完全使用任何内置的 serdes 将会有所帮助。因为我正在处理很多这样的文件。

最佳答案

将此数据原样加载到临时配置单元表中。然后在插入表时使用 regex_replace() 函数。

步骤:

  1. 将数据加载到具有类似架构的临时表中。
  2. 使用 regex_replace() 将覆盖插入最终表。

    insert overwrite table select    regexp_replace(COLUMN_NAME_1,"\"",""),regexp_replace(COLUMN_NAME_2,"\"","") from temp_hive_table;

更新:

对于许多文件。

  1. 将临时表定义为外部表。
  2. 将所有源文件复制到此 hdfs 路径。
  3. 使用 regex_replace() 将覆盖插入到所需的表中。

希望这种方法有所帮助。

关于hadoop - 使用 lazy simple serde hive 替换引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25399570/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com