# maria-developers team mailing list archive

## Re: [GSoC] Introduction Mail

```a1,a2 is what your solve equation function is saving?
and you want know t1,t2,t3..t130, to understand how much time each

doing this, what's the next step? this is a start point to select
what's better? index vs table scan?

2014-07-08 15:54 GMT-03:00 Anshu Avinash <anshu.avinash35@xxxxxxxxx>:
> Hi,
>
> a1, a2, ..., a130 are coefficients. t1, t2, .., t130 are unknowns. We need
> 130 linearly independent equations to solve for these variables. We can
> never get 130 linearly independent equations as some of the coefficients
> would be 0 every time. Hence, we get an approximate solution by forming an
> overdetermined system (http://en.wikipedia.org/wiki/Overdetermined_system).
> Let me know if you have any further doubts.
>
> Regards
> Anshu Avinash
>
>
> On Wed, Jul 9, 2014 at 12:18 AM, Roberto Spadim <roberto@xxxxxxxxxxxxx>
> wrote:
>>
>> ops, linear equation
>>
>> 2014-07-08 15:47 GMT-03:00 Roberto Spadim <roberto@xxxxxxxxxxxxx>:
>> > going back...
>> > a1t1 + a2t2 + … + a130t130= ttotal
>> >
>> > a1, t1...
>> >
>> > a1 is something you don't know
>> > t1 is the coefficients[i]?
>> >
>> > it's a first order equation, right?
>> >
>> >
>> >
>> > 2014-07-08 15:20 GMT-03:00 Anshu Avinash <anshu.avinash35@xxxxxxxxx>:
>> >> Hi,
>> >>
>> >> The idea is we know the total time the query took, and how many times
>> >> an
>> >> operation was performed. For example, consider the case of 'read_time'.
>> >> We
>> >> know how many times an index read took place, but don't know how much
>> >> time
>> >> does it take to do an index read. By solving these equations, we are
>> >> trying
>> >> to find out time for individual operations. coefficients[i].value is
>> >> `how
>> >> many time the operation i took place in a single query.`
>> >>
>> >> Hope this clears things up.
>> >>
>> >> Regards
>> >> Anshu Avinash
>> >>
>> >>
>> >> On Tue, Jul 8, 2014 at 10:57 PM, Roberto Spadim <roberto@xxxxxxxxxxxxx>
>> >> wrote:
>> >>>
>> >>> just to understand...
>> >>> --- the solve_equation part, today only used to save information:
>> >>>   std::ofstream datafile;
>> >>>   char file_name[100];
>> >>>   my_snprintf(file_name, 100,
>> >>>   datafile.open(file_name, std::ios::app);
>> >>>   for(int i=0; i < MAX_CONSTANTS; i++)
>> >>>     datafile << coefficients[i].value << " ";
>> >>>   datafile << total_time << "\n";
>> >>>   datafile.close();
>> >>> ----
>> >>>
>> >>> the idea is: given a query and some coefficients[i].value, you got
>> >>> total_time need to execute the query
>> >>> you want to "train" something to tell you how many time the same query
>> >>> should execute?
>> >>> or, what's the "x[i]" variables from your system (hardware/hard
>> >>> disk/etc), and extend this to others queries?
>> >>>
>> >>>
>> >>> 2014-07-08 14:20 GMT-03:00 Roberto Spadim <roberto@xxxxxxxxxxxxx>:
>> >>> > =] nice
>> >>> >
>> >>> > 2014-07-08 14:18 GMT-03:00 Anshu Avinash
>> >>> > <anshu.avinash35@xxxxxxxxx>:
>> >>> >> Hi all,
>> >>> >>
>> >>> >>
>> >>> >>
>> >>> >> It is around 26M. I have added the link on blog too.
>> >>> >>
>> >>> >> Regards
>> >>> >> Anshu
>> >>> >>
>> >>> >>
>> >>> >> On Tue, Jul 8, 2014 at 10:38 PM, Roberto Spadim
>> >>> >> <roberto@xxxxxxxxxxxxx>
>> >>> >> wrote:
>> >>> >>>
>> >>> >>> could you 'display' the dataset you used with octave?
>> >>> >>>
>> >>> >>> 2014-07-08 13:55 GMT-03:00 Anshu Avinash
>> >>> >>> <anshu.avinash35@xxxxxxxxx>:
>> >>> >>> > Hi all,
>> >>> >>> >
>> >>> >>> > This week's blog post is at:
>> >>> >>> > http://igniting.in/gsoc2014/2014/07/08/solving-linear-equations/
>> >>> >>> > .
>> >>> >>> > Sorry
>> >>> >>> > for
>> >>> >>> > the delay.
>> >>> >>> > Suggestions for an approach to solve the system of linear
>> >>> >>> > equations
>> >>> >>> > are
>> >>> >>> > welcome.
>> >>> >>> >
>> >>> >>> > Regards
>> >>> >>> > Anshu Avinash
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > On Mon, Jun 23, 2014 at 7:39 PM, Roberto Spadim
>> >>> >>> > <roberto@xxxxxxxxxxxxx>
>> >>> >>> > wrote:
>> >>> >>> >>
>> >>> >>> >> " MDEV. "
>> >>> >>> >> it's nice to put full name (MDEV-350), since google and others
>> >>> >>> >> search
>> >>> >>> >> engines help when someone try to find information about mdev
>> >>> >>> >> 350
>> >>> >>> >>
>> >>> >>> >> text is ok :)
>> >>> >>> >>
>> >>> >>> >> 2014-06-23 11:04 GMT-03:00 Anshu Avinash
>> >>> >>> >> <anshu.avinash35@xxxxxxxxx>:
>> >>> >>> >> > Hi,
>> >>> >>> >> >
>> >>> >>> >> > Sorry for the confusion, this is the new link:
>> >>> >>> >> > http://igniting.in/gsoc2014/2014/06/23/work-before-mid-term/
>> >>> >>> >> > Thanks for pointing out.
>> >>> >>> >> >
>> >>> >>> >> > Regards
>> >>> >>> >> > Anshu
>> >>> >>> >> >
>> >>> >>> >> >
>> >>> >>> >> > On Mon, Jun 23, 2014 at 7:32 PM, Roberto Spadim
>> >>> >>> >> > <roberto@xxxxxxxxxxxxx>
>> >>> >>> >> > wrote:
>> >>> >>> >> >>
>> >>> >>> >> >> "Sorry this page does not exist =("
>> >>> >>> >> >>
>> >>> >>> >> >> 2014-06-23 8:07 GMT-03:00 Anshu Avinash
>> >>> >>> >> >> <anshu.avinash35@xxxxxxxxx>:
>> >>> >>> >> >> > Hi all,
>> >>> >>> >> >> >
>> >>> >>> >> >> > You can find this week's blog entry at:
>> >>> >>> >> >> > http://igniting.in/2014/06/23/work-before-mid-term/
>> >>> >>> >> >> > Suggestions/reviews are welcome.
>> >>> >>> >> >> >
>> >>> >>> >> >> > Regards
>> >>> >>> >> >> > Anshu Avinash
>> >>> >>> >> >> >
>> >>> >>> >> >> >
>> >>> >>> >> >> > On Mon, Jun 9, 2014 at 7:30 PM, Roberto Spadim
>> >>> >>> >> >> > <roberto@xxxxxxxxxxxxx>
>> >>> >>> >> >> > wrote:
>> >>> >>> >> >> >>
>> >>> >>> >> >> >> Well i wws reading your posts
>> >>> >>> >> >> >> Do you need big data to test read and scan times?
>> >>> >>> >> >> >>
>> >>> >>> >> >> >> Em segunda-feira, 9 de junho de 2014, Anshu Avinash
>> >>> >>> >> >> >> <anshu.avinash35@xxxxxxxxx> escreveu:
>> >>> >>> >> >> >>
>> >>> >>> >> >> >>> Hi all,
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>> You can find this week's blog entry at
>> >>> >>> >> >> >>> http://igniting.in/gsoc2014/2014/06/09/more-coding/. I'm
>> >>> >>> >> >> >>> now
>> >>> >>> >> >> >>> maintaining the
>> >>> >>> >> >> >>> code only on github:
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>> https://github.com/igniting/server/tree/selfTuningOptimizer.
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>> Regards
>> >>> >>> >> >> >>> Anshu Avinash
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>> On Sun, May 25, 2014 at 3:27 PM, Anshu Avinash
>> >>> >>> >> >> >>> <anshu.avinash35@xxxxxxxxx> wrote:
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>> Hi all,
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>> You can find my this week's blog entry at
>> >>> >>> >> >> >>> http://igniting.in/gsoc2014/2014/05/25/coding-things-up/
>> >>> >>> >> >> >>> . I
>> >>> >>> >> >> >>> have
>> >>> >>> >> >> >>> created a
>> >>> >>> >> >> >>> branch on launchpad for my work:
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>> http://bazaar.launchpad.net/~igniting/maria/maria/revision/4211
>> >>> >>> >> >> >>> .
>> >>> >>> >> >> >>> You
>> >>> >>> >> >> >>> can
>> >>> >>> >> >> >>> give your suggestions/reviews either on this thread or
>> >>> >>> >> >> >>> as a
>> >>> >>> >> >> >>> comment
>> >>> >>> >> >> >>> on
>> >>> >>> >> >> >>> the
>> >>> >>> >> >> >>> blog itself.
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>> Regards
>> >>> >>> >> >> >>> Anshu Avinash
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>> On Tue, May 20, 2014 at 1:22 AM, Roberto Spadim
>> >>> >>> >> >> >>> <roberto@xxxxxxxxxxxxx>
>> >>> >>> >> >> >>> wrote:
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>> wow a big work, congratulation guy, i will read part by
>> >>> >>> >> >> >>> part
>> >>> >>> >> >> >>> to
>> >>> >>> >> >> >>> better
>> >>> >>> >> >> >>> understand mariadb code
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>> 2014-05-19 16:33 GMT-03:00 Anshu Avinash
>> >>> >>> >> >> >>> <anshu.avinash35@xxxxxxxxx>:
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>> Hi all,
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>> This week's blog entry would get delayed by couple of
>> >>> >>> >> >> >>> days.
>> >>> >>> >> >> >>> I
>> >>> >>> >> >> >>> have
>> >>> >>> >> >> >>> started coding though and would like to give heads up on
>> >>> >>> >> >> >>> what
>> >>> >>> >> >> >>> I'm
>> >>> >>> >> >> >>> doing.
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>> I've looked at the diffs for "Cost model project" of
>> >>> >>> >> >> >>> mysql:
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>> http://bazaar.launchpad.net/~mysql/mysql-server/5.7/revision/7596
>> >>> >>> >> >> >>> and
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>> http://bazaar.launchpad.net/~mysql/mysql-server/5.7/revision/7222 .
>> >>> >>> >> >> >>> These
>> >>> >>> >> >> >>> give a pretty good idea about what are the hard-coded
>> >>> >>> >> >> >>> constants
>> >>> >>> >> >> >>> and
>> >>> >>> >> >> >>> where
>> >>> >>> >> >> >>> are they being used.
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>> The idea is to multiply "READ_TIME_FACTOR" and
>> >>> >>> >> >> >>> "SCAN_TIME_FACTOR"
>> >>> >>> >> >> >>> to
>> >>> >>> >> >> >>> the
>> >>> >>> >> >> >>> values returned by read_time() and scan_time() in
>> >>> >>> >> >> >>> handler.h,
>> >>> >>> >> >> >>> while
>> >>> >>> >> >> >>> returning. These values would be read from a table in
>> >>> >>> >> >> >>> mysql
>> >>> >>> >> >> >>> db.
>> >>> >>> >> >> >>> For
>> >>> >>> >> >> >>> that
>> >>> >>> >> >> >>> I've looked at sql_statistics.cc. After completing this,
>> >>> >>> >> >> >>> I'll
>> >>> >>> >> >> >>> first
>> >>> >>> >> >> >>> change
>> >>> >>> >> >> >>> the values of these constants manually and check if the
>> >>> >>> >> >> >>> better
>> >>> >>> >> >> >>> or
>> >>> >>> >> >> >>> worse
>> >>> >>> >> >> >>> query plans are being selected. I'll first do the last
>> >>> >>> >> >> >>> step
>> >>> >>> >> >> >>> manually,
>> >>> >>> >> >> >>> to
>> >>> >>> >> >> >>> check if everything is working as expected and later
>> >>> >>> >> >> >>> automate
>> >>> >>> >> >> >>> it.
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>> Regards
>> >>> >>> >> >> >>> Anshu
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>> On Mon, May 12, 2014 at 11:22 AM, Anshu Avinash
>> >>> >>> >> >> >>> <anshu.avinash35@xxxxxxxxx> wrote:
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>> Hi all,
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>> You can find my blog entry for this week at
>> >>> >>> >> >> >>> http://igniting.in/gsoc2014/2014/05/11/first-steps/ .
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>> Regards
>> >>> >>> >> >> >>> Anshu Avinash
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>> On Thu, May 8, 2014 at 11:46 PM, Anshu Avinash
>> >>> >>> >> >> >>> <anshu.avinash35@xxxxxxxxx> wrote:
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>> Hi all,
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>> last
>> >>> >>> >> >> >>> couple
>> >>> >>> >> >> >>> of
>> >>> >>> >> >> >>> days
>> >>> >>> >> >> >>> and might still be busy for 1-2 days more. I would be
>> >>> >>> >> >> >>> completely
>> >>> >>> >> >> >>> free
>> >>> >>> >> >> >>> starting next week, and would be updating my blog weekly
>> >>> >>> >> >> >>> on
>> >>> >>> >> >> >>> every
>> >>> >>> >> >> >>> Monday (so
>> >>> >>> >> >> >>> 1st update would be on May 12). I would also send the
>> >>> >>> >> >> >>> link
>> >>> >>> >> >> >>> of my
>> >>> >>> >> >> >>> post
>> >>> >>> >> >> >>> weekly
>> >>> >>> >> >> >>> on the mailing list.
>> >>> >>> >> >> >>>
>> >>> >>> >> >> >>> As discussed on irc, I started to explore the pair of
>> >>> >>> >> >> >>> constants:
>> >>> >>> >> >> >>> handler::scan_time() and handler::read_time().
>> >>> >>> >> >> >>
>> >>> >>> >> >> >>
>> >>> >>> >> >> >>
>> >>> >>> >> >> >> --
>> >>> >>> >> >> >> Roberto Spadim
>> >>> >>> >> >> >> SPAEmpresarial
>> >>> >>> >> >> >> Eng. Automação e Controle
>> >>> >>> >> >> >>
>> >>> >>> >> >> >
>> >>> >>> >> >>
>> >>> >>> >> >>
>> >>> >>> >> >>
>> >>> >>> >> >> --
>> >>> >>> >> >> Roberto Spadim
>> >>> >>> >> >> SPAEmpresarial
>> >>> >>> >> >> Eng. Automação e Controle
>> >>> >>> >> >
>> >>> >>> >> >
>> >>> >>> >>
>> >>> >>> >>
>> >>> >>> >>
>> >>> >>> >> --
>> >>> >>> >> Roberto Spadim
>> >>> >>> >> SPAEmpresarial
>> >>> >>> >> Eng. Automação e Controle
>> >>> >>> >
>> >>> >>> >
>> >>> >>>
>> >>> >>>
>> >>> >>>
>> >>> >>> --
>> >>> >>> SPAEmpresarial
>> >>> >>> Eng. Automação e Controle
>> >>> >>
>> >>> >>
>> >>> >
>> >>> >
>> >>> >
>> >>> > --
>> >>> > SPAEmpresarial
>> >>> > Eng. Automação e Controle
>> >>>
>> >>>
>> >>>
>> >>> --
>> >>> SPAEmpresarial
>> >>> Eng. Automação e Controle
>> >>
>> >>
>> >
>> >
>> >
>> > --
>> > SPAEmpresarial
>> > Eng. Automação e Controle
>>
>>
>>
>> --
>> SPAEmpresarial
>> Eng. Automação e Controle
>
>

--