Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> szybkość działania dużych baz danych
hobibit
post
Post #1





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 22.03.2008

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


Nie wiem czy dobrze mi się wydaje czy gdzieś w kodzie może błąd popełniłem.
Zdaje się że duże bazy danych działają dużo, dużo wolniej.
Mam kawałek skryptu php który pobiera jeden rekord z bazy mysql.
Jeśli baza m jeden rekord wszystko idzie szybko (przykładowo jeden, może być że 100), kiedy ma natomiast 10 milionów idzie powolnie. Normalna sprawa, ma więcej rekordów do przejrzenia itp.
Czy jest jakiś sposób żeby działało to tak samo szybko przy dużych bazach albo przynajmniej nie strasznie wolno.
Cashowanie nie zadziała bo dan są cały czas zmieniane
Nie wiem czy LIMIT 1, zadziała tak ze po znalezieniu przestanie dalej szukać, ale to zadziała tylko gdy rekordy będą z 'przodu' bazy danych.
Czy są jakieś sposoby na to?
Może zmiana bazy danych na jakiąś inną, ale z innymi nie mam doświadczenia więc proszę o rade która dobrze się sprawdza z dużymi bazami danych.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




no to ci napisano przeciez:
zaloz indexy na pola: x, y oraz id_mapa

Dodatakowo skoro to są liczby (x,y, id_mapa) to nie bierz ich w apostrofy. Liczba to liczba a nie tekst.
Go to the top of the page
+Quote Post
phpion
post
Post #3





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Cytat(nospor @ 9.11.2009, 12:21:13 ) *
zaloz indexy na pola: x, y oraz id_mapa

Wydaje mi się, że lepiej sprawdziłby się tutaj 1 indeks założony na te 3 kolumny (w kolejności: id_mapa, x, y). W zapytaniu kolega i tak wyciąga rekord właśnie po takim warunku i w takiej kolejności, a przynajmniej odpadłby narzut aktualizacji 3 indeksów po zmianie danych w bazie. Przy SELECT pewnie różnicy by nie było widać, ale przy INSERT/UPDATE/DELETE już chyba tak. Myślę, że warto spróbować.
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: 30.09.2025 - 01:33