Efektywne śledzenie DAU i MAU na stronach o wysokim ruchu
Śledzenie DAU i MAU na stronach o wysokim ruchu to trudne zadanie. Ten artykuł opisuje, jak rozwiązaliśmy ten problem w Logto.
Nie ma wątpliwości, że jako dostawca tożsamości, Logto przetwarza codziennie góry danych użytkowników. Jednym z kluczowych wskaźników, na które nie możemy sobie pozwolić na przeoczenie, są 'Dziennie Aktywni Użytkownicy' (DAU) - daje nam to poczucie, jak zaangażowani są nasi użytkownicy. Ale kiedy przychodzi do śledzenia DAU i Miesięcznie Aktywnych Użytkowników (MAU), wszystko może się skomplikować. Zarządzanie ogromnymi ilościami danych bez wpływu na doświadczenie użytkownika nie jest łatwe, ale nauczyliśmy się to robić efektywnie.
W tym tekście chcielibyśmy skorzystać z okazji, aby przybliżyć Ci koncepcje związane z DAU, wyjaśnić, jak można obliczyć DAU, MAU i miesięczny wskaźnik zaangażowania.
DAU, MAU i miesięczny wskaźnik zaangażowania
Dziennie aktywni użytkownicy (DAU)
DAU to unikalni użytkownicy, którzy na różne sposoby korzystają z twojej platformy w danym dniu. Te interakcje mogą być różnego rodzaju - od zwykłego logowania się, publikowania lub polubienia czegoś, po dowolną inną konkretną akcję, która sygnalizuje aktywność. Śledzenie DAU pozwala nam ocenić zaangażowanie użytkowników na co dzień i zdobyć wiedzę na temat rozmiarów naszej bazy aktywnych użytkowników.
Miesięcznie aktywni użytkownicy (MAU)
MAU, z kolei, to wskaźnik unikalnych użytkowników, którzy angażują się na twojej platformie co najmniej raz w miesiącu. Miesięczni użytkownicy, tak jak DAU, mogą zawierać wszystko, od kogoś, kto po prostu się zalogował, po kogoś, kto zaangażował się w platformę w jakiś sposób.
Miesięczny wskaźnik zaangażowania
Gdy chodzi o zrozumienie, jak często użytkownicy angażują się w naszą platformę w ciągu miesiąca, znajdujemy ogromną wartość w szczególnym wskaźniku - Miesięcznym Wskaźniku Zaangażowania (MER). To nie jest dla nas po prostu liczbą, ale kluczowym elementem, który mocno wpływa na naszą strategię cenową.
MER ujawnia częstotliwość zaangażowania użytkownika, określając liczbę unikalnych dni, w których użytkownik loguje się na naszą platformę lub w jakiś sposób z nią wchodzi w interakcję, w ciągu miesiąca. Ta wiedza nie jest tylko przydatna; to dla nas kluczowy element różnicujący. W przeciwieństwie do typowego podejścia, które skupia się wyłącznie na tym, czy użytkownik odwiedził stronę w ciągu miesiąca, my schodzimy głębiej, staramy się zrozumieć 'jak często'. To 'jak często' pozwala nam ocenić stopień zaangażowania użytkownika w naszą platformę i dostarczyć nam namacalnych wskaźników, aby dostarczyć naszym użytkownikom większą wartość.
W Logto, MER jest istotnym czynnikiem cenienia na podstawie użytkowania. Ankrując nasze ceny do MER, zapewniamy, że nasze opłaty są zgodne z poziomem zaangażowania użytkownika; można by powiedzieć, że zamieniliśmy sprawiedliwość na miarę, którą można zmierzyć. Podczas gdy inni mogą liczyć użytkownika, który zalogował się tylko raz, tak samo jak użytkownika codziennego, my różnicujemy, cenując na podstawie rzeczywistego użytkowania i wartości dostarczonej. Dzięki temu zapewniamy bardziej transparentne, sprawiedliwe i ostatecznie, wybijające się podejście do cen.
Z dzienników użytkowników
Zwykle DAU i MAU są obliczane bezpośrednio z dzienników użytkowników. Ale kiedy te dzienniki zaczynają się gromadzić, proces staje się nieefektywny i pojawiają się problemy takie jak skalowanie danych i retencja dzienników. Nie mówiąc już o tym, że trzymanie zapisów dzienników użytkowników na zawsze nie jest praktyczne ze względu na przepisy o prywatności i bezpieczeństwie.
Inne podejście: tworzenie tabeli DAU
Dlatego wprowadziliśmy koncepcję tabeli DAU. Ta tabela głównie zawiera dwie kolumny - user_id
i date
. date
może być ustawione na początek jednego dnia.
Mamy dwa sposoby na utrzymanie tej tabeli na bieżąco. Pierwszy to codzienne zautomatyzowane zadanie, które przekopuje dzienniki użytkowników z poprzedniego dnia. Drugi polega na uruchomieniu aktualizacji za każdym razem, gdy ma miejsce jakaś aktywność użytkownika.
Za każdym razem, kiedy natrafimy na unikalne user_id
, dodajemy nowy wpis do tabeli DAU, który zawiera user_id
i date
. Robi się to za pomocą operacji SQL "upsert", która wymaga unikalnego klucza user_id
i date
.
W efekcie śledzenie DAU i MAU sprowadza się po prostu do liczenia wierszy w tabeli. A obliczenie miesięcznego wskaźnika zaangażowania można zrealizować poprzez połączenie group by
i count
.
Rezultaty i korzyści
Tabela DAU, która jest w zasadzie skondensowaną wersją dzienników użytkowników, znacznie usprawniła nasz proces obliczania DAU i MAU. Nie tylko ułatwiło to śledzenie zaangażowania użytkowników, ale także znacznie zmniejszyło obciążenie naszego systemu.
Wnioski
Na naszej drodze do optymalizacji obliczeń DAU i MAU zawsze kładliśmy dużą wagę na prywatność użytkowników i zgodność z prawem. Zbudowaliśmy naszą strategię wokół zapewnienia, że tabela DAU nie będzie przechowywać wrażliwych informacji o użytkownikach. Zamiast tego przechowujemy tylko anonimowe identyfikatory (zaszyfrowaną wartość normalnego user_id) i daty aktywności, przestrzegając surowo wszystkich odpowiednich regulacji dotyczących ochrony danych.
Zdecydowanie polecamy to podejście zorientowane na prywatność innym w branży usług cyfrowych. Bez względu na skalę lub ilość danych użytkowników, prywatność zawsze powinna mieć najwyższy priorytet.
Ostatecznie, śledzenie danych nie musi być skomplikowane, nawet dla stron internetowych o wysokim natężeniu ruchu. Stabilna i efektywna strategia, taka jak nasza, może ułatwić śledzenie kluczowych wskaźników zaangażowania użytkowników.
Mamy nadzieję, że podzielenie się naszym doświadczeniem może zainspirować inne platformy cyfrowe i dostarczyć pomysłów na opracowanie innowacyjnych rozwiązań do efektywnego i wydajnego śledzenia danych.