我有一个python脚本,它为我要导入到hive的目录中的文件生成模式、drop table和load table命令。然后我可以在ambari中运行这些来导入文件。可以执行多个“create table”命令,但在上载要导入到各自配置单元表的文件时,我一次只能上载一个文件。
有没有一种方法可以将这些命令放在一个文件中并一次执行它们,以便创建所有表并随后将相关文件上载到它们各自的表中?
我也尝试过将文件导入hdfs,目的是使用“hdfs-dfs-copyfromlocal/home/ixroot/documents/importtohdfs/hadoop/hdfs”命令通过linux将它们发送到hive,但是对于“hadoop/hdfs”会出现“no-such directory”等错误。我尝试过使用chmod更改权限,但这些似乎也没有效果。
如果有人能告诉我哪种方法更适合高效地将多个文件导入配置单元中各自的表,我将非常感激。
1条答案
按热度按时间wnavrhmk1#
1) 有没有一种方法可以将这些命令放在一个文件中并一次执行它们,以便创建所有表并随后将相关文件上载到它们各自的表中?
您可以在一个.hql文件中给出所有查询,比如test.hql和run
hive -f test.hql
一次执行所有命令2) “没有这样的目录”等错误
给予
hadoop fs -mkdir -p /hadoop/hdfs
然后键入hadoop fs -copyFromLocal /home/ixroot/Documents/ImportToHDFS /hadoop/hdfs
编辑:获取权限hadoop fs-chmod-r 777/user/ixroot