Pereiti prie turinio

Klausimas dėl duomenų bazės panaudojimo strategijos


Rekomenduojami pranešimai

Sakykime, kad turiu duomenų bazę, kurioje yra DAUG vartotojų - koks milijonas. Vartotojams priskirtas laukelis "lygis", kuris nuolat kinta. Noriu padaryti, kad kiekvieno mėnesio pirmą dieną automatiškai būtų išsaugomas kiekvieno vartotojo lygis ir taip visus 12 mėnesių. Mano galvoje besisukanti standartinė idėja: sukurti lentelę "lygiai", ten laukelius "id", "metai-mėnuo" (po to su explode funkcija išskirti), "vartotojo_id", "lygis" ir viską parašyti kodą kuris viską perkelinėtų. Tačiau nesu žinovas, gal pasiūlytumėte kažką protingesnio, kas mažiau apkrautų sistemą? Paprastai gal ir toks variantas tiktų, bet dabar dirbama sau daug įrašų.

 

P.S. Pavyzdys išgalvotas, jokių lygių man surašinėti nereikia. Tiesiog turiu vieną unikalią idėją beveik tokiu pačiu principu, kurios nenoriu atskleisti.

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Iš patirties pasakysiu, kad tų idėjų slėpti nėra reikalo, labai mažas procentas, kad kas ims ir ,,pavogs" ją, o ir šiaip, jei ji tokia gera, tai projektui startavus ją visvien jei norės paims ir nukopijuos. O pasidalinęs, kad ir šitam forume gausi iš narių (kai kurie ir su didele patirtim) daug nuomonių, kritikos, galbūt kažkokių patobulinimų. Tik pastebėjimas. :) Dėja su db negaliu padėt, nes mažai su jom dirbu, sėkmės.

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Jeigu tereikia kiekvieno menesio pirma diena issaugoti lygi i log'a, turetu uztekti:

CREATE TABLE `lygis_log` (
 `vartotojo_id` int(11) NOT NULL,
 `lygis` int(11) NOT NULL,
 `data` datetime NOT NULL
)

 

Kadangi nezinau kaip tavo "lygis" atorodo, negaliu pasakyti ar geriau butu kurti nauja lentele lygiams ir tada "lygis_log" tureti reference (vietoje lygis -> lygis_id). Nors jeigu sita lentele bus skirta tik log'inimui ir nebus duomenys redaguojami, tada nesvarbu kaip tas lygis atrodo, nelabai apsimoka turet reference, nes JOIN brangiai kainuoja. Nors, jeigu ir turi atskira lentele lygiams, lygio id yra index (pvz PK) ir ji daznai perziurima, tada net ir JOIN nekainuotu daug, na bet cia truputi jau per giliai nes jeigu lentele kad ir 10m tures yrasu ji bus pakankamai greita.

Redagavo Ispirit
Nuoroda į pranešimą
Dalintis kituose puslapiuose

Prisijunkite prie diskusijos

Jūs galite rašyti dabar, o registruotis vėliau. Jeigu turite paskyrą, prisijunkite dabar, kad rašytumėte iš savo paskyros.

Svečias
Parašykite atsakymą...

×   Įdėta kaip raiškusis tekstas.   Atkurti formatavimą

  Only 75 emoji are allowed.

×   Nuorodos turinys įdėtas automatiškai.   Rodyti kaip įprastą nuorodą

×   Jūsų anksčiau įrašytas turinys buvo atkurtas.   Išvalyti redaktorių

×   You cannot paste images directly. Upload or insert images from URL.

Įkraunama...
  • Dabar naršo   0 narių

    Nei vienas registruotas narys šiuo metu nežiūri šio puslapio.

×
×
  • Pasirinkite naujai kuriamo turinio tipą...