Poor performance for MySQL Cluster

02-21-2007, 04:13 AM

Hi,

I am newbie to the MySQL cluster. So if you find anything silly then please take it in your stride.

I am currently using MySQL 5.1.15-beta version.

I have this query as follows:

select count(*) FROM ACC t1, ACC t2 WHERE t1.sip_callid = t2.sip_callid AND ((t1.fromtag = t2.fromtag and t1.totag = t2.totag) OR (t1.fromtag = t2.totag and t1.totag = t2.fromtag)) AND t1.sip_method='INVITE' AND t2.sip_method='BYE' and t1.sip_status ='200' and t1.time>= '2007-02-19 05:00:00' and t1.time
The ACC table has something 700000+ rows in it and i was lately using this table in MySQL cluster. So when i run this query it takes around 3mins to get the output against the 4secs when the table was having the engine as INNODB.

I have searched the internet to improve the Mysql Cluster performance and found out the two parameters ndb_force_send and ndb_use_exact_count which are significant for the cluster performnace. So i kept the parameter value as
ndb_force_send = 0
ndb_use_exact_count = 0

Also i kept the server parameters as follows:
query_cache_size = 536870912
query_cache_type = ON

But still i didnt get any fruitful result out of it.
I also tried by changing the engine_condition_pushdown parameter value to '1' but still no desired result.

Also one thing that surprised me even when i changed the engine_condition_pushdown parameter value to '0' and when i generated the EXPLAIN plan for the above query i could still see the comment as 'Using where with pushed condition'. Any answers for this??

Also i would like to share my Cluster information with you. I am using two data nodes , a Management node and two SQL nodes

With this kind of network configuration i shouldnt be facing any problems with Mysql cluster performance, as the physical configuration is exactly as suggested by the MySQL guys.
Plz help me out for all!!!!