MYSQL - Splitting a very large Table - Advice Please
I have a InnoDB table that has about 17 normalized columns with ~6 million records. The size of the table is ~15GB. The queries from the table is starting to take too long and sometimes timeout/crash. I am thinking of splitting the table but am confused which way would be better. Do I split the columns into different tables on the same/different DB? Or do I split the rows of the table into another开发者_开发技巧 DB but then how would I know which row is where in the DB's.
Someone mentioned something about Map/Reduce but has gotten me even more confused. Any help on this will be much appreciated.
Thanks.
Splitting up your tables to make your queries faster is not a step I would take. I would first try to see if you can't change your queries or add indexes to make them faster. I would suggest adding the queries & tables in your question, so that we can provide better answers.
If you already have optimized your queries & indexes, you can still try partitioning. That physically splits your table over for example different harddisks but it stays logically one table. That means you won't have to change your queries while still making them faster.
精彩评论