![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 1 Pomógł: 0 Dołączył: 8.12.2015 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Potrzebuję wykonać 3 zapytania jedno po drugim. Pierwsze tworzy tymczasową tabele zawierającą przetworzone dane (ca 1,5mln linii). Po wygenerowaniu jej kasowana jest tabela z której korzysta produkcyjnie serwis (zapytanie 2) i zmieniana jest nazwa tymczasowej tabeli na produkcyjną. IMO takie rozwiązanie powoduje, że czas niedostępności produkcyjnej bazy jest najkrótszy i zawsze zawiera ona świeże dane. Zapytania są wywoływane co 5 minut przez cron i tutaj mam problem. Zapytanie nr 1 liczy się ok. minuty. Mam wrażenie, że wszystkie 3 zapytania wykonywane są od razu jedno po drugim bez oczekiwania na wykonanie się pierwszego - mocno czasochłonnego. I to wywala całość. Ma ktoś pomysł jak to ugryźć? Pozdrawiam, Maciek |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 332 Pomógł: 294 Dołączył: 12.10.2008 Skąd: Olkusz Ostrzeżenie: (0%) ![]() ![]() |
czy wykonujesz insert w jednej sesji?? plus o ile mieści się w ramach czasowych to powinieneś wszystkie zapytania wykonać w jednym pliku... jeśli musisz podzielić czasowo to powinieneś stworzyć jakiś prosty plik konfiguracyjny co wykonać przy następnym uruchomieniu cron'a...
ps. o ile w oryginalnej tabeli brakuje tylko nowszych danych bez jakichś skomplikowanych operacji to raczej lepszym rozwiązaniem było by ją zostawić i uzupełnić ją z tymczasowej poprzez insert z podzapytania na tymczasowej tabeli o dane nie występujące w oryginalnej... |
|
|
![]() ![]() |
![]() |
Aktualny czas: 13.10.2025 - 17:37 |