On 2 Jul 2013, at 15:32, Radim Vansa <rva...@redhat.com> wrote:

> | Given such a scenario, I am not interested at all in synchronous
> | storage. Before we commit into a design which is basically assuming
> | the need for synchronous storage guarantees, I'd like to understand
> | what kind of use case it's aiming to solve.
> 
> You're right that I may miss the wider perspective and that I am too much 
> focused on storing stuff reliably when we have reliability assured by 
> multiple owners.
> 
> | 
> | Only then we would be able to pick a design (or multiple ones); for my
> | use case the proposal from Karsten seems excellent, so I'm wondering
> | why I should be looking for alternatives, and wondering why everyone
> | is still wasting time on different discussions :-D
> 
> Karsten implementation has one major drawback: all the keys are stored 
> in-memory, and there's no search structure for overflow. For use case we've 
> had with bigger keys and very small values this is simply not an option. 
> However, we have the LevelDB JNI implementation for this purpose and the 
> numbers are not bad in non-syncing mode. Do we want to have some efficient 
> no-dependency cache-store? If the question is no, okay, let use recommend 
> LevelDB JNI for this purposes.
I'd say yes: I know users that were put off by using/setting up an external DB 
to store data on the disk. Some are on this mailing list and may want to 
comment :-)
> 
> | 
> | I'm pretty sure there is people looking forward for a synch-CacheStore
> | too: if you could nail down such a scenario however I'm pretty sure
> | that some other considerations would not be taken into account (like
> | consistency of data when reactivating a dormant node), so I suspect
> | that just implementing such a component would actually not make any
> | new architecture possible, as you would get blocked by other problems
> | which need to be solved too.. better define all expectations asap!
> | 
> | To me this thread smells of needing the off-heap Direct Memory buffers
> | which I suggested [long time ago] to efficiently offload internal
> | buffers,
> 
> Yes, when it comes to reducing GC pauses, that is the best option. However, 
> you can't have enough RAM to handle everything in-memory (off-heap), 
> persistent storage for overflow is a must-have.
> 
> | but failing to recognise this we're pushing responsibility to
> | an epic level complex CacheStore.. guys let's not forget that a mayor
> | bottleneck of CacheStores today is the SPI it has to implement, we
> | identified several limitations in the contract in the past which
> | prevent a superior efficiency: we're working towards a mayor release
> | now so I'd rather focus on the API changes which will make it possible
> | to get decent performance even without changing any storage engine..
> | I'm pretty sure Cassandra (to pick one) doesn't scale too bad.
> 
> The issues common to all local cache-stores are definitely something to do. I 
> just don't feel enough into the problematics to handle them myself - that's 
> why I jumped onto implementing just another cache store.

Cheers,
-- 
Mircea Markus
Infinispan lead (www.infinispan.org)





_______________________________________________
infinispan-dev mailing list
infinispan-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/infinispan-dev

Reply via email to