<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Thu, Apr 3, 2014 at 5:33 PM, Gilad Chaplik <span dir="ltr">&lt;<a href="mailto:gchaplik@redhat.com" target="_blank">gchaplik@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"><div><div style="font-size:12pt;font-family:times new roman,new york,times,serif"><div></div><blockquote style="padding-left:5px;font-size:12pt;font-style:normal;margin-left:5px;font-family:Helvetica,Arial,sans-serif;text-decoration:none;font-weight:normal;border-left:2px solid #1010ff">
<b>From: </b>&quot;Liran Zelkha&quot; &lt;<a href="mailto:liran.zelkha@gmail.com" target="_blank">liran.zelkha@gmail.com</a>&gt;<br><b>To: </b>&quot;Gilad Chaplik&quot; &lt;<a href="mailto:gchaplik@redhat.com" target="_blank">gchaplik@redhat.com</a>&gt;<br>
<b>Cc: </b>&quot;Omer Frenkel&quot; &lt;<a href="mailto:ofrenkel@redhat.com" target="_blank">ofrenkel@redhat.com</a>&gt;, &quot;Eli Mesika&quot; &lt;<a href="mailto:emesika@redhat.com" target="_blank">emesika@redhat.com</a>&gt;, &quot;engine-devel&quot; &lt;<a href="mailto:engine-devel@ovirt.org" target="_blank">engine-devel@ovirt.org</a>&gt;<br>
<b>Sent: </b>Thursday, April 3, 2014 5:27:56 PM<br><b>Subject: </b>Re: [Engine-devel] vds_dynamic refactor<br><div><br></div><p dir="ltr">True but that&#39;s no reason to have a bad schema</p></blockquote><div>I&#39;m open to new ideas and truly want to understand what is bad?</div>
</div></div></blockquote><div>The problem is with both updates and selects.</div><div>For selects - to get all the information for the VDS we have multiple joins. Adding another one will hurt performance even more.</div><div>
For updates - we have vds_static thats hardly changed. vds_statistics that changes all the time. vds_dynamic is not changed allot - but is updated all the time because of the status. I think it&#39;s best to split it to the two existing tables (BTW - relevant for VM as well) </div>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div style="font-size:12pt;font-family:times new roman,new york,times,serif"><blockquote style="padding-left:5px;font-size:12pt;font-style:normal;margin-left:5px;font-family:Helvetica,Arial,sans-serif;text-decoration:none;font-weight:normal;border-left:2px solid #1010ff">
<div class="gmail_quote">On Apr 3, 2014 5:18 PM, &quot;Gilad Chaplik&quot; &lt;<a href="mailto:gchaplik@redhat.com" target="_blank">gchaplik@redhat.com</a>&gt; wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

----- Original Message -----<br>
&gt; From: &quot;Liran Zelkha&quot; &lt;<a href="mailto:liran.zelkha@gmail.com" target="_blank">liran.zelkha@gmail.com</a>&gt;<br>
&gt; To: &quot;Gilad Chaplik&quot; &lt;<a href="mailto:gchaplik@redhat.com" target="_blank">gchaplik@redhat.com</a>&gt;<br>
&gt; Cc: &quot;Eli Mesika&quot; &lt;<a href="mailto:emesika@redhat.com" target="_blank">emesika@redhat.com</a>&gt;, &quot;engine-devel&quot; &lt;<a href="mailto:engine-devel@ovirt.org" target="_blank">engine-devel@ovirt.org</a>&gt;<br>

