Выполнение шаблона из App Engine с использованием Java

Мне нужно запустить шаблон задания потока данных из App Engine за фиксированный интервал времени, чтобы сделать интервал исправления. Я использовал задание cron, но у меня нет идеи, как запустить шаблон на языке Java. Мне нужен приведенный ниже код в форме Java.

import datetime
import logging
import os

from google.appengine.ext import ndb
import webapp2

    from googleapiclient.discovery import build
    from oauth2client.client import GoogleCredentials



    class LaunchJob(webapp2.RequestHandler):

        credentials = GoogleCredentials.get_application_default()
        service = build('dataflow', 'v1b3', credentials=credentials)

        # Set the following variables to your values.
        JOBNAME = 'kiss-fn-dataflow-job'
        PROJECT = 'testing1-18001111'
        BUCKET = 'kiss-bucket'
        TEMPLATE = 'Test1'

        GCSPATH="gs://{bucket}/templates/{template}".format(bucket=BUCKET, template=TEMPLATE),
        BODY = {
            "jobName": "{jobname}".format(jobname=JOBNAME),
            "parameters": {
                "inputFile" : "gs://{bucket}/input/my_input.txt",
                "outputFile": "gs://{bucket}/output/my_output".format(bucket=BUCKET)
             },
             "environment": {
                "tempLocation": "gs://{bucket}/temp".format(bucket=BUCKET),
                "zone": "us-central1-f"
             }
        }

        request = service.projects().templates().launch(projectId=PROJECT, gcsPath=GCSPATH, body=BODY)
        response = request.execute()


    app = webapp2.WSGIApplication([
        ('/', LaunchJob),
    ], debug=True)

Вышеприведенная программа работает отлично, но для развертывания отдельного приложения Многие зависимости в Python сделаны, и некоторые функции недоступны в соответствии с требованием, чтобы мне нужно было изменить программу App Engine на Java. Так что я могу использовать Apache Beam в моем приложении.

0 ответов

Другие вопросы по тегам