【问题标题】:Not able to load data from HDFS to Hive in Hadoop无法将数据从 HDFS 加载到 Hadoop 中的 Hive
【发布时间】:2016-01-17 04:25:45
【问题描述】:

我是 hadoop 新手,正处于学习阶段。当我尝试在 hive 中执行以下语句时,empl.txt 正在被移动到垃圾文件夹。

load data inpath '/user/trnkimz/empl.txt' into table empl;

此外,数据没有存储在 empl 表中。 在我的 empl 表中,我有以下列:e-id inte_name String

在我的empl.txt 文件中,我有以下数据:

1,john
2,smith
3,alex

请说明为什么我无法将数据从 HDFS 加载到配置单元表。 提前致谢。

【问题讨论】:

  • - 检查 /user/trnkimz/empl.txt 是否在 HDFS 上,如果它在本地文件系统上,请使用 LOAD LOCAL DATA 。 - 另外,请确保表格具有正确的“行格式分隔”,请查看:cwiki.apache.org/confluence/display/Hive/…

标签: hadoop hive hdfs


【解决方案1】:

首先,您必须检查您的输入文件是本地文件还是 hdfs 文件。

如果它在 local 中意味着您必须使用 LOAD DATA LOCAL INPATH '/home/username/inputfile' 进入表 TABLENAME(这等于 copyFromLocal)

如果它在 HDFS 中意味着你必须使用 LOAD DATA INPATH '/inputfile' 到表 TABLENAME 中(这相当于 hdfs 中的 mv 命令)

【讨论】:

    【解决方案2】:

    我们可以通过 2 种方式将数据加载到配置单元表中

    1) 使用本地数据加载数据表

    hive> LOAD DATA LOCAL INPATH '' OVERWRITE INTO TABLE ;

    2) 使用 HDFS 数据加载数据表

    hive> LOAD DATA INPATH '' OVERWRITE INTO TABLE ;

    【讨论】:

      猜你喜欢
      • 2020-10-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多