MySQL Forums
Forum List  »  Performance

Re: Wrong estimation of Rows in explain
Posted by: Rick James
Date: July 29, 2016 06:58PM

The PARTITIONing provides no performance gain.

The query is asking for 3 million rows from one table, then randomly reaching into the other table 3 million times. Since `innodb_buffer_pool_size` is very small (it should be about 70% of _available_ RAM), the query will have to do a lot of I/O.

I don't see a row estimate of 2; I do see 17. Either of those could be reasonable, since it it not the number of rows in the table, but rather the number of rows in the second table for each row of the first table.

It is usually a mistake to have a pair of columns like this in some table other than a table with "only" these:

AttributeId int(11) ,
AttributeName varchar(100) ,

Do you need 2 billion values for those various IDs? Consider `SMALLINT UNSIGNED` (65K distinct values), or other sizes of INTs. That will save some space.

Options: ReplyQuote

Written By
July 27, 2016 06:19AM
Re: Wrong estimation of Rows in explain
July 29, 2016 06:58PM

Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.