![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 156 Pomógł: 31 Dołączył: 23.02.2009 Skąd: Sanok Ostrzeżenie: (0%) ![]() ![]() |
Załóżmy że mamy aplikację z której korzysta 1000 użytkowników i każdy użytkownik posiada 5000 zapisanych w bazie danych wiadomości tekstowych(dajmy na to 10-20 kb każda). Użytkownicy dość często korzystają z przeszukiwania swoich wiadomości wg określonych kryteriów. Użytkownicy mają dostęp tylko i wyłącznie do swoich wiadomości.
W tym momencie nasuwa się pytanie. Czy wydajniejszym rozwiązaniem jest utworzenie jednej tabeli ze wszystkimi rekordami? Czy może dużo lepszy rozwiązaniem jest utworzenie osobnej tabli dla każdego użytkownika? Przykładowe zapytanie dla jednej tabeli:
Przykładowe zapytanie dla osobnej tabeli dla każdego użytkownika:
Które rozwiązanie wg was jest lepsze. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 7.10.2009 Ostrzeżenie: (0%) ![]() ![]() |
Ja, jestem za jedną tabelą, przy wielu byłby problem z tym, że już mieszamy projekt tabeli z jej danymi, nie można zrobić tak, by struktura danych (ilosć tabel) był zależny od zawartości tych danych (ilości userów), to zmieniałoby za każdym razem ilosć tabel, utrudnienie w konserwacji.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 7.10.2025 - 03:50 |