REST Resource: projects.locations.workflows

Recurso: MigrationWorkflow

Un flujo de trabajo de migración que especifica qué se debe hacer para una migración de EDW.

Representación JSON
{
  "name": string,
  "displayName": string,
  "tasks": {
    string: {
      object (MigrationTask)
    },
    ...
  },
  "state": enum (State),
  "createTime": string,
  "lastUpdateTime": string
}
Campos
name

string

Solo salida. Inmutable. Identificador. El identificador único del flujo de trabajo de migración. El ID lo genera el servidor.

Ejemplo: projects/123/locations/us/workflows/345

displayName

string

El nombre visible del flujo de trabajo. Se puede configurar para darle a un flujo de trabajo un nombre descriptivo. No se garantiza ni se aplica la exclusividad.

tasks

map (key: string, value: object (MigrationTask))

Las tareas de un flujo de trabajo en un mapa con nombre. El nombre (es decir, la clave) no tiene sentido y es solo una forma conveniente de abordar una tarea específica en un flujo de trabajo.

state

enum (State)

Solo salida. Ese estado del flujo de trabajo.

createTime

string (Timestamp format)

Hora en la que se creó el flujo de trabajo.

lastUpdateTime

string (Timestamp format)

Hora a la que se actualizó el flujo de trabajo por última vez.

MigrationTask

Una sola tarea para una migración que tiene detalles sobre la configuración de la tarea.

Representación JSON
{
  "id": string,
  "type": string,
  "state": enum (State),
  "processingError": {
    object (ErrorInfo)
  },
  "createTime": string,
  "lastUpdateTime": string,
  "resourceErrorDetails": [
    {
      object (ResourceErrorDetail)
    }
  ],

  // Union field task_details can be only one of the following:
  "translationConfigDetails": {
    object (TranslationConfigDetails)
  }
  // End of list of possible types for union field task_details.
}
Campos
id

string

Solo salida. Inmutable. El identificador único de la tarea de migración. El ID lo genera el servidor.

type

string

El tipo de tarea. Debe ser uno de los tipos de tareas compatibles: Translation_Teradata2BQ, Translation_Redshift2BQ, Translation_Bteq2BQ, Translation_Oracle2BQ, Translation_HiveQL2BQ, Translation_SparkSQL2BQ, Translation_Snowflake2BQ, Translation_Netezza2BQ, Translation_AzureSynapse2BQ, Translation_Vertica2BQ, Translation_SQLServer2BQ, Translation_Presto2BQ, Translation_MySQL2BQ, Translation_Postgresql2BQ.

state

enum (State)

Solo salida. El estado actual de la tarea.

processingError

object (ErrorInfo)

Solo salida. Una explicación que se puede propagar cuando la tarea está en estado FAILED.

createTime

string (Timestamp format)

Hora en la que se creó la tarea.

lastUpdateTime

string (Timestamp format)

Hora a la que se actualizó la tarea por última vez.

resourceErrorDetails[]

object (ResourceErrorDetail)

Solo salida. Proporciona detalles sobre los errores y problemas detectados mientras se procesa la tarea. La presencia de detalles de errores no significa que la tarea falló.

Campo de unión task_details. Los detalles de la tarea. task_details puede ser solo uno de los siguientes:
translationConfigDetails

object (TranslationConfigDetails)

Configuración de tareas para la traducción de SQL por lotes/sin conexión de CW.

TranslationConfigDetails

La configuración de traducción para capturar la configuración necesaria para una tarea de traducción y una subtarea.

Representación JSON
{
  "sourceDialect": {
    object (Dialect)
  },
  "targetDialect": {
    object (Dialect)
  },
  "sourceEnv": {
    object (SourceEnv)
  },
  "gcsSourcePath": string,
  "gcsTargetPath": string,
  "nameMappingList": {
    object (ObjectNameMappingList)
  }
  // End of list of possible types for union field output_name_mapping.
}
Campos
sourceDialect

object (Dialect)

Es el dialecto de los archivos de entrada.

targetDialect

object (Dialect)

El dialecto de destino al que el motor traduce la entrada.

sourceEnv

object (SourceEnv)

Los valores del entorno de origen predeterminados para la traducción.

requestSource

string

El indicador para mostrar el iniciador de la solicitud de traducción.

Campo de unión source_location. La ruta de acceso elegida donde se encontrará el origen de los archivos de entrada. source_location puede ser solo uno de los siguientes:
gcsSourcePath

string

La ruta de Cloud Storage para un directorio de archivos que se traducirán en una tarea.

Campo de unión target_location. La ruta de acceso elegida donde se encontrará el destino de los archivos de salida. target_location puede ser solo uno de los siguientes:
gcsTargetPath

