Są na to 2 części:
- odczytywanie pliku xml
- zapis do bazy danych
Aby odczytać plik xml, ten link http://csharptutorial.blogspot .com/2006/10/reading-xml-fast.html , pokazuje, że 1 MB można odczytać w 2,4 sekundy przy użyciu czytnika strumieniowego, co oznaczałoby 2400 sekund lub 40 minut (jeśli moja matematyka działa tak późno) dla pliku 1 GB.
Z tego, co wyczytałem, najszybszym sposobem na wprowadzenie danych do MySQL jest użycie LOAD DATA.
http://dev.mysql.com/doc/refman /5.1/pl/load-data.html
Dlatego, jeśli możesz odczytać dane xml, zapisz je do plików, które mogą być użyte przez LOAD DATA, a następnie uruchom LOAD DATA. Całkowity czas może być krótszy niż godziny, których doświadczasz.