我正在尝试从边缘节点使用Hdfs_Sensor运算符,但遇到了hdfs_conn_id应该是什么
这是我的爸爸:
from airflow import DAG
from airflow.operators.sensors import HdfsSensor as HdfsSensorImp
default_args = {
'owner': 'anair',
'depends_on_past': False,
'start_date': datetime(2019,5,10),
'email_on_failure': False,
'email_on_retry': True,
'retries': 1,
'retry_delay': timedelta(minutes=5)
}
dag = DAG(
'HdfsSensor_test', default_args=default_args, schedule_interval='*/10 * * * *')
hdfs_sense_open = HdfsSensorImp(
task_id='hdfs_sense_open',
filepath='/dev/dcdr/dv/coal/_SUCCESS',
hdfs_conn_id='???',
dag=dag)
我的hdfs_conn_id应该是什么?气流的新手,任何帮助将不胜感激。谢谢
答案 0 :(得分:0)
hdfs_conn_id
指的是在气流上创建的hdfs连接的名称/ id。
您可以在Airflow UI中创建新的连接。 管理员>连接>创建标签
答案 1 :(得分:0)
这对我有用!
HDFS 连接与任何 sftp/ftp 连接非常相似,因此如果您创建类似的新连接,这没什么大不了的。
但是,如果你想要一个整洁的环境,你必须先用
安装它的提供者pip3 install apache-airflow-providers-apache-hdfs
(我使用的是 python 3,所以如果你使用的是 2,只需从上面的命令中删除 3)
安装成功后,重新启动网络服务器和调度程序服务,前往 Airflow UI > Admin > Connections > +
您可以在 Type 中看到 HDFS 现在存在。 只需添加输入有关 hdfs 的 SSH 内容(Host、User、Pass、..),它就会起作用。 连接 ID 是您稍后将在代码中使用的。
祝你好运。