Esegui la migrazione dalla versione precedente di Dataform

Dataform legacy verrà deprecato il 26 febbraio 2024. Trascorso questo periodo non potrai più accedere ai progetti legacy. Questo documento descrive le differenze tra la versione precedente di Dataform e Dataform in Google Cloud e mostra come importare un modello progetto Dataform in Dataform in Google Cloud.

Informazioni sulle differenze tra la versione precedente di Dataform e Dataform in Google Cloud

Dataform è un servizio serverless che consente agli analisti di dati di sviluppare e eseguire il deployment di tabelle, tabelle incrementali o viste in BigQuery. Dataform offre un ambiente web per lo sviluppo dei flussi di lavoro SQL, connessione con GitHub, GitLab, Bitbucket e Azure DevOps Services integrazione ed esecuzione continua ed esecuzione del flusso di lavoro.

Dataform in Google Cloud è diverso da la versione precedente di Dataform nei seguenti modi:

  • Dataform in Google Cloud supporta la connessione di Dataform ai repository Bitbucket.
  • Il controllo dell'accesso si basa su IAM.
  • Configurazione di un limite di contemporaneità delle query (concurrentQueryLimit) in il file delle impostazioni del flusso di lavoro viene rimosso.

    Nella versione precedente di Dataform, i limiti di contemporaneità hanno impedito a Dataform dall'invio di troppe query simultanee a BigQuery. Per gestire la contemporaneità in Dataform in Google Cloud, consigliamo l'abilitazione delle code di query di BigQuery.

  • Gli ambienti legacy sono sostituiti configurazioni della release.

  • Le pianificazioni precedenti sono sostituite da configurazioni del flusso di lavoro.

  • Gli avvisi di errore del flusso di lavoro sono configurati in Cloud Logging.

  • Dataform in Google Cloud e la versione precedente di Dataform usano diversi Versioni di Gestione dei partner di rete e diversi formati di package-lock.json.

    Sviluppare un flusso di lavoro SQL sia nella versione precedente di Dataform Dataform in Google Cloud, utilizza il formato package-lock.json legacy per l'installazione dei pacchetti. Non installare pacchetti in Dataform in Google Cloud fino a quando non eseguirai la migrazione completa a Dataform in Google Cloud.

Per saperne di più sulle funzionalità di Dataform in Google Cloud, consulta la Panoramica delle funzionalità di Dataform.

Funzionalità di Dataform legacy non supportate in Google Cloud al momento

Le seguenti funzionalità della versione precedente di Dataform non sono supportate in Dataform in Google Cloud al momento:

  • Esecuzione manuale dei test delle unità.
  • Ricerca di contenuti dei file nelle aree di lavoro di sviluppo.

Questo elenco verrà aggiornato continuamente come nuove funzionalità di Viene rilasciato Dataform in Google Cloud.

Limitazioni note

Dataform in Google Cloud presenta le seguenti limitazioni note:

  • Dataform in Google Cloud viene eseguito su un runtime V8 semplice e non supportare funzionalità e moduli aggiuntivi forniti da Node.js. Se le tue il codebase esistente richiede moduli Node.js, devi rimuovere queste dipendenze.

    I progetti senza un campo nome in package.json generano differenze su package-lock.json ogni volta che vengono installati i pacchetti. Per evitare che ciò accada, devi aggiungere una proprietà name in package.json.

  • git+https:// URL per le dipendenze in package.json non sono supportati.

    Converti questi URL in URL di archivio https:// semplici. Ad esempio, converti git+https://github.com/dataform-co/dataform-segment.git#1.5 a https://github.com/dataform-co/dataform-segment/archive/1.5.tar.gz.

  • A partire dal core Dataform 3.0.0., Dataform non distribuisce un'immagine Docker. Puoi creare il tuo modello l'immagine Docker di Dataform, che puoi usare per eseguire l'equivalente i comandi dell'interfaccia a riga di comando Dataform. Per creare la tua immagine Docker, consulta Containerizzare un'applicazione nella documentazione Docker.

Prima di iniziare

  1. Accedi al tuo account Google Cloud. Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.

  4. Enable the BigQuery and Dataform APIs.

    Enable the APIs

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.

  7. Enable the BigQuery and Dataform APIs.

    Enable the APIs

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per importare un progetto legacy, chiedi all'amministratore di concederti Ruolo IAM Amministratore Dataform (roles/dataform.admin) nei repository. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.

Potresti anche riuscire a ottenere le autorizzazioni richieste tramite la ruoli o altri ruoli predefiniti ruoli.

Importa un progetto precedente

Per importare un progetto legacy in Dataform in Google Cloud: segui questi passaggi nella console Google Cloud:

  1. Assicurati che il tuo progetto Dataform in app.dataform.co sia connesso a GitHub o GitLab.
  2. Nella console Google Cloud, vai alla pagina Dataform.

    Vai alla pagina Dataform

  3. Crea un nuovo repository.

  4. Connetti il repository repository Git remoto in cui si trova il progetto legacy.

Configura il progetto Dataform importato

Per passare dal progetto legacy a Dataform in Google Cloud: segui questi passaggi:

  1. Nella console Google Cloud, vai alla pagina Dataform.

    Vai alla pagina Dataform

  2. Seleziona il repository.

  3. Crea un'area di lavoro di sviluppo.

  4. Vai all'area di lavoro di sviluppo.

  5. Nel file delle impostazioni del flusso di lavoro, specificare una località predefinita.

workflow_settings.yaml

Aggiungi il parametro defaultLocation nel seguente formato:

defaultLocation: DATASET_LOCATION,

Sostituisci DATASET_LOCATION con la posizione predefinita del tuo Set di dati BigQuery, ad esempio US, EU o us-east1.

Il parametro defaultLocation viene ignorato da app.dataform.co.

dataform.json

Aggiungi il parametro defaultLocation nel seguente formato:

"defaultLocation": "DATASET_LOCATION",

Sostituisci DATASET_LOCATION con la posizione predefinita del tuo Set di dati BigQuery, ad esempio US, EU o us-east1.

Il parametro defaultLocation viene ignorato da app.dataform.co.

  1. Elimina package-lock.json.
  2. In package.json, procedi nel seguente modo:

    1. Esegui l'upgrade di @dataform/core a 3.0.0-beta.2 o versioni successive.
    2. Aggiungi un nome pacchetto nel seguente formato:

      {
          "name": "PACKAGE_NAME",
          "dependencies": {
              "@dataform/core": "^3.0.0-beta.2"
          }
      }
      

      Sostituisci PACKAGE_NAME con un nome per il pacchetto Dataform, ad esempio il nome del tuo progetto.

    3. Converti git+https:// URL nelle dipendenze package.json in https:// URL di archivio normali.

      Ad esempio, converti git+https://github.com/dataform-co/dataform-segment.git#1.5 a https://github.com/dataform-co/dataform-segment/archive/1.5.tar.gz.

      Se utilizzi git+https:// URL nei pacchetti Dataform predefiniti, consulta le istruzioni di installazione aggiornate per questi pacchetti pagine di rilascio, ad esempio pagina di rilascio dataform-segment.

  3. Configura le autorizzazioni BigQuery e le autorizzazioni utente.

  4. Esegui la migrazione degli ambienti da environments.json alle configurazioni di release.

  5. Esegui la migrazione delle pianificazioni da environments.json alle configurazioni del flusso di lavoro.

  6. Configurare gli avvisi utilizzando Cloud Logging.

Passaggi successivi