Created
November 30, 2022 01:25
-
-
Save anna-geller/8958f1bb0a896371c1e38893770a0072 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
from prefect import task, flow, get_run_logger | |
from prefect_dask import DaskTaskRunner | |
import time | |
@task | |
def extract() -> list: | |
logger = get_run_logger() | |
logger.info("extract") | |
return [1, 2, 3, 4, 5, 6] | |
@task | |
def transform(number: int) -> int: | |
logger = get_run_logger() | |
logger.info(f"transform {number}") | |
time.sleep(1) | |
return number * 2 | |
@task | |
def load(numbers: list) -> list: | |
logger = get_run_logger() | |
logger.info("load") | |
result = [i for i in numbers if i] | |
logger.info(result) | |
return result | |
# address="tcp://daskcluster-scheduler:8786", | |
@flow(task_runner=DaskTaskRunner()) | |
def dask_flow(): | |
numbers = extract() | |
transformed_numbers = [] | |
for i in numbers: | |
transformed_numbers.append(transform(transform(i))) | |
load(numbers=transformed_numbers) | |
if __name__ == "__main__": | |
dask_flow() |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment