如何解决在Airflow DAG python文件中读取存储在hdfs中的文件
我是Airflow和Python的新手。我想从Airflow Pythonoperator中的HDFS读取文件。
我想在dag.py文件(包含DAG信息的python文件)中读取此文件。
但是,我不明白如何添加 hdfs的依赖项或其他依赖项并在dag.py文件中进行读取。
解决方法
目前,我正在使用 bashoperator 调用 python 文件并从 HDFS 读取内容
from airflow import DAG
from airflow.operators.bash_operator import BashOperator
from airflow.utils.dates import days_ago
from datetime import datetime,timedelta
default_args = {
'owner': 'airflow','start_date': days_ago(1)
}
# Defining the DAG using Context Manager
with DAG(
'bash_write',default_args=default_args,schedule_interval=None,) as dag:
create_operator = BashOperator(
task_id = 'create_task',bash_command = 'python /usr/local/airflow/dags/source.py',)
create_operator
python 脚本:
import os
s=os.system("hdfs dfs -cat /home/xxx/testing/input")
print(s)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。