gpt4 book ai didi

hadoop - HIVE 中 ALTER TABLE 命令中的 CONCATENATE 如何工作

转载 作者:可可西里 更新时间:2023-11-01 15:49:20 30 4
gpt4 key购买 nike

我想了解 HIVE 中的 ALTER TABLE CONCATENATE 究竟是如何工作的。

我看到了这个链接 How does Hive 'alter table <table name> concatenate' work?但我从这个链接得到的只是对于 ORC 文件,合并发生在 strip 级别。

我正在寻找有关 CONCATENATE 工作原理的详细说明。例如,我最初在 HDFS 中有 500 个小的 ORC 文件。我运行了 Hive ALTER TABLE CONCATENATE 并将文件合并为 27 个更大的文件。随后运行的 CONCATENATE 将文件数量减少到 16 个,最后我得到了两个大文件。(使用版本 Hive 0.12)所以我想了解

  1. CONCATENATE 的具体工作原理是什么?它会查看现有文件的数量和大小吗?拼接后输出ORC文件的编号如何确定?

  2. 使用 Concatenate 是否存在任何已知问题?我们计划在维护窗口中每天运行一次连接

  3. 使用 CTAS 是连接的替代方法吗?哪个更好?请注意,我的要求是在不影响读取性能的情况下减少 ORC 文件(通过 Nifi 摄取)的数量

感谢任何帮助并提前致谢

最佳答案

可以使用以下两个值来控制串联文件的大小:

set mapreduce.input.fileinputformat.split.minsize=268435456;
set hive.exec.orc.default.block.size=268435456;

应根据您的 HDFS/MapR-FS block 大小设置这些值。

关于hadoop - HIVE 中 ALTER TABLE 命令中的 CONCATENATE 如何工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52170452/

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