对于存储在hdfs中的一年/ * .csv结构中的一组数据文件,如下所示:
$ hdfs dfs -ls air / 找到21项空气/年= 2000 drwxr-xr-x - hadoop hadoop 0 2019-03-08 01:45 air / year = …
除了标题之外,表定义看起来很好。如果您没有跳过标题,那么标题行将在数据集中返回,如果某些列不是字符串,则标题值将被选为 NULL 秒。要跳过被选中的标题,请在表DDL的末尾添加此标题 tblproperties("skip.header.line.count"="1") - 仅在Hive中支持此属性,请阅读此解决方法: https://stackoverflow.com/a/54542483/2700344
NULL
tblproperties("skip.header.line.count"="1")
除了创建表之外,还需要创建分区。
使用 MSCK [REPAIR] TABLE Air; 命令。
MSCK [REPAIR] TABLE Air;
Amazon Elastic MapReduce(EMR)的Hive版本上的等效命令是: ALTER TABLE Air RECOVER PARTITIONS 。
ALTER TABLE Air RECOVER PARTITIONS
这将添加Hive分区元数据。见这里的手册: 的 恢复分区 强>