string

La ruta de Cloud Storage en la que se vuelven a escribir los archivos de entrada correspondientes.

nameMappingList

object (ObjectNameMappingList)

La asignación de objetos a los nombres de salida deseados en forma de lista.

ObjectNameMappingList

Representa un mapa de asignaciones de nombres mediante una lista de mensajes proto de clave-valor de nombre existente al nombre de salida deseado.

Representación JSON
{
  "nameMap": [
    {
      object (ObjectNameMapping)
    }
  ]
}
Campos
nameMap[]

object (ObjectNameMapping)

Los elementos del mapa de nombres del objeto.

ObjectNameMapping

Representa un par clave-valor de NameMappingKey a NameMappingValue para representar la asignación de nombres de SQL del valor de entrada al resultado deseado.

Representación JSON
{
  "source": {
    object (NameMappingKey)
  },
  "target": {
    object (NameMappingValue)
  }
}
Campos
source

object (NameMappingKey)

El nombre del objeto en la fuente que se asigna.

target

object (NameMappingValue)

El nombre de destino deseado del objeto que se asigna.

NameMappingKey

Los componentes potenciales de una asignación de nombre completo que se asignarán durante la traducción en el almacén de datos de origen.

Representación JSON
{
  "type": enum (Type),
  "database": string,
  "schema": string,
  "relation": string,
  "attribute": string
}
Campos
type

enum (Type)

El tipo de objeto que se asigna.

database

string

El nombre de la base de datos (ID del proyecto de BigQuery equivalente en el almacén de datos de origen).

schema

string

El nombre del esquema (conjunto de datos de BigQuery equivalente en el almacén de datos de origen).

relation

string

El nombre de la relación (tabla de BigQuery o vista equivalente en el almacén de datos de origen).

attribute

string

El nombre del atributo (equivalente a la columna de BigQuery en el almacén de datos de origen).

Tipo

El tipo de objeto que se asigna.

Enums
TYPE_UNSPECIFIED Tipo de asignación de nombre no especificado.
DATABASE El objeto que se asigna es una base de datos.
SCHEMA El objeto que se asigna es un esquema.
RELATION El objeto que se asigna es una relación.
ATTRIBUTE El objeto que se asigna es un atributo.
RELATION_ALIAS El objeto que se asigna es un alias de relación.
ATTRIBUTE_ALIAS El objeto que se asigna es un alias de atributo
FUNCTION El objeto que se asigna es una función.

NameMappingValue

Los componentes potenciales de una asignación de nombre completo que se asignarán durante la traducción en el almacén de datos de destino.

Representación JSON
{
  "database": string,
  "schema": string,
  "relation": string,
  "attribute": string
}
Campos
database

string

El nombre de la base de datos (ID del proyecto de BigQuery equivalente en el almacén de datos de destino).

schema

string

El nombre del esquema (conjunto de datos de BigQuery equivalente en el almacén de datos de destino).

relation

string

El nombre de la relación (tabla de BigQuery o vista equivalente en el almacén de datos de destino).

attribute

string

El nombre del atributo (equivalente a la columna de BigQuery en el almacén de datos de destino).

Dialecto

Las posibles opciones de dialecto para la traducción.

Representación JSON
{

  // Union field dialect_value can be only one of the following:
  "bigqueryDialect": {
    object (BigQueryDialect)
  },
  "hiveqlDialect": {
    object (HiveQLDialect)
  },
  "redshiftDialect": {
    object (RedshiftDialect)
  },
  "teradataDialect": {
    object (TeradataDialect)
  },
  "oracleDialect": {
    object (OracleDialect)
  },
  "sparksqlDialect": {
    object (SparkSQLDialect)
  },
  "snowflakeDialect": {
    object (SnowflakeDialect)
  },
  "netezzaDialect": {
    object (NetezzaDialect)
  },
  "azureSynapseDialect": {
    object (AzureSynapseDialect)
  },
  "verticaDialect": {
    object (VerticaDialect)
  },
  "sqlServerDialect": {
    object (SQLServerDialect)
  },
  "postgresqlDialect": {
    object (PostgresqlDialect)
  },
  "prestoDialect": {
    object (PrestoDialect)
  },
  "mysqlDialect": {
    object (MySQLDialect)
  }
  // End of list of possible types for union field dialect_value.
}
Campos
Campo de unión dialect_value. Las posibles opciones de dialecto que representa este mensaje. dialect_value puede ser solo uno de los siguientes:
bigqueryDialect

object (BigQueryDialect)

El dialecto de BigQuery

hiveqlDialect

object (HiveQLDialect)

El dialecto de HiveQL

redshiftDialect

object (RedshiftDialect)

El dialecto de Redshift

