Amélioration du calcul des métriques avec BSI dans WeChat
WeChat améliore l'efficacité du calcul des métriques grâce à la technologie BSI pour une meilleure prise de décision.
― 9 min lire
Table des matières
- Le défi du calcul des métriques
- Caractéristiques des données d'expérience WeChat
- Représentation des données d'expérience avec BSI
- Calcul efficace avec BSI
- Calcul des métriques avec l'arithmétique BSI
- Calcul des tableaux de bord
- Calcul pré-expérimentation
- Analyse en profondeur
- Architecture système pour le calcul des métriques
- Évaluation des performances
- Conclusion
- Source originale
- Liens de référence
Les expériences contrôlées en ligne, souvent appelées tests A/B, sont largement utilisées par des entreprises tech comme Microsoft, Google et Meta pour prendre des décisions basées sur les données. Ces expériences consistent à comparer différentes versions d'un produit pour voir laquelle fonctionne le mieux. Au cœur de ces expériences, on trouve le processus de calcul des métriques, où les données sont analysées pour en tirer des informations significatives.
À mesure que le nombre d'expériences et de métriques augmente, le calcul efficace de ces métriques devient de plus en plus difficile. Cet article parle d'une approche spécifique utilisée sur la plateforme d'expérimentation WeChat, qui fait partie de Tencent, pour gérer le calcul des métriques efficacement en utilisant une technique appelée arithmétique par index en tranches de bits (BSI).
Le défi du calcul des métriques
Sur la plateforme d'expérimentation WeChat, des milliers de métriques sont calculées chaque jour, car de nombreuses expériences se déroulent simultanément. Chaque expérience touche des millions d'utilisateurs, ce qui entraîne d'énormes quantités de données à traiter. Le calcul des métriques est gourmand en ressources, nécessitant un trafic réseau important et une puissance de traitement CPU significative.
L'objectif principal est de calculer diverses métriques de manière efficace et de répondre rapidement aux demandes des utilisateurs. C'est crucial car la quantité de données impliquées peut être écrasante, entraînant des retards et des inefficacités si ce n'est pas géré correctement.
Caractéristiques des données d'expérience WeChat
Les données d'expérience dans WeChat peuvent être catégorisées en fonction des activités et des attributs des utilisateurs. Ces données suivent souvent le principe de Pareto, ce qui signifie qu'une petite partie des données (environ 20 %) représente une grande partie des résultats (environ 80 %). Cette caractéristique aide à optimiser le calcul des métriques lors de l'utilisation de BSI.
Les demandes courantes sur ces données suivent des motifs spécifiques, ce qui permet des solutions spécialisées qui peuvent gérer ces requêtes efficacement. Le document détaille comment BSI peut être appliqué pour représenter et calculer les données d'expérimentation.
Représentation des données d'expérience avec BSI
La première étape pour utiliser BSI est de représenter correctement les données d'expérience. Cela inclut divers types de journaux, tels que les journaux d'exposition, les journaux de métriques et les journaux de dimensions.
Journal d'exposition
Le journal d'exposition enregistre les stratégies présentées à différents utilisateurs lorsqu'une expérience commence. Chaque entrée comprend l'ID de la stratégie, l'ID de l'unité d'analyse, l'ID de l'unité de randomisation et la date de début. Ce journal aide à suivre quels utilisateurs reçoivent quelle stratégie pendant l'expérience.
Journal de métriques
Le journal de métriques capture les valeurs réelles des métriques pour chaque unité d'analyse au fil du temps. Par exemple, il pourrait inclure des données sur la durée pendant laquelle les utilisateurs sont restés sur une page ou combien de fois ils ont transféré un message. Ce journal se connecte au journal d'exposition pour analyser l'impact des stratégies sur le comportement des utilisateurs.
Journal de dimensions
Le journal de dimensions contient des attributs des utilisateurs, comme l'âge ou le type de client, ce qui peut aider à segmenter et analyser les données d'expérience plus en profondeur. Ce journal est important pour filtrer des utilisateurs spécifiques et mener des analyses détaillées de l'expérience.
Calcul efficace avec BSI
Utiliser BSI pour le calcul des métriques aide à gérer les énormes volumes de données traitées chaque jour dans WeChat. L'approche BSI se concentre sur la représentation et l'opération sur les données d'une manière qui maximise l'efficacité, notamment en ce qui concerne les caractéristiques suivantes :
Compression : BSI compresse les données, réduisant la taille et facilitant le traitement par le système.
Opérations efficaces : Des opérations standard comme les jointures, les filtres et les agrégats peuvent être effectuées rapidement avec BSI. Cela signifie que le système peut gérer les calculs de métriques sans délais significatifs.
Gestion de la variance : En plus du calcul de métriques simples, BSI peut également estimer la variance et la covariance, ce qui est crucial pour l'analyse statistique.
Calcul des métriques avec l'arithmétique BSI
La logique principale du calcul des métriques dans WeChat repose sur les opérations BSI. Cela inclut des opérations SQL de base telles que les jointures et les agrégats, qui sont effectuées sur les représentations BSI.
Opérations de jointure, de filtre et d'agrégat
- Jointure : BSI permet de rapidement joindre différents journaux en fonction de l'ID de l'unité d'analyse.
- Filtre : Des entrées spécifiques peuvent être filtrées en utilisant des colonnes normales ou des conditions BSI.
- Agrégat : Des fonctions pour calculer des sommes, des moyennes et d'autres métriques sont exécutées efficacement au format BSI.
Ces capacités rendent BSI particulièrement puissant pour traiter de grands ensembles de données typiques des expériences contrôlées.
Calcul des tableaux de bord
Un tableau de bord est un résultat courant d'une expérience, montrant comment différentes stratégies ont fonctionné en fonction de diverses métriques. Dans WeChat, un tableau de bord peut calculer des centaines de métriques à travers des millions d'utilisateurs chaque jour.
Le calcul des tableaux de bord est simplifié en utilisant BSI, réduisant les ressources de calcul nécessaires et accélérant le processus d'analyse. Les méthodes utilisées pour le calcul des tableaux de bord sont conçues pour fonctionner efficacement avec la structure BSI, garantissant des résultats rapides et précis.
Calcul pré-expérimentation
En plus des calculs en temps réel, des données pré-expérimentation peuvent être utilisées pour aider à réduire la variance des métriques pendant les expériences réelles. Cela implique d'analyser des données avant de commencer l'expérience, permettant une meilleure compréhension des résultats attendus.
La méthode de pré-calcul suit une logique similaire à celle des calculs de tableaux de bord. Elle combine le journal d'exposition avec des données de métriques passées pour fournir des informations pouvant améliorer la conception de l'expérience.
Analyse en profondeur
Alors que le tableau de bord résume les résultats globaux, les propriétaires d'expérience ont souvent besoin d'informations plus détaillées. L'analyse en profondeur permet d'explorer les données en fonction des attributs des utilisateurs ou de périodes spécifiques.
Cette analyse est effectuée au besoin et suit un processus de calcul similaire, mais inclut un filtrage pour se concentrer sur des groupes d'utilisateurs ou des intervalles de temps spécifiques. Cela aide à découvrir des tendances et des informations qui peuvent ne pas être évidentes à partir de résumés plus globaux.
Architecture système pour le calcul des métriques
L'architecture conçue pour le calcul des métriques dans WeChat est un système sophistiqué qui traite les données d'expérience efficacement. L'architecture comprend les éléments suivants :
Traitement des données : Les journaux initiaux sont transformés en représentation BSI, qui est ensuite stockée dans un système de données distribué.
Calculs routiniers : Des jobs Spark sont soumis pour calculer des tableaux de bord et d'autres tâches routinières en utilisant le format BSI. Cela permet un traitement efficace de grandes séries de paires stratégie-métrique.
Requêtes ad-hoc : Pour des analyses spécifiques qui ne sont pas réalisées régulièrement, Clickhouse est utilisé. Ce système de base de données est optimisé pour gérer rapidement les requêtes, permettant aux propriétaires d'expérience d'obtenir les informations dont ils ont besoin sans délais.
Évaluation des performances
La performance de l'approche BSI a été évaluée dans divers scénarios, y compris l'efficacité de la représentation, les coûts computationnels et les temps de réponse pour les requêtes ad-hoc.
Efficacité de la représentation BSI
Des études montrent que la représentation BSI peut considérablement réduire les besoins en stockage tout en maintenant la capacité d'effectuer les opérations nécessaires directement sur les données compressées. Cela conduit à un système plus léger capable de gérer plus de tâches avec moins de ressources.
Évaluations des coûts computationnels
Des tests de performance utilisant à la fois BSI et des formats traditionnels ont démontré que les calculs BSI sont plus rapides et plus efficaces. Par exemple, en utilisant BSI, les heures CPU nécessaires pour certaines tâches ont été réduites de manière significative par rapport aux anciennes méthodes.
Latence des requêtes ad-hoc
La latence des requêtes ad-hoc a également été améliorée avec l'approche BSI. Lors de l'exécution de requêtes complexes sur de grands ensembles de données, la méthode BSI s'est révélée beaucoup plus rapide que les méthodes traditionnelles, permettant une analyse en temps réel lorsque nécessaire.
Conclusion
La mise en œuvre de l'approche BSI dans le système de calcul des métriques de WeChat a entraîné des améliorations significatives. La capacité à gérer efficacement de grands volumes de données a facilité l'analyse des résultats pour les propriétaires d'expérience et la prise de décisions éclairées.
Avec ce système, WeChat continue d'améliorer l'expérience utilisateur sur sa plateforme, montrant comment des outils basés sur les données peuvent transformer les processus de prise de décision dans de grandes organisations. L'intégration de BSI dans les opérations quotidiennes démontre l'importance de l'innovation dans la gestion des données à grande échelle.
En résumé, les avancées réalisées dans le calcul des métriques contribuent non seulement à l'efficacité opérationnelle, mais aussi à une compréhension plus approfondie des interactions des utilisateurs, posant ainsi les bases d'améliorations continues.
Titre: Large-Scale Metric Computation in Online Controlled Experiment Platform
Résumé: Online controlled experiment (also called A/B test or experiment) is the most important tool for decision-making at a wide range of data-driven companies like Microsoft, Google, Meta, etc. Metric computation is the core procedure for reaching a conclusion during an experiment. With the growth of experiments and metrics in an experiment platform, computing metrics efficiently at scale becomes a non-trivial challenge. This work shows how metric computation in WeChat experiment platform can be done efficiently using bit-sliced index (BSI) arithmetic. This approach has been implemented in a real world system and the performance results are presented, showing that the BSI arithmetic approach is very suitable for large-scale metric computation scenarios.
Dernière mise à jour: 2024-05-14 00:00:00
Langue: English
Source URL: https://arxiv.org/abs/2405.08411
Source PDF: https://arxiv.org/pdf/2405.08411
Licence: https://creativecommons.org/licenses/by/4.0/
Changements: Ce résumé a été créé avec l'aide de l'IA et peut contenir des inexactitudes. Pour obtenir des informations précises, veuillez vous référer aux documents sources originaux dont les liens figurent ici.
Merci à arxiv pour l'utilisation de son interopérabilité en libre accès.