【问题标题】:Hive: Create table from text file. Handle special characterHive:从文本文件创建表。处理特殊字符
【发布时间】:2018-10-29 14:12:11
【问题描述】:

我有 txt 格式的数据文件,我需要将其加载到配置单元表

我创建了一个表来从这个文件中加载数据,然后用 LOAD 命令插入数据,如下所示

    CREATE TABLE dev.table
    (Date string,
    c1 string,
    c2 string,
    c3 string,
    c4 string,
    c5 string,
    c6 string,
    c7 string,
    c8 string) 
    row format delimited fields terminated by '\t' stored as textfile;

    LOAD DATA LOCAL INPATH 'filepath.txt'  OVERWRITE INTO TABLE dev.table;

数据正在插入到表中,但每列中出现一个特殊字符。以下是样本数据

请帮忙去掉这个特殊字符。

【问题讨论】:

  • 没用。
  • 你用的是什么版本的hive?
  • Hive 1.2.1000.2.6.3.0-235 仅供参考。我无法对系统进行任何管理员更改,因为它位于我们客户的环境中。
  • HIVE-CLI 也会发生同样的事情吗?
  • Hive CLI。好吧,我想出了解决方案。问题在于文件编码。它是 utf-16le 编码的,我将其转换为 utf-8,然后将其加载到表中。感谢您的努力@karma4917

标签: hive hdfs hql hiveql


【解决方案1】:

请检查此查询:

select Date from dev.table limit 10

因为您选择的数据在dev.table

【讨论】:

  • 我只这样做了。我在提出问题时编辑了表格名称。
  • 如果可能,请按顺序向我发送所有查询,我会尝试,因为输出不应该是这样的,否则尝试在创建表 tblproperties(“skip.header.line.count”中使用以下行跳过标题”=“1”)
猜你喜欢
  • 2011-08-31
  • 1970-01-01
  • 1970-01-01
  • 2012-10-09
  • 2010-10-30
  • 2022-07-21
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多