Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 2.11.2012 Skąd: Poznań Ostrzeżenie: (0%)
|
Witam,
Piszę aplikację, która bedzie ładowała do bazy danych pliki XML, o pojemności 200-500MB. Jedną z znanych mi metod jest zastosowanie simplexml, ale nie działa to wydajnie. Zadanie będzie polegało najpierw na wczytaniu wszystkich danych (w php będą one walidowane, pod kontem zgodności z przyjętym standardem), a następnie będzie szła aktualizacja raz dziennie, i jeżeli będzie się coś zmieniać, to dane zostaną nadpisane, dodane, bądź usunięte. Nie ukrywam, że zależało by mi na lepszej wydajności, ponieważ są też problemy z serwerem, na którym rozwiązanie testowaliśmy. Czy znacie jakieś lepsze metody na import takiego pliku, które działają wydajniej? Może jakiś sposób, na inne rozwiązanie tego porblemu. Z góry dzięki za odpowiedzi Pozdrawiam |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 1 332 Pomógł: 294 Dołączył: 12.10.2008 Skąd: Olkusz Ostrzeżenie: (0%)
|
na pewno raczej nie muszę pisać, iż dane te muszą być wgrane w jednej sesji... ale to mało, by nie sprawdzać czy robić update czy insert to najlepiej dane wgrać w sesji do tabeli tymczasowej a potem jednym zapytaniem tam gdzie są unikalne rekordy powtarzające się jakoś rozpoznawalne zrobić update a na różnicy kolejnym zapytaniem insert wielu rekordów na raz... na koniec oczywiście delete tymczasowej tablicy... a jeśli problem jeszcze jest z pamięcią po stronie PHP to programowanie zdarzeniowe + SAX (Simple API for XML)...
|
|
|
|
![]() ![]() |
|
Aktualny czas: 24.10.2025 - 07:41 |