Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][php] Zbieranie statystyk jak najniższym kosztem?
luis2luis
post
Post #1





Grupa: Zarejestrowani
Postów: 190
Pomógł: 0
Dołączył: 25.11.2015

Ostrzeżenie: (0%)
-----


Witam.

Potrzebuje zbierać informacje co użytkownik oglądał na stronie bloga. Jaki autorów, jakie kategorie i jakie artykuły dokładnie oglądał. Baza ta może być dosyć spora więc chciałbym zrobić tą operacje maxymalnie wydajną, żeby nie obciążać serwera.
Zbierane dane będą po każdym wywołaniu strony/podstrony.

Chce zrobić tabele:
  1. TAB_USER_STAT
  2. user_id, art_id, autor_id, kat_id, DATA


Myślałem, żeby zrobić cztery pierwsze kolumny jako KLUCZE jednoznaczne.
Wtedy robię operację :

  1. INSERT IGNORE INTO TAB_USER_STAT (user_id, art_id, autor_id, kat_id, DATA) VALUE (21,0,158,0,now() );


Wtedy jak będzie taki wpis, to już nie doda ponownie. Nie chciałbym , żeby nie powstawały duplikaty i nie chciałbym za każdym razem skanować bazę żeby sprawdzać, czy taki wpis jest.

Czy takie rozwiązanie będzie ok? Czy jeszcze jakiś pomysł macie?

P.S. Co mogę jeszcze zbierać w takim serwisie, żeby badać preferencje użytkownika?

Ten post edytował luis2luis 4.03.2020, 21:01:52
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
trueblue
post
Post #2





Grupa: Zarejestrowani
Postów: 6 807
Pomógł: 1828
Dołączył: 11.03.2014

Ostrzeżenie: (0%)
-----


To dodaj pole: ilość.
A zapytanie zmień na INSERT INTO ... ON DUPLICATE KEY UPDATE.
Go to the top of the page
+Quote Post
luis2luis
post
Post #3





Grupa: Zarejestrowani
Postów: 190
Pomógł: 0
Dołączył: 25.11.2015

Ostrzeżenie: (0%)
-----


Cytat(trueblue @ 4.03.2020, 21:35:35 ) *
To dodaj pole: ilość.
A zapytanie zmień na INSERT INTO ... ON DUPLICATE KEY UPDATE.


OOO bardzo fajne, użyje to na pewno (IMG:style_emoticons/default/smile.gif)


tak myślę, że dopóki użytkownik się nie zaloguje, to mam tylko session id. hmm..
Czyli po zalogowaniu muszę te rekordy z session id zamienić już na id konkretnego odwiedzającego stronę.

Ten post edytował luis2luis 4.03.2020, 23:57:14
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 12.10.2025 - 07:55