Acerca de las diferencias entre Dataform heredado y Dataform en Google Cloud
Dataform es un servicio sin servidores para que los analistas de datos desarrollen y, luego, implementen tablas, tablas incrementales o vistas en BigQuery. Dataform ofrece un entorno web para el desarrollo de flujos de trabajo de SQL; conexión con GitHub, GitLab, Bitbucket y servicios de Azure DevOps, integración continua, implementación continua y ejecución de flujo de trabajo.
Dataform en Google Cloud se diferencia de Dataform heredado de las siguientes maneras:
- Dataform en Google Cloud admite la conexión de repositorios de Dataform a repositorios de Bitbucket.
- El control de acceso se basa en IAM.
Se quita la configuración de un límite de simultaneidad de consultas (
concurrentQueryLimit
) en el archivo de configuración del flujo de trabajo.En Dataform heredado, los límites de simultaneidad impidieron que Dataform envíe demasiadas consultas simultáneas a BigQuery. Para administrar la simultaneidad en Dataform en Google Cloud, recomendamos habilitar las colas de consultas de BigQuery.
Los entornos heredados se reemplazan por parámetros de configuración de lanzamiento.
Los programas heredados se reemplazan por los parámetros de configuración del flujo de trabajo.
Las alertas de fallas de flujos de trabajo se configuran en Cloud Logging.
Dataform en Google Cloud y Dataform heredado usan diferentes versiones de NPM y diferentes formatos de
package-lock.json
.Si deseas desarrollar un flujo de trabajo de SQL en Dataform heredado y Dataform en Google Cloud, usa el formato heredado
package-lock.json
para la instalación del paquete. No instales paquetes en Dataform en Google Cloud hasta que migres por completo a Dataform en Google Cloud.
Para obtener más información sobre las funciones de Dataform en Google Cloud, consulta Descripción general de las funciones de Dataform.
Las funciones heredadas de Dataform no se admiten en Google Cloud en este momento
Por el momento, las siguientes funciones de Dataform heredado no se admiten en Dataform en Google Cloud:
- Ejecución manual de pruebas de unidades.
Buscar contenido de archivos en lugares de trabajo de desarrollo.
Esta lista se actualizará de forma continua a medida que se lancen nuevas funciones de Dataform en Google Cloud.
Limitaciones conocidas
Dataform en Google Cloud tiene las siguientes limitaciones conocidas:
Dataform en Google Cloud se ejecuta en un entorno de ejecución V8 simple y no admite funciones ni módulos adicionales que proporciona Node.js. Si tu base de código existente requiere módulos de Node.js, debes quitar esas dependencias.
Los proyectos sin un campo de nombre en
package.json
generan diferencias enpackage-lock.json
cada vez que se instalan paquetes. Para evitar esto, debes agregar una propiedadname
enpackage.json
.git
+https://
URLs para dependencias enpackage.json
no son compatibles.Convierte esas URLs en URL de archivo
https://
sin formato. Por ejemplo, conviertegit+https://github.com/dataform-co/dataform-segment.git#1.5
enhttps://github.com/dataform-co/dataform-segment/archive/1.5.tar.gz
.
Antes de comenzar
- Accede a tu cuenta de Google Cloud. Si eres nuevo en Google Cloud, crea una cuenta para evaluar el rendimiento de nuestros productos en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud.
-
Habilita las API de BigQuery and Dataform.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud.
-
Habilita las API de BigQuery and Dataform.
Funciones obligatorias
Para obtener los permisos que necesitas para importar un proyecto heredado,
pídele a tu administrador que te otorgue el
rol de IAM de Administrador de Dataform (roles/dataform.admin
) en los repositorios.
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso.
Es posible que también puedas obtener los permisos necesarios a través de funciones personalizadas o, también, otras funciones predefinidas.
Importa un proyecto heredado
Para importar un proyecto heredado en Dataform en Google Cloud, sigue estos pasos en la consola de Google Cloud:
- Asegúrate de que el proyecto de Dataform en
app.dataform.co
esté conectado a GitHub o GitLab. En la consola de Google Cloud, ve a la página Dataform.
Conecta el repositorio al repositorio remoto de Git que contiene tu proyecto heredado.
Configura tu proyecto importado de Dataform
Para ajustar tu proyecto heredado a Dataform en Google Cloud, sigue estos pasos:
En la consola de Google Cloud, ve a la página Dataform.
Selecciona tu repositorio.
Ve al lugar de trabajo de desarrollo.
En el archivo de configuración del flujo de trabajo, especifica una ubicación predeterminada.
workflow_settings.yaml
Agrega el parámetro defaultLocation
con el siguiente formato:
defaultLocation: DATASET_LOCATION,
Reemplaza DATASET_LOCATION por la ubicación predeterminada de tu conjunto de datos de BigQuery, por ejemplo, US
, EU
o us-east1
.
app.dataform.co
ignora el parámetro defaultLocation
.
dataform.json
Agrega el parámetro defaultLocation
con el siguiente formato:
"defaultLocation": "DATASET_LOCATION",
Reemplaza DATASET_LOCATION por la ubicación predeterminada de tu conjunto de datos de BigQuery, por ejemplo, US
, EU
o us-east1
.
app.dataform.co
ignora el parámetro defaultLocation
.
- Borrar
package-lock.json
. En
package.json
, haz lo siguiente:- Actualiza
@dataform/core
a3.0.0-beta.2
o una versión posterior. Agrega un nombre de paquete en el siguiente formato:
{ "name": "PACKAGE_NAME", "dependencies": { "@dataform/core": "^3.0.0-beta.2" } }
Reemplaza PACKAGE_NAME por un nombre para tu paquete de Dataform, por ejemplo, el nombre de tu proyecto.
Convierte las URLs
git+https://
de las dependenciaspackage.json
en URLs de archivohttps://
sin formato.Por ejemplo, convierte
git+https://github.com/dataform-co/dataform-segment.git#1.5
enhttps://github.com/dataform-co/dataform-segment/archive/1.5.tar.gz
.Si usas URLs de
git+https://
en paquetes de Dataform compilados previamente, consulta las instrucciones de instalación actualizadas para estos paquetes en sus páginas de versiones, por ejemplo, la página de versiones de Dataform-segment.
- Actualiza
Configura los permisos de BigQuery y los permisos del usuario.
Migra entornos de
environments.json
a parámetros de configuración de lanzamiento.Migra los programas de
environments.json
a los parámetros de configuración del flujo de trabajo.
¿Qué sigue?
- Para obtener información sobre cómo migrar entornos y programas heredados a Dataform en Google Cloud, consulta Migra entornos y programas heredados.
- Para obtener más información sobre Dataform en Google Cloud, consulta Descripción general de Dataform.
- Para obtener más información sobre las funciones de Dataform en Google Cloud, consulta Descripción general de las funciones de Dataform.
- Para aprender a crear un repositorio, consulta Crea un repositorio de Dataform.
- Para obtener información sobre el ciclo de vida del código en Dataform y las formas de configurarlo, consulta Introducción al ciclo de vida del código en Dataform.