惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

WordPress大学
WordPress大学
Microsoft Azure Blog
Microsoft Azure Blog
MongoDB | Blog
MongoDB | Blog
小众软件
小众软件
Apple Machine Learning Research
Apple Machine Learning Research
O
OpenAI News
酷 壳 – CoolShell
酷 壳 – CoolShell
The GitHub Blog
The GitHub Blog
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
博客园 - 聂微东
Engineering at Meta
Engineering at Meta
W
WeLiveSecurity
Hacker News: Ask HN
Hacker News: Ask HN
大猫的无限游戏
大猫的无限游戏
Vercel News
Vercel News
D
Docker
F
Full Disclosure
AI
AI
罗磊的独立博客
博客园 - 【当耐特】
U
Unit 42
S
SegmentFault 最新的问题
Stack Overflow Blog
Stack Overflow Blog
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
P
Palo Alto Networks Blog
博客园_首页
H
Help Net Security
量子位
月光博客
月光博客
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
博客园 - 司徒正美
F
Fortinet All Blogs
D
DataBreaches.Net
B
Blog RSS Feed
Webroot Blog
Webroot Blog
TaoSecurity Blog
TaoSecurity Blog
S
Secure Thoughts
爱范儿
爱范儿
I
InfoQ
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
www.infosecurity-magazine.com
www.infosecurity-magazine.com
Attack and Defense Labs
Attack and Defense Labs
Application and Cybersecurity Blog
Application and Cybersecurity Blog
C
CERT Recently Published Vulnerability Notes
Martin Fowler
Martin Fowler
Blog — PlanetScale
Blog — PlanetScale
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
S
Securelist

Chenxu's Blog

RAG检索优化:从 68% 到 82.2% 学习深度学习 北邮计算机研究生选课指北 学习机器学习 上海篇 提出一个好问题 写代码的环境 选购一台合适的设备 计算机的第零课 序言 内蒙古篇 山东篇 一篇对transformers的疑惑 浅析GPUStack 浅谈后端项目分层 浙江篇 河南篇 一些三端协同的开发工具记录 浅谈编程语言中的 GC 在 Windows 上安装 Rust 美化博客 消息队列 MyBatis 现代交换原理2024年题目 回忆版 北邮计科本科课程指北 大数据梧桐实验分享 大数据HBase实验分享 国产向量数据库研究实践 —— 基于 Milvus 的电影推荐系统 服务器环境配置 大数据HDFS实验分享 SSE多服务之间推送数据 数据库系统原理 操作系统 编译原理 手把手教你gozero从开发到部署 (番外篇): 介绍 gtodolist 前端项目 天津篇 北京篇 手把手教你gozero从开发到部署 (5): gtodolist 之任务的删除 前端相关问题 vue3 + element-plus学习 git相关命令 人工智能原理 使用 MongoTemplate 时开启事务 MySQL Redis 力扣刷题笔记之动态规划 记录一次 VSCode 出现的各种奇怪的问题 手把手教你gozero从开发到部署 (4): 在 model 中自己编写函数实现数据库分页查询 记录平时用到的 windows 右键管理 记录平时使用的 linux 的指令 安装 gstore 并使用 java api 手把手教你gozero从开发到部署 (3): gtodolist 之任务的创建和修改 手把手教你gozero从开发到部署 (番外篇): 记录第一次部署 CI/CD 的流程 记录完成 gtodolist 中遇到的 bug 手把手教你gozero从开发到部署 (2): gtodolist 之 user 模块开发 手把手教你gozero从开发到部署 (1): gtodolist 项目说明和环境准备 快速入门 gozero 框架 vue部署在nginx上的相关问题 记一次安装scrapy的报错 将博客部署至服务器 Java CS143: Compliers 《MySQL必知必会》读书笔记(2) 初识 GORM 初识 gin 框架 Spring 《MySQL必知必会》读书笔记(1) 本地搭建博客 🤝友链 🙋🏻‍♂️关于 Browser and Device Check
ClkLog埋点用户分析系统研究报告
Chenxu · 2024-06-10 · via Chenxu's Blog

研究概述

研究背景

互联网时代背景下,对用户行为的深入理解成为企业优化策略的核心。传统数据收集方式难以适应大数据量、实时性分析需求,促使埋点分析系统这一高效数据收集与分析工具的快速发展。

发展现状

