Oups I did not read the thread carrefully.
*The problem is with the same query as phrase. q="network se*".*
I was not aware that you could do that with Solr ;). I would say this is
expected because in such case if the number of expansions for "se*" is big
then you would have to check the positions for a significant words. I don't
know if there is a limitation in the number of expansions for a prefix
query contained into a phrase query but I would look at this parameter
first (limit the number of expansion per prefix search, let's say the N
most significant words based on the frequency of the words for instance).

2015-11-02 13:36 GMT+01:00 jim ferenczi <jim.feren...@gmail.com>:

>
>
>
> *I am not able to get  the above point. So when I start Solr with 28g RAM,
> for all the activities related to Solr it should not go beyond 28g. And the
> remaining heap will be used for activities other than Solr. Please help me
> understand.*
>
> Well those 28GB of heap are the memory "reserved" for your Solr
> application, though some parts of the index (not to say all) are retrieved
> via MMap (if you use the default MMapDirectory) which do not use the heap
> at all. This is a very important part of Lucene/Solr, the heap should be
> sized in a way that let a significant amount of RAM available for the
> index. If not then you rely on the speed of your disk, if you have SSDs
> it's better but reads are still significantly slower with SSDs than with
> direct RAM access. Another thing to keep in mind is that mmap will always
> tries to put things in RAM, this is why I suspect that you swap activity is
> killing your performance.
>
> 2015-11-02 11:55 GMT+01:00 Modassar Ather <modather1...@gmail.com>:
>
>> Thanks Jim for your response.
>>
>> The remaining size after you removed the heap usage should be reserved for
>> the index (not only the other system activities).
>> I am not able to get  the above point. So when I start Solr with 28g RAM,
>> for all the activities related to Solr it should not go beyond 28g. And
>> the
>> remaining heap will be used for activities other than Solr. Please help me
>> understand.
>>
>> *Also the CPU utilization goes upto 400% in few of the nodes:*
>> You said that only machine is used so I assumed that 400% cpu is for a
>> single process (one solr node), right ?
>> Yes you are right that 400% is for single process.
>> The disks are SSDs.
>>
>> Regards,
>> Modassar
>>
>> On Mon, Nov 2, 2015 at 4:09 PM, jim ferenczi <jim.feren...@gmail.com>
>> wrote:
>>
>> > *if it correlates with the bad performance you're seeing. One important
>> > thing to notice is that a significant part of your index needs to be in
>> RAM
>> > (especially if you're using SSDs) in order to achieve good performance.*
>> >
>> > Especially if you're not using SSDs, sorry ;)
>> >
>> > 2015-11-02 11:38 GMT+01:00 jim ferenczi <jim.feren...@gmail.com>:
>> >
>> > > 12 shards with 28GB for the heap and 90GB for each index means that
>> you
>> > > need at least 336GB for the heap (assuming you're using all of it
>> which
>> > may
>> > > be easily the case considering the way the GC is handling memory) and
>> ~=
>> > > 1TO for the index. Let's say that you don't need your entire index in
>> > RAM,
>> > > the problem as I see it is that you don't have enough RAM for your
>> index
>> > +
>> > > heap. Assuming your machine has 370GB of RAM there are only 34GB left
>> for
>> > > your index, 1TO/34GB means that you can only have 1/30 of your entire
>> > index
>> > > in RAM. I would advise you to check the swap activity on the machine
>> and
>> > > see if it correlates with the bad performance you're seeing. One
>> > important
>> > > thing to notice is that a significant part of your index needs to be
>> in
>> > RAM
>> > > (especially if you're using SSDs) in order to achieve good
>> performance:
>> > >
>> > >
>> > >
>> > > *As mentioned above this is a big machine with 370+ gb of RAM and Solr
>> > (12
>> > > nodes total) is assigned 336 GB. The rest is still a good for other
>> > system
>> > > activities.*
>> > > The remaining size after you removed the heap usage should be reserved
>> > for
>> > > the index (not only the other system activities).
>> > >
>> > >
>> > > *Also the CPU utilization goes upto 400% in few of the nodes:*
>> > > You said that only machine is used so I assumed that 400% cpu is for a
>> > > single process (one solr node), right ?
>> > > This seems impossible if you are sure that only one query is played
>> at a
>> > > time and no indexing is performed. Best thing to do is to dump stack
>> > trace
>> > > of the solr nodes during the query and to check what the threads are
>> > doing.
>> > >
>> > > Jim
>> > >
>> > >
>> > >
>> > > 2015-11-02 10:38 GMT+01:00 Modassar Ather <modather1...@gmail.com>:
>> > >
>> > >> Just to add one more point that one external Zookeeper instance is
>> also
>> > >> running on this particular machine.
>> > >>
>> > >> Regards,
>> > >> Modassar
>> > >>
>> > >> On Mon, Nov 2, 2015 at 2:34 PM, Modassar Ather <
>> modather1...@gmail.com>
>> > >> wrote:
>> > >>
>> > >> > Hi Toke,
>> > >> > Thanks for your response. My comments in-line.
>> > >> >
>> > >> > That is 12 machines, running a shard each?
>> > >> > No! This is a single big machine with 12 shards on it.
>> > >> >
>> > >> > What is the total amount of physical memory on each machine?
>> > >> > Around 370 gb on the single machine.
>> > >> >
>> > >> > Well, se* probably expands to a great deal of documents, but a huge
>> > bump
>> > >> > in memory utilization and 3 minutes+ sounds strange.
>> > >> >
>> > >> > - What are your normal query times?
>> > >> > Few simple queries are returned with in a couple of seconds. But
>> the
>> > >> more
>> > >> > complex queries with proximity and wild cards have taken more than
>> 3-4
>> > >> > minutes and some times some queries have timed out too where time
>> out
>> > is
>> > >> > set to 5 minutes.
>> > >> > - How many hits do you get from 'network se*'?
>> > >> > More than a million records.
>> > >> > - How many results do you return (the rows-parameter)?
>> > >> > It is the default one 10. Grouping is enabled on a field.
>> > >> > - If you issue a query without wildcards, but with approximately
>> the
>> > >> > same amount of hits as 'network se*', how long does it take?
>> > >> > A query resulting in around half a million record return within a
>> > couple
>> > >> > of seconds.
>> > >> >
>> > >> > That is strange, yes. Have you checked the logs to see if something
>> > >> > unexpected is going on while you test?
>> > >> > Have not seen anything particularly. Will try to check again.
>> > >> >
>> > >> > If you are using spinning drives and only have 32GB of RAM in
>> total in
>> > >> > each machine, you are probably struggling just to keep things
>> running.
>> > >> > As mentioned above this is a big machine with 370+ gb of RAM and
>> Solr
>> > >> (12
>> > >> > nodes total) is assigned 336 GB. The rest is still a good for other
>> > >> system
>> > >> > activities.
>> > >> >
>> > >> > Thanks,
>> > >> > Modassar
>> > >> >
>> > >> > On Mon, Nov 2, 2015 at 1:30 PM, Toke Eskildsen <
>> > t...@statsbiblioteket.dk>
>> > >> > wrote:
>> > >> >
>> > >> >> On Mon, 2015-11-02 at 12:00 +0530, Modassar Ather wrote:
>> > >> >> > I have a setup of 12 shard cluster started with 28gb memory each
>> > on a
>> > >> >> > single server. There are no replica. The size of index is around
>> > >> 90gb on
>> > >> >> > each shard. The Solr version is 5.2.1.
>> > >> >>
>> > >> >> That is 12 machines, running a shard each?
>> > >> >>
>> > >> >> What is the total amount of physical memory on each machine?
>> > >> >>
>> > >> >> > When I query "network se*", the memory utilization goes upto
>> 24-26
>> > gb
>> > >> >> and
>> > >> >> > the query takes around 3+ minutes to execute. Also the CPU
>> > >> utilization
>> > >> >> goes
>> > >> >> > upto 400% in few of the nodes.
>> > >> >>
>> > >> >> Well, se* probably expands to a great deal of documents, but a
>> huge
>> > >> bump
>> > >> >> in memory utilization and 3 minutes+ sounds strange.
>> > >> >>
>> > >> >> - What are your normal query times?
>> > >> >> - How many hits do you get from 'network se*'?
>> > >> >> - How many results do you return (the rows-parameter)?
>> > >> >> - If you issue a query without wildcards, but with approximately
>> the
>> > >> >> same amount of hits as 'network se*', how long does it take?
>> > >> >>
>> > >> >> > Why the CPU utilization is so high and more than one core is
>> used.
>> > >> >> > As far as I understand querying is single threaded.
>> > >> >>
>> > >> >> That is strange, yes. Have you checked the logs to see if
>> something
>> > >> >> unexpected is going on while you test?
>> > >> >>
>> > >> >> > How can I disable replication(as it is implicitly enabled)
>> > >> permanently
>> > >> >> as
>> > >> >> > in our case we are not using it but can see warnings related to
>> > >> leader
>> > >> >> > election?
>> > >> >>
>> > >> >> If you are using spinning drives and only have 32GB of RAM in
>> total
>> > in
>> > >> >> each machine, you are probably struggling just to keep things
>> > running.
>> > >> >>
>> > >> >>
>> > >> >> - Toke Eskildsen, State and University Library, Denmark
>> > >> >>
>> > >> >>
>> > >> >>
>> > >> >
>> > >>
>> > >
>> > >
>> >
>>
>
>

Reply via email to