蜂巢表中仅出现NULL

时间:2018-07-06 06:26:32

标签: hadoop hive

我在蜂巢中创建了表格。 非外部,使表结构与HDFS中的文件相同。

当我将数据从HDFS加载到Hive Metastore中的表时,它已成功加载,但仅包含NULL,而没有实际数据。 我了解Schema on Read概念,但是如何确保文件中存在的任何数据成功加载到表中。

请有人建议如何解决该问题。

谢谢

2 个答案:

答案 0 :(得分:0)

请检查您是否使用正确的语法来创建具有正确数据类型的表。

CREATE TABLE IF NOT EXISTS employee ( eid int, name String,salary String, 
destination String)
COMMENT ‘Employee details’
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ‘\t’
LINES TERMINATED BY ‘\n’

您应检查“字段终止于”和“行终止于”是否正确。 文件和表中的列数应匹配。

如果仍然遇到问题,请提供您的create table语句,并从文件中插入语句和示例数据。

谢谢

答案 1 :(得分:0)

当心空白处。有时您需要检查原始数据是否有空白空间,如果您定义了String以外的数据类型,这将成为问题(转换将失败并返回空值)。一个示例是,当您将列数据类型定义为double时,但是加载的数据包含空格(例如:“ 0.5”),它将产生空值。如果这是问题所在,则可以使用String数据类型的所有列创建新表,然后修剪并将其强制转换为其他数据类型。