Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

As an infra / recipe developer, I want to know which data processing tool we will use #26

Closed
1 of 3 tasks
Tracked by #36
trey-stafford opened this issue Apr 9, 2024 · 6 comments
Closed
1 of 3 tasks
Tracked by #36
Assignees

Comments

@trey-stafford
Copy link
Member

trey-stafford commented Apr 9, 2024

Options:

  • Lugi (currently used by QGreenland)
  • parsl/ray.io (currently used by ADC/PDG)
  • Apache beam (currently used by pangeo-forge)
  • Prefect (previously used by pangeo-forge)

Evaluation criteria:

  • Compatibility: can it be deployed on ADC k8s
  • Flexibility/portability: can it be deployed on other systems (e.g., HPC, Google compute, etc.)
  • Streaming and/or batch processing capabilities?

Evaluation spreadsheet: https://docs.google.com/spreadsheets/d/1f8CgOu1wXnaoAfEODrCkxNfY-Xq_as1AJPrPVK74lM0/edit#gid=0

@mfisher87 mfisher87 changed the title As an infra/ recipie developer, I want to know which data processing tool we will use As an infra / recipe developer, I want to know which data processing tool we will use Apr 9, 2024
@mfisher87 mfisher87 transferred this issue from QGreenland-Net/qgreenland-net.github.io Apr 9, 2024
@trey-stafford
Copy link
Member Author

@trey-stafford
Copy link
Member Author

trey-stafford commented Apr 11, 2024

Repo exploring the use of ray: https://github.com/QGreenland-Net/ray-exploration

Initial thoughts:

  • Documentation is robust
  • Multiple pathways for deployment / orchestration on kubernetes
  • Feels "enterprise-y". Focus is on AI/ML, although Ray core can be used for a variety of more generic use-cases.

@trey-stafford
Copy link
Member Author

trey-stafford commented Apr 12, 2024

Repo exploring the use of parsl: https://github.com/QGreenland-Net/parsl-exploration

Initial thoughts:

  • Some elements don't feel "pythonic". E.g., "magic" kwargs on decorated functions (stdout and stderr on functions decorated wtih @bash_app)
  • Limited documentation on how to use parsl on kubernetes
    • Workers require ability to connect to the machine running the parsl script, which means that machine must have a routable address. We work around this by sending the parsl script to kubernetes in a ConfigMap and running it with a Job. Is there a better way?
  • Some error states result in 'orphaned' pods that go into a restart loop and need to be manually cleaned-up.
  • Some issues around logging from e.g, @bash_app decorated functions. These write logs to files that have to be manually managed/inspected. There are some higher-level logging tools for monitoring parsl, however (see here)

@mfisher87
Copy link
Member

We met about this today, but put the decision on hold while we continue to investigate ADC use cases on our workflow tech options.

https://docs.google.com/document/d/1ZcTcmVtUSjyWAy0TWnTWEWQ4Y2gqhub0yNaqVwpKxDY/edit

@trey-stafford
Copy link
Member Author

We're planning on moving forward with Argo for OGDC workflows

@trey-stafford
Copy link
Member Author

Confirmed that we plan to move forward with using Argo!

@github-project-automation github-project-automation bot moved this from Review to Done in QGreenland-Net Nov 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Archived in project
Status: Backlog
Development

No branches or pull requests

2 participants