Panoramica di Cloud Composer

Cloud Composer 1 | Cloud Composer 2

Cloud Composer è un servizio di orchestrazione del flusso di lavoro completamente gestito, che consente di creare, pianificare, monitorare e gestire pipeline di flusso di lavoro su cloud e data center on-premise.

Cloud Composer è basato sul famoso progetto open source Apache Airflow e opera utilizzando il linguaggio di programmazione Python.

Utilizzando Cloud Composer anziché un'istanza locale di Apache Airflow, puoi sfruttare il meglio di Airflow senza costi di installazione o gestione. Cloud Composer consente di creare rapidamente ambienti Airflow gestiti e di utilizzare gli strumenti nativi di Airflow, come la potente interfaccia web e gli strumenti a riga di comando di Airflow, che ti consentono di concentrarti sui flussi di lavoro e non sull'infrastruttura.

Apache Airflow e Cloud Composer

Workflows, DAG e attività

Nell'analisi dei dati, un flusso di lavoro rappresenta una serie di attività per l'importazione, la trasformazione, l'analisi o l'utilizzo dei dati. In Airflow, i flussi di lavoro vengono creati utilizzando i DAG, o "grafici diretti aciclici".

Relazione tra DAG e attività
Figura 1. Relazione tra DAG e attività

Un DAG è una raccolta di attività che vuoi pianificare ed eseguire, organizzate in modo da riflettere le loro relazioni e dipendenze. I DAG vengono creati in script Python, che definiscono la struttura dei DAG (attività e relative dipendenze) utilizzando il codice.

Ogni attività in un DAG può rappresentare quasi qualsiasi cosa, ad esempio un'attività può eseguire una delle seguenti funzioni:

  • Preparazione dei dati per l'importazione
  • Monitoraggio di un'API
  • Invio di un'email
  • Esecuzione di una pipeline

Un DAG non deve riguardare la funzione di ogni attività costitutiva: il suo scopo è garantire che ogni attività venga eseguita al momento giusto, nell'ordine giusto o con la corretta gestione dei problemi.

Flussi di lavoro, DAG e attività di Airflow

Per ulteriori informazioni su DAG e attività, consulta la documentazione di Apache Airflow.

Ambienti Cloud Composer

Per eseguire i flussi di lavoro, devi prima creare un ambiente. L'esecuzione di Airflow dipende dall'esecuzione di molti microservizi, quindi Cloud Composer fornisce i componenti di Google Cloud per eseguire i flussi di lavoro. Questi componenti sono noti collettivamente come ambiente Cloud Composer.

Gli ambienti sono deployment Airflow indipendenti basati su Google Kubernetes Engine. Funzionano con altri servizi Google Cloud usando connettori integrati in Airflow. Puoi creare uno o più ambienti in un singolo progetto Google Cloud. Puoi creare ambienti Cloud Composer in qualsiasi regione supportata.

Per un'analisi approfondita dei componenti di un ambiente, consulta Architettura dell'ambiente di Cloud Composer.

Funzionalità di Cloud Composer

Quando utilizzi Cloud Composer, puoi gestire e utilizzare funzionalità come:

  • Ambienti Airflow
  • Gestione Airflow
  • Configurazione Airflow
  • DAG Airflow (flussi di lavoro)
  • Plug-in Apache personalizzati

Per scoprire come Cloud Composer utilizza le funzionalità di Airflow, come i DAG di Airflow, i parametri di configurazione di Airflow, i plug-in personalizzati e le dipendenze Python, consulta Funzionalità di Cloud Composer.

Domande frequenti

Quale versione di Apache Airflow utilizza Cloud Composer?

Cloud Composer supporta sia Airflow 1 che Airflow 2.

Gli ambienti Cloud Composer si basano su immagini Cloud Composer. Quando crei un ambiente, puoi selezionare un'immagine con una versione specifica di Airflow.

Puoi controllare la versione di Apache Airflow del tuo ambiente. Puoi decidere di eseguire l'upgrade del tuo ambiente a una versione più recente dell'immagine Cloud Composer. Ogni release di Cloud Composer supporta diverse versioni di Apache Airflow.

Posso utilizzare l'interfaccia utente e l'interfaccia a riga di comando native di Airflow?

Puoi accedere all'interfaccia web di Apache Airflow del tuo ambiente. Ciascuno dei tuoi ambienti ha la propria UI Airflow. Per ulteriori informazioni sull'accesso all'interfaccia utente di Airflow, vedi Interfaccia web di Airflow.

Per eseguire i comandi dell'interfaccia a riga di comando di Airflow nei tuoi ambienti, puoi utilizzare i comandi gcloud. Per ulteriori informazioni sull'esecuzione dei comandi dell'interfaccia a riga di comando di Airflow negli ambienti Cloud Composer, consulta Interfaccia a riga di comando di Airflow.

Posso utilizzare il mio database come DB di metadati Airflow?

Cloud Composer utilizza un servizio di database gestito per il database di metadati Airflow. Non è possibile utilizzare un database fornito dall'utente come DB metadati Airflow.

Posso utilizzare il mio cluster come cluster Cloud Composer?

Cloud Composer utilizza il servizio Google Kubernetes Engine per creare, gestire ed eliminare i cluster di ambiente in cui vengono eseguiti i componenti Airflow. Questi cluster sono completamente gestiti da Cloud Composer.

Non è possibile creare un ambiente Cloud Composer basato su un cluster Google Kubernetes Engine autogestito.

Posso utilizzare il mio Container Registry?

Cloud Composer utilizza il servizio Artifact Registry per gestire i repository di immagini container utilizzati dagli ambienti Cloud Composer. Non è possibile sostituirlo con un Container Registry fornito dall'utente.

Gli ambienti Cloud Composer sono a livello di zona o di regione?

Gli ambienti Cloud Composer 1 sono a livello di zona.

Gli ambienti Cloud Composer 2 hanno un database di metadati Airflow a livello di zona e un livello di pianificazione ed esecuzione Airflow a livello di regione. Scheduler, worker e server web di Airflow vengono eseguiti nel livello di esecuzione di Airflow.

Passaggi successivi