关于将数据插入外部表,我几乎无需澄清。
我创建了一个外部镶木桌子,它按周指向hadoop位置进行分区,之后我将数据(.csv文件)移动到该位置。
我怀疑是因为表是按周分配的,即使我只是将文件移动到该目录,hive也不会读取而且我必须使用insert命令,相比之下,当我们有一个没有分区的hive表时,将直接从该hadoop路径读取
答案 0 :(得分:1)
您需要考虑CSV中的数据。例如,如果按年划分定时数据,则不会将包含多年值的CSV复制到单个分区中。您需要拆分数据集。
即使我只是将文件移动到该目录,hive也不会读取,我必须使用insert命令
正确。特别是因为它是一个试图读取CSV的镶木地板serde。
为了澄清,如果放在一个存储为文本的表中,Hive 将读取 CSV。
您需要一个单独的表,您可以在其中读取文本文件,然后插入另一个,同时转换文件格式