Witam, od pewnego czasu borykam się z pewnym problemem.
Opiekuję się serwisem, który codziennie wymaga aktualizacji bazy danych poprzez import kilku plików XML do bazy danych (MYSQL).
Pliki są wielkośći kilkunastu bądź kilkudziesięciu MB. W celu sprawnego importu dziele je na mniejsze porcje rzędu 1MB a nastepnie importuje pokoleji.
Baza danych zawierająca oferty składa się kilku tabel w ktorych liczba rekordow wacha sie od kilkunastu tysiecy do 1,5 mln rekordow.
W kazdej tabeli jest zdefiniowanych po kilka indeksów (w celu sprawnego dzialania wyszukiwarki w ktorej niezbedne jest łączenie kilku tabel poprzez JOIN)
jednak podczas importu (innstrukcji INSERT , UPDATE), koniecznosc aktualizacji indeksow sprawia ze trwa on o wiele dluzej i przez 3-4 godz serwis staje sie praktycznie nie dostepny dla uzytkownikow. Chodzi o to ze na tabele zapewne nakladane sa blokady podczas wykonywania instrukcji INSERT oraz UPDATE.
Serwis praktycznie zamiera poniewaz nie moze korzystac z tych tabel. Ma ktos moze pomysl jak rozdzielic dostep do zasobow ,
tak aby import oraz serwis dzialal sprawnie?
Serwis jest typu http://travelplanet.pl i mysle ze posiada podobna ilosc ofert (to tak dla zobrazowania z czym mam doczynienia...).