Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL] 6 mln rekordów, indeks i SELECT wykonujący się grubo ponad minutę., Co może być przyczyną?
adbacz
post
Post #1





Grupa: Zarejestrowani
Postów: 532
Pomógł: 24
Dołączył: 15.04.2011
Skąd: Kalisz

Ostrzeżenie: (0%)
-----


W tabeli mam ponad 6 mln rekordów, założony indeks na kolumnę 'created_at_timestamp' i wykonuję zapytanie po rekordy:
  1. (SELECT id FROM link WHERE ( created_at_timestamp <= 1485024231 AND created_at_timestamp >= 1484160231 ) ORDER BY id LIMIT 0, 1) UNION (SELECT id FROM link WHERE ( created_at_timestamp <= 1485024231 AND created_at_timestamp >= 1484160231 ) ORDER BY id LIMIT 99, 1)

To zapytanie wykonuje się naprawdę baaardzo długo: https://prnt.sc/g6g3ac

Sprawdziłem profilerem w PMA i pokazuje, że najdłużej działa Sending Data: https://prnt.sc/g6ggo2

Co może być tego przyczyną? Miał ktoś podobny problem?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Crozin
post
Post #2





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

Ostrzeżenie: (0%)
-----


1. Tabele typu MEMORY są trzymane właśnie w pamięci.
2. Indeksy są trzymane w pamięci.
3. Masz utworzone dwa indeksy na dwie kolumny, a potrzbowałbyś jednego na dwie kolumny by skorzystać z tego mechanizmu.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 11.10.2025 - 07:26