![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 27.09.2006 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
zatsanawiam sie nad rozwiazaniem takiego problemu: duzy serwis, kilkadziesiat tabel, w wielu dziesiatki tysiecy wierszy w niektorych tabelach. Do każdego z wierszy w tabeli "produkty" muszę dodac kilka znacznikow (np nowosc, przecena, bestseller itd) PYTANIE: Czy lepiej dodac kolumny do tej tabeli, czy zrobic osobną tabelę "znaczniki" o 2 kolumnach: id_produktu i typ_znacznika. Któe rozwiazanie lepsze i dlaczego? Moje przemyslenia prowadza do tego, ze pierwsze pewnie jest szybsze, natomiast drugie bardziej elastyczne (np. gdy trzeba bedzie dodac nowy znacznik nei trzeba zmieniac struktury tabeli). Jednak każde zapytanie o produkt wiaze sie z joinem z nową tabelą "znaczniki", co z pewnoscia obciaza baze. Ale czy bardzo? Któro rozwiazanie lepiej zastosowac i dlaczego? Wazna jest stabilnosc i szybkosc dzialania. pozdrawiam |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Z tymi indeksami to aż sam sprawdzę.
Cytat . W normalnym rozwiązaniu usuwam/dodaję kolumny (które są niezależne od pozycji w tabeli). A co ty masz za opcje ze je tak nagle dla wszystkich będziesz kasował? (IMG:style_emoticons/default/wink.gif) Ale tak, masz rację. Jak określisz, że 2 to jakaś tam opcja, i nagle z niej zrezygnujesz, to masz dwie możliwości: - 2 już nie będziesz wykorzystywał - pod 2 wstawisz kolejną nową opcję Jeśli zaś będziesz chciał dodać kolejną opcję, to jeśli miałeś 4 opcje (1,2,4,8) to kolejna opcja to będzie liczba 16, jeszcze kolejna 32. Wydaje mi się, że jeśli już chcesz żonglować tymi opcjami i nie podobają ci się bity to lepiej zrób dodatkową tabelę jak pisałeś niż będziesz dodawał ciągle kolejne kolumny do tabeli.
Powód edycji: [phpion]: sorry, ale raziło :)
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 11.10.2025 - 15:58 |