通过文件目标进行完美缓存
Prefect caching through a file target
阅读有关基于文件目标的输出缓存的文档后
,我认为这个工作流程应该是输出缓存的示例:
from time import sleep
from prefect import Flow, task
from prefect.engine.results import LocalResult
@task(target="func_task_target.txt", checkpoint=True,
result=LocalResult(dir="~/.prefect"))
def func_task():
sleep(5)
return 99
with Flow("Test-cache") as flow:
func_task()
if __name__ == '__main__':
flow.run()
我希望 func_task
到 运行 一次,得到缓存,然后在下次 运行 流时使用缓存的值。不过好像每次都是func_task
运行s
我哪里错了?还是我误解了文档?
尝试将环境变量 PREFECT__FLOWS__CHECKPOINTING
设置为 True
import os
os.environ["PREFECT__FLOWS__CHECKPOINTING"] = "true"
您还可以更改结果目录
os.environ["PREFECT__HOME_DIR"] = "path to dir"
阅读有关基于文件目标的输出缓存的文档后 ,我认为这个工作流程应该是输出缓存的示例:
from time import sleep
from prefect import Flow, task
from prefect.engine.results import LocalResult
@task(target="func_task_target.txt", checkpoint=True,
result=LocalResult(dir="~/.prefect"))
def func_task():
sleep(5)
return 99
with Flow("Test-cache") as flow:
func_task()
if __name__ == '__main__':
flow.run()
我希望 func_task
到 运行 一次,得到缓存,然后在下次 运行 流时使用缓存的值。不过好像每次都是func_task
运行s
我哪里错了?还是我误解了文档?
尝试将环境变量 PREFECT__FLOWS__CHECKPOINTING
设置为 True
import os
os.environ["PREFECT__FLOWS__CHECKPOINTING"] = "true"
您还可以更改结果目录
os.environ["PREFECT__HOME_DIR"] = "path to dir"