当前,埋点技术迅速成熟,从手动埋点演化到自动与无码埋点,代表系统如 Google Analytics、Mixpanel 及国内的神策数据、GrowingIO 等,它们通过高度集成和可视化配置降低了技术门槛。技术上,借助大数据处理框架实现了数据的高速处理与实时分析,并加强了对用户隐私保护的合规性设计,以应对 GDPR1 等法规要求。

应用场景

  • 产品优化:通过分析用户在应用内的点击、浏览、转化等行为,识别使用瓶颈和热门功能,为产品迭代提供依据;
  • 用户分群:基于用户行为特征,将用户划分为不同群体,进行精细化运营,比如针对活跃用户推出高级功能,对沉默用户设计激活策略;
  • 个性化推荐:利用用户行为数据构建个性化推荐算法,提高内容或商品的匹配精准度,提升用户体验和转化率;
  • 市场营销效果评估:通过跟踪营销活动页面的访问、点击等数据,评估营销活动的效果,指导后续营销策略的调整;
  • 异常检测与预警:实时监测用户行为数据,及时发现并预警异常行为,如登录失败、交易异常等,保障系统安全和用户体验。

产品介绍

基本信息

ClkLog 基于神策分析 SDK,采用 ClickHouse 数据库对采集数据进行存储,使用前后端分离的方式来实现。在这里,你可以轻松看到用户访问网页、APP、小程序或业务系统的行为轨迹,同时也可以从时间、地域、渠道、用户访客类型等多维度了解用户的全方位信息。2

技术栈:

  • 后端:Java、Redis、Zookeeper、Kafka、Flink
  • 前端:vue、vue-element-admin、element-ui、echarts
  • 数据:Clickhouse、MySql

系统架构

标准模式:

快速模式:

无论是那个模式,都可以从架构可以看到大体上分为数据采集、数据接收、数据存储、数据接口和数据展示五个部分,相关代码已经在 GiteeGitHub 上开源,有兴趣的同学可以看一看。

优势特色

对比市面上其他的埋点工具,ClkLog 最大的优势就是易学易用,如上面架构图所示,ClkLog 整体组成并不复杂,同时官方也提供了 Docker 部署的全部流程,用户可以轻松部署一套完整的埋点系统。并且得益于 ClkLog 的可视化前端,新用户同样也可以很容易地对系统进行维护。

从架构图中我们也可以看到,ClkLog 每一部分并没有强耦合,这对于二次开发来说也是十分友善的,也方便在实际应用中进行集成和扩展。

工程实践

因为官方提供了 Docker 部署,所以接下来主要讲解一下使用 Docker 部署标准模式 ClkLog 的流程。3

  1. 获取 ClkLog Docker Compose

    首先去官网下载 clklog-docker-compose.tar.gz

  2. 修改.env文件

    #[Clickhouse]
    # clickhouse用户名
    CK_USER_NAME=default
    # clickhouse密码
    CK_USER_PWD=clklogpwd
    
    #[ClkLog]
    # clkog数据库名称
    CLKLOG_LOG_DB=clklog
    # 默认前端埋点project默认名称,一般不用修改
    PROJECT_NAME=clklogapp
    # 埋点网站域名配置,多个域名以英文逗号分隔
    PROJECT_HOST=http(s)://{{hostname}}
    
  3. 执行初始化脚本

    chmod 500 clklog_init.sh
    bash clklog_init.sh
    
  4. 安装

    # 启动
    docker compose -f docker-compose-clklog-full.yml up -d
    # 查看状态
    docker compose -f docker-compose-clklog-full.yml ps -a
    
  5. 查看前端

为了更好地展示页面内容,这里将展示已经加载了官方 demo 数据的页面

  1. 后续使用

因为 ClkLog 数据采集模块上是基于神策分析 SDK 实现的4,所以在实际使用中完全可以参考神策分析的 SDK 接口,这里就不再赘述。

思考

从市面上的埋点工具乃至其他工具的发展来看,我们可以从下面几个方面进行思考:

  1. 智能化与自动化提升:随着人工智能技术的进步,未来的埋点系统将更加智能化,能够自动识别并优化数据采集点,减少人工配置的依赖。
  2. 无感埋点技术的深化:无码埋点技术将进一步深化,实现真正意义上的“无感”,使用更加高效的数据采集和传输策略将系统对用户体验和应用性能的影响降至最低。
  3. 数据隐私保护强化:随着全球范围内隐私法规的日益严格,埋点系统将更加注重数据隐私保护,采用更高级别的加密技术、匿名化处理等手段,确保用户数据安全合规。