sql - 如何将多个文本文件合并到一个Hive表中

标签 sql hadoop hive

我目前正在尝试编写一个Hive脚本以采用目录路径,并生成将路径中所有不同文件组合在一起的Hive表。我已经找到了如何加载文件,因为我知道它们的直接路径,但是如何在不知道所有文件路径的情况下执行此操作?

如果我知道给定目录/ combine的路径,这就是我要怎么做:

LOAD DATA INPATH '/combine/file1.txt' INTO TABLE tablename;
LOAD DATA INPATH '/combine/file2.txt' INTO TABLE tablename;

但是,如果您不知道文件路径,而仅目录,您将如何获得相同的结果?

最佳答案

只是*符号可以将e目录下的所有文件加载到表中。

LOAD DATA INPATH '/combine/*' INTO TABLE tablename;

关于sql - 如何将多个文本文件合并到一个Hive表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50054046/

相关文章:

mysql - mysql表中缺少数据

php - 根据另一个字段使一个字段唯一

logging - 如何从我的 map/reduce 应用程序登录?

architecture - 针对大数据问题的可伸缩体系结构解决方案的建议

java - Spark 与 HiveContext - AnalysisException : Could not resolve window function 'first_value'

sql - 'select *' 的默认 SQL 结果排序顺序是什么?

Mysql 使用 join 从两个表中选择总和

hadoop - Map Reduce 的对象序列化

hadoop - 如何强制顺序处理文件内容?

oracle - 不使用 Scoop 将 Oracle 数据存储到 hadoop 层