Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

mysql nekoliko kategorija jednog proizvoda

[es] :: MySQL :: mysql nekoliko kategorija jednog proizvoda

Strane: 1 2

[ Pregleda: 5667 | Odgovora: 29 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Gojko Vujovic
Amsterdam, NL

Administrator
Član broj: 1
Poruke: 13651
Via: [es] mailing liste



+165 Profil

icon Re: mysql nekoliko kategorija jednog proizvoda14.05.2004. u 14:31 - pre 243 meseci
Interfejs ostaje isti a kveri je normalizovaniji zajedno sa bazom.
 
Odgovor na temu

Dejan Topalovic
Dejan Topalović
Senior Oracle DBA & Senior PL/SQL
Developer, Erste Sparinvest (Erste
Bank), Vienna, Austria
Vienna

Član broj: 635
Poruke: 1374
*.1.14.vie.surfer.at

Sajt: www.baze-podataka.net


+2 Profil

icon Re: mysql nekoliko kategorija jednog proizvoda14.05.2004. u 16:20 - pre 243 meseci
Citat:
broker:
Ako je pred aplikacijom takav zahtev da ne treba vise od 4 kategorije, onda ovo ima smisla, narocito za web aplikacije, jer se time stvari dosta pojednostavljuju (web korisnicki interfejs se uproscava).

Sta ako nakon 3 mjeseca dodje do potrebe da se doda jos jedna kategorija? Da li je lakse dodati jedan red u tabeli ili kreirati u bazi jos jedno polje za tu kategoriju?

Projektovanje baze nema veze sa uproscavanjem web interfejsa. Ti mozes imati 100 polja u tabeli, ali samo da ih 10 prikazujes na sajtu. Ili recimo da imas samo 10 polja u tabeli, a prikazujes kompleksne kombinacije, summaries ili bilo koje djidje-midje zasnovane na samo tih 10 polja.

Ovo gore je primjer jednog customized rjesenja na principu "uradi i ne diraj vise nikad". Medjutim, u vecini slucajeva se pokaze potreba za prosirivanjem ili nekim drugim vidom izmjene odredjene aplikacije, a samim tim i strukture baze.
Blog - baze podataka
---------------------
Oracle OCP DBA (9i & 10g)
Oracle Database: SQL Certified Expert
Oracle OCP Developer
Certified MySQL DBA
 
Odgovor na temu

NetworkAdmin

Član broj: 4445
Poruke: 609
*.ppp-01.sa.lol.ba.



Profil

icon Re: mysql nekoliko kategorija jednog proizvoda16.05.2004. u 23:39 - pre 243 meseci
meni jos nikad nisu trebale vise od 4 kategorije a ako treba jos koja odradim alter table... ne pravim ebuy a ovo radi svoj posao... vidio sam shopove sa ovom tabelom od jedno 4000 produkata ljudi nikad nisu trazili dodatne kategorije.
 
Odgovor na temu

NetworkAdmin

Član broj: 4445
Poruke: 609
*.ppp-01.sa.lol.ba.



Profil

icon Re: mysql nekoliko kategorija jednog proizvoda16.05.2004. u 23:48 - pre 243 meseci
E da samo vidim ovdje ima malo zabune.

Broj kategorija je neogranicen ali samo jedan product moze biti u 4 kategorije maksimalno to je to.

Sad zasto ovako... mozemo mi filozofirati koliko hocemo ova tabela je nastala u razvoju prvo je bio product, category pa kad se pojavila potreba za secundary category dodali smo i theerd i forth category umjesto da pravimo tabelu productid categoryid koji bi vezao te kljuceve...

Broker je dobro naglasio, queries ostaju isti... to je trebalo odraditi jedne vecere bukvalno i sad da nebi pravili zesce izmjene na web interface, modifikovali smo product i kod definisanja kategorija se moze dinamickidodavati primarna i tri alternativne kategorije.

Zora svice dan se bjeli i mi isporucili modifikovan shop i sve OK. To je naravno uslo u sledeci release kao new feature i zivi svoj zivot sasvim dobro.

U zivotu je bitno se snaci i zadovoljiti funkciju... ovo radi... svi sretni i veseli :)
 
Odgovor na temu

broker

Član broj: 2415
Poruke: 8514
212.62.59.*



+11 Profil

icon Re: mysql nekoliko kategorija jednog proizvoda17.05.2004. u 00:49 - pre 243 meseci
Citat:
bluesman

Pedja, ne znam samo kakve veze ima "web korisnicki interfejs" odnosno njegovo "uproscavanje" sa ovim, a narocito zasto je ovako "prostije"?


