Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL] optymalność
Forum PHP.pl > Forum > Przedszkole
peter13135
Chciałbym zrobić coś w stylu chata/shoutboxa opartego o bazę MySQL, gdzie będzie podział na pokoje.

Moje pytanie brzmi: czy optymalnej jest zrobić jedną tabelę na "shout'y", a w niej kolumnę która będzie przechowywała informacje do którego pokoju należy post, czy może dla każdego pokoju zrobić oddzielną tabelę ?
MateuszS
Robisz tabele z pokojami np.
Id Nazwa_pokoju

Robisz tabele z wpisami i tam w kolumnie 'pokoj' bedzie id tego pokoju

Tak najlepiej chyba winksmiley.jpg
luck
Dokładnie. Zastanów się co by było, gdybyś chciał w przyszłości dodawać nowe pokoje. Będziesz zakładał kolejne tabele w bazie?
peter13135
to co napisałeś to jest ten pierwszy wariant z mojego pierwszego postu.
Na pewno tak będzie najprościej, ale z racji tego że to ma być chat z podziałem na pokoje to liczba rekordów może być ogromna i nie wiem czy nie lepiej trzymać te posty w kilku tabelach po to żeby było optymalnej. (nie wiadomo jak to wyjdzie z popularnością... ale chcę myśleć w miarę przyszłościowo)
luck
Nie martw się na zapas winksmiley.jpg W razie czego zrobisz archiwizację i starsze rozmowy przeniesiesz do innych tabel, lub po prostu usuniesz.
peter13135
Cytat(luck @ 20.03.2010, 19:50:51 ) *
Dokładnie. Zastanów się co by było, gdybyś chciał w przyszłości dodawać nowe pokoje. Będziesz zakładał kolejne tabele w bazie?


nie widzę problemu z wykonaniem zapytania "create table `nowy_pokoj`(...);"

Cytat
Nie martw się na zapas winksmiley.jpg W razie czego zrobisz archiwizację i starsze rozmowy przeniesiesz do innych tabel, lub po prostu usuniesz.


nie wydaje mi się by zrobienie bazy według tego drugiego wariantu było wielką trudnością, chciałbym poprostu wiedzieć czy się opłaca takie coś zrobić, nie chciałbym bym się później bawić w przebudowywanie.

skoro jednak mówicie że lepiej zrobić według pierwszego wariantu... z jaką ilością rekordów baza mysql na standardowym serwerze sobie poradzi ? (żeby czas dostępu był nie zbyt wielki). Proszę o orientacyjne dane, wiem że trudno to wyliczyć dla takich mało sprecyzowanych wymagań

luck
Ujmę to w ten sposób:
Kod
Premature optimization is the root of all evil

Skoro tak bardzo Ci zależy, to chyba będziesz musiał zrobić testy porównawcze obu tych rozwiązań. Ja niestety nie mam pojęcia jaki będzie wynik, więc gdybyś mógł, to wrzuć tu rezultaty winksmiley.jpg
peter13135
ok. dzięki wam za odpowiedzi, przekonaliście mnie. Niestety zbyt leniwy jestem by robić takie testy... może innym razem jak będzie mi to potrzebne
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.