G'day all, I was hoping to leech from your amalgamated knowledge: I've been asked to estimate the query performance of several SQL queries that power our Reporting system. At the moment we're preparing to scale up enormously the amount of data we're using in our system, and therefore I'm trying to estimate the length of time these queries will take. We are using Red Hat 7.2/MySQL 3.23.49a I believe (I know, I know - dont ask why).
Refering to the manual, section 7.2.2 Estimating Performance (http://dev.mysql.com/doc/mysql/en/Estimating_performance.html). I have an issue with the values for the equation given: log(row_count) / log(index_block_length / 3 * 2 / (index_length + data_pointer_length)) + 1 seeks to find a row. Lets take one of my example tables: row_count - 1,024,306 (will soon be ~23,250,000) rows. index_block_length - ? index_length - ? data_pointer_length - ? * data_pointer_length & index_block_length :- I know the manual states: "MySQL an index block is usually 1024 bytes and the data pointer is usually 4 bytes" My issue is, what is meant by *usually*. How can I check. Should I just use these. * index_length :- For this table, it has the following indexes: PRIMARY KEY (`ID`), <- ID is INT(11) KEY `LogTimeIdx` (`LogTime`), <- LogTime is TIMESTAMP(14) KEY `signid` (`SignID`) <- SignID is INT(11) So what would be my index length? * SHOW TABLE STATUS tells me: rows: 1,024,306 avg_row_length: 51 data_length: 52,543,348 index_length: 32,238,592 Any help with the values I should be using or any guidance on estimating a Queries Performance would be unimaginably appreciated. Regards, Matt. -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]