gpt4 book ai didi

hadoop - Hive插入从Hive CLI可以正常工作,但在终端上失败

转载 作者:行者123 更新时间:2023-12-02 21:40:36 25 4
gpt4 key购买 nike

我目前有以下情况:

我有一个shellscript,它创建两个表,然后用另一个数据填充其中一个。

我的脚本看起来像这样:

    hive -e "CREATE EXTERNAL TABLE table1 ... ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t' LOCATION '/user/input/'"
hive -e "CREATE EXTERNAL TABLE table2 ... PARTITIONED BY ..."
hive -e "WITH data AS (SELECT date, ...) FROM data INSERT OVERWRITE TABLE table2 PARTITION(part_date) SELECT ... date"

然后再一些shellscript从table2中选择某些数据。我使用shellscript是因为在对 table2进行选择之前必须应用一些逻辑。

脚本运行无错误,表已创建, table1中包含数据,但 table2最终为空。出于某种原因,当我使用非常小的测试数据集时它可以工作,但是一旦数据集变得更大(> 1GB), table2就为空。

如果我从Hives CLI手动运行相同的命令,则一切正常,并且 table2中包含预期的数据。

为什么会发生这种情况,我该如何解决?

最佳答案

您的Shell脚本命令必须按顺序执行才能在table2中获取数据。

在您的shell脚本中尝试以下操作:

hive -e "your first query" && 
hive -e "your second query" &&
hive -e "your third query"

这应该一个接一个地执行您的配置单元查询。 (第二个查询等待第一个查询完成,第三个查询同时等待第一个查询和第二个查询)

关于hadoop - Hive插入从Hive CLI可以正常工作,但在终端上失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29096380/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com