Datos descubiertos

En esta guía, se explica cómo habilitar y usar Dataplex Descubrimiento. Análisis y extracción de descubrimiento metadatos de los datos de un data lake y los registra Dataproc Metastore, BigQuery y Data Catalog análisis, búsqueda y exploración.

Descripción general

Para cada recurso de Dataplex con Descubrimiento habilitado, Dataplex hace lo siguiente:

  • Analiza los datos asociados con el recurso.
  • Agrupa archivos estructurados y semiestructurados en tablas.
  • Recopila metadatos técnicos, como el nombre de la tabla, el esquema y la definición de partición.

Para datos no estructurados, como imágenes y videos, Dataplex El descubrimiento detecta y registra automáticamente grupos de archivos compartir tipos de medios como conjuntos de archivos. Por ejemplo, si gs://images/group1 contiene imágenes GIF, y gs://images/group2 contiene imágenes JPEG, Dataplex Discovery detecta y registra dos conjuntos de archivos. En el caso de los datos estructurados, como Avro, Discovery detecta archivos solo si se encuentran en carpetas que contienen el mismo formato y esquema de datos.

Las tablas y los conjuntos de archivos descubiertos se registran en Data Catalog para la búsqueda y el descubrimiento. Las tablas aparecen en Dataproc Metastore como tablas de estilo Hive y en BigQuery como tablas externas, de modo que los datos se pone a disposición automáticamente para el análisis.

El descubrimiento admite los siguientes tipos de formatos de datos:

Discovery admite el siguiente formato de compresión para estructurados y semiestructurados:

  • Compresión interna para estos formatos:

    Compresión Ejemplo de extensión de archivo Formato compatible:
    gzip .gz.parquet Parquet
    lz4 .lz4.parquet Parquet
    Snappy .snappy.parquet Parquet, ORC y Avro
    lzo .lzo.parquet Parquet, ORC
  • Compresión externa para archivos JSON y CSV:

    • gzip
    • bzip2

Configuración de detección

El descubrimiento se habilita de forma predeterminada cuando creas un nuevo zona o recurso. Puedes inhabilitar el descubrimiento en la a nivel de la zona o del recurso.

Cuando creas una zona o un recurso, puedes elegir heredar configuración de descubrimiento a nivel de la zona o anular La configuración de descubrimiento a nivel del recurso.

Estas son las opciones de configuración de Descubrimiento disponibles a nivel de zona y recurso:

  • Detección activada y desactivada.

  • Programa de detección: Esta opción se puede establecer como un programación, por ejemplo, por hora o por día, o una programación personalizada definida por cron de un conjunto de datos tengan un formato común. Los recursos nuevos se analizan cuando se agregan. Para ver más consulta Configura programas cron. Recomendado: Programa el descubrimiento para que se ejecute cada hora o menos con frecuencia.

  • Patrón de inclusión o exclusión: Define qué archivos incluir o excluir. Análisis de descubrimiento mediante patrones glob en los atributos de inclusión o excluir ruta. Por ejemplo, si quieres excluir gs://test_bucket/foo/.. de descubrimiento, ingresa **/foo/* como la ruta de exclusión. Comillas causa errores. Asegúrate de ingresar **/foo/* en lugar de "**/foo/*"). Esta función solo está disponible para los recursos de Cloud Storage. Cuando ambos los patrones de inclusión y exclusión existen al mismo tiempo, los patrones de exclusión se se aplican primero.

  • Especificaciones de JSON o CSV: Te permiten proporcionar información adicional. sobre datos semiestructurados, como CSV y JSON, para mejorar la exactitud de Resultados de descubrimiento.

    • En el caso de los archivos CSV, puedes proporcionar cualquiera de las siguientes opciones:

      • Delimitador: Este campo acepta un carácter, excepto \r y \n. Si se proporciona más de un carácter, solo el primer carácter de la una cadena vacía. Si no se proporciona, Discovery usa una coma como delimitador.

      • Cantidad de filas de encabezado: Este campo acepta los valores 0 o 1. El valor predeterminado es 0. Cuando el valor es 0, las campañas discovery realizan inferencia de encabezado y, si se detecta un encabezado, Detección extrae los nombres de columna del encabezado y restablece el valor a 1.

      • Codificación: este campo acepta nombres de codificación de string, como UTF-8, US-ASCII o ISO-8859-1. Si no se especifica nada, UTF-8 se usa como el valor predeterminado.

      • Inhabilitar inferencia de tipo: este campo acepta un valor booleano. Es Se establece en false de forma predeterminada. Para los datos CSV, si inhabilitas la inferencia de tipo, todas las columnas se registran como cadenas.

    • Para los archivos JSON, puedes proporcionar cualquiera de las siguientes opciones:

      • Codificación: este campo acepta nombres de codificación de string, como UTF-8, US-ASCII o ISO-8859-1. Si no se especifica nada, se usa UTF-8. de forma predeterminada.

      • Inhabilitar la inferencia del tipo de datos: este campo acepta un valor booleano. Es Se establece en false de forma predeterminada. Para los datos JSON, si inhabilitas la inferencia de tipo, todas las columnas se registran como sus tipos primitivos (cadena, número o booleanas).

