Veca transakciona tabela, prati poslovne promejne (klasicna struktura - id, datum, id_proizvoda, id_skladista, id_klijenta, kolicina, itd..., 2M redova godisnje, sa tendencijom na 5M. oko 400 korisnika kroz web aplikaciju)
Trenutno je particionisana po "id_skladista" skladista na ~50tak particija, jer se veliki broj upita odnosi na pojedinacno skladiste, i to odlicno radi. (mysql 5.5)
E sad, javlja se potreba za intenzivnijim upitima po drugom kriterijumu - "id_klijenta", te bi se sad javila potreba za dodatnim particionisanjem. Posto ne vidim da bi podparticije na postojecim particijama pomogle (jer se podaci koji ispunajvaju drugi kriterijum javljaju u najvecem broju postojecih particija ), pada mi na pamet:
1.) dodatni slave server - sa tabelom particionisanom po "id_klijenta", na koji bi preusmjerio sve selecte koji su pogodni. Ovo mi se cini najbolje rjesenje i znam da bi radilo ok, ali mi trazi jos jedan server, ups, sto povlaci javnu nabavku i silne komplikacije.... (vec postoji replikacija i slave, ali je preko spore veze prema drugoj lokaciji, vise kao backup)
2.) kopija transakcione tabele u istoj bazi, koja je drugacije particionisana i na koju bih opet preusmjerio odgovarajuce "select" upite, te "akrobacija" kroz aplikaciju ili sa trigerima, da kod inserta/update-a punim obe tabele. Ovo mi se cini kao jeftinije rjesenje (eventualno dodati jos 2 hdd-a za novu tabelu), ali nisam tako nesto probao...
Ima li neko bolje iskustvo/ideju/prijedlog?