Importa metadatos con una canalización personalizada

En este documento, se describe cómo importar metadatos de un sistema de terceros al catálogo universal de Dataplex con los métodos de la API de importación de metadatos y tu propia canalización. Los metadatos de Dataplex Universal Catalog constan de entradas y sus aspectos.

Si, en cambio, deseas usar una canalización de orquestación administrada por Google Cloudpara extraer e importar metadatos, te sugerimos que uses una canalización de conectividad administrada. Con una canalización de conectividad administrada, puedes traer tu propio conector que extrae metadatos y genera resultados en un formato que los métodos de la API de importación de metadatos pueden usar como entrada (el archivo de importación de metadatos). Luego, usas Workflows para organizar las tareas de la canalización.

Puedes ejecutar los siguientes tipos de trabajos de importación de metadatos:

  • Sincronización completa de las entradas con importación incremental de sus aspectos. Se admite para entradas personalizadas.
  • Importación incremental solo de aspectos. Se admite para los aspectos que pertenecen a entradas personalizadas y entradas del sistema. En el caso de las entradas personalizadas, puedes modificar tanto los aspectos opcionales como los obligatorios. En el caso de las entradas del sistema, puedes modificar aspectos opcionales.

Pasos de alto nivel

Para importar metadatos con la API de importación de metadatos, sigue estos pasos generales:

  1. Determina el alcance del trabajo.

    También comprenderás cómo Dataplex Universal Catalog aplica la lógica de comparación y el modo de sincronización para las entradas y los aspectos.

  2. Crea uno o más archivos de importación de metadatos que definan los datos que se importarán.

  3. Guarda los archivos de importación de metadatos en un bucket de Cloud Storage.

  4. Ejecuta un trabajo de importación de metadatos.

En los pasos de esta página, se supone que conoces los conceptos de metadatos de Dataplex Universal Catalog, incluidos los grupos de entradas, los tipos de entradas y los tipos de aspectos. Para obtener más información, consulta Acerca de la administración de metadatos en Dataplex Universal Catalog.

Antes de comenzar

Antes de importar metadatos, completa las tareas de esta sección.

Roles obligatorios

Para garantizar que la cuenta de servicio de Dataplex Universal Catalog tenga los permisos necesarios para acceder al bucket de Cloud Storage, pídele a tu administrador que le otorgue a la cuenta de servicio de Dataplex Universal Catalog el rol de IAM de visualizador de objetos de almacenamiento (roles/storage.objectViewer) y el permiso storage.buckets.get en el bucket.

Para obtener los permisos que necesitas para administrar trabajos de importación de metadatos, pídele a tu administrador que te otorgue los siguientes roles de IAM:

Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.

También puedes obtener los permisos necesarios a través de roles personalizados o cualquier otro rol predefinido.

Crea recursos Google Cloud

Prepara los siguientes recursos: Google Cloud

  1. Crea grupos de entrada para las entradas que quieras importar.
  2. Crea tipos de aspecto para los aspectos que deseas importar.
  3. Crea tipos de entrada para las entradas que quieras importar.
  4. Si ejecutas un trabajo de metadatos solo de aspectos, crea entradas para los aspectos que quieras importar.
  5. Crea un bucket de Cloud Storage para almacenar tus archivos de importación de metadatos.

Componentes de un trabajo de importación de metadatos

Cuando importes metadatos, ten en cuenta los siguientes componentes de un trabajo de metadatos:

  • Alcance del trabajo: Son los grupos de entrada, los tipos de entrada y los tipos de aspecto que se incluirán en el trabajo.
  • Modo de sincronización: Indica cómo se actualizan las entradas y los aspectos del trabajo.
  • Archivo de importación de metadatos: Es un archivo que define los valores que se deben establecer para las entradas y los aspectos del trabajo. Puedes proporcionar varios archivos de importación de metadatos en el mismo trabajo de metadatos. Guardas los archivos en Cloud Storage.
  • Lógica de comparación: Indica cómo Dataplex Universal Catalog determina qué entradas y aspectos modificar.

Alcance del trabajo

El alcance del trabajo define los grupos de entradas, los tipos de entradas y los tipos de aspectos que deseas incluir en un trabajo de importación de metadatos. Cuando importas metadatos, modificas las entradas y los aspectos que pertenecen a los recursos dentro del alcance del trabajo.

Para definir el alcance del trabajo, sigue estos lineamientos:

  • Grupos de entradas: Especifica uno o más grupos de entradas para incluir en el trabajo. El trabajo solo modifica las entradas y los aspectos que pertenecen a estos grupos de entradas. Los grupos de entradas y el trabajo deben estar en la misma región.

  • Tipos de entrada: Especifica uno o más tipos de entrada para incluir en el trabajo. El trabajo solo modifica las entradas y los aspectos que pertenecen a estos tipos de entrada. La ubicación de un tipo de entrada debe coincidir con la ubicación del trabajo o el tipo de entrada debe ser global.

  • Tipos de aspectos: Especifica uno o más tipos de aspectos para incluir en el trabajo. El trabajo solo modifica los aspectos que pertenecen a estos tipos de aspectos. La ubicación de un tipo de aspecto debe coincidir con la ubicación del empleo o el tipo de aspecto debe ser global.

El alcance del trabajo debe incluir todos los tipos de entrada y tipos de aspecto que especifiques en el archivo de importación de metadatos.

Especificas el alcance del trabajo cuando creas un trabajo de metadatos.

Modo de sincronización

El modo de sincronización especifica cómo se actualizan las entradas y los aspectos en un trabajo de importación de metadatos. Proporcionas un modo de sincronización para las entradas y los aspectos. Según los recursos que desees importar, se admiten las siguientes combinaciones de modos de sincronización.

Objetivo Modo de sincronización de entrada Modo de sincronización de aspecto Resultados
Importa entradas y sus aspectos FULL INCREMENTAL

Se modifican todas las entradas del alcance del trabajo.

Si una entrada existe en Dataplex Universal Catalog, pero no se incluye en el archivo de importación de metadatos, la entrada se borra cuando ejecutas el trabajo de metadatos.

Un aspecto solo se modifica si el archivo de importación de metadatos incluye una referencia al aspecto en el campo updateMask y el campo aspectKeys. Consulta Estructura de un elemento de importación.

Importar solo aspectos NONE INCREMENTAL

Los aspectos se modifican si forman parte del alcance del trabajo y si el archivo de importación de metadatos incluye una referencia a los aspectos en el campo aspectKeys. Consulta Estructura de un elemento de importación.

No se modifican otros metadatos que pertenecen a las entradas del alcance del trabajo.

Especificas el modo de sincronización cuando creas un trabajo de metadatos.

Archivo de importación de metadatos

El archivo de importación de metadatos es una colección de las entradas y los aspectos que deseas modificar. Define los valores que se establecerán para todos los campos que pertenecen a estas entradas y aspectos. Prepara el archivo antes de ejecutar un trabajo de importación de metadatos.

