Article Redis (cas d'application - statistiques UV) (mis à jour et itéré en permanence)

Table des matières

1. HyperLogLog

2. Testez les statistiques de millions de données


1. HyperLogLog

Nous comprenons d’abord deux concepts :

UV : Le nom complet est Unique Visitor, également appelé visiteur unique, qui fait référence aux personnes physiques qui accèdent et parcourent cette page Web via Internet.

Si le même utilisateur visite le site Web plusieurs fois au cours d’une journée, cela ne sera enregistré qu’une seule fois.

PV : le nom complet est Page View, également appelé pages vues ou clics. Chaque fois qu'un utilisateur visite une page du site Web, un PV est enregistré et l'utilisateur ouvre la page plusieurs fois.

surface, plusieurs PV sont enregistrés.

Souvent utilisé pour mesurer le trafic d’un site Web.

De manière générale, les UV sont beaucoup plus importants que les PV. Ainsi, lorsque nous mesurons le nombre de visites sur le même site Web, nous devons prendre en compte de nombreux facteurs.

On utilise donc simplement ces deux valeurs comme valeur de référence

Il sera plus difficile d'effectuer des statistiques UV côté serveur, car afin de déterminer si l'utilisateur a été compté, les informations sur l'utilisateur compté doivent être enregistrées.

Mais si chaque utilisateur visiteur est enregistré sur Redis, la quantité de données sera très effrayante, alors comment y faire face ?

Hyperloglog (HLL) est un algorithme probabiliste dérivé de l'algorithme Loglog et est utilisé pour déterminer la cardinalité de très grands ensembles sans avoir besoin de tous les stocker.

valeur.

Vous pouvez vous référer aux principes de l'algorithme pertinent : https://juejin.cn/post/6844903785744056333#heading-0

Le HLL dans Redis est implémenté sur la base de la structure de chaîne. La mémoire d'un seul HLL est toujours inférieure à 16 Ko et l'utilisation de la mémoire est terriblement faible !

En contrepartie, ses mesures sont probabilistes, avec une erreur inférieure à 0,81 %.

Mais pour les statistiques UV, c'est totalement négligeable.

2. Testez les statistiques de millions de données

Idée de test : nous utilisons directement les tests unitaires pour ajouter 1 million de données à HyperLogLog afin de voir comment sont l'utilisation de la mémoire et les effets statistiques.

Après test : notre erreur se situe dans la plage autorisée et l'utilisation de la mémoire est minime

Je suppose que tu aimes

Origine blog.csdn.net/qq_51226710/article/details/142655875
conseillé
Classement