基于Hadoop的自动化

基于Hadoop的自动化,hadoop,mapreduce,cluster-computing,oozie,Hadoop,Mapreduce,Cluster Computing,Oozie,我目前正在为我的项目学习Hadoop。我的项目目标是开发一个系统,可以根据用户输入触发集群中的工具。 这是一个批处理系统。系统应支持顺序和非顺序计算。 由于数据量巨大,我们使用hadoop和mapreduce。 集群中的所有节点都有所有必要的工具,但它将根据输入文件格式使用这些工具 比如说, 如果用户以pdf文件的形式提供输入。该文件将加载到hdfs中。主节点将向集群发送一些信息,以打开用于处理pdf文件的工具。 如果是.jpeg左右,主机将要求群集节点打开不同的工具来处理jpeg文件 这里的工

我目前正在为我的项目学习Hadoop。我的项目目标是开发一个系统,可以根据用户输入触发集群中的工具。 这是一个批处理系统。系统应支持顺序和非顺序计算。 由于数据量巨大,我们使用hadoop和mapreduce。 集群中的所有节点都有所有必要的工具,但它将根据输入文件格式使用这些工具

比如说,

如果用户以pdf文件的形式提供输入。该文件将加载到hdfs中。主节点将向集群发送一些信息,以打开用于处理pdf文件的工具。 如果是.jpeg左右,主机将要求群集节点打开不同的工具来处理jpeg文件

这里的工具是一些用于处理用户提供的文件的通用工具。根据文件格式,应触发不同的工具。这些工具是可以在独立机器上运行的免费下载工具

到目前为止,我们正在手动执行此操作(使用工具a获取文件并对其进行处理,并将输出作为单个机器中工具B的输入)。但目标是使用Hadoop集群实现自动化

我读过工作流工具Oozie,它可以帮助我们安排和触发其他hadoop工具(Hive、Hbase等),但我需要触发非hadoop工具(例如用于处理文本文件、pdf文件、图像的工具)。我可以使用oozie触发非hadoop工具吗?使用hadoop有更好的方法吗

我无法前进,不知道从哪里开始,也不知道需要学习哪些工具


有人能告诉我,如果你有任何想法,我如何才能做到这一点

Oozie是hadoop中自动化作业的完美人选。此工作流计划程序有多种操作,其中一种是shell操作。您可以使用shell脚本来调用所需的任何工具,并在oozie中创建shell操作来调用shell脚本。此shell操作可以有参数,您可以在工作流执行期间传递这些参数。我使用了oozie中的操作来执行shell脚本,但是从shell脚本调用工具完全没有经过测试。如果可以的话,试试看。谢谢