Zdravím, mám takový problém s importováním produktů z XML do MySQL DB.
Jednoduše řečeno, proces trvá strašně dlouho, na localhostu mi Apach využívá procesor na 80% a jedná se pouze o cca 5 000 Produktů.
Architektura je jednoduchá, od J. Vrány jsem použil stahovač.
$xml = 'http://xml.xml';
$toSave = dirname(__FILE__) . '/file.xml';
$current = file_get_contents($xml);
$tempnam = tempnam(dirname(__FILE__) . '/feeds', "tmp");
file_put_contents($tempnam, $current);
if (!@rename($tempnam, $toSave)) {
unlink($tempnam);
}
chmod(dirname(__FILE__) . '/file.xml', 0644);
poté XML zpracuji funkcí simplexml_load_file, projedu forem a ukládám do DB, query('INSERT...')
Nicméně toto je strašně náročné a následné porovnávání kvůli duplicitě už proces časově nedává.
Duplicitu porovnávám tak že hodím SQL SELECT a potom porovnávám v cyklu před INSERTem.
Takže, potřeboval bych prosím poradit, jakým směrem se vydat.
Zda na zpracování použít DOM, třeba je rychlejší. Uložit do pomocné tabulky, kde pracovat už jen s SQL atp.
Děkuju za všechny rady