Ima veze, napraviti interfejs za unosenje sloga koji ima cetiri lookup poljaje prosta stvar, a napraviti interfejs koji omogucava da se unose podaci u tabele vezane u 1-n relaciju nije bas tako mali posao. Ko tvrdi drugacije slobodno nek mi da link na nesto sto je jednostavno, UNIVERZALNO, i radi taj posao kako treba.

Citat:
StRiPy
Sta ako nakon 3 mjeseca dodje do potrebe da se doda jos jedna kategorija? Da li je lakse dodati jedan red u tabeli ili kreirati u bazi jos jedno polje za tu kategoriju?


Pricamo o konacnom resenju. Imao sam u mnogo navrata priliku da radim modeliranje baza u kojima su bili bas takvi zahtevi, konacan broj lukap veza ka nekoj tabeli.
Milsim da je sasvim logicno da kada diskutujemo uvek podrazumevamojasno definisan zadatak, dobro projektovan sistem i da nema sta bi bilo kad bi bilo.

Citat:
NetworkAdmin
Broj kategorija je neogranicen ali samo jedan product moze biti u 4 kategorije maksimalno to je to.


Tako sam i razumeo.

Citat:

Sad zasto ovako... mozemo mi filozofirati koliko hocemo ova tabela je nastala u razvoju prvo je bio product, category pa kad se pojavila potreba za secundary category dodali smo i theerd i forth category umjesto da pravimo tabelu productid categoryid koji bi vezao te kljuceve...


Ovde ste pogresili. Onog momenta kada je predocena mogucnost da treba da postoje dve lukap veze ka drugoj tabeli, moras postaviti pitanje da li je moguce da treba i vise i ako je odgovor potvrdan to je automatski 1-n veza, bez obzira da li je to trenutno neophodno. Sustina dobrog projektovanja je u uopstavanju - uocavanju konkretnih slucajeva koji se mogu svesti na opstiji slucaj.

Citat:

U zivotu je bitno se snaci i zadovoljiti funkciju... ovo radi... svi sretni i veseli :)


Apsolutno se ne slazem sa ovakvim pristupom. Ispadne to uvek po onoj staroj: ko ne plati na mostu, platice na cupriji. Srz svake baze podataka je model. On mora da se radi skolski postujuci sva nacela. Svako odstupanje od nacela mora da bude opravdano jakim razlozima medju kojima ne moze da bude: ovako je brze napraviti i radi posao, svi sretni i zadovoljni.

Prihvatam da nekada sama aplikacija mora da vadi fleke zbog nedostataka platforme (ko radi u MySQL-u sigurno zna na sta mislim) ali nikako da vadi fleke zbog lose projektovanog modela.
 
Odgovor na temu

bluesman

Član broj: 4505
Poruke: 1895
*.51.eunet.yu



+1 Profil

icon Re: mysql nekoliko kategorija jednog proizvoda17.05.2004. u 01:21 - pre 243 meseci
Citat:

Citat:

U zivotu je bitno se snaci i zadovoljiti funkciju... ovo radi... svi sretni i veseli :)

broker:
Apsolutno se ne slazem sa ovakvim pristupom. Ispadne to uvek po onoj staroj: ko ne plati na mostu, platice na cupriji. Srz svake baze podataka je model. On mora da se radi skolski postujuci sva nacela. Svako odstupanje od nacela mora da bude opravdano jakim razlozima medju kojima ne moze da bude: ovako je brze napraviti i radi posao, svi sretni i zadovoljni.


Da ne ulazim u polemiku, ovo je vrlo kontradiktorno. Kao reply na tezu "vazno je snalazenje - samo da radi" ti stavljas "da, ko ne plati na mostu - placa na cupriji".

To je bas ono sto ja hocu da ti kazem: ko ne projektuje od pocetka kako treba, vec budzi samo da radi, kasnije dodje u situaciju da mu se visestruko vrati tih par desetina minuta koje je ustedeo "budzeci" od pocetka.

Dozvoljavam bilo kakvu pricu, samo nemojte da pricate da je to resenje koje ste ponudili jednostavnije, kvalitetnije, brze, isplativije,... jer je upravo suprotno od toga.

BTW, ovo nije 1-m nego m-m relacija... svaki proizvod moze biti u vise kategorija, a u svakoj kategoriji moze biti vise proizvoda.... klasican m-m, a to se zna kako se radi. Ovako sigurno ne.
Goran Pilipović fka bluesman
 
Odgovor na temu

Dejan Topalovic
Dejan Topalović
Senior Oracle DBA & Senior PL/SQL
Developer, Erste Sparinvest (Erste
Bank), Vienna, Austria
Vienna

Član broj: 635
Poruke: 1374
*.1.14.vie.surfer.at

