-
Notifications
You must be signed in to change notification settings - Fork 0
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
Trial running the rechunking tool on Beam's Dask Runner #31
Comments
Can I ask a bit about where you're running Beam? Is this on JASMIN, or is it AWS-based? Is there somewhere we can read through the configuration? cc @albags (The context for asking was talking through the Argo Workflows setup that's being used with https://github.com/NERC-CEH/dri-ingestion - possible that Beam would be a good fit for image processing pipelines, and what's needed to ensure portability between one and the other?) |
Originally the idea is to trial it on JASMIN, specifically LOTUS, their HPC-like cluster, which has dask-gateway for ease of spinning up dask clusters
There will be once I've actually had a go at it! |
I realise a 'getting started' blurb and some more info might be helpful. There is limited configuration needed for Beam itself at this stage of our development - it largely figures stuff out for itself with the pipeline you've given it to run. The only things we've tweaked so far is 'num_workers' when running in parallel, the 'direct_running_mode' to tell it to run in serial or parallel, and 'auto_unique_labels' which allows multiple steps in the pipeline of the same name (e.g. Print, useful for debugging). The next step, covered by this here issue, is to move away from the limitations of the Direct Runner and use another, the first to try being the Dask Runner. What this does is allow a Beam pipeline to be translated into Dask parlance/objects/task-graphs etc. and run it wherever you have a dask cluster, such as the dask gateway that JASMIN maintains. This will probably require some more configuration, and is what I'm currently working on. |
Have successfully configured the dask gateway on JASMIN and run a trial job, using the below code snippet:
and with a config file containing an API token to allow access to the gateway in my home directory at ~/config/dask/gateway.yaml |
Xarray then would pick up this client by default, without any further config, whereas beam will require the URL to be provided. |
https://beam.apache.org/releases/pydoc/current/apache_beam.runners.dask.dask_runner.html
It's relatively new and buggy so might prove more hassle than it's worth, but we can give it a try and move to other runners (probably Spark) if needed.
The text was updated successfully, but these errors were encountered: