Performance

Warming up to MySQL

2 August 2007


I have mostly worked on proprietary databases in the past – DB2, SQL server, Sybase,Oracle at the enterprise scale and Microsoft Access for some light weight use. Now, there’s MySQL. I have been hearing about this from our clients and other geeks for a long time, finally decided to give it a try. Turns out, MySQL is actually a great product! I put it to some serious performance testing and was pleasantly surprised by the outcome. Why pay hefty license fees when MySQL can do the job for almost free? I tried MySQL 5.0, which has been out for a while, so getting the libraries wasn’t hard. The MySQL 5.1, I believe, is still in beta, and I had to roll it back, because it did not seem to like the mysql++ libraries.

>Warming up to MySQL

2 August 2007

>
I have mostly worked on proprietary databases in the past – DB2, SQL server, Sybase,Oracle at the enterprise scale and Microsoft Access for some light weight use. Now, there’s MySQL. I have been hearing about this from our clients and other geeks for a long time, finally decided to give it a try. Turns out, MySQL is actually a great product! I put it to some serious performance testing and was pleasantly surprised by the outcome. Why pay hefty license fees when MySQL can do the job for almost free? I tried MySQL 5.0, which has been out for a while, so getting the libraries wasn’t hard. The MySQL 5.1, I believe, is still in beta, and I had to roll it back, because it did not seem to like the mysql++ libraries.

Scalability , Performance, Availability & Failover

14 June 2007


When we design software for our clients we make sure apart from the basic functionality, it can stand the test of scalability, performance, availability and failover. We take a bottom up approach in such design considerations. A lot of brainstorming and peer review sessions go before we lock into a design idea. I start getting uncomfortable feelings when I come across a design which seems like it can not stand the test of time, premonition if you will. These four considerations become all the more important if the design has some components of a database in the back-end. A layer of complexity gets added to the mix, and we have to go back and look at the industry best practices around databases. The work sometime involves throwing out the conventional wisdom and get some sort of out of box thinking to the design approach. I remember, when no amount of database fine-tuning would help us around performance bottlenecks on a DB2 system and we had to go back to the drawing board and throw out the database altogether. Used some sequential files, external sort routines and a series of batch jobs on an IBM mainframe!

On the clustering side, Microsoft Cluster Service has made our lives easier. Even a cluster -unaware application can be run in a cluster environment by using what is called “Generic Application” resource type or “Generic Service” resource type.

>Scalability , Performance, Availability & Failover

14 June 2007

>
When we design software for our clients we make sure apart from the basic functionality, it can stand the test of scalability, performance, availability and failover. We take a bottom up approach in such design considerations. A lot of brainstorming and peer review sessions go before we lock into a design idea. I start getting uncomfortable feelings when I come across a design which seems like it can not stand the test of time, premonition if you will. These four considerations become all the more important if the design has some components of a database in the back-end. A layer of complexity gets added to the mix, and we have to go back and look at the industry best practices around databases. The work sometime involves throwing out the conventional wisdom and get some sort of out of box thinking to the design approach. I remember, when no amount of database fine-tuning would help us around performance bottlenecks on a DB2 system and we had to go back to the drawing board and throw out the database altogether. Used some sequential files, external sort routines and a series of batch jobs on an IBM mainframe!

On the clustering side, Microsoft Cluster Service has made our lives easier. Even a cluster -unaware application can be run in a cluster environment by using what is called “Generic Application” resource type or “Generic Service” resource type.