Aktywność użytkowników - jaka struktura tabel?

Odpowiedz Nowy wątek
2014-01-23 13:41
0

Interesuje mnie cos takiego:

e96ab350e7.png

Jak najlepiej to zaprojektowac pod katem rozwiazan technologicznych oraz struktury tabel? Mamy tutaj do czynienia z aktywnoscia uzytkownikow. Aktywnosc roznego typu, czyli: User X zmienil temat watku na Y, User X dodal komentarz do postu w watku Y itp itd.

Zalozenia:

  • Wiele modulow (niekoniecznie powiazanych z forum) moze dodawac nowa aktywnosc (np. User X dodal artykul Y)
  • Wyswietlanie "migawek" dotyczacych powiazanych akcji (tzn. np. tresc komentarza czy fragment posta)
  • Pamietajmy, ze komentarz czy post moze zostac usuniety (wtedy aktywnosc rowniez nie powinna byc pokazywana)
  • Duza wydajnosc (nowa akcja od kilkunastu sekund do kilku minut, 1 mln rekordow w tabeli)

Mam swoje pomysly, ale chetnie wyslucham propozycji/pomyslow jak mozna ugryzc ten temat :)

Pozostało 580 znaków

2014-01-23 20:31
0

Proponuję takie kolumny:
-id
-idUzytkownika
-idTypuAkcji
-dataAkcji
-idZrodla //np. jezeli idTypuAkcji to "komentarz", to idZrodla to id z tabeli z komentarzami
-tresc //skrót treści, trzeba pamiętać o updatach

Przy usunięciu komentarza trzeba usunąć akcję po idTypuAkcji i idZrodla.

Ewentualnie - jeżeli interesują Cię jedynie najnowsze akcje, to można niczego nie zapisywać w bazie, a ostatnie akcje trzymać w pamięci.
(zakładam, że masz tylko jeden serwer i nie boli Cię utrata ostatnich akcji przy restarcie serwera).


Registered Linux user #456405 | SCJP 6 | SCWCD 5 | SCBCD 5
edytowany 2x, ostatnio: __krzysiek85, 2014-01-23 20:33

Pozostało 580 znaków

2014-03-10 20:31
0

Dzięki za sugestię. Myślę jednak, że użyje jednak do tego jakiejś bazy NoSQL.

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0