нужны помощь или советы: побороть медленную заливку в mysql

+ завел тему на серче

Есть много данных, и они заливаются. Но с некоторых пор все стало тормозить. Как бы это побороть?

Что имеется.

* Имеются таблицы, в каждой примерно 1М строк на сейчас, рассчитываю, что будет в разы больше. Но плохо уже сейчас – заливается медленно.

* средняя таблица сейчас:

Данные 436,174 KB
Индекс 79,469 KB

* таблица такая по ключам:

CREATE TABLE `sell_urls` (
`su_id` bigint(20) unsigned NOT NULL auto_increment,
`f_sd_id` bigint(20) NOT NULL default ‘-1’,
`su_url` varchar(255) NOT NULL,
****много полей
PRIMARY KEY (`su_id`),
UNIQUE KEY `f_sd_id` (`f_sd_id`,`su_url`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 ROW_FORMAT=FIXED;

* в конфиге mysql, как я понимаю, не должно быть ничего интересного? Key_buffer_size=4G

* mysqld при работе насасывает памяти до 30% (от 24G!!!) – не знаю, важно это или нет.

* заливка происходит из файлов через выполнение команд mysql -u -p dbname < file.sql
В этих файлах лежат запросы вида:

INSERT INTO sell_urls(f_sd_id, su_url, список полей) VALUES (список наборов значений от 1 до 100), (), ()… ON DUPLICATE KEY UPDATE параметр1=IF(параметр2>=VALUES(параметр2),параметр1,IF(параметр1=0,разные значения)), параметр=VALUES(параметр), ….. ;

Много используется этих IF-ов при обновлении.
Т.е. в зависимости от того, что лежит в таблице, происходит перезапись других полей либо нет.
Перезаписываются поля, по которым индексов нет.
Запросы в одном файле полностью относятся к одной таблице, не к разным.
Причем если одни insert, то летает очень быстро, а если update – медленно

* select запросов одновременных к этим таблицам нет вообще.

И все это медленно работает.
Причем на маленьких таблицах работает быстро. Я сначала думал, что это из-за всяких этих IF-ов, но раз на маленьких быстро – наверное, не из-за них?

Сначала еще я сменил ROW_FORMAT на FIXED, потерял на размере, вроде побыстрее стало, но все равно таблицы увеличились и стало медленно.

Что посоветуете сделать?
Разбивать таблицы на маленькие уже не хочется – эта таблица с 1М записей и так одна из 100 после разнесения.