Publicar metadatos

Cuando creas una zona de datos en tu lake de Dataplex, Dataplex crea un conjunto de datos de BigQuery en el proyecto que contiene el lake. Dataplex publica tablas en ese conjunto de datos para las tablas descubiertas en los buckets de Cloud Storage que se agregaron al zona de datos como recursos. El conjunto de datos se conoce como un conjunto publicar conjunto de datos correspondiente a la zona.

Cada zona de datos de Dataplex se asigna a un conjunto de datos en BigQuery o una base de datos en Dataproc Metastore, en la que la información de los metadatos está disponible automáticamente.

Puedes editar los metadatos descubiertos automáticamente. como el nombre o esquema de una tabla, usando la API de metadatos de Dataplex.

Ver tablas y conjuntos de archivos descubiertos

Puedes buscar tablas y conjuntos de archivos descubiertos en Dataplex Vista de Búsqueda en la consola de Google Cloud.

Abrir la Búsqueda

Para obtener resultados de la búsqueda más precisos, usa filtros específicos de Dataplex, como nombres de zonas de datos y lakes. Los 50 elementos principales por faceta se que se muestra en la lista de filtros. Para encontrar más elementos, consulta la en el cuadro de búsqueda.

Cada entrada contiene metadatos técnicos y operativos detallados.

Desde la página de detalles de entrada, puedes consultar la tabla en BigQuery. y ver los detalles del registro correspondientes de Dataproc Metastore.

Si una tabla de Cloud Storage se puede publicar en BigQuery como una tabla externa, podrás ver lo siguiente en su vista de detalles de entrada:

  • Referencias de tablas externas de BigQuery
  • Un botón para Abrir en BigQuery y comenzar a analizar los datos en BigQuery.

Las entradas de metadatos de Dataplex son visibles se puede buscar en Data Catalog. Para obtener más información, consulta la referencia de búsqueda de Data Catalog.

Todas las entradas descubiertas se pueden ver con la API de metadatos de Dataplex.

Acciones de descubrimiento

El descubrimiento genera las siguientes acciones del administrador cuando los problemas relacionados con los datos se detectan durante los análisis.

Formato de datos no válido

Se incluyen las siguientes acciones:

  • Formato de datos incoherente en una tabla Por ejemplo, archivos de distintos formatos existen con el mismo prefijo de tabla.

  • Formato de datos no válido en las zonas seleccionadas (datos que no están en los formatos Avro, ORC ni Parquet).

Esquema incompatible

Se incluyen las siguientes acciones:

  • Un esquema que detectó Discovery no es compatible con el esquema de tabla activo en la API de metadatos en Dataproc Metastore. Los esquemas A y B son incompatibles en los siguientes casos:

    • A y B comparten campos con el mismo nombre, pero son incompatibles y diferentes tipos de datos. Por ejemplo, string y número entero.

    • A y B no tienen campos superpuestos.

    • A y B tienen al menos un campo no anulable que no se encuentra en el otro esquema.

  • El esquema se desvía en relación con un esquema administrado por el usuario en la zona seleccionada.

Definición de partición no válida

Se incluyen las siguientes acciones:

  • Los nombres de las particiones no son coherentes. Por ejemplo: gs://sales_data/year=2020/month=10/day=01 y gs://sales_data/year=2020/region=us

  • Nomenclatura de particiones sin estilo Hive en la zona de datos seleccionada. Para ejemplo, gs://sales_data/2020/10/01 en lugar de gs://sales_data/year=2020/month=10/day=01

Faltan datos

Se incluyen las siguientes acciones:

  • En la zona de datos seleccionados, los datos subyacentes de una tabla registrada o el conjunto de archivos. En otras palabras, una tabla de zonas seleccionadas o conjunto de archivos descubierto y registrado, pero luego se borraron sus datos subyacentes. Puedes solucionar este problema, ya sea reabasteciendo los datos o borrar la entrada de metadatos

Resolver acciones de descubrimiento

Los análisis de descubrimiento posteriores verifican los datos con acciones. Cuando se corrige el problema que activa la acción, la acción se resuelve automáticamente con el próximo análisis programado de descubrimiento.

