John Hancock
John Hancock

Reputation: 55

Concerns Of Using Mixed MyISAM & InnoDB On AWS RDS

I am really new to AWS and I want to migrate my database to AWS RDS. But I'm facing several issues. The database is entirely built using MyISAM instead of InnoDB. From what I read at AWS RDS documentation, I understand that I can enjoy the AWS RDS features if I use InnoDB for the database, e.g. the daily backup and the read replica.

The main reason I use MyISAM is to utilize the Full-Text Search and the Spatial Indexing. Until this day, I understand that the MySQL version supported by AWS RDS still doesn't support Full-Text Search (According to this, it's for 5.6.4) and the InnoDB still doesn't support Spatial Indexing too.

So here are my questions

  1. Let's say I convert all remaining tables that don't need the FTS & Spatial to use the InnoDB engine, how optimal can I use the features provided by AWS RDS (read replica, daily backup, etc)?
  2. Will it be any better if I break down a table into two table, one in InnoDB and one in MyISAM? This concern came because some of the columns are often be updated, so those columns will be moved to the InnoDB one to avoid table locking. On the other hand, the MyISAM one is rarely updated.
  3. Let's say I use separate engine for the Full Text e.g. Sphinx or Solr, how can I use it along with RDS? And is there a separate engine for Spatial Indexing that can be used along with RDS?
  4. Any better idea?

Upvotes: 1

Views: 1215

Answers (1)

datasage
datasage

Reputation: 19573

The reason for this is that MyISAM is not considered ACID compliant. This means if that something were to happen to your database in the middle of a transaction, it could be left in an inconsistent state.

Personally, I would use full text search engine designed for the purpose. The quality of results is generally much better than what mysql provides and you can offload some of the work from your mysql server.

Upvotes: 1

Related Questions