Se aplican los siguientes lineamientos generales:

  • Puedes proporcionar varios archivos de importación de metadatos en el mismo trabajo de metadatos.
  • Cuando ejecutas un trabajo de metadatos de sincronización de entradas completa, las entradas que proporcionas en el archivo reemplazan por completo todas las entradas existentes para los recursos que se encuentran dentro del alcance del trabajo. Esto significa que debes incluir valores para todas las entradas de un trabajo, no solo los valores que deseas agregar o actualizar. Para obtener una lista de las entradas actuales de tu proyecto y usarla como punto de partida, usa el método de la API de entries.list.

  • Debes proporcionar un archivo de importación de metadatos como parte de un trabajo de metadatos. Si deseas borrar todos los datos existentes de las entradas que se encuentran dentro del alcance del trabajo, proporciona un archivo de importación de metadatos vacío.

  • Todas las entradas y los aspectos que incluyas en el archivo deben pertenecer a los grupos de entradas, los tipos de entrada y los tipos de aspecto que definas en el alcance del trabajo.

Usa los lineamientos detallados de las siguientes secciones para crear un archivo de importación de metadatos.

Estructura del archivo

Cada línea del archivo de importación de metadatos contiene un objeto JSON que corresponde a un elemento de importación. Un elemento de importación es un objeto que describe los valores que se modificarán para una entrada y sus aspectos adjuntos.

Puedes proporcionar varios elementos de importación en un solo archivo de importación de metadatos. Sin embargo, no proporciones el mismo elemento de importación más de una vez en un trabajo de metadatos. Usa un carácter de salto de línea (0x0a) para separar cada elemento de importación.

Un archivo de importación de metadatos con un carácter de nueva línea entre cada elemento de importación se ve como el siguiente ejemplo:

