小编jd2*_*050的帖子

具有单一任务的 Apache Airflow DAG

我是 Apache Airflow 的新手。互联网上有很多基本 DAG 的示例。不幸的是,我没有找到任何单任务 DAG 的示例。

大多数 DAG 示例在 .py 脚本末尾包含位移运算符,它定义任务顺序。例如:

# ...our DAG's code...
task1 >> task2 >> task3
Run Code Online (Sandbox Code Playgroud)

但如果我的 DAG 目前只有一项任务怎么办?我的问题是 - 我是否需要在 Python 文件末尾使用这个单一任务的名称?或者,如果我们的范围内只有 1 个任务,Airflow 将自行处理它,并且下面的最后一行代码是多余的?

from datetime import timedelta
from airflow.operators.bash import BashOperator
from airflow.utils.dates import days_ago

default_args = {
    'owner': 'airflow',
    'depends_on_past': False,
    'email': ['airflow@example.com'],
    'email_on_failure': False,
    'email_on_retry': False,
    'retries': 1,
}
with DAG(
    'tutorial',
    default_args=default_args,
    description='A simple tutorial DAG',
    schedule_interval=timedelta(days=1),
    start_date=days_ago(2),
    tags=['example'],
) as dag:

    t1 = BashOperator(
        task_id='print_date',
        bash_command='date',
    ) …
Run Code Online (Sandbox Code Playgroud)

python airflow

7
推荐指数
1
解决办法
2483
查看次数

使用Java 8 Streams API列出迭代和设置值

我试图了解如何使用Java 8 Streams API。

例如,我有以下两个类:

public class User {
    private String name;
    public String getName() { return name; }
    public void setName(String name) { this.name = name; }
}

public class UserWithAge {
    private String name;
    public String getName() { return name; }
    public void setName(String name) { this.name = name; }

    private int age;
    public int getAge() { return age; }
    public void setAge(int age) { this.age = age; }
}
Run Code Online (Sandbox Code Playgroud)

我有一个List<User>十个用户中的一个,我想将其转换List<UserWithAge>为十个具有相同名称且年龄不变的用户(例如27岁)中的一个。如何使用Java 8 Streams API(无循环,并且不修改上述类)来做到这一点?

java java-8 java-stream

4
推荐指数
1
解决办法
4558
查看次数

标签 统计

airflow ×1

java ×1

java-8 ×1

java-stream ×1

python ×1