错误时,导入DAG文件在气流2.5.0



当我启动气流计划和web服务器时,我的bigdata.py文件没有被导入,下面是我得到的错误。

​Broken DAG: [/home/adminn/airflow/dags/bigdata.py] Traceback (most recent call last):
File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
File "<frozen importlib._bootstrap>", line 1004, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'airflow.providers.apache'

这是我写的DAG,我错过了什么吗?

这里我试图使用sqoop拉MySQL表并在HDFS中加载,并使用气流调度此操作。

from airflow.models import DAG
from airflow.contrib.operators.sqoop_operator import SqoopOperator
from airflow.utils.dates import days_ago

Dag_Sqoop_Import = DAG(dag_id="SqoopImport",
schedule_interval="* * * * *",
start_date=days_ago(2))
sqoop_mysql_import = SqoopOperator(conn_id="sqoop_local",
table="shipmethod",
cmd_type="import",
target_dir="/airflow_sqoopImport",
num_mappers=1,
task_id="SQOOP_Import",
dag=Dag_Sqoop_Import)
sqoop_mysql_import

回复感激,谢谢。

来自气流2。X提供程序不再默认包含,但您必须安装然后导入它们,并且导入路径更改为

在你的情况下,你必须:

  • 通过运行pip install 'apache-airflow-providers-apache-sqoop'
  • 安装sqoop提供程序
  • 将操作符的导入字符串更改为:from airflow.providers.apache.sqoop.operators.sqoop import SqoopOperator

下面是可用的提供商的完整列表:

https://airflow.apache.org/docs/apache-airflow-providers/packages-ref.html

这是您要查找的提供商:

https://airflow.apache.org/docs/apache-airflow-providers/packages-ref.html apache-airflow-providers-apache-sqoop

最新更新