设置和使用GCP提供的发布到大查询的DataFlow模板

时间:2019-01-09 13:12:49

标签: google-cloud-platform google-cloud-dataflow google-cloud-pubsub

我正在尝试将发布/订阅消息流式传输到具有匹配模式的BigQuery表中。我想使用GCP提供的PubSubToBigQuery模板执行此操作,但是无法成功设置它。

这是我到目前为止尝试过的

  1. 我创建了具有写入GS(useful link)权限的GCE实例

  2. git git clone https://github.com/GoogleCloudPlatform/DataflowTemplates

  3. 克隆GCP源
  4. 按照here的规定运行: mvn compile exec:java -Dexec.mainClass=com.google.cloud.teleport.templates.PubSubToBigQuery...

  5. 该过程创建了在/staging存储桶中创建的所有jar文件。本来可以在/templates存储桶中生成模板信息,但没有。

我在这里想念什么?

1 个答案:

答案 0 :(得分:0)

我试图在项目根目录中执行以下命令:

#!/bin/bash
PROJECT_ID=XXX
BUCKET_NAME=XXX
PIPELINE_FOLDER=gs://YYY/dataflow/pipelines/pubsub-to-bigquery

# Set the runner
RUNNER=DataflowRunner

# Build the template
mvn compile exec:java \
-Dexec.mainClass=com.google.cloud.teleport.templates.PubSubToBigQuery \
-Dexec.cleanupDaemonThreads=false \
-Dexec.args=" \
--project=${PROJECT_ID} \
--stagingLocation=${PIPELINE_FOLDER}/staging \
--tempLocation=${PIPELINE_FOLDER}/temp \
--templateLocation=${PIPELINE_FOLDER}/template \
--runner=${RUNNER}"

它成功生成了一个模板文件:

$gsutil ls -lh gs://YYY/dataflow/pipelines/pubsub-to-bigquery/template
228.33 KiB  2019-01-14T05:54:01Z  gs://YYY/dataflow/pipelines/pubsub-to-bigquery/template
TOTAL: 1 objects, 233805 bytes (228.33 KiB)

能把一些日志贴在你的身边吗?