Collection: projects.locations.jobs

Resource: Job

Defines a job to be run by the Cloud Dataflow service.

JSON representation
{
  "id": string,
  "projectId": string,
  "name": string,
  "type": enum(JobType),
  "environment": {
    object(Environment)
  },
  "steps": [
    {
      object(Step)
    }
  ],
  "currentState": enum(JobState),
  "currentStateTime": string,
  "requestedState": enum(JobState),
  "executionInfo": {
    object(JobExecutionInfo)
  },
  "createTime": string,
  "replaceJobId": string,
  "transformNameMapping": {
    string: string,
    ...
  },
  "clientRequestId": string,
  "replacedByJobId": string,
  "tempFiles": [
    string
  ],
  "labels": {
    string: string,
    ...
  },
  "location": string,
  "pipelineDescription": {
    object(PipelineDescription)
  },
  "stageStates": [
    {
      object(ExecutionStageState)
    }
  ],
}
Fields
id

string

The unique ID of this job.

This field is set by the Cloud Dataflow service when the Job is created, and is immutable for the life of the job.

projectId

string

The ID of the Cloud Platform project that the job belongs to.

name

string

The user-specified Cloud Dataflow job name.

Only one Job with a given name may exist in a project at any given time. If a caller attempts to create a Job with the same name as an already-existing Job, the attempt returns the existing Job.

The name must match the regular expression [a-z]([-a-z0-9]{0,38}[a-z0-9])?

type

enum(JobType)

The type of Cloud Dataflow job.

environment

object(Environment)

The environment for the job.

steps[]

object(Step)

The top-level steps that constitute the entire job.

currentState

enum(JobState)

The current state of the job.

Jobs are created in the JOB_STATE_STOPPED state unless otherwise specified.

A job in the JOB_STATE_RUNNING state may asynchronously enter a terminal state. After a job has reached a terminal state, no further state updates may be made.

This field may be mutated by the Cloud Dataflow service; callers cannot mutate it.

currentStateTime

string (Timestamp format)

The timestamp associated with the current state.

A timestamp in RFC3339 UTC "Zulu" format, accurate to nanoseconds. Example: "2014-10-02T15:01:23.045123456Z".

requestedState

enum(JobState)

The job's requested state.

jobs.update may be used to switch between the JOB_STATE_STOPPED and JOB_STATE_RUNNING states, by setting requestedState. jobs.update may also be used to directly set a job's requested state to JOB_STATE_CANCELLED or JOB_STATE_DONE, irrevocably terminating the job if it has not already reached a terminal state.

executionInfo

object(JobExecutionInfo)

Deprecated.

createTime

string (Timestamp format)

The timestamp when the job was initially created. Immutable and set by the Cloud Dataflow service.

A timestamp in RFC3339 UTC "Zulu" format, accurate to nanoseconds. Example: "2014-10-02T15:01:23.045123456Z".

replaceJobId

string

If this job is an update of an existing job, this field is the job ID of the job it replaced.

When sending a CreateJobRequest, you can update a job by specifying it here. The job named here is stopped, and its intermediate state is transferred to this job.

transformNameMapping

map (key: string, value: string)

The map of transform name prefixes of the job to be replaced to the corresponding name prefixes of the new job.

An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

clientRequestId

string

The client's unique identifier of the job, re-used across retried attempts. If this field is set, the service will ensure its uniqueness. The request to create a job will fail if the service has knowledge of a previously submitted job with the same client's ID and job name. The caller may use this field to ensure idempotence of job creation across retried attempts to create a job. By default, the field is empty and, in that case, the service ignores it.

replacedByJobId

string

If another job is an update of this job (and thus, this job is in JOB_STATE_UPDATED), this field contains the ID of that job.

tempFiles[]

string

A set of files the system should be aware of that are used for temporary storage. These temporary files will be removed on job completion. No duplicates are allowed. No file patterns are supported.

The supported files are:

Google Cloud Storage:

storage.googleapis.com/{bucket}/{object} bucket.storage.googleapis.com/{object}

labels

map (key: string, value: string)

User-defined labels for this job.

The labels map can contain no more than 64 entries. Entries of the labels map are UTF8 strings that comply with the following restrictions:

  • Keys must conform to regexp: [\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}_-]{0,62}
  • Values must conform to regexp: [\p{Ll}\p{Lo}\p{N}_-]{0,63}
  • Both keys and values are additionally constrained to be <= 128 bytes in size.

An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

location

string

The location that contains this job.

pipelineDescription

object(PipelineDescription)

Preliminary field: The format of this data may change at any time. A description of the user pipeline and stages through which it is executed. Created by Cloud Dataflow service. Only retrieved with JOB_VIEW_DESCRIPTION or JOB_VIEW_ALL.

stageStates[]

object(ExecutionStageState)

This field may be mutated by the Cloud Dataflow service; callers cannot mutate it.

Methods

create

Creates a Cloud Dataflow job.

get

Gets the state of the specified Cloud Dataflow job.

getMetrics

Request the job status.

list

List the jobs of a project.

update

Updates the state of an existing Cloud Dataflow job.

Monitor your resources on the go

Get the Google Cloud Console app to help you manage your projects.

Send feedback about...

Cloud Dataflow Documentation