&gt; Sent: Thursday, April 3, 2014 5:16:51 PM<br>
&gt; Subject: Re: [Engine-devel] vds_dynamic refactor<br>
&gt;<br>
&gt; Don&#39;t go down that road.  Status shouldn&#39;t be saved in the db.<br>
&gt; But anyway statistics is rapidly changing. So it fits...<br><br>
First let&#39;s have a notion of caching, then notion of shared caching, then I can start thinking of not going down that road...<br><br>
&gt; On Apr 3, 2014 5:14 PM, &quot;Gilad Chaplik&quot; &lt;<a href="mailto:gchaplik@redhat.com" target="_blank">gchaplik@redhat.com</a>&gt; wrote:<br>
&gt;<br>
&gt; &gt; ----- Original Message -----<br>
&gt; &gt; &gt; From: &quot;Liran Zelkha&quot; &lt;<a href="mailto:liran.zelkha@gmail.com" target="_blank">liran.zelkha@gmail.com</a>&gt;<br>
&gt; &gt; &gt; To: &quot;Eli Mesika&quot; &lt;<a href="mailto:emesika@redhat.com" target="_blank">emesika@redhat.com</a>&gt;<br>
&gt; &gt; &gt; Cc: &quot;Gilad Chaplik&quot; &lt;<a href="mailto:gchaplik@redhat.com" target="_blank">gchaplik@redhat.com</a>&gt;, &quot;engine-devel&quot; &lt;<br>
&gt; &gt; <a href="mailto:engine-devel@ovirt.org" target="_blank">engine-devel@ovirt.org</a>&gt;<br>
&gt; &gt; &gt; Sent: Thursday, April 3, 2014 4:36:07 PM<br>
&gt; &gt; &gt; Subject: Re: [Engine-devel] vds_dynamic refactor<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; I would be happy if we can lose vds_dynamic all together, and just keep<br>
&gt; &gt; &gt; vds_static and vds_statistics. Our performance will be happy too ;-)<br>
&gt; &gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; @Liran, status and pending fields are very fragile ones, IMO need separate<br>
&gt; &gt; table.<br>
&gt; &gt; @Eli, iirc, you don&#39;t have a problem with adding more tables :-)<br>
&gt; &gt;<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; On Thu, Apr 3, 2014 at 4:33 PM, Eli Mesika &lt;<a href="mailto:emesika@redhat.com" target="_blank">emesika@redhat.com</a>&gt; wrote:<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; ----- Original Message -----<br>
&gt; &gt; &gt; &gt; &gt; From: &quot;Gilad Chaplik&quot; &lt;<a href="mailto:gchaplik@redhat.com" target="_blank">gchaplik@redhat.com</a>&gt;<br>
&gt; &gt; &gt; &gt; &gt; To: &quot;Yair Zaslavsky&quot; &lt;<a href="mailto:yzaslavs@redhat.com" target="_blank">yzaslavs@redhat.com</a>&gt;<br>
&gt; &gt; &gt; &gt; &gt; Cc: &quot;engine-devel&quot; &lt;<a href="mailto:engine-devel@ovirt.org" target="_blank">engine-devel@ovirt.org</a>&gt;<br>
&gt; &gt; &gt; &gt; &gt; Sent: Thursday, April 3, 2014 4:00:25 PM<br>
&gt; &gt; &gt; &gt; &gt; Subject: Re: [Engine-devel] vds_dynamic refactor<br>
&gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; ----- Original Message -----<br>
&gt; &gt; &gt; &gt; &gt; &gt; From: &quot;Yair Zaslavsky&quot; &lt;<a href="mailto:yzaslavs@redhat.com" target="_blank">yzaslavs@redhat.com</a>&gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt; To: &quot;Liran Zelkha&quot; &lt;<a href="mailto:liran.zelkha@gmail.com" target="_blank">liran.zelkha@gmail.com</a>&gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt; Cc: &quot;Gilad Chaplik&quot; &lt;<a href="mailto:gchaplik@redhat.com" target="_blank">gchaplik@redhat.com</a>&gt;, &quot;engine-devel&quot;<br>
&gt; &gt; &gt; &gt; &gt; &gt; &lt;<a href="mailto:engine-devel@ovirt.org" target="_blank">engine-devel@ovirt.org</a>&gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt; Sent: Thursday, April 3, 2014 2:12:59 PM<br>
&gt; &gt; &gt; &gt; &gt; &gt; Subject: Re: [Engine-devel] vds_dynamic refactor<br>
&gt; &gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt; ----- Original Message -----<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; From: &quot;Liran Zelkha&quot; &lt;<a href="mailto:liran.zelkha@gmail.com" target="_blank">liran.zelkha@gmail.com</a>&gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; To: &quot;Gilad Chaplik&quot; &lt;<a href="mailto:gchaplik@redhat.com" target="_blank">gchaplik@redhat.com</a>&gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; Cc: &quot;engine-devel&quot; &lt;<a href="mailto:engine-devel@ovirt.org" target="_blank">engine-devel@ovirt.org</a>&gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; Sent: Thursday, April 3, 2014 2:04:29 PM<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; Subject: Re: [Engine-devel] vds_dynamic refactor<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; Why not move it to vds_static?<br>
&gt; &gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt; +1 on Liran&#39;s comment.<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; +1 as well , vds_static is the place for that<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt; I would prefer not to add more complexity to the  vds tables<br>
&gt; &gt; family.<br>
&gt; &gt; &gt; &gt; &gt; &gt; Such complexity may effect performs of queries/views.<br>
&gt; &gt; &gt; &gt; &gt; &gt; If you wish, you can create a view on top of vds_static named<br>
&gt; &gt; &gt; &gt; vds_on_boot<br>
&gt; &gt; &gt; &gt; &gt; &gt; for<br>
&gt; &gt; &gt; &gt; &gt; &gt; querying of vds on boot info.<br>
&gt; &gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt; Yair<br>
&gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; That means moving almost all of vds_dynamic into vds_static except of<br>
&gt; &gt; &gt; &gt; memory,<br>
&gt; &gt; &gt; &gt; &gt; pending resources and status (maybe more but not much);<br>
&gt; &gt; &gt; &gt; &gt; and there will not be any db separation between user input and<br>
&gt; &gt; on_boot<br>
&gt; &gt; &gt; &gt; data.<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; Why we should have such separation ?<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; Thanks,<br>
&gt; &gt; &gt; &gt; &gt; Gilad.<br>
&gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; On Thu, Apr 3, 2014 at 2:00 PM, Gilad Chaplik &lt;<br>
&gt; &gt; <a href="mailto:gchaplik@redhat.com" target="_blank">gchaplik@redhat.com</a>&gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; wrote:<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; &gt; Hi list,<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; &gt; I propose to split vds_dynamic table into 2 tables:<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; &gt; - vds_dynamic<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; &gt; - vds_on_boot<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; &gt; We need a place to put all non-dynamic data that gets updated<br>
&gt; &gt; once<br>
&gt; &gt; &gt; &gt; the<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; &gt; host is booted, and I think dynamic isn&#39;t the place for it.<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; &gt; In first phase we will put there NUMA host topoplogy, but<br>
&gt; &gt; later on<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; &gt; migrate<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; &gt; all non-dynamic host data (cpu, os, etc.).<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; &gt; thoughts?<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; &gt; Thanks,<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; &gt; Gilad.<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; &gt; _______________________________________________<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; &gt; Engine-devel mailing list<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; &gt; <a href="mailto:Engine-devel@ovirt.org" target="_blank">Engine-devel@ovirt.org</a><br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; &gt; <a href="http://lists.ovirt.org/mailman/listinfo/engine-devel" target="_blank">http://lists.ovirt.org/mailman/listinfo/engine-devel</a><br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; _______________________________________________<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; Engine-devel mailing list<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; <a href="mailto:Engine-devel@ovirt.org" target="_blank">Engine-devel@ovirt.org</a><br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; <a href="http://lists.ovirt.org/mailman/listinfo/engine-devel" target="_blank">http://lists.ovirt.org/mailman/listinfo/engine-devel</a><br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; _______________________________________________<br>
&gt; &gt; &gt; &gt; &gt; Engine-devel mailing list<br>
&gt; &gt; &gt; &gt; &gt; <a href="mailto:Engine-devel@ovirt.org" target="_blank">Engine-devel@ovirt.org</a><br>
&gt; &gt; &gt; &gt; &gt; <a href="http://lists.ovirt.org/mailman/listinfo/engine-devel" target="_blank">http://lists.ovirt.org/mailman/listinfo/engine-devel</a><br>
&gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; _______________________________________________<br>
&gt; &gt; &gt; &gt; Engine-devel mailing list<br>
&gt; &gt; &gt; &gt; <a href="mailto:Engine-devel@ovirt.org" target="_blank">Engine-devel@ovirt.org</a><br>
&gt; &gt; &gt; &gt; <a href="http://lists.ovirt.org/mailman/listinfo/engine-devel" target="_blank">http://lists.ovirt.org/mailman/listinfo/engine-devel</a><br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt;<br>
&gt; &gt;<br>
&gt;<br></blockquote></div></blockquote><div><br></div></div></div></blockquote></div><br></div></div>