7 messages in com.mysql.lists.clusterRe: Select performance
FromSent OnAttachments
El Bunzo22 Jun 2005 15:22 
Mikael Ronström22 Jun 2005 15:42 
El Bunzo06 Jul 2005 14:12 
Jonathan Miller06 Jul 2005 15:50 
Nicklas Bondesson07 Jul 2005 03:33 
Jonathan Miller07 Jul 2005 04:39 
Nicklas Bondesson07 Jul 2005 04:55 
Subject:Re: Select performance
From:Mikael Ronström (mik@mysql.com)
Date:06/22/2005 03:42:09 PM
List:com.mysql.lists.cluster

Hi,

2005-06-23 kl. 00.22 skrev El Bunzo:

Hi,

I use MySQL for years with very much respect of it's stability and performance. But in these years one of my servers has grown to several hundreds of databases with approximately 50 tables in each of the databases.

Some of these database have tables containing more than a million records, which will still grow. Actually I expect them to grow even to more than 10 million records. Storing these records is no problem, but querying them becomes more and more difficult within a reasonable time. The total size of all databases is about 40 GB and will grow constantly. So, the MySQL-cluster seems no solutions since all data must be kept into memory.

MySQL Cluster is certainly developing in this direction.

I am looking for a scalable solution where I can put more hardware, if necessary, for more performance. Is there some way to "loadbalance" select-queries over multiple servers? When I look at the "google-technology", they have a lot of machines, each of them storing some chunks of data. So each server handles just a little piece of the request. It would be great if there is such technique for MySQL, splitting up the databases in chunks over several machines. Firing a query should result in a query to all machines, which return their results. The "master-process" collects all chunks of data from the machines and returns the total results to my application.

You might want to look at either MySQL Replication or EMIC as alternative solutions for the short term in your case.

The Parallel Query description you describe doesn't currently exist, I am working on that vision and Partitioning development for 5.1 is a first step in this direction. But the full implementation of this vision is still further down the road.

Rgrds Mikael

If I run into performance trouble in the future, it should be a matter of placing some more hardware to solve the problem.

Any ideas, suggestions or solutions?

Thanx.

El.

Mikael Ronstrom, Senior Software Architect MySQL AB, www.mysql.com

Jumpstart your cluster: http://www.mysql.com/consulting/packaged/cluster.html