Sajt: www.baze-podataka.net


+2 Profil

icon Re: mysql nekoliko kategorija jednog proizvoda17.05.2004. u 03:17 - pre 243 meseci
Citat:
broker:
Uzmimo jednostavan slucaj gde svaki proizvod moze da bude u vise kategorija
...
Ako je pred aplikacijom takav zahtev da ne treba vise od 4 kategorije, onda ovo ima smisla, narocito za web aplikacije, jer se time stvari dosta pojednostavljuju (web korisnicki interfejs se uproscava).
...
Ima veze, napraviti interfejs za unosenje sloga koji ima cetiri lookup poljaje prosta stvar, a napraviti interfejs koji omogucava da se unose podaci u tabele vezane u 1-n relaciju nije bas tako mali posao. Ko tvrdi drugacije slobodno nek mi da link na nesto sto je jednostavno, UNIVERZALNO, i radi taj posao kako treba.

Odluci se da li pricas o 1-n ili n-n. Kakva cetiri lookup polja?

Citat:

Pricamo o konacnom resenju. Imao sam u mnogo navrata priliku da radim modeliranje baza u kojima su bili bas takvi zahtevi, konacan broj lukap veza ka nekoj tabeli.
Milsim da je sasvim logicno da kada diskutujemo uvek podrazumevamojasno definisan zadatak, dobro projektovan sistem i da nema sta bi bilo kad bi bilo.

Pri projektovanju baze, odnosno tabela, uvijek se treba voditi racuna o fleksibilnosti doticne strukture za zeljenu aplikaciju. Pod tim se podrazumijeva izmjena aplikacije, a samim time i strukture baze, koja bi se morala izvesti na sto laksi i brzi nacin, a da opet bude efikasno i optimizovano. Pozeljno je izvrsiti sto vise stepena normalizacije, a minimalno 1NF.
Zasto da se ogranicavas u vezi bilo cega, pa tako i broja lookup-a tablica ili polja ?

Ti pravis (u ovom slucaju) web interfejs na osnovu potreba doticne aplikacije, a samim time i projektovane baze, a ne pravis bazu na osnovu web interfejsa. Prema tome, sto bolje i jednostavnije napravis bazu, lakse ce ti biti napraviti i web interfejs.

PS: Sorry na quotanju, odgovor se nalazi na drugoj stranici, pa da se ne izgubi misao.
Blog - baze podataka
---------------------
Oracle OCP DBA (9i & 10g)
Oracle Database: SQL Certified Expert
Oracle OCP Developer
Certified MySQL DBA
 
Odgovor na temu

broker

Član broj: 2415
Poruke: 8514
212.62.59.*



+11 Profil

icon Re: mysql nekoliko kategorija jednog proizvoda17.05.2004. u 16:45 - pre 243 meseci
Citat:
bluesman:
Da ne ulazim u polemiku, ovo je vrlo kontradiktorno. Kao reply na tezu "vazno je snalazenje - samo da radi" ti stavljas "da, ko ne plati na mostu - placa na cupriji".

To je bas ono sto ja hocu da ti kazem: ko ne projektuje od pocetka kako treba, vec budzi samo da radi, kasnije dodje u situaciju da mu se visestruko vrati tih par desetina minuta koje je ustedeo "budzeci" od pocetka.


Hm, pa ovo sto si rekao se u opstem slucaju svodi na ono sto sam ja rekao: ko ne plati na mostu, platice na cupriji. :)

Citat:

BTW, ovo nije 1-m nego m-m relacija...


Dobro, lupiio sam. Vadicu se na sitne sate :)

Citat:
StRiPy:
Kakva cetiri lookup polja?


Ako covek kaze da jedan prozivod moze da bude u najvise cetiri kategorije onda je njegovo resenje da u jedan slog uvede cetiri polja kojima se pravi veza ka kategorijama upotrebljivo. Nisam mislio da treba da objasnjavam sta mislim po lookup polje.... al dobro

Citat:

Pri projektovanju baze, odnosno tabela, uvijek se treba voditi racuna o fleksibilnosti doticne strukture za zeljenu aplikaciju. Pod tim se podrazumijeva izmjena aplikacije, a samim time i strukture baze, koja bi se morala izvesti na sto laksi i brzi nacin, a da opet bude efikasno i optimizovano. Pozeljno je izvrsiti sto vise stepena normalizacije, a minimalno 1NF.
Zasto da se ogranicavas u vezi bilo cega, pa tako i broja lookup-a tablica ili polja ?


