<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Oct 1, 2015 at 5:21 PM, Martin Betak <span dir="ltr">&lt;<a href="mailto:mbetak@redhat.com" target="_blank">mbetak@redhat.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class=""><br>
<br>
<br>
<br>
----- Original Message -----<br>
&gt; From: &quot;Piotr Kliczewski&quot; &lt;<a href="mailto:pkliczew@redhat.com">pkliczew@redhat.com</a>&gt;<br>
&gt; To: &quot;Martin Betak&quot; &lt;<a href="mailto:mbetak@redhat.com">mbetak@redhat.com</a>&gt;<br>
&gt; Cc: &quot;<a href="mailto:engine-devel@ovirt.org">engine-devel@ovirt.org</a>&quot; &lt;<a href="mailto:devel@ovirt.org">devel@ovirt.org</a>&gt;<br>
</span><span class="">&gt; Sent: Thursday, October 1, 2015 5:08:39 PM<br>
&gt; Subject: Re: [ovirt-devel] Doctor Rest PostgreSQL report<br>
&gt;<br>
</span><span class="">&gt; Martin,<br>
&gt;<br>
&gt; Looking at the stats you generated I can see that there is almost no<br>
&gt; difference for cpu and memory. Load seems to be at the same level for both.<br>
&gt; I tried to understand the differences by looking and # of calls and total<br>
&gt; time (top 10) but there was almost no difference. The only slight difference<br>
&gt; I can see is in avg time. It seems that we haven&#39;t generate enough load to<br>
&gt; see significant improvement. How many client have you used during testing?<br>
<br>
</span>This benchmark was without any clients. This was just to demonstrate the load<br>
Doctor generates on DB in context of existing DB load by backend (mosty VM/Host<br>
monitoring), which was I believe one of Barak&#39;s major concerns: how expensive it<br>
is when we *don&#39;t* have thousands of connected users.<br>
<span class=""><br></span></blockquote><div><br></div><div>I am not sure what we are testing here. I can see a lot of queries which were generated<br></div><div>by host monitoring. You said that you had around 200+ hosts and you run full dump for<br></div><div>doctor every 5 seconds. Next you moved to 1 second intervals.<br></div><div>I seems that host monitoring generated enough load to hide any impact of doctor rest<br></div><div>queries.<br><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">
&gt;<br>
&gt; I am not sure how much it would take but what do you think about using<br>
&gt; doctor as caching service for the engine and run few tests.<br>
&gt; I wonder what would be the result of such PoC.<br>
<br>
</span>I would like to move to more real world tests as soon as we have at least<br>
some working prototype of next gen UI (most significantly the new Dashboard).<br>
<br>
I understand that the UI discussions (adding Vojtech to CC) have progressed<br>
recently so as soon as we have some actual frontend code to work with I would<br>
like to hook it up to Doctor and make some end-to-end measurements.<br>
<span class="HOEnZb"><font color="#888888"><br>
Martin<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
&gt;<br>
&gt; Thanks,<br>
&gt; Piotr<br>
&gt;<br>
&gt;<br>
&gt; On Thu, Oct 1, 2015 at 3:25 PM, Martin Betak &lt;<a href="mailto:mbetak@redhat.com">mbetak@redhat.com</a>&gt; wrote:<br>
&gt;<br>
&gt; &gt; Hi All,<br>
&gt; &gt;<br>
&gt; &gt; so I installed a few more plugins to the pgCluu and PostgreSQL itself.<br>
&gt; &gt; Now I have also the overall system load and total numbers for specific<br>
&gt; &gt; queries.<br>
&gt; &gt;<br>
&gt; &gt; If you look at the report, database &#39;engine&#39; and &#39;Statement statistics&#39;<br>
&gt; &gt; we can clearly see that the overwhelming majority of DB time is spent in<br>
&gt; &gt; GetVmsRunningOnVds() stored procedure.<br>
&gt; &gt;<br>
&gt; &gt; Turining on Doctor Rest with 5 second full-dump interval you can see<br>
&gt; &gt; that the calls used by DoctorCacheManager (GetAllFromVms,<br>
&gt; &gt; GetAllFromVds....)<br>
&gt; &gt; have hard time to add up to at least 1% of the overall load.<br>
&gt; &gt;<br>
&gt; &gt; Also you can see the &#39;System&#39;: CPU and memory statistics that those are<br>
&gt; &gt; largely<br>
&gt; &gt; unaffected by running Doctor service alongside engine.<br>
&gt; &gt;<br>
&gt; &gt; I also tried setting the full update interval to Doctor to 1 second to see<br>
&gt; &gt; how<br>
&gt; &gt; this would go - so essentially each second do a full dump of business<br>
&gt; &gt; entities -<br>
&gt; &gt; and this moved the overall Doctor overhead to ~2.5% of total DB load.<br>
&gt; &gt;<br>
&gt; &gt; Of course for the UI purposes interval in the range of 3-5 seconds should<br>
&gt; &gt; be more<br>
&gt; &gt; than acceptable in my opinion.<br>
&gt; &gt;<br>
&gt; &gt; As always - questions and remarks are more than welcome :-)<br>
&gt; &gt;<br>
&gt; &gt; Best regards,<br>
&gt; &gt;<br>
&gt; &gt; Martin<br>
&gt; &gt;<br>
&gt; &gt; ----- Original Message -----<br>
&gt; &gt; &gt; From: &quot;Martin Betak&quot; &lt;<a href="mailto:mbetak@redhat.com">mbetak@redhat.com</a>&gt;<br>
&gt; &gt; &gt; To: &quot;Piotr Kliczewski&quot; &lt;<a href="mailto:pkliczew@redhat.com">pkliczew@redhat.com</a>&gt;<br>
&gt; &gt; &gt; Cc: &quot;<a href="mailto:engine-devel@ovirt.org">engine-devel@ovirt.org</a>&quot; &lt;<a href="mailto:devel@ovirt.org">devel@ovirt.org</a>&gt;<br>
&gt; &gt; &gt; Sent: Wednesday, September 30, 2015 4:52:12 PM<br>
&gt; &gt; &gt; Subject: Re: [ovirt-devel] Doctor Rest PostgreSQL report<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; ----- Original Message -----<br>
&gt; &gt; &gt; &gt; From: &quot;Piotr Kliczewski&quot; &lt;<a href="mailto:pkliczew@redhat.com">pkliczew@redhat.com</a>&gt;<br>
&gt; &gt; &gt; &gt; To: &quot;Martin Betak&quot; &lt;<a href="mailto:mbetak@redhat.com">mbetak@redhat.com</a>&gt;<br>
&gt; &gt; &gt; &gt; Cc: &quot;<a href="mailto:engine-devel@ovirt.org">engine-devel@ovirt.org</a>&quot; &lt;<a href="mailto:devel@ovirt.org">devel@ovirt.org</a>&gt;, &quot;Eli Mesika&quot;<br>
&gt; &gt; &gt; &gt; &lt;<a href="mailto:emesika@redhat.com">emesika@redhat.com</a>&gt;, &quot;Martin Perina&quot;<br>
&gt; &gt; &gt; &gt; &lt;<a href="mailto:mperina@redhat.com">mperina@redhat.com</a>&gt;<br>
&gt; &gt; &gt; &gt; Sent: Wednesday, September 30, 2015 3:29:28 PM<br>
&gt; &gt; &gt; &gt; Subject: Re: Doctor Rest PostgreSQL report<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; Martin,<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; For me it would be great to understand how cpu, memory changes over<br>
&gt; &gt; time<br>
&gt; &gt; &gt; &gt; for the engine. I would like to see the same for doctor service.<br>
&gt; &gt; &gt; &gt; I was not able to find it but it would be great to understand how many<br>
&gt; &gt; &gt; &gt; queries there were for both tests and how log it took to run them.<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; Yes, right now I&#39;m looking for other tools to provide me exactly with<br>
&gt; &gt; that.<br>
&gt; &gt; &gt; I just wanted to share the preliminary aggregated statistics.<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; It would be good to understand implications of running doctor on the<br>
&gt; &gt; same<br>
&gt; &gt; &gt; &gt; machine as engine and on other machine.<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; Indeed, this is precisely what I&#39;m testing. The attached reports were<br>
&gt; &gt; with<br>
&gt; &gt; &gt; Doctor running on the same machine as the engine.<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; Thanks,<br>
&gt; &gt; &gt; &gt; Piotr<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; On Wed, Sep 30, 2015 at 3:13 PM, Martin Betak &lt;<a href="mailto:mbetak@redhat.com">mbetak@redhat.com</a>&gt;<br>
&gt; &gt; wrote:<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; Hi All,<br>
&gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; I performed a stress test using FakeVDSM environment with 200+ hosts<br>
&gt; &gt; &gt; &gt; &gt; and 500+ VMs.<br>
&gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; Attached are generated HTML reports for this environment.<br>
&gt; &gt; &gt; &gt; &gt; In both cases I tried to simulate some random load using existing<br>
&gt; &gt; &gt; &gt; &gt; webadmin. In the &#39;_doctor&#39; case the simple connector from [1] was<br>
&gt; &gt; &gt; &gt; &gt; running *in addition to* the legacy UI.<br>
&gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; The used pgCluu tool [2] which may be useful<br>
&gt; &gt; &gt; &gt; &gt; for DB experts for some further insight.<br>
&gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; I wanted to send this out as soon as possible so we can better<br>
&gt; &gt; analyze<br>
&gt; &gt; &gt; &gt; &gt; our current performance and the possible impact Doctor Rest<br>
&gt; &gt; &gt; &gt; &gt; integration would have on the system.<br>
&gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; Please feel free to review the attached reports and/or suggest other<br>
&gt; &gt; &gt; &gt; &gt; ways/tools how to better benchmark the DB load caused by Doctor Rest.<br>
&gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; Thank you very much.<br>
&gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; Best regards<br>
&gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; Martin<br>
&gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; [1] <a href="https://gerrit.ovirt.org/#/c/45233/" rel="noreferrer" target="_blank">https://gerrit.ovirt.org/#/c/45233/</a><br>
&gt; &gt; &gt; &gt; &gt; [2] <a href="http://pgcluu.darold.net/" rel="noreferrer" target="_blank">http://pgcluu.darold.net/</a><br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; _______________________________________________<br>
&gt; &gt; &gt; Devel mailing list<br>
&gt; &gt; &gt; <a href="mailto:Devel@ovirt.org">Devel@ovirt.org</a><br>
&gt; &gt; &gt; <a href="http://lists.ovirt.org/mailman/listinfo/devel" rel="noreferrer" target="_blank">http://lists.ovirt.org/mailman/listinfo/devel</a><br>
&gt; &gt; &gt;<br>
&gt; &gt;<br>
&gt;<br>
</div></div></blockquote></div><br></div></div>