![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 58 Pomógł: 0 Dołączył: 15.11.2008 Ostrzeżenie: (0%) ![]() ![]() |
Mam pewien dylemat i mam nadzieję tutaj go rozwiać korzystając z pomocy kolegów którzy ugryźli kiedyś podobny temat (IMG:style_emoticons/default/smile.gif)
Tworzę program magazynowy dla wielu użytkowników, każdy użytkownik ma swoje konto i widzi tylko swój magazyn (o istnieniu innych nie ma pojęcia). Zakładając że każdy użytkownik w magazynie będzie miał może nawet kilka tysięcy produktów. Rozważam jedną z trzech możliwości podczas projektowania bazy: 1. Towar wszystkich użytkowników jest w jednej tabeli, ale każdy towar ma przypisane id użytkownika po którym będzie rozpoznawany właściciel towaru (chyba najmniej wydajna opcja, tak mi się wydaje, bo przecież przy wielu użytkownikach tabela byłą by ogromna). 2. Zakładając konto użytkownikowi tworzona jest osobna tebela dla jego magazynu, jednak w obrębie tej samej bazy (wiadomo nie będzie trzeba robić tego ręcznie, wymaga minimalnej administracji) 3. Po rejestracji użytkownika, w ciągu 24 godzin administrator instaluje kopię programu na nowej bazie danych, tak więc każdy user ma swoją bazę. Niby najbardziej wydajna opcja (tak mi się zdaje) jednak przy wielu użytkownikach aktualizacja programu o nowe funkcje była by męczarnią. Ogólnie wygodny w budowie i w późniejszym zarządzaniu był by pierwszy sposób, ale czy skrypty wyszukiwania i operacje na rekordach nie będą się mulić gdy w bazie będą tysiące produktów? Zapraszam do dyskusji, wierzę że te informacje przydadzą się nie tylko mi. Pozdrawiam, i sorry jeśli gdzieś jest już podobny wątek. Przejrzałem jednak ciężko ogarnąć cały dział. Furum jest ogromne (IMG:style_emoticons/default/smile.gif) |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 58 Pomógł: 0 Dołączył: 15.11.2008 Ostrzeżenie: (0%) ![]() ![]() |
Rozumiem że opcja 2, przy wielu użytkownikach tworząc tabele strasznie spowolniła by bazę?
Opcja 3, po przemyśleniu nie wchodzi grę jednak. Np w bazie jest 100 userów, jeśli zrobił bym jakieś dodatkowe funkcje to musiał bym aktualizować 100 programów. Opcja 1 niby wszystko ok. ale czy będzie to wydajne przy ogromnej ilości towaru? Macie może jakieś doświadczenie z pracą na baaardzo dużej tabeli? Czy MySQL i php dobrze sobie z tym radzi? |
|
|
![]() ![]() |
![]() |
Aktualny czas: 3.10.2025 - 07:09 |