Hi Shawn,
Thanks for you're quick answer.
I know it's not ideal to have mysql and SOLR on the same server. The use is
perfect for replication, but actually is too short to handle a high query
rate.
And of course I didn't see the warning about pointed fields and performance
on the documentation until you pointed it, my bad.
So I will first try to return on trie fields and see if I can switch trafic
without any issue.
If not, I wil reconsider to split my server in one mysql and one SOLR.

Regards,
Sébastien

Le mar. 16 oct. 2018 à 14:29, Shawn Heisey <apa...@elyograg.org> a écrit :

> On 10/16/2018 6:04 AM, zoolette wrote:
> > We are today running under SOLR 6.6 on our production environnement.
> > On the end of august, i planned to upgrade SOLR to 7.4 (7.5 since that
> > moment) but I encounter some trouble.
> > Our master SOLR is replicated to a slave SOLR. I tried to upgrade the
> > replica first, this is this one that makes me trouble.
> > This is a shared server half for a mysql replication server and the
> > replication SOLR server.
> > The server is running under debian 7 (wheezy) and java 1.8.0u45
> > The SOLR java HEAP is configured with a 12G Xmx value.
> >
> > On this SOLR instance there is 6 cores.
> > - 2 cores are dedicated to main search on 2 different website (they are
> > each 20Gb)
> > - 2 cores are dedicated for the autocpletion feature of these 2 websites
> > (~2Gb each)
> > - 2 other cores very small occasionnaly used by one of the website
>
> With about 45GB of index data and a 12GB heap, ideal performance is
> going to require 64GB of total memory -- and that's if Solr is the only
> software on the machine.  You might be able to get good performance with
> less memory, but your query rates are very high, so that's probably not
> a good idea.
>
> Adding MySQL, if the databases are of any significant size, could
> require significantly more memory.
>
> > The SOLR instance in 7.5 is up and ready but no trafic is sent to it.
> > On the 2 websites, one generated approximately between 5000 and 8000
> > requests / minute on SOLR on 2 handlers.
> > One search handler is dedicated to complex search from the search bar and
> > the other handler treat back search such a return document for a
> specified
> > id or return the chained documents, this kind of stuff.
> >
> > The second website use identical handlers than the first one, the only
> > difference is that it generates less SOLR requests  : 1000 to 2000
> requests
> > / minute.
>
> As I mentioned above, this is a significant query rate. Handling that
> with only two servers will require a a LOT of memory for caching
> purposes, and you'll want the servers to be dedicated to Solr -- not
> running MySQL as well.
>
> > To upgrade the master I need to send all the SOLR trafic on this
> instance.
> > I first redirect the bigger one. The reponse time grown a lot but SOLR
> > stabilized it quickly. After 10 minutes as all was ok, I redirect the the
> > website with the lower trafic rate. And immediatly, the number of java
> > processes quickly increased, on munin the device busy increased to 100%
> > (read operations) and the load average of the server drastically grown,
> it
> > reach 120, SOLR began to not respond.
>
> A high load average often means that there's a lot of disk I/O, and
> processes are spending a lot of time waiting for that I/O. On Linux, run
> the "top" program and look for the iowait percentage, sometimes
> abbreviated "wa".  This should be as close to zero as you can get it.
> Even a small number in iowait can cause major performance issues.  For
> Solr, whenever Solr must actually read the disk (instead of reading
> index data from memory -- the OS disk cache) performance is going to be
> terrible.
>
> https://wiki.apache.org/solr/SolrPerformanceProblems#RAM
>
> > For this upgrade, I also changed the basic fields type from tried fields
> to
> > pointed fields but I don't think that make a difference.
>
> Trie fields have really good performance for both range queries and
> single value lookups.  Point fields have better performance for range
> queries, but absolutely terrible performance for field:value (single
> value lookup) queries.
>
> > And the more incomprehensible is that all works fine in SOLR 6.6.I cna
> > switch all the traffic without any issue.
> >
> > Does anybody have an idea of what can go wrong. Debian version ? java
> > version ? configuration problem ?
>
> Best guess is one (or both) of these problems:
> 1) Limitations of Point field types
> 2) Not enough memory.
>
> Another possibility, which I think is less likely but I can't rule out
> with the info I have, is that a 12GB heap is big enough for 6.6, but not
> quite big enough for the same indexes on 7.x.  Making the heap larger
> would answer that question.
>
> Thanks,
> Shawn
>
>

Reply via email to