gpt4 book ai didi

java - 如何根据大小拆分 ORC 文件?

转载 作者:可可西里 更新时间:2023-11-01 14:48:28 26 4
gpt4 key购买 nike

我有一个要求,我想将 5GB ORC 文件拆分为 5 个文件,每个文件大小为 1GB。ORC 文件是可拆分的。这是否意味着我们只能逐条分割文件?但我有要求根据大小拆分 orc 文件。例如,将 5GB ORC 文件拆分为 5 个文件,每个文件大小为 1GB。如果可能,请分享示例。

最佳答案

一种常见的方法,考虑到您的文件大小可以是 5GB、100GB、1TB、100TB 等。您可能希望挂载一个指向该文件的 Hive 表并定义一个指向不同目录的另一个表,然后运行一个使用 insert 从一张表插入另一张表Hive 提供的声明。

在脚本的开头,确保您具有以下 Hive 标志:

set hive.merge.mapredfiles=true;
set hive.merge.mapfiles=true;
set hive.merge.smallfiles.avgsize=1073741824;
set hive.merge.size.per.task=1073741824;

这样,每个 reducer 的输出平均值将为 1073741824 Bytes,等于 1GB

如果您只想使用 Java 代码,请使用这些标志:

mapred.max.split.size
mapred.min.split.size

请检查这些,它们非常有用:

关于java - 如何根据大小拆分 ORC 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42581871/

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