MySQL table enhancements to improve query performance
We have a table defined in MySQL that causes performance issues. We believe event_id is not needed. The main problem is there isn't a lot of unique fields that we query on. Mainly all queries use source and event_type. The possible values for source are about 8 different strings ranging from 3-26 characters but not limited to either (i.e. future development). The possible values for event_type are 56 different strings ranging from 5-15 characters but not limited to either (i.e. future development). Our task is to have an extremely experienced MySQL DB programmer to devise a table scheme to make queries much faster. The queries started to slow down once we hit about 100K entries in the table. Our table is defined below. We use InnoDB. CREATE TABLE `event` ( `event_id` int(11) NOT NULL auto_increment, `source` varchar(255) NOT NULL, `first_timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP, `latest_timestamp` datetime NULL, `event_type` varchar(255) NOT NULL, `string` varchar(16383) NOT NULL, `source_acct_id` int(11) NOT NULL default 0, `source_user_id` int(11) NOT NULL default 0, `target_acct_id` int(11) NOT NULL default 0, `target_user_id` int(11) NOT NULL default 0, `extra_data` varchar(255) NULL, `severity` tinyint(4) NULL, `file` varchar(255) NULL, `line_number` varchar(16) NULL, `repeat` int(11) NOT NULL default 0, `process_attempts` tinyint(4) NOT NULL default 0, KEY (`event_id`) ) ENGINE=InnoDB;
| Expired |
Related projects
Search for freelance jobs
"I did not know what to expect at first. But my final impression once I used your site and service is a great one! Simply amazing!
I would recommend this service to any other freelance artists and co workers who are looking to expand their client base."
"The possibility to include all information about my freelance working places in just one website. It means, I don't need to tell my future employer to go to odesk, elance, etc. They can check everything about me in donanza website."




