Przeanalizowałbym plik XML z ich serwera, używając czegoś takiego jak simpleXML .
Wydaje mi się, że pliki XML mają elementy, które są zasadniczo takie same jak inne wartości? W takim przypadku będziesz chciał utworzyć PreparedStatement i powiąż nowe parametry dla każdego wpisu. Jest to najskuteczniejszy sposób, aby to zrobić.
Ale jeśli zależy Ci głównie na wydajności, PHP nie jest właściwą drogą. Możesz użyć Javy (na przykład) do przeanalizowania pliku XML i zapisania wpisu w bazie danych. Nie ma znaczenia, w jakim języku uzyskujesz dostęp do wypełnionej bazy danych.