List:Cluster« Previous MessageNext Message »
From:<paul Date:October 20 2011 3:38pm
Subject:RE: Slow session (connection) set-up using MySQLD API
View as plain text  
Jonas,

Attached are the config.ini file (for the management nodes), my.cnf file
(for the MySQLD API nodes, in this case for node 55), and the ndbd.cnf
file (for the data nodes).

Unfortunately I am not allowed to share the source code of my test
program, I'm sorry.

Thanks for your help, Paul

> -------- Original Message --------
> Subject: Re: Slow session (connection) set-up using MySQLD API
> From: Jonas Oreland <jonas.oreland@stripped>
> Date: Thu, October 20, 2011 4:06 pm
> To: paul@stripped
> Cc: cluster@stripped
> 
> 
> On 10/20/11 15:31, paul@stripped wrote:
> > Hello,
> >
> > I'm evaluating MySQL Cluster as a replacement for our current "normal"
> > MySQL Server. The current server is processing many "update" queries per
> > second, sent by a client application that always stays connected to the
> > server. On the other hand, the server is serving "select" queries on the
> > same table, using clients that disconnect after each query (i.e.,
> > requests coming from a web server, without connection pooling).
> >
> > In my evaluation I have observed that MySQL Cluster with two data nodes
> > offers a superior "update" performance compared to a MySQL Server
> > instance running on identical hardware. However, performance for the
> > "select" queries is much worse on MySQL Cluster (using MYSQLD as API).
> >
> > Apparently MySQL Cluster has much more "overhead" setting up a session
> > (connection). The difference between MySQL Server and MySQL Cluster is
> > quite dramatic: In our test set-up MySQL Cluster could only server about
> > 65 connect-select-disconnect cycles, whereas MySQL Server can easily
> > handle 1000 and more cycles per second. This is quite a show-stopper for
> > our purposes...
> >
> > Note that all queries are done using the primary key, and all updates
> > and selects work on exactly one row. In total our test table contains
> > 100,000 rows. The MySQL Server version used to test was 5.1 and MySQL
> > Cluster was version 7.2.1 with MySQLD 5.5.
> >
> > Does anyone else has the same experience with MySQL Cluster? Is there
> > any way to improve this connect-select-disconnect cycles?
> >
> > Thanks for your help,
> >
> > Paul
> 
> Hi Paul,
> 
> Could you share your my.cnf and maybe your application (that does the SELECT) so
> I can test for my self ?
> 
> /Jonas

[mysqld  default]

[ndb_mgmd default]
datadir=/var/db/mysql-cluster2/logs

[tcp default]

[ndbd default]
NoOfReplicas=2
datadir=/var/db/mysql-cluster2/data

[ndb_mgmd]
NodeID = 101
hostname=paul01.test

[ndb_mgmd]
NodeID = 102
hostname=paul02.test

[mysqld]
NodeID = 53
hostname = paul03.test

[mysqld]
NodeID = 54
hostname = paul04.test

[mysqld]
NodeID = 55
hostname = paul05.test

[mysqld]
NodeID = 56
hostname = paul06.test

[ndbd]
NodeID = 7
hostname=paul07.test

[ndbd]
NodeID = 8
hostname=paul08.test

[mysqld]
[mysqld]
[mysqld] 
[mysqld] 
[ndbd]
ndb-connectstring='paul01.test,paul02.test'
[mysqld]
skip-name-resolve

port		= 3309
server-id = 55
ndb-nodeid=55
ndbcluster
ndb-connectstring = 'paul01.test,paul02.test'

socket		= /var/db/mysql-cluster2/mysqld/mysql.sock
basedir = /usr/local/mysql
datadir = /var/db/mysql-cluster2/mysqld/data

log-bin=

pid-file=/var/db/mysql-cluster2/mysqld/mysqld.pid

user = mysql

slow_query_log
long_query_time=1
slow_query_log_file=/var/db/mysql-cluster2/mysqld/logs/slow.log
log-error=/var/db//mysql-cluster2/mysqld/logs/mysqld.log

default-storage-engine = MyISAM

collation_server = latin1_general_ci
key_buffer_size = 384M
max_allowed_packet = 1M
table_open_cache = 2000
sort_buffer_size = 2M
read_buffer_size = 2M
read_rnd_buffer_size = 8M
myisam_sort_buffer_size = 64M
thread_cache_size = 8
query_cache_size = 32M
thread_concurrency = 16

skip-log-warnings
max_connections=2000
max_connect_errors=10000
max_heap_table_size=256m

wait_timeout=86400
interactive_timeout=86400

safe-user-create
secure-file-priv=/var/lib/mysql
disable-local-infile
disable-symbolic-links


Thread
Slow session (connection) set-up using MySQLD APIpaul20 Oct
  • Re: Slow session (connection) set-up using MySQLD APIJohan Andersson20 Oct
  • Re: Slow session (connection) set-up using MySQLD APIJonas Oreland20 Oct
RE: Slow session (connection) set-up using MySQLD APIpaul20 Oct
RE: Slow session (connection) set-up using MySQLD APIpaul20 Oct
  • Re: Slow session (connection) set-up using MySQLD APIJohan Andersson20 Oct
    • Re: Slow session (connection) set-up using MySQLD APIJonas Oreland20 Oct
Re: Slow session (connection) set-up using MySQLD APIJonas Oreland21 Oct