Comments (5)
@andaag We do have similar use-cases at Netflix. The recommendation is that you should parameterize your flow to execute on a list of days and some other external system should be able to trigger your workflow with the appropriate list of days you should be processing upon. At Netflix, our production scheduler Meson supports event based triggers which plays elegantly with this pattern. Another, not so elegant, alternative is to embed a light-wieght check before your self.next
call to filter out done days.
from metaflow.
How do you then easily join that data? I'm guessing you have one parameterized flow that produces the data, and a separate job that queries all the old versions of this and joins it using the client api?
from metaflow.
Yes. Or if it were internal they leverage the hosting service - see open issues - which makes accessing any specific dateint depending on what weβre deployed (has a versioned REST endpoint) or promoted to be the latest.
The client API will help you - if you want to join all the data for your use case. In the internal ones; they are usually interested in the latest - when running in a cron like fashion.
from metaflow.
@andaag Not sure I understood your question around joining the data appropriately. According to my interpretation, you can use the client API in a separate job (or even in the same flow as a separate step) to look up all the dates that haven't been successfully processed yet (might have to take care of current inflight dates being processed by another instantiation of your workflow appropriately) and trigger your workflow with those dates as parameters (or use those dates as foreach arg if embedding this logic as a step in your flow). Let me know if I ended up answering something else entirely.
from metaflow.
Using the client api + foreach sounds fairly sane π. A bit manual compared to the built in support for split/join, but very manageable.
My question was just to doublecheck if there was a more elegant way of doing this.
from metaflow.
Related Issues (20)
- Question: Access hash of a card while being populated HOT 2
- Conda environment being treated as disabled, and not appending environment to PATH.
- Metaflow crashes on AWS Batch if folder called `metaflow` is present in the working directory HOT 5
- Cardview on WSL error HOT 2
- S3 access denied even if I have full access to S3
- Certain flows failing on Argo Workflows =>3.5.0 HOT 1
- Metaflow job completion or exit handlers?
- run.finished not set when using AWS Step Functions and there's an error
- setting METAFLOW_OTEL_ENDPOINT when running in ECS fargate, not Kubernetes HOT 1
- add __repr__ methods to Parameter
- create contributing guide
- "Service token file does not exist" error when deploying flow to Argo from CI HOT 1
- argo-workflows create --only-json doesn't export the cron workflow configuration
- Using `tags` as a Parameter name breaks flow. HOT 1
- Add option to batch decorator to increase ephemeralStorage on Fargate
- `--package-suffixes` omits dotfiles HOT 1
- Is it possible to run metaflow steps in custom docker containers on local?
- Opentelemetry configuration not carrying over to Batch
- Add a priority class option for the kubernetes flow decorator HOT 1
- Reduce the number of reserved parameter names
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from metaflow.