Има няколко начина за оптимизиране на насипните вложки. Някои са:
-
LOAD DATA INFILE
. Има приложен програмен интерфейс (API) за . NET . Това е най-бързият начин, но има някои ограничения и семантични разлики от обикновените вмъквания. -
Многоредов
INSERT
изявления:INSERT INTO temperature (temperature) VALUES (1.0), (2.0), (3.0), ...
Не трябва да вмъквате 20 000 000 реда наведнъж, но може да искате да опитате 1 000-10 000 за много голямо ускоряване. Това е прост и много безпроблемен начин за увеличаване на скоростта. Често е възможен фактор 10, а понякога и повече.
-
Заключване на таблицата (
LOCK TABLES
). -
Временно деактивиране на индексите.
-
Настройка на MySQL опции.
-
INSERT DELAYED
(най-вероятно не е толкова полезно тук).
Документацията ви дава по-подробни подробности на опциите. Някои опции зависят от типа на таблицата (InnoDB срещу MyISAM ).
Общо предложение:Винаги посочвайте колоните, които вмъквате пред VALUES
. Това прави кода по-поддържан.