Accueil Finances personnelles Comment trouver le nombre d'éléments dans un flux de données - mannequins

Comment trouver le nombre d'éléments dans un flux de données - mannequins

Vidéo: Comment avoir la Nocturno sur Fortnite Sauver Le Monde 2025

Vidéo: Comment avoir la Nocturno sur Fortnite Sauver Le Monde 2025
Anonim

Même si un filtre Bloom peut suivre les objets arrivant d'un flux, il ne peut pas dire combien il y a d'objets. Un vecteur bit rempli par un peut (en fonction du nombre de hashs et de la probabilité de collision) cacher le vrai nombre d'objets hachés à la même adresse.

La connaissance du nombre d'objets est utile dans diverses situations, par exemple lorsque vous souhaitez connaître le nombre d'utilisateurs distincts ayant consulté une page de site Web ou le nombre de requêtes de moteur de recherche distinctes. Stocker tous les éléments et trouver les doublons parmi eux ne peut pas fonctionner avec des millions d'éléments, en particulier venant d'un flux. Lorsque vous voulez connaître le nombre d'objets distincts dans un flux, vous devez toujours utiliser une fonction de hachage, mais l'approche consiste à prendre une esquisse numérique.

Esquisse signifie prendre une approximation, c'est une valeur inexacte mais pas complètement fausse comme réponse. L'approximation est acceptable car la valeur réelle n'est pas trop éloignée. Dans cet algorithme intelligent, HyperLogLog, basé sur la probabilité et l'approximation, vous observez les caractéristiques des nombres générés à partir du flux. HyperLogLog est issu des études des informaticiens Nigel Martin et Philippe Flajolet. Flajolet a amélioré son algorithme initial, Flajolet-Martin (ou l'algorithme LogLog), dans la version plus robuste de HyperLogLog, qui fonctionne comme ceci:

  1. Un hachage convertit chaque élément reçu du flux en un nombre.
  2. L'algorithme convertit le nombre en binaire, la norme numérique de base 2 que les ordinateurs utilisent.
  3. L'algorithme compte le nombre de zéros initiaux dans le nombre binaire et les traces du nombre maximum qu'il voit, qui est n.
  4. L'algorithme estime le nombre d'éléments distincts passés dans le flux en utilisant n. Le nombre d'éléments distincts est 2 ^ n.

Par exemple, le premier élément de la chaîne est le mot chien. L'algorithme le transforme en entier et le convertit en binaire, avec un résultat de 01101010. Seul un zéro apparaît au début du nombre, l'algorithme l'enregistre comme le nombre maximal de zéros finaux vus. L'algorithme voit alors les mots perroquet et loup, dont les équivalents binaires sont 11101011 et 01101110, laissant n inchangé. Cependant, lorsque le mot cat passe, la sortie est 00101110, donc n devient 2. Pour estimer le nombre d'éléments distincts, l'algorithme calcule 2 ^ n, c'est-à-dire 2 ^ 2 = 4. La figure montre ce processus.

Compter uniquement les zéros en tête.

L'astuce de l'algorithme est que si votre hash produit des résultats aléatoires, équitablement répartis (comme dans un filtre Bloom), en regardant la représentation binaire, vous pouvez calculer la probabilité qu'une séquence de zéros apparaisse. Parce que la probabilité qu'un nombre binaire unique soit 0 est une sur deux, pour calculer la probabilité de séquences de zéros, il suffit de multiplier cette probabilité 1/2 autant de fois que la longueur de la séquence de zéros:

  • 50% (1/2) probabilité pour les nombres commençant à 0
  • 25% (1/2 * 1/2) probabilité pour les nombres commençant par 00
  • 12. 5% (1/2 * 1/2 * 1/2) probabilité pour les nombres commençant à 000
  • (1/2) ^ k probabilité pour les nombres commençant par k zéros (vous utilisez les puissances pour les calculs plus rapides de nombreuses multiplications de la même nombre)

Moins il y a de chiffres visibles par HyperLogLog, plus grande est l'imprécision. La précision augmente lorsque vous utilisez le calcul HyperLogLog plusieurs fois en utilisant différentes fonctions de hachage et que vous calculez la moyenne des réponses de chaque calcul, mais le hachage de nombreuses fois prend du temps et les flux sont rapides. Vous pouvez également utiliser le même hachage, mais diviser le flux en groupes (par exemple, en séparant les éléments en groupes à leur arrivée en fonction de leur ordre d'arrivée) et, pour chaque groupe, suivre le nombre maximal de zéros de fin. En fin de compte, vous calculez l'estimation de l'élément distinct pour chaque groupe et calculez la moyenne arithmétique de toutes les estimations. Cette approche est un moyennage stochastique et fournit des estimations plus précises que l'application de l'algorithme à l'ensemble du flux.

