当我启动气流计划和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