python-3.x dagster你能通过API触发一个任务运行吗?

hs1rzwqc  于 2023-02-26  发布在  Python
关注(0)|答案(1)|浏览(201)

4.我一直在到处寻找答案,但似乎找不到我要找的东西
我想创建一个API端点,它可以将信息传递给dagster资产并触发运行。

@asset
def player_already_registered(player_name: str):
    q = text(
            f'''
                SELECT 
                    COUNT(*)
                FROM
                    `player_account_info`
                WHERE
                    summonerName = :player_name
            '''
        )

    result = database.conn.execute(q, player_name=player_name).fetchone()[0]
    return bool(result)

假设我已经创建了一个端点,可以通过get-parameter传递player_name,那么我如何将参数传递给资产,然后运行作业本身呢?

46qrfjad

46qrfjad1#

1.使用提供的示例对象(https://georgheiler.com/2022/02/02/interactive-dagster-debugging/)你可以使用python对象"instance"来访问所有的东西,就像链接中显示的那样,你也可以从dagit访问它。(我没有过多地使用它,但是mybe the linke会帮助你。
1.使用Dagster Graph ql api(https://docs.dagster.io/concepts/dagit/graphql)目前还没有完成任何操作,所以我只能指向链接
1.使用分区(https://docs.dagster.io/_modules/dagster/_core/definitions/partition#dynamic_partitioned_config)
您可以使用分区来触发每个分区的作业执行。我经常使用这个方法,因为它让您真正控制使用哪些分区(参数)实现了哪些资产。链接指向动态分区的示例,该示例由传感器发现,然后传感器为每个分区执行作业,并在dagit中跟踪分区。
希望这能帮上忙。

相关问题