我有一个用例,我们有800000个json文件,每个文件大小为2kb。我们的要求是把这些小文件合并成一个大文件。我们已经尝试在spark中使用重划分和合并来实现这一点。然而,我们并不认为这是有效的,因为这是消耗更多的时间比预期。有没有其他的方法来达到同样的效果?谢谢你的帮助。提前谢谢。
ma8fv8wu1#
hadoop不是您的案例中使用的合适工具。我建议只编写一个小型java或scala程序,将这些文件逐个读取并输出到单个文件。任何与hadoop相关的工具都会给你带来巨大的性能开销(例如pig的初始化大约需要30秒),而独立应用程序将在1-2分钟甚至更短的时间内处理这些800k文件。
1条答案
按热度按时间ma8fv8wu1#
hadoop不是您的案例中使用的合适工具。我建议只编写一个小型java或scala程序,将这些文件逐个读取并输出到单个文件。任何与hadoop相关的工具都会给你带来巨大的性能开销(例如pig的初始化大约需要30秒),而独立应用程序将在1-2分钟甚至更短的时间内处理这些800k文件。