Nette Helpers loadFromFile – velmi pomalé při načítání definic tabulek
- DefenestrationPraha
- Člen | 120
Používám funkci Nette\Helpers::loadFromFile() k natahování SQL příkazů pro
- samotnou definici prázdných tabulek (CREATE TABLE IF NOT EXISTS),
- následně pro jejich zaplnění daty.
A narazil jsem na zajímavou věc. Akce b), kdy do již existujících tabulek natahuji data, je opravdu extrémně rychlá, přesně jak říká dokumentace (Import SQL dump from file – extremely fast.)
Zato akce a) je naprosto fantasticky pomalá, a tím myslím třeba o tři řády pomalejší, i když těch tabulek je celkem málo. Toto je můj typický výstup, když jsem začal měřit časy jednotlivých operací v rámci CLI skriptu a vypisovat je pomocí echo().
Loaded 38 SQL commands from C:\Projekty\Kraken\trunk\Base\sql\kraken.mysql.sql in 11.46 seconds.
Loaded 43 SQL commands from C:\Projekty\Kraken\trunk\Control\sql\control.mysql.sql in 30.699 seconds.
Data path found as C:\Projekty\Kraken\trunk\Control\test\data\default
Loaded 66 SQL commands from C:\Projekty\Kraken\trunk\Control\test\data\default\base.data.sql in 0.064 seconds.
Loaded 82 SQL commands from C:\Projekty\Kraken\trunk\Control\test\data\default\control.data.sql in 0.035 seconds.