Hive 蜂巢扩展表

Hive 蜂巢扩展表,hive,Hive,当我们使用 创建外部表员工姓名字符串,工资浮动行格式分隔字段,以“,”位置/emp结尾 在/emp目录中有2个emp文件 因此,当我们从employee运行select*时,它会从文件和显示中获取数据 如果其他文件也有不同类型的记录,而该记录的列与employee表不匹配,那么当我们运行select*from employee时,它将尝试加载所有文件,会发生什么情况 1.能否指定要加载的特定文件名? 2.我们是否可以创建同样位置的其他表 谢谢 Prashant它将加载emp目录中的所有文件,即使

当我们使用

创建外部表员工姓名字符串,工资浮动行格式分隔字段,以“,”位置/emp结尾

在/emp目录中有2个emp文件

因此,当我们从employee运行select*时,它会从文件和显示中获取数据

如果其他文件也有不同类型的记录,而该记录的列与employee表不匹配,那么当我们运行select*from employee时,它将尝试加载所有文件,会发生什么情况

1.能否指定要加载的特定文件名? 2.我们是否可以创建同样位置的其他表

谢谢
Prashant

它将加载emp目录中的所有文件,即使它与表不匹配

第一个问题。您可以使用Regex-serde。如果您的数据与Regex匹配,则将其加载到表中。

其他选项:我指向一些链接。这些链接有一些方法

对于您的第二个问题:是的,我们也可以在相同的位置创建其他表。

以下是您的答案 1.如果文件中的数据与表格式匹配,则配置单元不会抛出错误。它尽可能地读取数据。如果某些列的数据丢失,它将为它们设置NULL

不,我们不能为任何表指定文件名来读取数据。Hiver将考虑表目录下的所有文件。

是的,我们可以创建具有相同位置的其他表