Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [sql] jak działają indeksy
propage
post
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?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
5k7
post
Post #2





Grupa: Zarejestrowani
Postów: 65
Pomógł: 2
Dołączył: 5.12.2006

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


Cytat(Crozin @ 30.11.2011, 23:40:51 ) *
Ale kiedy bazy danych bardzo dobrze wspierają i IPv4 i IPv6 - ot, chociażby taki Postgres.
IPv6 to nie jest jakiś tam bajer, który być może kiedyś się gdzieś tam pojawi. To coraz szerzej wprowadzany standard, który wszedł już w fazę globalnych testów, istnieją sieci operujące wyłącznie na nim, a każde dobre oprogramowanie wspiera go. Bo o ile przeciętna aplikacja nie musi się martwić tym co będzie w 2025, o tyle najbliższe 2 - 4 lata to okres na który trzeba patrzyć z nieco większą uwagą, a nie tworzyć buble, które nagle przestaną dla części osób działać z czystego lenistwa programistów. Szczególnie, że z implementacją IPv6 nie ma specjalnego problemu w tego typu aplikacjach.


Nie chce specjalnie chodzić i sprawdzać postgresa, ale rzuciłem okiem na ten Twój link i nie znalazłem niczego o indeksach a jedynie kilka funkcji, które pomagają operować na ip'kach. A pytanie nie dotyczy przechowywania adresu tylko indeksowania. Jeżeli chciałby wchodzić koniecznie w ipv6 musiałby zrobić zarówno ipv4 jak i ipv6, który nie jest wspierany przez DBMS razem to jeszcze spiąć - takie rozwiązanie będzie kulać. Jak ipv6 będzie w standardzie to baza też będzie to wspierać, a teraz wszystko będzie kulawe. Generalnie żeby nie wchodzić w pyskówkę - przytoczę inny przykład. Kiedy Polska będzie w strefie EURO ? No niby w bliżej nieokreślonej przyszłości, o ile ta strefa przetrwa, ale mniejsza o to. To tak jakbyś kazał komuś aby zrobił swój sklep koniecznie w Euro bo Polska przygotowuje się do wejścia w strefe euro i nie będzie już złotówek. Wiedząc przy tym że przejście teraz na euro będzie go dodatkowo kosztowało przeliczaniem euro na złotówki. Może dla Ciebie jest to prawidłowe podejście, jednak na rynku takowej paniki nie ma. Identycznie jest w tym przypadku i tylko o to mi chodziło.

Uprzedzę jeszcze Twój kolejny POST rozmawiamy tu o indeksowaniu ip, nie przechowywaniu. Wówczas nie było nawet dyskusji i niech robi co chce.

Uważam, że warte jest to zaznaczenia, nie koniecznie implementowania, bo chodzi mu o szybkość

Pozdr

Ten post edytował 5k7 1.12.2011, 15:25:26
Go to the top of the page
+Quote Post

Posty w temacie
- propage   [sql] jak działają indeksy   30.11.2011, 13:49:02
- - nospor   Sam dajesz tag SQL a umieszczasz temat w dziale PH...   30.11.2011, 13:54:11
- - 5k7   Musisz mięć adres ip zapisany jak int, żeby indeks...   30.11.2011, 16:27:39
- - propage   ok, wiem już ze trzymanie ip jako varchar jest nie...   30.11.2011, 19:48:02
- - Crozin   Po pierwsze adresu IP nie przechowuje się jako INT...   30.11.2011, 20:40:38
- - 5k7   Cytat(propage @ 30.11.2011, 19:48:02 ...   30.11.2011, 21:09:00
- - Crozin   CytatGdzię mamy ? U siebie w domu chyba. ^^ . Pod...   30.11.2011, 22:09:43
- - 5k7   Cytat(Crozin @ 30.11.2011, 22:09:43 )...   30.11.2011, 23:21:37
- - Crozin   Ale kiedy bazy danych bardzo dobrze wspierają i IP...   30.11.2011, 23:40:51
- - 5k7   Cytat(Crozin @ 30.11.2011, 23:40:51 )...   1.12.2011, 15:15:06
- - Crozin   1. To co podałem to nie funkcje, a typy kolumn do ...   1.12.2011, 15:34:05
- - 5k7   Cytat(Crozin @ 1.12.2011, 15:34:05 ) ...   1.12.2011, 17:05:34
- - Crozin   CytatNie bardzo rozumiem.I między innymi dlatego w...   1.12.2011, 17:39:34
- - 5k7   Dobra widzę, że muszę konkretniej pisać. Nie ma m...   2.12.2011, 11:11:02
- - Crozin   1. Dlaczego niby kolumny z adresem v6 miałoby się ...   2.12.2011, 18:19:56
- - 5k7   Cytat(Crozin @ 2.12.2011, 18:19:56 ) ...   2.12.2011, 18:33:15
- - Crozin   Ta sama firma zachęca również do wspierania IPv6, ...   2.12.2011, 19:48:30
- - 5k7   A zapewne dlatego że to oni przodują w technologia...   2.12.2011, 20:03:21
- - Crozin   No to teraz nie rozumiem Twojego podejścia. Piszes...   2.12.2011, 20:42:40
- - 5k7   Gdzie ja pisałem żeby sie wypinać na ipv6 ? Pisałe...   2.12.2011, 20:56:13
- - Niktoś   A nie da rady zrobić indeksy dla obydwu protokołów...   3.12.2011, 00:28:55
- - 5k7   Więc tak - zależy o jaką bazę danych się rozchodzi...   3.12.2011, 22:26:31
- - Niktoś   Zawsze moszna przechowywać w kolumnie binary-te ad...   4.12.2011, 14:53:52
- - 5k7   Da się binary jak varbinary i indeksują się równie...   4.12.2011, 21:15:49
- - Crozin   Z wydajnością nie będzie problemów. Właściwie jedy...   4.12.2011, 21:24:50
- - 5k7   Cytat(Crozin @ 4.12.2011, 21:24:50 ) ...   5.12.2011, 15:32:31
- - Crozin   W pewnych przypadkach, możliwe jest odczytanie dan...   5.12.2011, 15:47:18
- - 5k7   Jak znajdę kiedyś chwilę to wezmę to na warsztat d...   9.12.2011, 12:34:45


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: 6.10.2025 - 05:13