![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 2 707 Pomógł: 290 Dołączył: 16.12.2008 Skąd: Śląsk Ostrzeżenie: (0%) ![]() ![]() |
Mam prostą tabelę INNODB. `aid` INT `time` INT `date` DATE W której przechowuje informacje o wizytach. Chciałbym pobrać liczbę wyświetleń z ostatnich X godzin np. z ostatnich 60 minut. Niestety zapytanie jest za ciężkie i zawiesza mi serwer (wykonywane jest dość często). Rekordów jest kilka milionów. W jaką stronę iść? Czy indeksy coś dadzą (nie jestem w stanie tego łatwo testować bo każda zmiana struktury trwa bardzo długo, więc metoda prób i błędów tutaj się nie sprawdza)? Czytałem że inno słabo sobie radzi z COUNT :/ Ten post edytował markonix 18.05.2015, 11:27:15 -------------------- |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 594 Pomógł: 122 Dołączył: 17.07.2005 Skąd: P-na Ostrzeżenie: (0%) ![]() ![]() |
indeksy zawsze pomagają na polach po których się szuka
dodaj sobie cache, chyba nikomu nie zrobi różnicy jak zobaczy dane sprzed kilkudziesięciu minut |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 2 707 Pomógł: 290 Dołączył: 16.12.2008 Skąd: Śląsk Ostrzeżenie: (0%) ![]() ![]() |
Cache czego dokładnie? Użytkownikowi nie sprawi różnicy ale jeżeli reklama ma np. limit godzinowy 100 wyświetleń to musi mieć jednak dostęp do bieżących danych, a nie sprzed godziny.
-------------------- |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 594 Pomógł: 122 Dołączył: 17.07.2005 Skąd: P-na Ostrzeżenie: (0%) ![]() ![]() |
jeśli indeksy nie pomogą to zapisz wynik do memcache i odejmuj z memcache dopóki > 0 jak będzie 0 pobierz na nowo
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 2 707 Pomógł: 290 Dołączył: 16.12.2008 Skąd: Śląsk Ostrzeżenie: (0%) ![]() ![]() |
Dodanie indeksu na time (na AID jest nałożony klucz obcy) powoduje przeciwny efekt przy COUNT jak i SELECT.
-------------------- |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 1 421 Pomógł: 310 Dołączył: 18.04.2012 Ostrzeżenie: (0%) ![]() ![]() |
O indexach złożonych (np. dwukolumnowych) słyszał?
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 00:42 |