![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 330 Pomógł: 0 Dołączył: 25.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
Na jakiej zasadzie działa funkcja indeksowania.
Czy ktoś może mi logicznie wytłumaczyć jak wpływa długość indeksu na szybkość zapytań do bazy danych. Załóżmy że mamy tabele z 1.mln rekordów. wyszukujemy w tej tabeli po polu "IP", które ma maksymalnie 15 znaków. Czy powinniśmy dodać indeks pełne, czy tylko na X znaków, jeśli na X znaków to na ile dokładnie? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Po pierwsze adresu IP nie przechowuje się jako INTEGER-a, bo mamy już takie coś jak IPv6, którego wersja liczbowa ma 128-bitów. MySQL nie jest zbyt pomocy w tej kwestii, ale Google i mysql store ipv6 daje sporo rezultatów.
Jeżeli chodzi o indeksy same w sobie, to do poczytania: binary search, binary search, binary search tree, hash function - to da Ci obraz na to, jak działają indeksy. Jeżeli chodzi o długość indeksu, w tym przypadku powinien on obejmować całą kolumnę. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 10.10.2025 - 16:48 |