Teorija isto tako kaze da ne treba insitirati na postovanju NF ako to moze da zakoplikuje aplikaciju i utice na performanse. Stavise, nije redak slucaj da se normalne forme namerno narusavaju, jer se time brze dolazi do podataka. Teorije normalnih formi uopste nje iskljuciva i zasniva se na preporukama pravila kojih se treba drzati ali ne po svaku cenu. U praksi se najcesce ide do 3NF, jer preko toga stvari umeju da postanu nepotrebno komplikovane.

Ja ne kazem da je ovaj konkretno takav (cak se ispostavilo da je upravo napravljena greska u startu sto nije postovan opsti slucaj i koriscena m-n veza, sto sam ja u prethodnoj poruci vrlo jasno rekao) ali postoje slucajevi, sretao sam ih u paksi de je u samom zadatku bilo iskljucivo ogranicavano da se ne radi o m-n vec o m-c vezi gde je c konstantan broj, bez ikakve mogucnosti da se to u buducnosti menja.

Citat:

Ti pravis (u ovom slucaju) web interfejs na osnovu potreba doticne aplikacije, a samim time i projektovane baze, a ne pravis bazu na osnovu web interfejsa. Prema tome, sto bolje i jednostavnije napravis bazu, lakse ce ti biti napraviti i web interfejs.


Uh... ponavljas ono sto sam ja vec rekao i to kao argument protiv necega sto sam rekao govoreci o mogucim IZUZECIMA.

Da se razumemo, pricamo o istom i slazemo se kada je teorija u pitanju i mislim da je to ocigledno.

Ja govorim o izuzecima koje teorija takodje postuje samim tim sto dozvoljava da se od pravila odstupi kada se proceni da ce se time dobiti na kvalitetu resenja. Radi se o tome da se prilikom projektovanja sve uzima u obzir pa i buduca aplikacija koja ce da radi na modelu.

Isto koliko sam apsolutno protiv toga da se ne postuju pravila da bi se na precac napravila aplikacija koja radi, isto tako sam protiv da se iskljucivo drzi teroije i da se nastoji da se postuju sva pravila, po cenu da se aplikacija u krajnjoj implementaciji nepotrebno zakomplikuje (a vidjao sam i takvih resenja). Kljucna rec je optimalno resenje.

Kada je web u pitanju, korisnicki interfejs ima znacajnije mesto u procesu projektovanja baze u odnosu na klasicne desktop aplikacije i to samo iz jednog razloga: web interfejs je po definiciji znatno slabijih mogucnosti i samim tim predstavlja ogranicavajuci faktor.
 
Odgovor na temu

NetworkAdmin

Član broj: 4445
Poruke: 609
*.access-sa1.lsinter.net



Profil

icon Re: mysql nekoliko kategorija jednog proizvoda17.05.2004. u 21:44 - pre 243 meseci
Cujte istina je da sam tu tabelu zadrzaocak i za next release iako je to bila adhock operacija.

Neku vece moj poznanik sa icq kojeg rece dva mudra postulata:

Citat:
1. KISS
2. If it ain't broken, don't fix it


Gdje KISS stoji za:
Citat:
Keep It Simple Stupid


Ima istine u tim rjecima.

Cujte sad bi me vjerovatno flame da vam kazem sta sam napravio na jednoj tabeli, ubacio sam kopiju polja iz druge tabele koja ima deset puta manje rekorda dakle ubacio sam value, key iz jedne tabele i kopiju kos jednog polja koji se moze navi preko tog key u prvoj tabeli...

Eto sad me flejmujte koliko gocete ali kad vam kazem da u toj tabeli ima stopedest miliona rekorda i da ce biti milijarda i da ovako query traje 0.3 sekunde a trajao bi 147 sekundi inace... sve ce vam biti jasno.
 
Odgovor na temu

Dejan Topalovic
Dejan Topalović
Senior Oracle DBA & Senior PL/SQL
Developer, Erste Sparinvest (Erste
Bank), Vienna, Austria
Vienna

Član broj: 635
Poruke: 1374
*.1.14.vie.surfer.at

Sajt: www.baze-podataka.net


+2 Profil

icon Re: mysql nekoliko kategorija jednog proizvoda18.05.2004. u 00:13 - pre 243 meseci
Ok, dali smo odgovor, pa da tema ne ode previse offtopic ili da se ne pocne neki flame, zakljucavam ju.
Drago mi je bilo cuti razlicita misljenja i konstruktivne savjete.
Blog - baze podataka
---------------------
Oracle OCP DBA (9i & 10g)
Oracle Database: SQL Certified Expert
Oracle OCP Developer
Certified MySQL DBA
 
Odgovor na temu

[es] :: MySQL :: mysql nekoliko kategorija jednog proizvoda

Strane: 1 2

[ Pregleda: 5667 | Odgovora: 29 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.