[infinispan-issues] [JBoss JIRA] (ISPN-5452) Query Execution using Hibernate Search slow for large volume data

Sanne Grinovero (JIRA) issues at jboss.org
Mon Jul 20 07:27:02 EDT 2015


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

Sanne Grinovero commented on ISPN-5452:
---------------------------------------

I've been looking at the method invocations, and agree with you that {{HSQueryImpl.buildSearcher(}} seems to be a significant difference.

But exploring further, they both invoke ultimately the method {{CRC32.updateBytes(int, byte[], int, int)}}, which is the slow point. In the Infinispan Query case this consumes 7.39%, in the RMI based example this consumes 2.02%.
Your profiling results are sampling, so it's possible that one case seems higher *relatively* as it's being invoked more (looks like we agree on the conclusion so far?).

But what I'm reading out of this, is not that Infinispan Query decides to not reuse the IndexReader but instead decides to reopen it, what I'm reading is that the Infinispan Query scenario is running many more queries.

Could you confirm this by running a profiler section - or just logging - to count how many queries one case is doing vs how many queries the other is doing? I can't read that from sampling output, but in case I think there's a problem with your benchmark, maybe because the Infinispan Query case is faster you're getting many more queries done on it and that would explain the higher rate of index reader reopening events.

> Query Execution using Hibernate Search slow for large volume data
> -----------------------------------------------------------------
>
>                 Key: ISPN-5452
>                 URL: https://issues.jboss.org/browse/ISPN-5452
>             Project: Infinispan
>          Issue Type: Bug
>          Components: Configuration, Remote Querying
>    Affects Versions: 7.2.1.Final
>         Environment: Linux
>            Reporter: Prashant Thakur
>         Attachments: profiling_results.7z
>
>
> While benchmarking Infinispan we found that Querying is very slow when compared with Hibernate Search in Isolation
> Single node of Infinispan  
> Memory allocated 230GB. No GC seen throughout query operation.
> Total required after full GC was 122GB.
> Setup 240 million records each of avg size 330 bytes .
> System has 16 cores and 40 worker threads were allocated at server side.
> With Single Client thread throughput was 900 req/sec in remote and 3k per sec in embedded more same request with Hibernate Search in Isolation gives throughput of 14000 req/sec.
> For 50 threads of clients the throughput was limited to 15k req/sec while hibernate search gives 80k req/sec for 10 threads.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


More information about the infinispan-issues mailing list