- 
                Notifications
    You must be signed in to change notification settings 
- Fork 133
feat: add preload feature to Runner API #1423
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
base: master
Are you sure you want to change the base?
Conversation
…lear what is happening
| @pfackeldey could you fix the conflicts here and we can probably get this merged. | 
| 
 We ve discussed this with Peter over the past few days and the API is not quite there yet. It works but it doesn’t feel like the API we want. We think (also according to retreat discussions) that it’s probably the right time to overhaul the pre processing part and unify the interfaces to have one preprocessing and remove this concept from the runners. This would then go into the new preprocessing. | 
| @ikrommyd do you have already any plans/ideas how the updated preprocessing should look like? | 
| Yes we discussed this yesterday, so I think he'll have something here shortly. | 
| 
 Awesome! I'm happy to update this PR to follow the new preprocessing :) | 
This PR adds the recently merged
preloadfeature (PR #1387) to the Runner API. There's a newRunner.trace_needed_columnsmethod that traces each WorkItem using the given executor (that may be noticeably overhead, but it is the most correct thing to do, and definitely less work than streaming/running over actual data). The output is JSON serializable (reusable) and can be passed to the__call__/runmethod of aRunnerthroughpreload_columns:Because this
run.trace_needed_columnsmay be a medium-heavy workload I decided to make it an explicit method that one has to opt-in for (similar to the.preprocessthat can be explicitly called beforerun). I'm not sure if this is the best interface, but at least it's a starting point. Let me know what you think.