Otras acciones

Además de las acciones de descubrimiento anteriores, existen tres otros tipos de acciones relacionadas con el estado de los recursos y la política de seguridad de datos en Dataplex.

  • Recurso faltante: No se encontró el bucket o conjunto de datos subyacente correspondiente a un activo existente.

  • Recurso no autorizado: Dataplex no tiene suficiente permisos para realizar descubrimientos o aplicar políticas de seguridad al bucket o conjunto de datos que administra Dataplex

  • Problemas con la propagación de políticas de seguridad: políticas de seguridad especificadas para un lake, una zona o un recurso determinado no se pudieron propagar correctamente al de buckets o conjuntos de datos subyacentes. Mientras que las demás acciones se realizan en el recurso este tipo de acción podría aumentarse a nivel del lake, la zona y el recurso.

Estos tipos de acciones se resuelven automáticamente cuando el recurso o problemas de configuración de seguridad.

Preguntas frecuentes

¿Qué debo hacer si el esquema inferido por el descubrimiento es incorrecto?

Si el esquema inferido es diferente de lo que se espera para una tabla determinada, puede anular el esquema inferido mediante la actualización de los metadatos con el API de metadatos. Asegúrate de establecer userManaged en true para que tu edición no se reemplace en los siguientes casos Análisis de descubrimiento.

¿Cómo excluyo archivos de un análisis de Discovery?

De forma predeterminada, Discovery excluye ciertos tipos de archivos de análisis, que incluye lo siguiente:

  • _SUCCESS
  • _started
  • _committed
  • _metadata, _METADATA, _Metadata
  • _common_metadata, _COMMON_METADATA
  • Archivos que comienzan con README o readme
  • Los directorios que comienzan con base_, delta_, delete_delta_, bucket_ seguida de un número
  • Directorios que comienzan con .

Puedes especificar patrones de inclusión o exclusión adicionales mediante el de descubrimiento a nivel de la zona o del recurso, o mediante API de metadatos.

¿Qué debo hacer si la agrupación de tablas que detecta el descubrimiento es demasiado detallada?

Si las tablas detectadas por Discovery están en un nivel más detallado en comparación con la ruta raíz de la tabla, por ejemplo, cada instancia cada partición se registra como una tabla, esto puede deberse a varias razones:

  • Existen diferencias de formato, como una combinación de archivos Avro y Parquet, en la ruta raíz esperada de la tabla, que divide la tabla en grupos más pequeños.

  • Hay diferentes tipos de incompatibilidades de esquema en la tabla esperada. raíz, que dividen la tabla en grupos más pequeños.

Puedes resolver este problema de cualquiera de las siguientes maneras:

  • Corrige las diferencias de formato o esquema para que todos los archivos en la misma raíz de la tabla de ruta de acceso tengan un formato coherente y un esquema compatible.

  • Excluye archivos heterogéneos con la configuración de patrón de exclusión como parte de la configuración de zona o recurso o la API de metadatos.

Luego de aplicar uno de los pasos correctivos, en las próximas análisis de descubrimiento, ocurre lo siguiente:

  • Las tablas existentes de nivel inferior se quitan automáticamente de la La API de metadatos de Dataplex, BigQuery, Dataproc Metastore y Data Catalog.
  • En su lugar, se crea una nueva tabla de nivel superior con la ruta raíz de tabla esperada.

¿Cómo especifico nombres de tablas?

Puedes especificar nombres de tablas con la API de metadatos.

¿Qué sucede si creo tablas manualmente en Dataproc Metastore o BigQuery?

Cuando se habilita el descubrimiento para un recurso determinado, no es necesario para registrar entradas de forma manual en Dataproc Metastore en BigQuery.

Puedes definir manualmente el nombre de la tabla, el esquema y las definiciones de partición, mientras que desactivando Dataplex Discovery. Por otro lado, debes hacer lo siguiente:

  1. Crea una tabla especificando solo la información requerida, como la ruta raíz de la tabla.
  2. Usa Dataplex Discovery para completar el resto de los metadatos, como las definiciones de esquema y partición.
  3. Mantén actualizados los metadatos.

¿Qué debo hacer si mi tabla no aparece en BigQuery?

Aunque los metadatos de Dataplex se registran de forma centralizada en el de metadatos estándar, solo las tablas de Cloud Storage compatibles Los datos de BigQuery se publican en BigQuery como recursos en diferentes tipos de tablas particionadas. Como parte de los detalles de entrada de la tabla en la API de metadatos, puedes encontrar un marcador de compatibilidad de BigQuery que indica qué entidades se publican en BigQuery y por qué.

Próximos pasos