ďťż
 
mysql - indexy ďťż
 
mysql - indexy
Zobacz wiadomości
 
Cytat
A gdyby tak się wedrzeć na umysłów górę, / Gdyby stanąć na ludzkich myśli piramidzie, / I przebić czołem przesądów chmurę, / I być najwyższą myślą wcieloną. . . Juliusz Słowacki, Kordian
Indeks BCB i MySQL subiekt gt fototapeta
 
  Witamy

mysql - indexy



daffca - 05-01-2006 08:05
mysql - indexy
  Witajcie

Ostatnio mam za zadanie zooptymalizowac
baze danych mysql, czyli kompromis
pomiedzy zajetoscia miejsca na dysku a
szybkoscia,
W tej chwili baza smiga dosc szybko glownie
dzieki duzej ilosci roznych indexow grupowych,
ale przez to duzo danych jest zduplikowanych
w roznych tabelach,

Chcialem zapytac gdzie znajde jakas dobra literature
o indexach?, czy ktos juz robil testy wydajnosciowe
na *duzych bazach, mianowicie czy indexy grupowe
da sie zastapic pojedynczymi na kazdej z kolumn itp.

Z gory dzieki za jakies wskazowki, za dyskusje na ten
temat rowniez.

pozdr.
dfc

ps. *duze baza to w moim przypadku 25GB pojemnosci.
co za tym idzie ~1mln recordow, i wiele duplikacji
tych danych.





Wojtek pBT (prac) - 06-01-2006 09:02

  daffca napisał(a):
> Witajcie
>
>
> Ostatnio mam za zadanie zooptymalizowac
> baze danych mysql, czyli kompromis
> pomiedzy zajetoscia miejsca na dysku a
> szybkoscia,

teraz koszt 1GB jest bardzo niski. Więc uważam, że nie ma sensu robić
optymalizacji pod kątem zajętości miejsca. Oszczędności szukałbym raczej
w szukaniu dubli (jeżeli takowe nie są potrzebne), podziału tabel na
mniejsze pod kątem częstości używania danej kolumny. Jeżeli to możliwe i
nie wyjątkowo nieoptymalne, to bym raczej używał charów, zamiast varcharów.
Można także podzelić tabele na tabele z danymi aktualnymi i archiwalnymi.

Jak dla mnie zakładanie indeksów to sztuka wyśrodkowania czasu odczytu
do czasu zapisu/poprawy.

> W tej chwili baza smiga dosc szybko glownie
> dzieki duzej ilosci roznych indexow grupowych,
> ale przez to duzo danych jest zduplikowanych
> w roznych tabelach,

Mozna zalożyć indeks na pojedynczą kolumnę. Ale sama optymalizacja bazy
mało daje. Jezeli bedziesz zakladal indeksy na oddzielne kolumny, to
znacznie wzrośnie czas wstawienia danych. Za tym musi jeszcze pójść
optymalizacja zapytań.
bo dajmy na to tabela:

uid, imie, nazwisko, plec, rokUr, dzienUr, miesUr -- abstrachujmy od
sensowności czysto dizycznej, to przykład.

I teraz masz indeks:
plec, rok, nies, dzien

to ladnie zadziala on dla zapytania:

SELECT foo FROM tab WHERE plec = x AND rokUr = x AND ...

Ale moze byc tak ze bazka nie da sobie rady z optymalizacja:

SELECT foo FROM tab WHERE dzienUR = x AND plec = x AND rokUr = x AND ...

Co z reszta nie ma sensu, bo na samym poczatku powinno byc najwieksze
odsianie.

pBT
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • effulla.pev.pl
  • comp
    [mysql] =?ISO-8859-2?Q?Za=E6mienie=2E=2E=2E_jak_wy=B6wietli=E6?==?ISO-8859-2?Q?=2E=2E=2E?= [mysql] =?ISO-8859-2?Q?wielko=B6=E6_bazy_a_stabilno=B6=E6=2C?==?ISO-8859-2?Q?_podzia=B3_du=BFej_bazy_a_powi=B1zania_tabel?= [MySQL] =?ISO-8859-2?Q?Wy=B6wietlenie_kolejnej_pozycji=2C_?==?ISO-8859-2?Q?jak=B1_mia=B3by_dany_rekord=2C_gdybym_czyta=B3 _?==?ISO-8859-2?Q?wg_konkretnych_kryteri=F3w=2E_Da_si=EA_=3F?= [mysql 4.0.x] przenoszenie kolum =?ISO-8859-2?Q?mi=EAdzy_bazam?==?ISO-8859-2?Q?i_cd_=2E=2E=2E_?= [MySQL] =?ISO-8859-2?Q?z=B3=B1czenie_tabeli_u=BFytkownik_i?==?ISO-8859-2?Q?_zdj=EAcia_z_wyborem_zdj=EAcia_domy=B6lnego?= [MySQL] Jak =?ISO-8859-2?Q?wpisa=E6_do_tabeli_pozycje_dl?==?ISO-8859-2?Q?a_wierszy_gdybym_te_wiersze_wybiera=B3_w_ok?== ?ISO-8859-2?Q?re=B6lonej_kolejno=B6ci_=3F?= Gdzie MySQL 4.1, a gdzie 5.0? [MySQL 4.0...4.1] zabezpieczenie przed =?ISO-8859-2?Q?jednoczesn?==?ISO-8859-2?Q?=B1_edycj=B1?= [MS SQL] "set names" (mySQL) w MS SQL [mysql 5.x] jak =?ISO-8859-2?Q?zrealizowa=E6_zapytanie=3F_cz?==?ISO-8859-2?Q?yli_podzapytanie_i_wi=EAcej_ni=BF_jeden_rz=B1? ==?ISO-8859-2?Q?d_wynik=F3w?=
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • lubiatowo.xlx.pl
  • Cytat

    Decede mihi sole - nie zasłaniaj mi słonca.
    Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści
    Hoc fac - tak czyń.
    A tergo - od tyłu; z tyłu.
    I czarne włosy posiwieją. Safona

    Valid HTML 4.01 Transitional

    Free website template provided by freeweblooks.com