Plateforme d'analyse du comportement des utilisateurs de Xiaoxiang
introduire
La technologie du Big Data a été rapidement appliquée aux entreprises et a généré de la valeur. L'identification du comportement des utilisateurs grâce à l'analyse des données et l'établissement d'une croissance rapide et à faible coût centrée sur l'utilisateur constituent la compétitivité fondamentale dont doit disposer une entreprise. Avec l'augmentation substantielle des coûts, les entreprises doivent modifier leurs anciennes méthodes de marketing et d'exploitation, notamment en matière de marketing, de fabrication de produits, de ventes et de futur service client, pour devenir plus scientifiques et efficaces.
Une fois le système de commerce électronique Xiaoxiang lancé, il doit collecter des données sur le comportement des utilisateurs et réaliser le fonctionnement numérique des activités de commerce électronique grâce à l'analyse du Big Data en temps réel. Sur la base de cette forte demande, l'analyse du comportement des utilisateurs de Xiaoxiang est développée. Elle est compatible avec le SDK de point enterré open source Shence pour compléter les rapports sur le comportement du terminal, et Nginx+Flume+kafka est utilisé pour implémenter la collecte de journaux et Flink est utilisé pour écrire sur HDFS. .
Le contenu de ce projet open source comprend la configuration de l'environnement nginx, le déchiffrement Flume et le traitement du format de journal, le stockage des données en texte brut sous le thème kafka et les quatre étapes clés du stockage des données enfouies dans HDFS après la consommation de Flink. Afin de faciliter la vérification et l'optimisation des premiers points enterrés, dans le lien kafka, les données d'analyse des points enterrés sont stockées au format JSON dans MySQL. Le plan de suivi consiste à ajouter le traitement de suivi par Umeng et d'autres fournisseurs de SDK, ainsi que la collecte et le stockage des journaux du système d'entreprise.
Contenu principal du projet
1. Collecte de bûches (Flume+kafka)
2. Stockage des journaux (Flink+HDFS)
Flux de travail
Idées de conception d'architecture
Idées de conception d'entreprise
Architecture technique
Les terminaux sources des données comportementales collectées par le SDK incluent iOS, Android, Web, H5, l'applet WeChat, etc. Différents SDK de terminal utilisent des SDK correspondant à la plateforme et aux langages courants. Les données collectées par les points enterrés sont soumises à l'API du serveur en mode HTTP POST via des données JSON. L'API côté serveur consiste en un système d'accès aux données, qui utilise Nginx pour recevoir les données envoyées via l'API et les écrire dans le fichier journal. Utilisez Nginx pour obtenir une fiabilité et une évolutivité élevées. Pour les journaux imprimés par Nginx dans des fichiers, le module Source de Flume lit les journaux Nginx en temps réel, et le module Channel effectue le traitement des données et publie enfin les résultats du traitement sur Kafka via le module Sink.
Architecture logicielle complète
Étapes d'intégration du SDK de point enterré tiers
1. Introduction du SDK : ajoutez des dépendances du SDK dans le fichier de configuration de l'application du terminal. Les méthodes d'introduction des différents terminaux seront différentes. Les étapes de fonctionnement spécifiques seront reflétées dans les documents techniques du SDK ultérieurs.
2. Configurez l'adresse de l'API du serveur de reporting : utilisée pour définir l'adresse du serveur de l'API de reporting du SDK.
3. Activez la couverture complète : le SDK peut collecter automatiquement certains comportements des utilisateurs, tels que le démarrage, la sortie, la navigation sur les pages et les clics de contrôle. Lors de l'initialisation du SDK, vous pouvez configurer et activer des points d'enfouissement complets via la méthode d'initialisation fournie par le SDK.
Conception du service d'accès aux API
Les données cachées de différents canaux sont envoyées à l'API du serveur via l'API HTTP pour accéder aux données. Utilisez Nginx comme conteneur WEB pour recevoir les données envoyées par le SDK client et les écrire dans le fichier journal. La principale raison d’utiliser Nginx est de considérer sa haute concurrence, sa haute fiabilité et sa grande évolutivité.
Scénarios de collecte du comportement des utilisateurs
En triant les scénarios d'application, nous pouvons utiliser des scénarios pour planifier et détecter les points cachés. Le tri des scènes peut être résumé en trois niveaux :
1. Scénarios de base communs : les opérations courantes sont considérées de manière uniforme
2. Scénarios d'opérations importantes : attribution globale des opérations importantes
3. Scénario du processus principal métier : Définir le processus complet avec les lignes métiers
Effet d'application
Déclaration de droits d'auteur
L'analyse du comportement des données de Little Elephant utilise l'accord open source Apache2.0. Les particuliers et les entreprises doivent se conformer aux éléments suivants pour une utilisation directe ou commerciale après un développement secondaire :
1. Contient le fichier LICENSE de xiaoxianganalysis (utilisateurs autorisés à utiliser gratuitement les brevets et les droits de propriété intellectuelle de xiaoxianganalysis)
2. Si le code est modifié, il doit être indiqué dans le fichier modifié.
3. Dans le code modifié ou dérivé du code source, l'accord et la marque dans le code original doivent être inclus
4. Si plusieurs logiciels open source sont utilisés dans le produit commercialisé après un développement secondaire, un fichier d'avis doit être inclus et le fichier d'avis doit contenir la LICENCE de xiaoxianganalysis. Vous pouvez ajouter votre propre licence dans l'avis, mais elle ne peut pas être affichée comme une modification de la LICENCE de xiaoxianganalysis.
Par exemple:
`
Licence Apache-2.0
`