{ "entry": { "name": "entry 1", #Information about entry 1 }
{ "entry": { "name": "entry 2", #Information about entry 2 }

Estructura de un elemento de importación

Cada elemento de importación del archivo de importación de metadatos puede incluir los siguientes campos (consulta ImportItem). El siguiente ejemplo tiene el formato con saltos de línea para facilitar la lectura, pero, cuando guardes el archivo, incluye un carácter de nueva línea solo después de cada elemento de importación. No incluyas saltos de línea entre los campos de un solo elemento de importación.

{
  "entry": {
    "name": "ENTRY_NAME",
    "entryType": "ENTRY_TYPE",
    "entrySource": {
      "resource": "RESOURCE",
      "system": "SYSTEM",
      "platform": "PLATFORM",
      "displayName": "DISPLAY_NAME",
      "description": "DESCRIPTION",
      "createTime": "ENTRY_CREATE_TIMESTAMP",
      "updateTime": "ENTRY_UPDATE_TIMESTAMP"
    },
    "aspects": {
      "ASPECT": {
        "data": {
          "KEY": "VALUE"
        },
        "aspectSource": {
          "createTime": "ASPECT_CREATE_TIMESTAMP",
          "updateTime": "ASPECT_UPDATE_TIMESTAMP"
        }
      },
      # Additional aspect maps
    },
    "parentEntry": "PARENT_ENTRY",
    "fullyQualifiedName": "FULLY_QUALIFIED_NAME"
  },
  "updateMask": "UPDATE_MASK_FIELDS",
  "aspectKeys": [
    "ASPECT_KEY",
    # Additional aspect keys
  ],
}

Reemplaza lo siguiente:

  • entry: Es información sobre una entrada y sus aspectos adjuntos. En un trabajo de importación de metadatos solo de aspectos, Dataplex Universal Catalog ignora todos los campos opcionales de una entrada, excepto los mapas de aspectos.

    • ENTRY_NAME: Es el nombre del recurso relativo de la entrada, en el formato projects/PROJECT_ID_OR_NUMBER/locations/LOCATION_ID/entryGroups/ENTRY_GROUP_ID/entries/ENTRY_ID.
    • ENTRY_TYPE: Es el nombre del recurso relativo del tipo de entrada que se usó para crear esta entrada, en el formato projects/PROJECT_ID_OR_NUMBER/locations/LOCATION_ID/entryTypes/ENTRY_TYPE_ID.
    • entrySource: Es la información del sistema fuente sobre el recurso de datos que representa la entrada:
      • RESOURCE: Es el nombre del recurso en el sistema de origen.
      • SYSTEM: Es el nombre del sistema fuente.
      • PLATFORM: Es la plataforma que contiene el sistema fuente.
      • DISPLAY_NAME: Es un nombre visible fácil de usar.
      • DESCRIPTION: Es una descripción de la entrada.
      • ENTRY_CREATE_TIMESTAMP: Es la fecha y hora en que se creó la entrada en el sistema fuente.
      • ENTRY_UPDATE_TIMESTAMP: Es la fecha y hora en que se actualizó la entrada en el sistema fuente.
    • aspects: Son los aspectos adjuntos a la entrada. El objeto aspect y sus datos se denominan mapa de aspectos.

      • ASPECT: Es un aspecto adjunto a la entrada. Según cómo se adjunte el aspecto a la entrada, usa uno de los siguientes formatos:

        • Si el aspecto se adjunta directamente a la entrada, proporciona el nombre del recurso relativo de su tipo de aspecto, en el formato PROJECT_ID_OR_NUMBER.LOCATION_ID.ASPECT_TYPE_ID.
        • Si el aspecto está adjunto a la ruta de acceso de la entrada, proporciona la ruta de acceso del tipo de aspecto en el formato PROJECT_ID_OR_NUMBER.LOCATION_ID.ASPECT_TYPE_ID@PATH.
      • KEY y VALUE: El contenido del aspecto, según su plantilla de metadatos de tipo de aspecto. El contenido debe estar codificado como UTF-8. El tamaño máximo del campo es de 120 KB. El diccionario data es obligatorio, incluso si está vacío.

      • ASPECT_CREATE_TIMESTAMP: Es la fecha y hora en que se creó el aspecto en el sistema fuente.

      • ASPECT_UPDATE_TIMESTAMP: Es la fecha y hora en que se actualizó el aspecto en el sistema fuente.

    • PARENT_ENTRY: Es el nombre del recurso de la entrada principal.

    • FULLY_QUALIFIED_NAME: Es un nombre para la entrada al que puede hacer referencia un sistema externo. Consulta Nombres completamente calificados.

  • UPDATE_MASK_FIELDS: Son los campos que se actualizarán, en rutas relativas al recurso Entry. Separa cada campo con una coma.

    En un trabajo de sincronización de entradas completo, Dataplex Universal Catalog incluye las rutas de todos los campos de una entrada que se pueden modificar, incluidos los aspectos. El campo updateMask se ignora cuando se crea o se vuelve a crear una entrada.

    En un trabajo de metadatos solo de aspectos, establece este valor en aspects.

  • ASPECT_KEY: Son los aspectos que se modificarán. Admite las siguientes sintaxis:

    • ASPECT_TYPE_REFERENCE: Coincide con el tipo de aspecto para los aspectos que se adjuntan directamente a la entrada.
    • ASPECT_TYPE_REFERENCE@PATH: Coincide con el tipo de aspecto y la ruta de acceso especificada.
    • ASPECT_TYPE_REFERENCE@*: Coincide con el tipo de aspecto para todas las rutas.
    • *@PATH: Coincide con todos los tipos de aspectos en la ruta de acceso especificada.

    Reemplaza ASPECT_TYPE_REFERENCE por una referencia al tipo de aspecto, en el formato PROJECT_ID_OR_NUMBER.LOCATION_ID.ASPECT_TYPE_ID.

    En un trabajo de sincronización de entradas completo, si dejas este campo vacío, se considera que especificas exactamente los aspectos que están presentes en la entrada especificada. Dataplex Universal Catalog agrega de forma implícita las claves de todos los aspectos requeridos de una entrada.

Requisitos de los archivos

El archivo de importación de metadatos debe cumplir con los siguientes requisitos:

  • El archivo debe tener el formato de un archivo de líneas JSON, que es un archivo JSON delimitado por saltos de línea. Usa un carácter de salto de línea (0x0a) para separar cada elemento de importación.
  • El archivo debe usar la codificación de caracteres UTF-8.
  • Las extensiones de archivo admitidas son .jsonl y .json.
  • El tamaño de cada archivo de importación de metadatos debe ser inferior a 1 GiB. El tamaño total máximo para todos los datos en el trabajo de metadatos es de 3 GB. Esto incluye todos los archivos y metadatos asociados con el trabajo.
  • Los tipos de entrada y los tipos de aspecto que especifiques en el archivo deben formar parte del alcance del trabajo de metadatos.
  • El archivo debe subirse a un bucket de Cloud Storage. No guardes el archivo en una carpeta llamada CLOUD_STORAGE_URI/deletions/.

Lógica de comparación

Dataplex Universal Catalog determina qué entradas y aspectos modificar comparando los valores y las marcas de tiempo que proporcionas en el archivo de importación de metadatos con los valores y las marcas de tiempo que existen en tu proyecto.

En un nivel general, Dataplex Universal Catalog actualiza los valores de tu proyecto cuando al menos un cambio propuesto en el archivo de importación de metadatos modificará el estado de tu proyecto cuando se ejecute el trabajo, sin introducir datos desactualizados. El cambio propuesto debe mencionarse en el campo de máscara de actualización o en el campo de claves de aspecto del archivo de importación de metadatos.

La lógica de comparación varía según el tipo de trabajo de importación de metadatos que ejecutes.

Trabajo de sincronización de entrada completa

En un trabajo de metadatos de sincronización de entradas completa, para cada entrada que forma parte del alcance del trabajo, Dataplex Universal Catalog realiza una de las siguientes acciones:

  • Crea una entrada y aspectos adjuntos. Si el archivo de importación de metadatos incluye una entrada que no existe en tu proyecto, Dataplex Universal Catalog crea la entrada y los aspectos adjuntos.
  • Borra una entrada y los aspectos adjuntos. Si existe una entrada en tu proyecto, pero el archivo de importación de metadatos no la incluye, Dataplex Universal Catalog borrará la entrada y sus aspectos adjuntos de tu proyecto.
  • Actualiza una entrada y los aspectos adjuntos. Si existe una entrada tanto en el archivo de importación de metadatos como en tu proyecto, Dataplex Universal Catalog evalúa las marcas de tiempo de la fuente de la entrada y las marcas de tiempo de la fuente del aspecto asociadas con la entrada para determinar qué valores modificar. Luego, Dataplex Universal Catalog realiza una o más de las siguientes acciones:

    • Vuelve a crear la entrada. Si la marca de tiempo de creación de la fuente de la entrada en el archivo de importación de metadatos es más reciente que la marca de tiempo correspondiente en tu proyecto, Dataplex Universal Catalog vuelve a crear la entrada en tu proyecto.
    • Actualiza la entrada. Si la marca de tiempo de actualización de la fuente de entrada en el archivo de importación de metadatos es más reciente que la marca de tiempo correspondiente en tu proyecto, Dataplex Universal Catalog actualizará la entrada en tu proyecto.
    • Crea un aspecto. Si un aspecto no existe en tu proyecto y se incluye en un mapa de aspectos, el campo de máscara de actualización y el campo de claves de aspectos en el archivo de importación de metadatos, Dataplex Universal Catalog crea el aspecto.
    • Borra un aspecto. Si un aspecto existe en tu proyecto y se incluye en el campo de máscara de actualización y en el campo de claves de aspecto del archivo de importación de metadatos, pero no se incluye en un mapa de aspectos, Dataplex Universal Catalog borra el aspecto.
    • Actualiza un aspecto. Si un aspecto existe en tu proyecto y se incluye en un mapa de aspectos, el campo de máscara de actualización y el campo de claves de aspectos en el archivo de importación de metadatos, y la marca de tiempo de actualización de la fuente del aspecto en el archivo de importación de metadatos es más reciente que la marca de tiempo correspondiente en tu proyecto, Dataplex Universal Catalog actualiza el aspecto.

      Si no se proporciona una marca de tiempo de actualización de la fuente del aspecto en el archivo de importación de metadatos, pero la entrada correspondiente está marcada para una actualización, Dataplex Universal Catalog también actualiza el aspecto.

      Sin embargo, si al menos un aspecto del archivo de importación de metadatos tiene una marca de tiempo anterior a la marca de tiempo correspondiente de tu proyecto, Dataplex Universal Catalog no realizará ninguna actualización para la entrada adjunta.

Trabajo de solo aspectos

En un trabajo de metadatos solo de aspectos, para cada aspecto que forma parte del alcance del trabajo, Dataplex Universal Catalog realiza una de las siguientes acciones:

  • Crea un aspecto. Si un aspecto no existe en tu proyecto y se incluye en un mapa de aspectos, el campo de máscara de actualización y el campo de claves de aspectos en el archivo de importación de metadatos, Dataplex Universal Catalog crea el aspecto.
  • Borra un aspecto. En el caso de los aspectos opcionales, si el aspecto existe en tu proyecto y se incluye en el campo de máscara de actualización y en el campo de claves de aspecto del archivo de importación de metadatos, pero no se incluye en un mapa de aspectos, Dataplex Universal Catalog borra el aspecto.

    No se pueden borrar los aspectos obligatorios.

  • Actualiza un aspecto. Si un aspecto existe en tu proyecto y se incluye en un mapa de aspectos, el campo de máscara de actualización y el campo de claves de aspectos en el archivo de importación de metadatos, y la marca de tiempo de actualización de la fuente del aspecto en el archivo de importación de metadatos es más reciente que la marca de tiempo correspondiente en tu proyecto, Dataplex Universal Catalog actualiza el aspecto.

    Si no se proporciona una marca de tiempo de actualización de la fuente del aspecto en el archivo de importación de metadatos, Dataplex Universal Catalog también actualiza el aspecto.

    Dataplex Universal Catalog actualiza los aspectos según la marca de tiempo de actualización de la fuente del aspecto, independientemente de la marca de tiempo de actualización de la fuente de la entrada correspondiente.

Crea un archivo de importación de metadatos

Antes de importar metadatos, crea un archivo de importación de metadatos para tu trabajo. Sigue estos pasos:

  1. Prepara un archivo de importación de metadatos siguiendo los lineamientos que se describieron anteriormente en este documento.
  2. Sube el archivo a un bucket de Cloud Storage.

Puedes proporcionar varios archivos de importación de metadatos en el mismo trabajo de metadatos. Para proporcionar varios archivos, guárdalos en el mismo bucket de Cloud Storage. Cuando ejecutas el trabajo, especificas un bucket, no un archivo específico. Dataplex Universal Catalog importa metadatos de todos los archivos guardados en el bucket, incluidos los que se encuentran en subcarpetas.

Ejecuta un trabajo de importación de metadatos

Después de crear un archivo de importación de metadatos, ejecuta el trabajo de importación de metadatos.

C#

C#

Antes de probar este ejemplo, sigue las instrucciones de configuración para C# que se encuentran en la guía de inicio rápido del catálogo universal de Dataplex sobre cómo usar bibliotecas cliente. Para obtener más información, consulta la documentación de referencia de la API de C# de Dataplex Universal Catalog.

Para autenticarte en Dataplex Universal Catalog, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.

using Google.Api.Gax.ResourceNames;
using Google.Cloud.Dataplex.V1;
using Google.LongRunning;

public sealed partial class GeneratedCatalogServiceClientSnippets
{
    /// <summary>Snippet for CreateMetadataJob</summary>
    /// <remarks>
    /// This snippet has been automatically generated and should be regarded as a code template only.
    /// It will require modifications to work:
    /// - It may require correct/in-range values for request initialization.
    /// - It may require specifying regional endpoints when creating the service client as shown in
    ///   https://cloud.google.com/dotnet/docs/reference/help/client-configuration#endpoint.
    /// </remarks>
    public void CreateMetadataJobRequestObject()
    {
        // Create client
        CatalogServiceClient catalogServiceClient = CatalogServiceClient.Create();
        // Initialize request argument(s)
        CreateMetadataJobRequest request = new CreateMetadataJobRequest
        {
            ParentAsLocationName = LocationName.FromProjectLocation("[PROJECT]", "[LOCATION]"),
            MetadataJob = new MetadataJob(),
            MetadataJobId = "",
            ValidateOnly = false,
        };
        // Make the request
        Operation<MetadataJob, OperationMetadata> response = catalogServiceClient.CreateMetadataJob(request);

        // Poll until the returned long-running operation is complete
        Operation<MetadataJob, OperationMetadata> completedResponse = response.PollUntilCompleted();
        // Retrieve the operation result
        MetadataJob result = completedResponse.Result;

        // Or get the name of the operation
        string operationName = response.Name;
        // This name can be stored, then the long-running operation retrieved later by name
        Operation<MetadataJob, OperationMetadata> retrievedResponse = catalogServiceClient.PollOnceCreateMetadataJob(operationName);
        // Check if the retrieved long-running operation has completed
        if (retrievedResponse.IsCompleted)
        {
            // If it has completed, then access the result
            MetadataJob retrievedResult = retrievedResponse.Result;
        }
    }
}

Go

Go

Antes de probar este ejemplo, sigue las instrucciones de configuración para Go que se encuentran en la guía de inicio rápido del catálogo universal de Dataplex sobre cómo usar bibliotecas cliente. Para obtener más información, consulta la documentación de referencia de la API de Go de Dataplex Universal Catalog.

Para autenticarte en Dataplex Universal Catalog, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.


package main

import (
	"context"

	dataplex "cloud.google.com/go/dataplex/apiv1"
	dataplexpb "cloud.google.com/go/dataplex/apiv1/dataplexpb"
)

func main() {
	ctx := context.Background()
	// This snippet has been automatically generated and should be regarded as a code template only.
	// It will require modifications to work:
	// - It may require correct/in-range values for request initialization.
	// - It may require specifying regional endpoints when creating the service client as shown in:
	//   https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
	c, err := dataplex.NewCatalogClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	defer c.Close()

	req := &dataplexpb.CreateMetadataJobRequest{
		// TODO: Fill request struct fields.
		// See https://pkg.go.dev/cloud.google.com/go/dataplex/apiv1/dataplexpb#CreateMetadataJobRequest.
	}
	op, err := c.CreateMetadataJob(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}

	resp, err := op.Wait(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

Java

Java

Antes de probar este ejemplo, sigue las instrucciones de configuración para Java que se encuentran en la guía de inicio rápido del catálogo universal de Dataplex sobre cómo usar bibliotecas cliente. Para obtener más información, consulta la documentación de referencia de la API de Java de Dataplex Universal Catalog.

Para autenticarte en Dataplex Universal Catalog, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.

import com.google.cloud.dataplex.v1.CatalogServiceClient;
import com.google.cloud.dataplex.v1.CreateMetadataJobRequest;
import com.google.cloud.dataplex.v1.LocationName;
import com.google.cloud.dataplex.v1.MetadataJob;

public class SyncCreateMetadataJob {

  public static void main(String[] args) throws Exception {
    syncCreateMetadataJob();
  }

  public static void syncCreateMetadataJob() throws Exception {
    // This snippet has been automatically generated and should be regarded as a code template only.
    // It will require modifications to work:
    // - It may require correct/in-range values for request initialization.
    // - It may require specifying regional endpoints when creating the service client as shown in
    // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
    try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
      CreateMetadataJobRequest request =
          CreateMetadataJobRequest.newBuilder()
              .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
              .setMetadataJob(MetadataJob.newBuilder().build())
              .setMetadataJobId("metadataJobId-2021530679")
              .setValidateOnly(true)
              .build();
      MetadataJob response = catalogServiceClient.createMetadataJobAsync(request).get();
    }
  }
}

Python

Python

Antes de probar este ejemplo, sigue las instrucciones de configuración para Python que se encuentran en la guía de inicio rápido del catálogo universal de Dataplex sobre cómo usar bibliotecas cliente. Para obtener más información, consulta la documentación de referencia de la API de Python de Dataplex Universal Catalog.

Para autenticarte en Dataplex Universal Catalog, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.

# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
#   client as shown in:
#   https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import dataplex_v1


def sample_create_metadata_job():
    # Create a client
    client = dataplex_v1.CatalogServiceClient()

    # Initialize request argument(s)
    metadata_job = dataplex_v1.MetadataJob()
    metadata_job.import_spec.scope.entry_groups = [
        "entry_groups_value1",
        "entry_groups_value2",
    ]
    metadata_job.import_spec.scope.entry_types = [
        "entry_types_value1",
        "entry_types_value2",
    ]
    metadata_job.import_spec.entry_sync_mode = "NONE"
    metadata_job.import_spec.aspect_sync_mode = "NONE"
    metadata_job.type_ = "EXPORT"

    request = dataplex_v1.CreateMetadataJobRequest(
        parent="parent_value",
        metadata_job=metadata_job,
    )

    # Make the request
    operation = client.create_metadata_job(request=request)

    print("Waiting for operation to complete...")

    response = operation.result()

    # Handle the response
    print(response)

Ruby

Ruby

Antes de probar este ejemplo, sigue las instrucciones de configuración para Ruby que se encuentran en la guía de inicio rápido del catálogo universal de Dataplex sobre cómo usar bibliotecas cliente. Para obtener más información, consulta la documentación de referencia de la API de Ruby de Dataplex Universal Catalog.

Para autenticarte en Dataplex Universal Catalog, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.

require "google/cloud/dataplex/v1"

##
# Snippet for the create_metadata_job call in the CatalogService service
#
# This snippet has been automatically generated and should be regarded as a code
# template only. It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in https://cloud.google.com/ruby/docs/reference.
#
# This is an auto-generated example demonstrating basic usage of
# Google::Cloud::Dataplex::V1::CatalogService::Client#create_metadata_job.
#
def create_metadata_job
  # Create a client object. The client can be reused for multiple calls.
  client = Google::Cloud::Dataplex::V1::CatalogService::Client.new

  # Create a request. To set request fields, pass in keyword arguments.
  request = Google::Cloud::Dataplex::V1::CreateMetadataJobRequest.new

  # Call the create_metadata_job method.
  result = client.create_metadata_job request

  # The returned object is of type Gapic::Operation. You can use it to
  # check the status of an operation, cancel it, or wait for results.
  # Here is how to wait for a response.
  result.wait_until_done! timeout: 60
  if result.response?
    p result.response
  else
    puts "No response received."
  end
end

REST

Para importar metadatos, usa el método metadataJobs.create.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_NUMBER: El número o ID del proyecto proyecto Google Cloud .
  • LOCATION_ID: La ubicación Google Cloud , como us-central1.
  • METADATA_JOB_ID: es opcional. Es el ID del trabajo de metadatos.
  • CLOUD_STORAGE_URI: Es el URI del bucket o la carpeta de Cloud Storage que contiene los archivos de importación de metadatos. Para obtener más información sobre los requisitos del archivo, consulta Archivo de importación de metadatos.

  • ENTRY_GROUP: Es el nombre del recurso relativo de los grupos de entradas que se encuentran dentro del alcance del trabajo, en el formato projects/PROJECT_ID_OR_NUMBER/locations/LOCATION_ID/entryGroups/ENTRY_GROUP_ID. Para obtener más información, consulta Alcance del trabajo.
  • ENTRY_TYPE: Es el nombre del recurso relativo de un tipo de entrada que está dentro del alcance del trabajo, en el formato projects/PROJECT_ID_OR_NUMBER/locations/LOCATION_ID/entryTypes/ENTRY_TYPE_ID. Para obtener más información, consulta Alcance del trabajo.

  • ASPECT_TYPE: Es el nombre del recurso relativo de un tipo de aspecto que está dentro del alcance del trabajo, en el formato projects/PROJECT_ID_OR_NUMBER/locations/LOCATION_ID/aspectTypes/ASPECT_TYPE_ID. Es opcional cuando se crea un trabajo de sincronización de entrada completa y obligatorio cuando se crea un trabajo solo de aspectos. Para obtener más información, consulta Alcance del trabajo.
  • ENTRY_SYNC_MODE: Es el modo de sincronización de la entrada, como FULL o NONE. Para obtener más información, consulta Modo de sincronización.
  • LOG_LEVEL: Es el nivel de registros que se capturarán, como INFO o DEBUG. Para obtener más información, consulta Visualiza los registros de trabajos y soluciona problemas.

Método HTTP y URL:

POST https://dataplex.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/metadataJobs?metadataJobId=METADATA_JOB_ID

Cuerpo JSON de la solicitud:

{
  "type": "IMPORT",
  "import_spec": {
    "source_storage_uri": "gs://CLOUD_STORAGE_URI/",
    "scope": {
      "entryGroups": [
        "ENTRY_GROUP"
      ],
      "entry_types": [
        "ENTRY_TYPE"
      ],
      "aspect_types": [
        "ASPECT_TYPE"
      ]
    },
    "entry_sync_mode": "ENTRY_SYNC_MODE",
    "aspect_sync_mode": "INCREMENTAL",
    "log_level": "LOG_LEVEL"
  }
}

Para enviar tu solicitud, expande una de estas opciones:

La respuesta identifica una operación de larga duración.

Obtén detalles sobre un trabajo de metadatos

Para obtener información sobre un trabajo de metadatos, como el estado del trabajo y la cantidad de entradas que se modificaron, sigue estos pasos. Para obtener más información sobre cómo solucionar problemas de un trabajo fallido, consulta la sección Visualiza los registros de trabajos y soluciona problemas de este documento.

C#

C#

Antes de probar este ejemplo, sigue las instrucciones de configuración para C# que se encuentran en la guía de inicio rápido del catálogo universal de Dataplex sobre cómo usar bibliotecas cliente. Para obtener más información, consulta la documentación de referencia de la API de C# de Dataplex Universal Catalog.

Para autenticarte en Dataplex Universal Catalog, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.

using Google.Cloud.Dataplex.V1;

public sealed partial class GeneratedCatalogServiceClientSnippets
{
    /// <summary>Snippet for GetMetadataJob</summary>
    /// <remarks>
    /// This snippet has been automatically generated and should be regarded as a code template only.
    /// It will require modifications to work:
    /// - It may require correct/in-range values for request initialization.
    /// - It may require specifying regional endpoints when creating the service client as shown in
    ///   https://cloud.google.com/dotnet/docs/reference/help/client-configuration#endpoint.
    /// </remarks>
    public void GetMetadataJobRequestObject()
    {
        // Create client
        CatalogServiceClient catalogServiceClient = CatalogServiceClient.Create();
        // Initialize request argument(s)
        GetMetadataJobRequest request = new GetMetadataJobRequest
        {
            MetadataJobName = MetadataJobName.FromProjectLocationMetadataJob("[PROJECT]", "[LOCATION]", "[METADATAJOB]"),
        };
        // Make the request
        MetadataJob response = catalogServiceClient.GetMetadataJob(request);
    }
}

Go

Go

Antes de probar este ejemplo, sigue las instrucciones de configuración para Go que se encuentran en la guía de inicio rápido del catálogo universal de Dataplex sobre cómo usar bibliotecas cliente. Para obtener más información, consulta la documentación de referencia de la API de Go de Dataplex Universal Catalog.

Para autenticarte en Dataplex Universal Catalog, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.


package main

import (
	"context"

	dataplex "cloud.google.com/go/dataplex/apiv1"
	dataplexpb "cloud.google.com/go/dataplex/apiv1/dataplexpb"
)

func main() {
	ctx := context.Background()
	// This snippet has been automatically generated and should be regarded as a code template only.
	// It will require modifications to work:
	// - It may require correct/in-range values for request initialization.
	// - It may require specifying regional endpoints when creating the service client as shown in:
	//   https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
	c, err := dataplex.NewCatalogClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	defer c.Close()

	req := &dataplexpb.GetMetadataJobRequest{
		// TODO: Fill request struct fields.
		// See https://pkg.go.dev/cloud.google.com/go/dataplex/apiv1/dataplexpb#GetMetadataJobRequest.
	}
	resp, err := c.GetMetadataJob(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

Java

Java

Antes de probar este ejemplo, sigue las instrucciones de configuración para Java que se encuentran en la guía de inicio rápido del catálogo universal de Dataplex sobre cómo usar bibliotecas cliente. Para obtener más información, consulta la documentación de referencia de la API de Java de Dataplex Universal Catalog.

Para autenticarte en Dataplex Universal Catalog, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.

import com.google.cloud.dataplex.v1.CatalogServiceClient;
import com.google.cloud.dataplex.v1.GetMetadataJobRequest;
import com.google.cloud.dataplex.v1.MetadataJob;
import com.google.cloud.dataplex.v1.MetadataJobName;

public class SyncGetMetadataJob {

  public static void main(String[] args) throws Exception {
    syncGetMetadataJob();
  }

  public static void syncGetMetadataJob() throws Exception {
    // This snippet has been automatically generated and should be regarded as a code template only.
    // It will require modifications to work:
    // - It may require correct/in-range values for request initialization.
    // - It may require specifying regional endpoints when creating the service client as shown in
    // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
    try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
      GetMetadataJobRequest request =
          GetMetadataJobRequest.newBuilder()
              .setName(MetadataJobName.of("[PROJECT]", "[LOCATION]", "[METADATAJOB]").toString())
              .build();
      MetadataJob response = catalogServiceClient.getMetadataJob(request);
    }
  }
}

Python

Python

Antes de probar este ejemplo, sigue las instrucciones de configuración para Python que se encuentran en la guía de inicio rápido del catálogo universal de Dataplex sobre cómo usar bibliotecas cliente. Para obtener más información, consulta la documentación de referencia de la API de Python de Dataplex Universal Catalog.

Para autenticarte en Dataplex Universal Catalog, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.

# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
#   client as shown in:
#   https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import dataplex_v1


def sample_get_metadata_job():
    # Create a client
    client = dataplex_v1.CatalogServiceClient()

    # Initialize request argument(s)
    request = dataplex_v1.GetMetadataJobRequest(
        name="name_value",
    )

    # Make the request
    response = client.get_metadata_job(request=request)

    # Handle the response
    print(response)

Ruby

Ruby

Antes de probar este ejemplo, sigue las instrucciones de configuración para Ruby que se encuentran en la guía de inicio rápido del catálogo universal de Dataplex sobre cómo usar bibliotecas cliente. Para obtener más información, consulta la documentación de referencia de la API de Ruby de Dataplex Universal Catalog.

Para autenticarte en Dataplex Universal Catalog, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.

require "google/cloud/dataplex/v1"

##
# Snippet for the get_metadata_job call in the CatalogService service
#
# This snippet has been automatically generated and should be regarded as a code
# template only. It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in https://cloud.google.com/ruby/docs/reference.
#
# This is an auto-generated example demonstrating basic usage of
# Google::Cloud::Dataplex::V1::CatalogService::Client#get_metadata_job.
#
def get_metadata_job
  # Create a client object. The client can be reused for multiple calls.
  client = Google::Cloud::Dataplex::V1::CatalogService::Client.new

  # Create a request. To set request fields, pass in keyword arguments.
  request = Google::Cloud::Dataplex::V1::GetMetadataJobRequest.new

  # Call the get_metadata_job method.
  result = client.get_metadata_job request

  # The returned object is of type Google::Cloud::Dataplex::V1::MetadataJob.
  p result
end

REST

Para obtener información sobre un trabajo de metadatos, usa el método metadataJobs.get.

Obtén una lista de trabajos de metadatos

Puedes obtener una lista de los trabajos de metadatos más recientes. Los trabajos más antiguos que alcanzaron un estado final se borran periódicamente del sistema.

C#

C#

Antes de probar este ejemplo, sigue las instrucciones de configuración para C# que se encuentran en la guía de inicio rápido del catálogo universal de Dataplex sobre cómo usar bibliotecas cliente. Para obtener más información, consulta la documentación de referencia de la API de C# de Dataplex Universal Catalog.

Para autenticarte en Dataplex Universal Catalog, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.

using Google.Api.Gax;
using Google.Api.Gax.ResourceNames;
using Google.Cloud.Dataplex.V1;
using System;

public sealed partial class GeneratedCatalogServiceClientSnippets
{
    /// <summary>Snippet for ListMetadataJobs</summary>
    /// <remarks>
    /// This snippet has been automatically generated and should be regarded as a code template only.
    /// It will require modifications to work:
    /// - It may require correct/in-range values for request initialization.
    /// - It may require specifying regional endpoints when creating the service client as shown in
    ///   https://cloud.google.com/dotnet/docs/reference/help/client-configuration#endpoint.
    /// </remarks>
    public void ListMetadataJobsRequestObject()
    {
        // Create client
        CatalogServiceClient catalogServiceClient = CatalogServiceClient.Create();
        // Initialize request argument(s)
        ListMetadataJobsRequest request = new ListMetadataJobsRequest
        {
            ParentAsLocationName = LocationName.FromProjectLocation("[PROJECT]", "[LOCATION]"),
            Filter = "",
            OrderBy = "",
        };
        // Make the request
        PagedEnumerable<ListMetadataJobsResponse, MetadataJob> response = catalogServiceClient.ListMetadataJobs(request);

        // Iterate over all response items, lazily performing RPCs as required
        foreach (MetadataJob item in response)
        {
            // Do something with each item
            Console.WriteLine(item);
        }

        // Or iterate over pages (of server-defined size), performing one RPC per page
        foreach (ListMetadataJobsResponse page in response.AsRawResponses())
        {
            // Do something with each page of items
            Console.WriteLine("A page of results:");
            foreach (MetadataJob item in page)
            {
                // Do something with each item
                Console.WriteLine(item);
            }
        }

        // Or retrieve a single page of known size (unless it's the final page), performing as many RPCs as required
        int pageSize = 10;
        Page<MetadataJob> singlePage = response.ReadPage(pageSize);
        // Do something with the page of items
        Console.WriteLine($"A page of {pageSize} results (unless it's the final page):");
        foreach (MetadataJob item in singlePage)
        {
            // Do something with each item
            Console.WriteLine(item);
        }
        // Store the pageToken, for when the next page is required.
        string nextPageToken = singlePage.NextPageToken;
    }
}

Go

Go

Antes de probar este ejemplo, sigue las instrucciones de configuración para Go que se encuentran en la guía de inicio rápido del catálogo universal de Dataplex sobre cómo usar bibliotecas cliente. Para obtener más información, consulta la documentación de referencia de la API de Go de Dataplex Universal Catalog.

Para autenticarte en Dataplex Universal Catalog, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.


package main

import (
	"context"

	dataplex "cloud.google.com/go/dataplex/apiv1"
	dataplexpb "cloud.google.com/go/dataplex/apiv1/dataplexpb"
	"google.golang.org/api/iterator"
)

func main() {
	ctx := context.Background()
	// This snippet has been automatically generated and should be regarded as a code template only.
	// It will require modifications to work:
	// - It may require correct/in-range values for request initialization.
	// - It may require specifying regional endpoints when creating the service client as shown in:
	//   https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
	c, err := dataplex.NewCatalogClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	defer c.Close()

	req := &dataplexpb.ListMetadataJobsRequest{
		// TODO: Fill request struct fields.
		// See https://pkg.go.dev/cloud.google.com/go/dataplex/apiv1/dataplexpb#ListMetadataJobsRequest.
	}
	it := c.ListMetadataJobs(ctx, req)
	for {
		resp, err := it.Next()
		if err == iterator.Done {
			break
		}
		if err != nil {
			// TODO: Handle error.
		}
		// TODO: Use resp.
		_ = resp

		// If you need to access the underlying RPC response,
		// you can do so by casting the `Response` as below.
		// Otherwise, remove this line. Only populated after
		// first call to Next(). Not safe for concurrent access.
		_ = it.Response.(*dataplexpb.ListMetadataJobsResponse)
	}
}

Java

Java

Antes de probar este ejemplo, sigue las instrucciones de configuración para Java que se encuentran en la guía de inicio rápido del catálogo universal de Dataplex sobre cómo usar bibliotecas cliente. Para obtener más información, consulta la documentación de referencia de la API de Java de Dataplex Universal Catalog.

Para autenticarte en Dataplex Universal Catalog, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.

import com.google.cloud.dataplex.v1.CatalogServiceClient;
import com.google.cloud.dataplex.v1.ListMetadataJobsRequest;
import com.google.cloud.dataplex.v1.LocationName;
import com.google.cloud.dataplex.v1.MetadataJob;

public class SyncListMetadataJobs {

  public static void main(String[] args) throws Exception {
    syncListMetadataJobs();
  }

  public static void syncListMetadataJobs() throws Exception {
    // This snippet has been automatically generated and should be regarded as a code template only.
    // It will require modifications to work:
    // - It may require correct/in-range values for request initialization.
    // - It may require specifying regional endpoints when creating the service client as shown in
    // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
    try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
      ListMetadataJobsRequest request =
          ListMetadataJobsRequest.newBuilder()
              .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
              .setPageSize(883849137)
              .setPageToken("pageToken873572522")
              .setFilter("filter-1274492040")
              .setOrderBy("orderBy-1207110587")
              .build();
      for (MetadataJob element : catalogServiceClient.listMetadataJobs(request).iterateAll()) {
        // doThingsWith(element);
      }
    }
  }
}

Python

Python

Antes de probar este ejemplo, sigue las instrucciones de configuración para Python que se encuentran en la guía de inicio rápido del catálogo universal de Dataplex sobre cómo usar bibliotecas cliente. Para obtener más información, consulta la documentación de referencia de la API de Python de Dataplex Universal Catalog.

Para autenticarte en Dataplex Universal Catalog, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.

# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
#   client as shown in:
#   https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import dataplex_v1


def sample_list_metadata_jobs():
    # Create a client
    client = dataplex_v1.CatalogServiceClient()

    # Initialize request argument(s)
    request = dataplex_v1.ListMetadataJobsRequest(
        parent="parent_value",
    )

    # Make the request
    page_result = client.list_metadata_jobs(request=request)

    # Handle the response
    for response in page_result:
        print(response)

Ruby

Ruby

Antes de probar este ejemplo, sigue las instrucciones de configuración para Ruby que se encuentran en la guía de inicio rápido del catálogo universal de Dataplex sobre cómo usar bibliotecas cliente. Para obtener más información, consulta la documentación de referencia de la API de Ruby de Dataplex Universal Catalog.

Para autenticarte en Dataplex Universal Catalog, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.

require "google/cloud/dataplex/v1"

##
# Snippet for the list_metadata_jobs call in the CatalogService service
#
# This snippet has been automatically generated and should be regarded as a code
# template only. It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in https://cloud.google.com/ruby/docs/reference.
#
# This is an auto-generated example demonstrating basic usage of
# Google::Cloud::Dataplex::V1::CatalogService::Client#list_metadata_jobs.
#
def list_metadata_jobs
  # Create a client object. The client can be reused for multiple calls.
  client = Google::Cloud::Dataplex::V1::CatalogService::Client.new

  # Create a request. To set request fields, pass in keyword arguments.
  request = Google::Cloud::Dataplex::V1::ListMetadataJobsRequest.new

  # Call the list_metadata_jobs method.
  result = client.list_metadata_jobs request

  # The returned object is of type Gapic::PagedEnumerable. You can iterate
  # over elements, and API calls will be issued to fetch pages as needed.
  result.each do |item|
    # Each element is of type ::Google::Cloud::Dataplex::V1::MetadataJob.
    p item
  end
end

REST

Para obtener una lista de los trabajos de metadatos más recientes, usa el método metadataJobs.list.

Cancela un trabajo de metadatos

Puedes cancelar un trabajo de metadatos que no quieras ejecutar.

C#

C#

Antes de probar este ejemplo, sigue las instrucciones de configuración para C# que se encuentran en la guía de inicio rápido del catálogo universal de Dataplex sobre cómo usar bibliotecas cliente. Para obtener más información, consulta la documentación de referencia de la API de C# de Dataplex Universal Catalog.

Para autenticarte en Dataplex Universal Catalog, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.

using Google.Cloud.Dataplex.V1;

public sealed partial class GeneratedCatalogServiceClientSnippets
{
    /// <summary>Snippet for CancelMetadataJob</summary>
    /// <remarks>
    /// This snippet has been automatically generated and should be regarded as a code template only.
    /// It will require modifications to work:
    /// - It may require correct/in-range values for request initialization.
    /// - It may require specifying regional endpoints when creating the service client as shown in
    ///   https://cloud.google.com/dotnet/docs/reference/help/client-configuration#endpoint.
    /// </remarks>
    public void CancelMetadataJobRequestObject()
    {
        // Create client
        CatalogServiceClient catalogServiceClient = CatalogServiceClient.Create();
        // Initialize request argument(s)
        CancelMetadataJobRequest request = new CancelMetadataJobRequest
        {
            MetadataJobName = MetadataJobName.FromProjectLocationMetadataJob("[PROJECT]", "[LOCATION]", "[METADATAJOB]"),
        };
        // Make the request
        catalogServiceClient.CancelMetadataJob(request);
    }
}

Go

Go

Antes de probar este ejemplo, sigue las instrucciones de configuración para Go que se encuentran en la guía de inicio rápido del catálogo universal de Dataplex sobre cómo usar bibliotecas cliente. Para obtener más información, consulta la documentación de referencia de la API de Go de Dataplex Universal Catalog.

Para autenticarte en Dataplex Universal Catalog, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.


package main

import (
	"context"

	dataplex "cloud.google.com/go/dataplex/apiv1"
	dataplexpb "cloud.google.com/go/dataplex/apiv1/dataplexpb"
)

func main() {
	ctx := context.Background()
	// This snippet has been automatically generated and should be regarded as a code template only.
	// It will require modifications to work:
	// - It may require correct/in-range values for request initialization.
	// - It may require specifying regional endpoints when creating the service client as shown in:
	//   https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
	c, err := dataplex.NewCatalogClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	defer c.Close()

	req := &dataplexpb.CancelMetadataJobRequest{
		// TODO: Fill request struct fields.
		// See https://pkg.go.dev/cloud.google.com/go/dataplex/apiv1/dataplexpb#CancelMetadataJobRequest.
	}
	err = c.CancelMetadataJob(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
}

Java

Java

Antes de probar este ejemplo, sigue las instrucciones de configuración para Java que se encuentran en la guía de inicio rápido del catálogo universal de Dataplex sobre cómo usar bibliotecas cliente. Para obtener más información, consulta la documentación de referencia de la API de Java de Dataplex Universal Catalog.

Para autenticarte en Dataplex Universal Catalog, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.

import com.google.cloud.dataplex.v1.CancelMetadataJobRequest;
import com.google.cloud.dataplex.v1.CatalogServiceClient;
import com.google.cloud.dataplex.v1.MetadataJobName;
import com.google.protobuf.Empty;

public class SyncCancelMetadataJob {

  public static void main(String[] args) throws Exception {
    syncCancelMetadataJob();
  }

  public static void syncCancelMetadataJob() throws Exception {
    // This snippet has been automatically generated and should be regarded as a code template only.
    // It will require modifications to work:
    // - It may require correct/in-range values for request initialization.
    // - It may require specifying regional endpoints when creating the service client as shown in
    // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
    try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
      CancelMetadataJobRequest request =
          CancelMetadataJobRequest.newBuilder()
              .setName(MetadataJobName.of("[PROJECT]", "[LOCATION]", "[METADATAJOB]").toString())
              .build();
      catalogServiceClient.cancelMetadataJob(request);
    }
  }
}

Python

Python

Antes de probar este ejemplo, sigue las instrucciones de configuración para Python que se encuentran en la guía de inicio rápido del catálogo universal de Dataplex sobre cómo usar bibliotecas cliente. Para obtener más información, consulta la documentación de referencia de la API de Python de Dataplex Universal Catalog.

Para autenticarte en Dataplex Universal Catalog, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.

# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
#   client as shown in:
#   https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import dataplex_v1


def sample_cancel_metadata_job():
    # Create a client
    client = dataplex_v1.CatalogServiceClient()

    # Initialize request argument(s)
    request = dataplex_v1.CancelMetadataJobRequest(
        name="name_value",
    )

    # Make the request
    client.cancel_metadata_job(request=request)

Ruby

Ruby

Antes de probar este ejemplo, sigue las instrucciones de configuración para Ruby que se encuentran en la guía de inicio rápido del catálogo universal de Dataplex sobre cómo usar bibliotecas cliente. Para obtener más información, consulta la documentación de referencia de la API de Ruby de Dataplex Universal Catalog.

Para autenticarte en Dataplex Universal Catalog, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.

require "google/cloud/dataplex/v1"

##
# Snippet for the cancel_metadata_job call in the CatalogService service
#
# This snippet has been automatically generated and should be regarded as a code
# template only. It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in https://cloud.google.com/ruby/docs/reference.
#
# This is an auto-generated example demonstrating basic usage of
# Google::Cloud::Dataplex::V1::CatalogService::Client#cancel_metadata_job.
#
def cancel_metadata_job
  # Create a client object. The client can be reused for multiple calls.
  client = Google::Cloud::Dataplex::V1::CatalogService::Client.new

  # Create a request. To set request fields, pass in keyword arguments.
  request = Google::Cloud::Dataplex::V1::CancelMetadataJobRequest.new

  # Call the cancel_metadata_job method.
  result = client.cancel_metadata_job request

  # The returned object is of type Google::Protobuf::Empty.
  p result
end

REST

Para cancelar un trabajo de metadatos, usa el método metadataJobs.cancel.

Visualiza los registros de trabajos y soluciona problemas

Usa Cloud Logging para ver los registros de un trabajo de metadatos. Para obtener más información, consulta Supervisa los registros de Dataplex Universal Catalog.

El nivel de registro se configura cuando creas un trabajo de metadatos. Están disponibles los siguientes niveles de registro:

  • INFO: Proporciona registros a nivel general del trabajo. Incluye registros agregados sobre los elementos de importación, pero no especifica qué elemento de importación tiene un error.
  • DEBUG: Proporciona registros detallados para cada elemento de importación. Usa el registro a nivel de depuración para solucionar problemas con elementos de importación específicos. Por ejemplo, usa el registro a nivel de depuración para identificar los recursos que faltan en el alcance del trabajo, las entradas o los aspectos que no se ajustan al tipo de entrada o al tipo de aspecto asociados, o bien otras configuraciones incorrectas con el archivo de importación de metadatos.

Errores de validación

Dataplex Universal Catalog valida los archivos de importación de metadatos en función de los metadatos actuales de tu proyecto. Si hay un problema de validación, el estado del trabajo puede devolver uno de los siguientes estados:

  • FAILED: Se produce cuando el archivo de importación de metadatos tiene un error. Dataplex Universal Catalog no importa ningún metadato y el trabajo falla. Estos son algunos ejemplos de errores en el archivo de importación de metadatos:
    • No se puede analizar un elemento del archivo como un elemento de importación válido
    • Una entrada o un aspecto del archivo pertenece a un grupo de entradas, un tipo de entrada o un tipo de aspecto que no forma parte del alcance del trabajo.
    • El mismo nombre de entrada se especifica más de una vez en el trabajo.
    • Un tipo de aspecto que se especifica en un mapa de aspectos o en las claves de aspectos no usa el formato PROJECT_ID_OR_NUMBER.LOCATION_ID.ASPECT_TYPE_ID@OPTIONAL_PATH.
    • Se marcó un aspecto obligatorio para su eliminación
  • SUCCEEDED_WITH_ERRORS: Se produce cuando el archivo de importación de metadatos se puede analizar correctamente, pero la importación de un elemento del archivo haría que una entrada de tu proyecto se encuentre en un estado incoherente. Dataplex Universal Catalog ignora esas entradas, pero importa el resto de los metadatos del archivo.

Usa los registros de trabajos para solucionar el error.

¿Qué sigue?