Implement caching layer
calvinnhieu opened this issue · 1 comments
calvinnhieu commented
Design doc: https://docs.google.com/document/d/1P6boQoVya126qm0JI7oqyJ24bLdUw1cD7-BrGlxPuUs/edit
Changes:
- Generate and store
RequestHash
field in DynamoRequestTable
- Implement cache hit path in
query_runner.py
- Update output matrix S3 prefix to include
data_version
andrequest_hash
- Update GET endpoint to retrieve cached entries
DoD:
- Requesting the same matrix multiple times (defined by resulting from the same cellkey set) does not generate a new matrix and returns a copy of an existing matrix
- No regression in v0
brianraymor commented
This was postponed to Milestone 2. We need to buffer a bit more time for emerging issues such as https://humancellatlas.slack.com/archives/CC9AR11T7/p1563988186044800