RE: [php-konf] DB speedui pakelti
From: gk (gk@infobalt.lt)
Date: 2004-06-17 14:25:20
hai
> gal turite koki pasiulyma sql'ui paspartinti ar
> perstrukturizuoti lentelems buciau dekingas.
Tiesa sakant kazkaip neturejau sveikatos gilintis i problemos vidurius ir
bandau pasiulyti viena hint'a visai aklai (gal bent kitiems pravers).
Bendroji dalis: visai neprivaloma supergrieztai laikytis normalizacijos
reikalavimu ir tuos pacius duomenis _kai_ _kada_ apsimoka laikyti dviejose
vietose.
Specialioji:) dalis: pvz. jei ieskoma _tikslaus_ atitikimo pagal kelis
laukus visus juos labai sekmingai galima apjungti i viena integer (ar pan.)
tipo lauka kurio indeksu lentele bus nepalyginamai lakoniskesne (ir tuo
paciu greiciau apdorojama, ypac jei nesunkiai tilps I kesa) ir paieiska bus
atliekama ne pagal kalna stringu palyginimu, o pagal viena vienintele word
ar dword palyginimo operacija.
Apjungimo pavyzdys: "insert ....
add_field=md5(concat(field1,field2,field3...,fieldn))..."
Analogiskai paieska "select ... where
add_field=md5(concat(search1,search2....)) and field1=search1 and
field2=search2....."
Atkreipiu demesi kad priedas (and field1=search1....) butinas tiksliam
darbui!
Tai tiek
GK