我用Apache Beam管道(用Java编写)编写了一个.jar文件,我想运行谷歌数据流。我把它加载到一个桶中。当我进入数据流UI时,只有一个选项:从模板创建作业。但是我不能在那里使用我的.jar文件。如何让我的管道“进入”数据流?
请按照以下步骤操作
mvn archetype:generate \
-DarchetypeGroupId=org.apache.beam \
-DarchetypeArtifactId=beam-sdks-java-maven-archetypes-examples \
-DarchetypeVersion=2.16.0 \
-DgroupId=org.example \
-DartifactId=word-count-beam \
-Dversion="0.1" \
-Dpackage=org.apache.beam.examples \
-DinteractiveMode=false
运行该命令后,您应该会在当前目录下看到一个名为word-count t-beb的新目录。word-count t-beb包含一个简单的pom. xml
要使用DataflowRunner运行作业,您需要执行以下命令
mvn -Pdataflow-runner compile exec:java \
-Dexec.mainClass=org.apache.beam.examples.WordCount \
-Dexec.args="--project=<PROJECT_ID> \
--stagingLocation=gs://<STORAGE_BUCKET>/staging/ \
--output=gs://<STORAGE_BUCKET>/output \
--runner=DataflowRunner"
请参阅此链接,了解如何运行基于Java云数据流-https://cloud.google.com/dataflow/docs/quickstarts/quickstart-java-maven