teradataDialect

object (TeradataDialect)

El dialecto de Teradata

oracleDialect

object (OracleDialect)

El dialecto de Oracle

sparksqlDialect

object (SparkSQLDialect)

El dialecto de SparkSQL

snowflakeDialect

object (SnowflakeDialect)

El dialecto de Snowflake

netezzaDialect

object (NetezzaDialect)

El dialecto de Netezza

azureSynapseDialect

object (AzureSynapseDialect)

El dialecto de Azure Synapse

verticaDialect

object (VerticaDialect)

El dialecto de Vertica

sqlServerDialect

object (SQLServerDialect)

El dialecto de SQL Server

postgresqlDialect

object (PostgresqlDialect)

El dialecto de Postgresql

prestoDialect

object (PrestoDialect)

El dialecto de Presto

mysqlDialect

object (MySQLDialect)

El dialecto de MySQL

BigQueryDialect

Este tipo no tiene campos.

Es la definición del dialecto para BigQuery.

HiveQLDialect

Este tipo no tiene campos.

La definición del dialecto de HiveQL.

RedshiftDialect

Este tipo no tiene campos.

La definición del dialecto para Redshift.

TeradataDialect

Es la definición del dialecto para Teradata.

Representación JSON
{
  "mode": enum (Mode)
}
Campos
mode

enum (Mode)

El modo de subdialecto de Teradata que especifica el usuario.

Modo

Las opciones del subdialecto para Teradata.

Enums
MODE_UNSPECIFIED Modo sin especificar.
SQL Modo SQL de Teradata.
BTEQ Modo BTEQ (que incluye SQL).

OracleDialect

Este tipo no tiene campos.

La definición del dialecto para Oracle.

SparkSQLDialect

Este tipo no tiene campos.

La definición del dialecto para SparkSQL.

SnowflakeDialect

Este tipo no tiene campos.

La definición del dialecto para Snowflake.

NetezzaDialect

Este tipo no tiene campos.

La definición del dialecto para Netezza.

AzureSynapseDialect

Este tipo no tiene campos.

La definición del dialecto para Azure Synapse.

VerticaDialect

Este tipo no tiene campos.

Es la definición del dialecto para Vertica.

SQLServerDialect

Este tipo no tiene campos.

Es la definición del dialecto para SQL Server.

PostgresqlDialect

Este tipo no tiene campos.

La definición del dialecto para Postgresql.

PrestoDialect

Este tipo no tiene campos.

La definición del dialecto de Presto.

MySQLDialect

Este tipo no tiene campos.

La definición del dialecto para MySQL.

SourceEnv

Representa los valores del entorno de origen predeterminados para la traducción.

Representación JSON
{
  "defaultDatabase": string,
  "schemaSearchPath": [
    string
  ],
  "metadataStoreDataset": string
}
Campos
defaultDatabase

string

El nombre de la base de datos predeterminada para calificar completamente los objetos SQL cuando falta el nombre de su base de datos.

schemaSearchPath[]

string

La ruta de búsqueda del esquema. Cuando a los objetos SQL les falta el nombre de esquema, el motor de traducción buscará en esta lista para encontrar el valor.

Estado

Estados posibles de una tarea de migración.

Enums
STATE_UNSPECIFIED El estado no se especifica.
PENDING La tarea está esperando la organización.
ORCHESTRATING La tarea se asigna a un organizador.
RUNNING La tarea está en ejecución, es decir, sus subtareas están listas para ejecutarse.
PAUSED Esta tarea está pausada. Las subtareas asignadas pueden continuar, pero no se programarán subtareas nuevas.
SUCCEEDED La tarea finalizó correctamente.
FAILED La tarea no se completó correctamente.

Estado

Estados posibles del flujo de trabajo de migración.

Enums
STATE_UNSPECIFIED El estado del flujo de trabajo no está especificado.
DRAFT El flujo de trabajo está en estado de borrador, es decir, las tareas aún no son aptas para ejecutarse.
RUNNING El flujo de trabajo está en ejecución (es decir, las tareas son aptas para ejecutarse).
PAUSED El flujo de trabajo está pausado. Es posible que las tareas actualmente en curso continúen, pero no se programarán más tareas.
COMPLETED El flujo de trabajo está completo. No debería haber ninguna tarea en un estado no terminal, pero si la hay (p. ej., finalización forzada), no se programarán.

Métodos

create

Crea un flujo de trabajo de migración.

delete

Borra un flujo de trabajo de migración por nombre.

get

Obtiene un flujo de trabajo de migración creado con anterioridad.

list

Enumera el flujo de trabajo de migración creado antes.

start

Inicia un flujo de trabajo de migración creado con anterioridad.