On 1/1/07, mos wrote:
> At 12:49 PM 1/1/2007, Jochem van Dieten wrote:
> >On 1/1/07, mos wrote:
>>>
>>>
> http://www.mysqlperformanceblog.com/2006/11/30/interesting-mysql-and-postgresql-benchmarks/
>>>
>>> http://tweakers.net/reviews/649/6
>>>
>>> Has this been fixed?
>>
>> As the article on the MySQL Performance Blog mentioned, a fix from
>> InnoDB has been integrated into 5.30.
5.0.30 I meant.
>> Tweakers.net has already tested
>> this fix and it does show some improvement, but it still has a long
>> way to go: http://tweakers.net/reviews/661/6
>
> Yes Innodb has a long ways to go and I'm wondering if it is
> fixable so the performance is more linear. As it is, performance in the
> Tweakers' charts drop dramatically (tanks?) after 7 concurrent users even
> for version 5.03. I know Innodb works best if the table fits into memory,
> but for me that isn't practical (at least on one machine) because the
> tables will grow over time and I don't want to crash into a wall when the
> table exceeds memory capacity of the machine.
The tweakers.net tests are with all data in memory. It is very well
possible that the scaling behaviour of an I/O bound InnoDB application
is very different. I would expect it to show a lower peak performance,
but also a smaller drop-off after the peak.
> So I'm wondering how high traffic websites that use Innodb can
> overcome this problem? Google GMail, Craigs List, TIcket Master, Yahoo etc
> all have high number of updates per second, so there must be an InnoDb
> solution, right?
What exactly do they use MySQL for? For instance, doesn't Google just
write e-mail on a filesystems (GFS is essentially append-only) and
only keep a small amount of meta-data somewhere that is actually
updated? Design-wise I would expect their infrastructure to have much
more in common with Dovecot then an email-in-a-database solution.
> I know these questions are pretty much rhetorical, but I thought I'd bounce
> this off of you guys to see what the best approach is for a high traffic
> transactional web site. If you were going to write one of these web sites I
> mentioned, would you still use InnoDb?
I probably wouldn't use a relational database at all. Convenient as
they may be due to their standardized interface (SQL), they perform
much worse then a dedicated solution. And if I were to use a
relational database, I would probably scale out instead of up. You
might find ftp://ftp.research.microsoft.com/pub/tr/TR-2004-107.pdf an
interesting read.
Jochem