chris finne

Indexing Sphinx on Amazon AWS EC2 With MySQL RDS and Compression

03 Jun 2010

I’m using Amazon’s Relational Database Service which runs MySQL 5.1 on a Large EC2 instance for me.

I have over 2 million records in a Rails application that I index with Sphinx.

Now I’m looking at MySQL Compression. Sphinx can use it with this switch from the Sphinx Docs

mysql_connect_flags = 32 # enable compression

Sphinx Indexing (to a RAM disk) w/o compression

real 15m17.159s
user 14m20.330s
sys 0m28.630s

Sphinx Indexing (to a RAM disk) w/ MySQL Compression:

real 15m45.433s
user 14m58.080s
sys 0m13.310s

So no material difference between the two.

As an aside:

Sphinx Indexing (to an EBS boot disk) w/ MySQL Compression:

real 16m0.305s
user 14m56.730s
sys 0m16.230s

so it looks like using the RAM disk on EC2 doesn’t affect indexing performance all that much.

MySQL Compression for Rails

In parallel I was also looking up how to enable MySQL compression in a Rails app using the MySQL gem