1 Star 1 Fork 0

菜鸡互啄/用户行为分析平台

Create your Gitee Account
Explore and code with more than 13.5 million developers,Free private repositories !:)
Sign up
Clone or Download
contribute
Sync branch
Cancel
Notice: Creating folder will generate an empty file .keep, because not support in Git
Loading...
README
MIT

用户行为分析平台

介绍

大数据技术已经迅速应用于商业并产生价值,通过数据分析来识别用户行为,建立以用户为中心的低成本快速增长,是一个企业必须具备的核心竞争力。 随着成本的大幅度增加,企业必须改变过去粗放型的营销和运营方式,特别是在市场营销、产品制造、销售以及未来的客户服务等各个方面向更加科学、高效的方向转变。

系统上线后,需要收集用户行为数据,通过大数据实时分析实现电商业务数字化运营。基于此强需求开发用户行为分析,兼容神策开源的埋点SDK完成终端行为上报,采用Nginx+Flume+kafka实现日志收集,采用Flink写入StarRocks。

本开源项目内容包括nginx环境配置、Flume解密和日志格式处理、将明文数据存放到kafka的Topic下、Flink消费后将埋点数据存入HDFS的关键4步操作。为方便前期埋点的校验调优,在kafka环节,增加了埋点解析数据JSON格式存入MySQL。后续计划增加友盟和其他SDK厂商的埋点处理,以及业务系统日志的采集入库。

本地运行,请参考本地启动说明文档

项目主要内容

  • 日志采集(Flume+kafka)
  • 日志入库(Flink+StarRocks)

工作流程

完成数据采集技术构建和业务设计,在App、小程序的系统供应商配合下完成用户行为数据采集埋点,并基于埋点的数据构建线上用户行为标签和画像。 工作流程

架构设计思路

所谓“埋点”,是数据采集领域(尤其是用户行为数据采集领域)的术语,指的是针对特定用户行为或事件进行捕获、处理和发送的相关技术及其实施过程。比如用户某个icon点击次数、观看某个视频的时长等等。 架构设计思路

业务设计思路

埋点业务设计,首先需要根据业务分析明确采集的目标行为,进一步搞清楚应该在哪些地方埋什么样的点。过程中建议使用“事件模型( Event 模型)”来描述用户的各种行为,事件模型包括事件( Event )和用户( User )两个核心实体。 基于4W1H模型描述用户行为可将整个行为描述清楚,要点包括:是谁、什么时间、什么地点、以什么方式、干了什么。通过这两个实体结合在一起就可以清晰地描述清楚用户行为。 事件模型

技术架构

SDK埋点采集行为数据来源终端包括iOS、安卓、Web、H5、微信小程序等。不同终端SDK采用对应平台和主流语言的SDK,埋点采集到的数据通过JSON数据以HTTP POST方式提交到服务端API。 服务端API由数据接入系统组成,采用Nginx来接收通过 API 发送的数据,并且将之写到日志文件上。使用Nginx实现高可靠性与高可扩展性。 对于Nginx打印到文件的日志,会由Flume的 Source 模块来实时读取Nginx日志,并由Channel模块进行数据处理,最终通过Sink模块将处理结果发布到 Kafka中。

技术架构

第三方埋点SDK集成步骤

  • 引入SDK:在终端应用配置文件添加 SDK 依赖,不同终端引入方式会有差异,具体操作步骤将在后续SDK技术文档中体现。
  • 配置上报服务端API地址:用于设置SDK上报API的服务端地址。
  • 开启全埋点:SDK 可以自动采集一些用户行为,如 App 启动、退出、浏览页面、控件点击。初始化 SDK 时,通过SDK提供的初始化方法可以配置开启全埋点。

API接入服务设计

不同渠道的埋点数据通过 HTTP API 发送给服务端API实现数据接入。 采用Nginx作为WEB容器接收客户端SDK发送的数据,并且将之写到日志文件上。使用 Nginx 主要是考虑到其高并发、高可靠性与高可扩展性。

用户行为采集场景

通过应用场景梳理,实现以场景规划埋点,用场景检验埋点。场景梳理可以抽象为三个层面:

  • 通用基础场景:共性操作统一考虑
  • 重要操作场景:重要操作整体归因
  • 业务主流程场景:以业务线定义完整过程

用户行为采集场景

应用效果

  • 在事件分析中查看新客总数,同时按照日期、渠道等维度拆分下 应用效果
  • 在事件分析中查看各渠道获取新客数量占整体获客数量比例 应用效果
  • 获得流失用户名单,针对特定人群实现精准营销 应用效果
  • 在留存分析中查看各渠道用户的活跃情况 应用效果
  • 全面监控渠道获客的数量及质量 应用效果

版权声明

本数据行为分析平台用Apache2.0开源协议 个人和企业,在直接使用、二次开发后商业使用,需要遵守:

包含平台 LICENSE文件(授权使用者免费使用平台分析专利和知识产权) 如果修改了代码,需要在被修改的文件中说明 在修改和有源代码衍生的代码中,需要带有原来代码中的协议,商标 在二次开发后商业发布的产品中,使用了多个开源软件,则必须包含一个Notice文件,在Notice文件中需要带有analytics LICENSE。你可以在Notice中增加自己的许可,但不可以表现为对analytics LICENSE构成更改。 如果您需要商业化增值服务,请加微信沟通。

MIT License Copyright (c) 2025 半夜蝉鸣 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

About

大数据技术已经迅速应用于商业并产生价值,通过数据分析来识别用户行为,建立以用户为中心的低成本快速增长,是一个企业必须具备的核心竞争力。 随着成本的大幅度增加,企业必须改变过去粗放型的营销和运营方式,特别是在市场营销、产品制造、销售以及未来的客户服务等各个方面向更加科学、高效的方向转变。 expand collapse
Cancel

Releases

No release

Contributors

All

Activities

4个月前推送了新的提交到 master 分支,73303d4...96a3410
4个月前推送了新的提交到 master 分支,5e4118c...73303d4
4个月前推送了新的 master 分支
4个月前创建了仓库
can not load any more
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Java
1
https://gitee.com/m6t/data-analytics.git
git@gitee.com:m6t/data-analytics.git
m6t
data-analytics
用户行为分析平台
master

Search