[infinispan-issues] [JBoss JIRA] (ISPN-9816) Handle non segmented container/store for publisher more efficiently

Will Burns (Jira) issues at jboss.org
Fri Jun 7 13:58:00 EDT 2019


    [ https://issues.jboss.org/browse/ISPN-9816?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13744232#comment-13744232 ] 

Will Burns commented on ISPN-9816:
----------------------------------

For example with using https://github.com/infinispan/infinispan-benchmarks/tree/master/cachestores benchmark we can see  that non segmented size method with RocksDB is substantially slower than segmented

{quote}
Non-Segmented

Benchmark                     (batchSize)  (entryAmount)  (keyObjectSize)  (nodes)  (useIdentityCache)  (useStrings)  (valueObjectSize)   Mode  Cnt  Score   Error  Units
JMHBenchmarks.sizeParallel           4096          50000               10        6                true         false                100  thrpt   20  3.479 ± 0.067  ops/s
JMHBenchmarks.sizeSequential         4096          50000               10        6                true         false                100  thrpt   20  0.940 ± 0.038  ops/s


Segmented

Benchmark                     (batchSize)  (entryAmount)  (keyObjectSize)  (nodes)  (useIdentityCache)  (useStrings)  (valueObjectSize)   Mode  Cnt   Score   Error  Units
JMHBenchmarks.sizeParallel           4096          50000               10        6                true         false                100  thrpt   20  84.156 ± 1.816  ops/s
JMHBenchmarks.sizeSequential         4096          50000               10        6                true         false                100  thrpt   20  40.973 ± 1.703  ops/s
{quote}

> Handle non segmented container/store for publisher more efficiently
> -------------------------------------------------------------------
>
>                 Key: ISPN-9816
>                 URL: https://issues.jboss.org/browse/ISPN-9816
>             Project: Infinispan
>          Issue Type: Sub-task
>          Components: Publisher
>            Reporter: Will Burns
>            Assignee: Will Burns
>            Priority: Major
>             Fix For: 10.0.0.Final
>
>
> The new Publisher is designed to take into account segmented data container and segmented stores. However if a store/data container is not segmented, the handling can cause performance issues, although it would still behave better memory and rehash based. The tradeoff is probably fine for data container, however stores performance drop would be massive. We need to process all segments in at least the non segmented store case to retain our old performance.
> To clarify this would require changes in the LocalPublisherManagerImpl class when invoking `CacheCollection.localPublisher(int)`, we would need to instead invoke `CacheCollection.localPublisher(IntSet)` so that we only have to iterate over the store once instead of IntSet.size times.



--
This message was sent by Atlassian Jira
(v7.12.1#712002)



More information about the infinispan-issues mailing list