argoproj / argoproj/argo-workflows
Memoization Storage
- Dominant language
- Go
- Stars
- 17k
- Forks
- 3.7k
- Avg merge
- 1d 20h
- Merged PRs (30d)
- 138
Description
# Summary
Memoization is a feature that allows users to run workflows faster by avoiding repeating work that has already been done.
Currently memoization uses a Kubernetes config map for storage. This will not scale to large number of entries, it requires elevated RBAC. Instead, we should provide the option to use a alternative database to store these in.
# Motivation
Large workflows.
# Proposal
Options:
* Use the database.
* Use any artifact storage.
See #944
---
**Message from the maintainers**:
If you wish to see this enhancement implemented please add a 👍 reaction to this issue! We often sort issues this way to know what to prioritize.
Contributor guide
Research direction
Start by reviewing the current memoization storage based on Kubernetes ConfigMaps and read the related issue #944. Compare the proposed database and artifact-storage options, then clarify the supported backend, scaling and RBAC requirements, and the acceptance criteria for large workflows.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- kubernetes
- Domain
- backend, databases, infrastructure
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100