[ 
https://issues.apache.org/jira/browse/SAMZA-424?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14165542#comment-14165542
 ] 

Sriram Subramanian commented on SAMZA-424:
------------------------------------------

I did a little more thinking on this. 

1. The caching approach is really useful when you have a remote store. Most of 
these stores are key-value based and hence the caching feature would really be 
helpful only for the key value store. However, I do think there is some value 
in preventing the cold boot case by restoring the state from Kafka.

2. Given 1, we would need a really good way to specify the composition in 
config or code and currently I think it is very confusing. Also there are too 
many validations that needs to be done to ensure wrong compositions do not 
happen.

3. Given 1 and 2, I am not able to find any other use case apart from caching 
for a remote key value store where this could be applied broadly. Does anyone 
else have any examples where we think it can be applied?

Given 1,2 and 3, it does seem that this feature should be an application level 
thing and not part of the framework.

> Add a Cache state API to the Samza container
> --------------------------------------------
>
>                 Key: SAMZA-424
>                 URL: https://issues.apache.org/jira/browse/SAMZA-424
>             Project: Samza
>          Issue Type: New Feature
>          Components: container
>            Reporter: Chinmay Soman
>            Assignee: Chinmay Soman
>         Attachments: SAMZA-424-Cache-API_0.pdf, SAMZA-424-Cache-API_1.md, 
> SAMZA-424-Cache-API_2.md, SAMZA-424-Cache-API_2.pdf, samza-424-cache-api_1.pdf
>
>
> There are cases when the user code needs access to a 'cache' which can be 
> used to store custom data. This cache is different from the KeyValue store in 
> the following ways:
> * At the very least Needs to support LRU (Least Recently Used) and TTL (Time 
> To Live) eviction strategies
> * May not support all() and range() operations (since this wreaks havoc with 
> the eviction operation)
> * Needs to exist at a per task or a per container level.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to