Re: Bad performance of NDB
Hi,
It's hard to give specific hints wo/ more knowledge about your application...but
1) Currently the limiting factor for many applications is the mysqld.
Adding more mysqld connected to the same cluster will increase throughput.
However, a single threaded application will ofcourse not gain any thing from this.
We are working on improving performance for singel threaded applications by
trying to reduce latency as much as possible.
2) In 5.0, we've added the feature to batch reads from a mysqld to the cluster.
This means that "select * from T where key in (1,2,3,4,5)" will be sent as one request to the
data nodes and this statement will execute in roughly the sime time as a single "select * from T where key = 1".
We measured performace gains between 100% - 400% for this kind of rewrites.
3) Setting "ndb_use_exact_count" to false can for some requests improve perfomance with 100%
4) joins are currently in most cases poorly supported with mysql cluster.
This is something that we're working on...but will probably not be ready before 5.1
5) For querying large datasets not limited with indexes the "engine-condition-pushdown" (5.0)
can give up to 1000% performace gains if other where clauses narrow dataset.
(as the where clauses can be pushed down and evaluated in parallell on the data nodes)
Note, not all where clauses can currently be pushed down...but we support almost all where clauses
of the form "column operator constant".
e.g select * from T where col1=7 and col2 = 'jonas' and col3 < 2000
/Jonas
Subject
Views
Written By
Posted
6215
April 22, 2005 03:17AM
2924
May 14, 2005 05:18PM
Re: Bad performance of NDB
2891
May 16, 2005 11:12PM
Sorry, you can't reply to this topic. It has been closed.
Content reproduced on this site is the property of the respective copyright holders.
It is not reviewed in advance by Oracle and does not necessarily represent the opinion
of Oracle or any other party.