问题
Is it possible to run Apache Pig jobs from within a Java application, without forking an external process?
It seems both Pig and Hadoop are written in Java but don't really offer Java APIs. Rather than relying on shell scripts, I'd rather use these tools form within a Java Spring application.
回答1:
See Spring Hadoop project and its Pig support.
回答2:
It seems there is Java API for Pig.
According to this API, there is a PigRunner class.
With that, you could easily add it to your Spring application, by creating a dedicated Spring bean.
回答3:
From what I've seen document wise and example wise is to you the PigServer class. They have examples of using it here: http://pig.apache.org/docs/r0.8.1/setup.html#Sample+Code
来源:https://stackoverflow.com/questions/9376261/execute-pig-from-within-java-application