Comment trouver le nombre d'éléments dans un flux de données - mannequins

Le choix des éditeurs

Comment écrire un journal de gratitude pour Mindfulness - mannequins

Comment écrire un journal de gratitude pour Mindfulness - mannequins

Un journal de gratitude est un moyen puissant et simple de stimuler votre bien-être avec la pleine conscience. Le journal est simplement un enregistrement quotidien des choses dans votre vie que vous êtes reconnaissant. En réfléchissant sur ce qui vous a rendu reconnaissant à la fin de chaque journée, la recherche a constaté que les niveaux de gratitude augmentent et que les gens se sentent ...

Apprendre à propos de la Pleine Conscience - les nuls

Apprendre à propos de la Pleine Conscience - les nuls

La Pleine Conscience est plus qu'un ensemble de techniques à pratiquer. La pleine conscience consiste à questionner votre identité et votre relation avec le monde qui vous entoure. En comprenant qui vous êtes à un niveau plus profond, vous êtes moins affecté par des émotions négatives, des pensées ou des sensations physiques - vous êtes en train d'attaquer la racine du problème. Pour ces raisons, c'est ...

Façons essentielles d'être juste en pratiquant la pleine conscience - les nuls

Façons essentielles d'être juste en pratiquant la pleine conscience - les nuls

ÊTes-vous une personne occupée? Avez-vous trop à faire pour avoir le temps d'être juste? L'une des choses intéressantes à propos de la pleine conscience est que vous n'avez pas de temps fixe pour lequel vous êtes censé pratiquer. Votre pratique quotidienne peut être la méditation pendant une minute ou une heure - c'est ...

Le choix des éditeurs

Choisissez un sac photo pour reflex numérique - des nuls

Choisissez un sac photo pour reflex numérique - des nuls

Dès la sortie de votre premier reflex numérique (objectif unique) reflex) caméra, vous n'aurez probablement pas besoin d'un grand sac de caméra, mais il est toujours bon de penser à l'avance. Un sac de caméra est un endroit pour vos affaires. Il protège l'équipement et permet de ranger votre équipement lorsque vous ne l'utilisez pas. Il devrait aussi ...

Choisissez un trépied pour votre appareil photo reflex numérique - les tétines

Choisissez un trépied pour votre appareil photo reflex numérique - les tétines

Avez-vous besoin d'un trépied pour votre reflex numérique ( reflex mono-objectif) caméra? Si vous tenez l'appareil photo immobile et ne photographiez pas en dessous d'une vitesse d'obturation correspondant à la distance focale que vous utilisez, vous obtiendrez une image nette. Par exemple, si vous utilisez un objectif avec une distance focale de 100mm, l'inverse ...

Choisissez Accessoires pour votre appareil photo reflex numérique - les nuls

Choisissez Accessoires pour votre appareil photo reflex numérique - les nuls

Vous voudrez éventuellement acheter des accessoires pour votre appareil photo reflex numérique . Lorsque vous achetez un appareil photo reflex numérique, vous obtenez un boîtier d'appareil photo, une batterie et un objectif. C'est assez pour vous tirer d'affaire lorsque vous filmez près de chez vous, mais que se passe-t-il lorsque vous partez pour une journée à la recherche de beaux paysages ...

Le choix des éditeurs

Comment trouver, évaluer et installer des thèmes Premium - des nuls

Comment trouver, évaluer et installer des thèmes Premium - des nuls

Bien que des thèmes premium sont en train de surgir partout sur le web, une poignée se démarque vraiment avec des produits et services de qualité. Les trois thèmes premium suivants sont éprouvés, avec un suivi très stable et réussi des clients qui les utilisent: iThemes: Cory Miller et son équipe de designers et de wranglers fournissent plus de ...

10 Super plugins de gestion d'image - les nuls

10 Super plugins de gestion d'image - les nuls

Les dix plugins abordés ici adressent une ou plusieurs de vos gestion d'image Besoins. Tous ont des milliers d'utilisateurs, de bonnes critiques, des mises à jour régulières et sont faciles à installer. Tous les plugins sont gratuits, et plusieurs offrent des versions Pro ou Extended avec des fonctionnalités supplémentaires et des options de configuration. Considérez toutes les choses que vous pourriez devoir faire avec ...

Devriez-vous utiliser un thème Premium pour votre site WordPress? - Les mannequins

Devriez-vous utiliser un thème Premium pour votre site WordPress? - Les mannequins

Premium WordPress sont devenus un moyen très populaire pour les créateurs talentueux de fournir un service qui les passionne - la conception de thèmes - tout en faisant un peu d'argent pour leurs efforts. Il existe de nombreuses écoles de pensée sur ce qui fait une prime de thème. En fait, le sujet de ce qui est et n'est pas considéré premium est ...