Orchestrazione delle pipeline TFX

Orchestratore personalizzato

TFX è progettato per essere portabile in più ambienti e framework di orchestrazione. Gli sviluppatori possono creare orchestratori personalizzati o aggiungere ulteriori orchestratori oltre a quelli predefiniti supportati da TFX, ovvero Local , Vertex AI , Airflow e Kubeflow .

Tutti gli orchestratori devono ereditare da TfxRunner . Gli agenti di orchestrazione TFX accettano l'oggetto pipeline logico, che contiene argomenti, componenti e DAG della pipeline e sono responsabili della pianificazione dei componenti della pipeline TFX in base alle dipendenze definite dal DAG.

Ad esempio, esaminiamo come creare un orchestratore personalizzato con BaseComponentLauncher . BaseComponentLauncher gestisce già driver, esecutore ed editore di un singolo componente. Il nuovo orchestratore deve solo pianificare ComponentLauncher in base al DAG. Viene fornito un semplice orchestratore come LocalDagRunner , che esegue i componenti uno per uno nell'ordine topologico del DAG.

Questo orchestratore può essere utilizzato in Python DSL:

def _create_pipeline(...) -> dsl.Pipeline:
  ...
  return dsl.Pipeline(...)

if __name__ == '__main__':
  orchestration.LocalDagRunner().run(_create_pipeline(...))

Per eseguire sopra il file DSL Python (supponendo che si chiami dsl.py), procedi semplicemente come segue:

python dsl.py