2024-06-02 05:01:52 发布
网友
我正在尝试映射reduce日志,我想在EMR中处理之前按文件名过滤bucket中的所有日志。另外,有些文件是tar目录,我希望mrjob解压它,然后过滤其中的文件,只解析相关的文件。在
知道如何根据文件名从MrJob过滤bucket s3吗? 我找到了mapper_pre_filter!方法,但它只逐行筛选输入。在
这里有几种可能性。在
在MRjob中运行作业时,可以在命令行中指定要输入的文件。如果您只想运行.json文件,可以通过指定.json来实现,或者如果您想运行以Logs6-24-14开始,以.txt结尾的所有文件,则指定Logs6-24-14.txt
或者,您可以将所需的文件作为数据传递;这涉及到unix管道,而且功能非常强大。
最后,也可能是最灵活的,您可以在MRjob文件中编写python代码,该文件在实际作业之前运行,该文件预处理数据。这样你几乎可以做任何事。它会进入这里的代码:
if __name__ == '__main__': Arbitrary_code_function.run() MRJOB_Jobname.run()
这里有几种可能性。在
在MRjob中运行作业时,可以在命令行中指定要输入的文件。如果您只想运行.json文件,可以通过指定.json来实现,或者如果您想运行以Logs6-24-14开始,以.txt结尾的所有文件,则指定Logs6-24-14.txt
或者,您可以将所需的文件作为数据传递;这涉及到unix管道,而且功能非常强大。
最后,也可能是最灵活的,您可以在MRjob文件中编写python代码,该文件在实际作业之前运行,该文件预处理数据。这样你几乎可以做任何事。它会进入这里的代码:
相关问题 更多 >
编程相关推荐