当前位置: 首页 > news >正文

基于助睿平台的浏览器市场与用户画像分析-数据加工

基于助睿平台的浏览器市场与用户画像分析-数据加工

实验背景

1.1 实验目的

本次实验将了解数据集及半结构化日志数据的特征,掌握日志解析、字段拆分的实操技巧,完成原始日志的数据规整并转换为标准结构化数据表,同时实现多维度数据聚合、字段衍生与跨表关联,构建适配分析需求的指标体系。

1.2 实验环境

  • 实验平台:助睿数智(Uniplore)一站式数据科学实验平台

  • 登录地址:https://lab.guilian.cn/

  • 平台官网:https://www.uniplore.com/

  • 数据库:MySQL

  • 实验数据:首届中国互联网数据挖掘竞赛公开数据集

1.3 处理流程简述

  1. 项目创建与日志结构化:在助睿 ETL 平台创建实验项目,完成数据源连接与原始用户行为日志表创建;通过批量采集日志文件、Java 代码解析、字段筛选规整等操作,将半结构化日志转换为标准结构化数据表并落地输出,执行转换流完成数据预处理。

  2. 分析方向与数据准备:创建进程统计表,统计进程用户规模,结合数据观察明确浏览器市场格局与用户行为时段分布的分析方向,完成分析方案设计与数据确认。

  3. 数据清洗与加工:读取结构化行为日志数据,通过字段选择剔除冗余信息,筛选主流浏览器及有效停留时长数据;计算停留时长、提取日期与小时维度,生成用户 - 日 - 浏览器 - 小时明细数据集,为后续分析奠定基础。

  4. 多分支指标生成:基于明细数据集分流处理,分支 A 生成市场格局表以分析浏览器占比,分支 B 生成时段统计表以分析用户活跃时段分布,执行转换流并校验输出结果。

实验步骤

2.1 创建实验项目

点击“新建项目”,输入项目名称“互联网用户行为日志数据加工”,点击“确定”。

2.2 日志数据结构化转换

2.2.1 数据资源获取

点击该项目右上角“…”,点击“打开项目”。

点击“文件库”,右键根目录,点击“新建目录”。

输入目录名称为“互联网用户行为日志数据集”,点击“确定”。

点击公共空间,点击“数据资源”,点击属于“互联网用户行为日志数据集”下的数据卡片右上角的“更多”,并点击“导出”。

在弹出的窗口中选择导出到刚刚新创建的目录下,点击“确定”。

重复以上导出操作,将本次实验用到的20个数据都导出到“互联网用户行为日志数据集”。

2.2.2 创建原始用户行为日志表

新建转换工作流,并命名为“创建原始行为日志数据表”,在该工作流中拖拽“执行一个SQL脚本”组件。

配置组件,在组件中填写SQL脚本,选择目标数据库连接“团队私有数据库”。完成后运行转换流。

2.2.3 获取文件名:日志文件批量采集

新建转换工作流,并命名为“行为日志数据转为结构化数据”,在该工作流中拖拽“获取文件名”组件。

配置组件,点击文件或目录后后的“浏览文件”按钮,在弹出的窗口中选择我们上面创建的目录“互联网用户行为日志数据集”。选择目录后,点击“增加”。点击“确认”。

2.2.4 Java 代码:日志解析与结构化转换

拖拽一个“Java 代码” 组件到画布中,并创建“获取文件名”组件到“Java 代码” 组件的连线。

双击“Java 代码”组件,输入代码。在字段空白表格处右键点击“插入”。双击插入的行,字段名输入“session_id”,类型选择“String”。继续插入行,依次将java代码中输出的字段进行配置。配置完成后点击“确认”。

2.2.5 字段选择:有效字段筛选与规整

拖拽“字段选择”组件到画布中,并创建“Java 代码”组件到“字段选择”组件的连线。

配置组件,点击tab选项“移除”,并在字段名称下方空白处右键点击“获取字段”,选中上一步骤中的Java代码输出的字段后,右键点击“删除选中的行”。点击“确认”。

2.2.6 表输出:结构化数据表落地

拖拽“表输出”组件到画布中,并创建“字段选择”组件到“表输出”组件的连线。

配置组件,选择“团队私有数据库”连接,勾选“裁剪表”,勾选“指定数据库字段”。

点击“数据库字段”,右键选择“获取字段”,双击表字段,在下拉框中选择正确的表字段。点击“确认”。

2.2.7 执行转换流

点击三角形图标,执行转换流。

点击“元数据”,在“团队私有数据库”连接上右键选择“加载元数据”。

然后进入数据探查页面,展开“团队私有数据库”。双击目标表“behavior_events”,在右侧页面点击“查询”,可查看数据库表数据。

2.3 数据分析方向确定

2.3.1 创建进程统计表

新建转换工作流,并命名为“创建进程统计表”,在该工作流中拖拽“执行一个SQL脚本”组件.

配置组件,在组件中填写SQL脚本,选择目标数据库连接“团队私有数据库”。完成后运行转换流。

点击“元数据”,双击“团队私有数据库”,勾选“使用结果流”。点击“确认”。然后运行转换流。

2.3.2 统计进程用户规模

新建转换流“统计进程用户规模”,拖拽“表输入”组件到画布中,数据库连接选择“团队私有数据库”,并获取 behavior_events 得所有SQL查询语句。

拖拽“字段选择”组件到画布中,并创建“表输入”组件到“字段选择”组件的连线,双击“字段选择”组件,点击“移除”,然后再字段名称下方空白处右键点击“获取字段”。删除user_id、process_name两个字段。点击“确认”。

拖拽“替换NULL值”组件到画布中,并创建“字段选择”组件到“替换NULL值”组件的连线。双击“替换NULL值”组件,勾选“选择字段”,在下方字段表格中插入一行,并输入字段为process_name,值替换为未知,是否为空为否。点击“确认”。

拖拽“排序记录”组件到画布中,创建“替换NULL值”组件到“排序记录”组件的连线。双击“替换NULL值”组件,将数据按照“process_name”字段升序排序。点击“确认”。

拖拽“分组”组件到画布中,创建“排序记录”组件到“分组”组件的连线。双击“分组”组件,在分组字段空白处获取字段后,仅保留“process_name”。在聚合表格空白处右键点击“插入”,双击插入的空白行,名称输入“user_count”,subject选择“user_id”,类型选择“个数”,最后点击“确认”。

拖拽“表输出”组件,创建“分组”组件到“表输出”组件的连线。双击“表输出”组件,选择“团队私有数据库”连接,勾选“裁剪表”,勾选“指定数据库字段”。点击“数据库字段”,在数据库字段tab页,右键选择“获取字段”。点击“确认”。

点击三角形图标,运行转换流。

2.3.3 观察数据确定分析方向

进入助睿BI首页,点击“数据集”菜单,在数据集页面点击“+”-“新建数据集”。数据集名称和备注信息都输入“进程用户数据统计”,点击“确认”。

右上角数据源选择进程统计表 program_stats 所在的“商业数据分析” - “cs_group_9”。将 program_stats 拖拽至画布中,将字段备注修改为中文,修改完成后点击“保存”,保存并发布数据集。

进入工作表页面后,点击“+” - “新建工作表”。

输入工作表名称和备注信息后点击“确认”。

数据集选择刚刚创建的数据集“进程用户数据统计”,图表类型选择“水平条图”。

将字段“program_name”拖拽至Y轴,“user_count”拖拽至X轴,并将“user_count”按照降序排序。

2.4 分析方案设计与数据确定

创建转换流“创建浏览器的用户数总使用时长统计表”,拖拽“执行一个SQL脚本”组件到画布中。

配置组件,在组件中填写SQL脚本,选择目标数据库连接“团队私有数据库”。完成后运行转换流。

创建“每个浏览器按小时统计活跃用户数统计表”,拖拽“执行一个SQL脚本”组件到画布中。

配置组件,在组件中填写SQL脚本,选择目标数据库连接“团队私有数据库”。完成后运行转换流。

2.5 数据清洗、聚合与关联加工

新建转换流“互联网用户行为日志数据清洗抽取”。

2.5.1 表输入:读取行为日志数据

拖入“表输入”组件到画布中。

连接线上公共 数据源,获取 behavior_events 的所有SQL查询语句。点击“确认”。

2.5.2 字段选择:删除冗余字段

拖拽“字段选择”组件到画布中,创建“表输入”组件到“字段选择”组件的连线。

双击“字段选择”组件,点击“移除”tab选项,在字段名称下方空白处右键点击“获取字段”。选中 session_id, user_id, session_start_time, process_name, url, event_seconds 后删除选中的行,保留下来的字段就是要移除的字段,点击“确认”。

2.5.3 过滤记录:筛选进程为主要浏览器的数据

拖拽“过滤记录”组件到画布中,创建“字段选择”组件到“过滤记录”组件的连线。

拖拽“排序记录”组件到画布中,创建“过滤记录”组件到、“排序记录”组件的连线,连接线类型选择“True输出”。再拖一个“空操作 (什么也不做)”组件到画布中,创建“过滤记录”组件到“空操作 (什么也不做)”组件的连线,连接线类型选择“False输出”。

双击“过滤记录”组件,发送匹配的结果给“排序记录”,发送不匹配的结果给“空操作 (什么也不做)”。配置过滤条件。点击“确认”。

2.5.4 计算停留时长

双击“排序记录”组件,按 session_id 和 event_seconds 升序排列。

拖拽“分析查询”组件到画布中,创建“排序记录”组件到“分析查询”组件的连线。

双击“分析查询”组件,分组字段为“session_id”,新增加的字段“next_event_seconds”,要取值的字段为“event_seconds”,类型“前第N行”,N为“1”。点击“确认”。

拖拽“计算器”组件到画布中,创建“分析查询”组件到“计算器”组件的连线。

双击“计算器”组件,插入新字段行,新字段输入“duration_sec”,计算公式选择“A - B”,字段A选择“next_event_seconds”,字段B选择“event_seconds”,值类型为“Integer”。

2.5.5 字段选择:保留必要字段

拖拽“字段选择”组件到画布中,创建“计算器”组件到“字段选择1”组件的连线。

双击“字段选择1”组件,点击“移除”,删去多余字段。

2.5.6 过滤记录:筛选停留时长>0的数据

使用“过滤记录”组件,过滤掉 duration_sec <= 0 的记录。

2.5.7 剪切字符串:提取日期

拖拽剪切字符串组件到画布中,创建过滤记录 1组件到拖拽剪切字符串组件的连线,连接线类型选择“Trur输出”。配置组件。

2.5.8 字段选择:设置日期格式

拖拽字段选择组件到画布中,创建剪切字符串组件到字符选择组件的连线。配置组件。

2.5.9 计算器:提取小时

拖拽计算器组件到画布中,创建字符选择组件到计算器组件的连线。配置组件。

2.5.10 生成用户-日-浏览器-小时明细

拖拽排序记录组件到画布中,创建“计算器 1”组件到“排序记录 1”组件的连线。配置组件。

拖拽分组组件,创建“排序记录 1”组件到分组组件的连线。配置组件。

2.5.11 分支A:生成市场格局表

拖拽分组组件到画布中,创建“分组”组件到“分组 1”组件的连线。配置组件。

拖拽“表输出”组件到画布中,创建“分组 1”组件到“表输出 组件的连线”。配置组件。

2.5.12 分支B:生成时段统计表

拖拽“排序记录”组件到画布中,创建“分组”组件到“排序记录 2”组件的连线,数据传输模式选择复制发送。配置组件。

拖拽分组组件到画布中,创建“排序记录 2”组件到“分组 2”组件的连线。配置组件。

拖拽“表输出”组件到画布中,创建“分组 2”组件到“表输出 1组件的连线”。配置组件。

2.5.13 执行转换流

点击三角形图标执行转换流。

2.5.14 查看结果

点击“元数据”,右键团队私有数据,并点击“加载元数据”。

点击“数据探查”,点击 browser_coverage、browser_hourly 两个数据表,可以查询数据情况是否符合预期。

实验结果

browser_coverage表展示。

browser_hourly表展示

问题与解决

问题一:数据流画布内容丢失

解决方法:实验过程中,回到“统计进程用户规模”数据流时,发现画布中的内容没了,重新构建该数据流,后面回来点开发现画布内容还是丢失。在验证了结果后发现只要运行过该转换流,结果是保存的且是正确的,于是可以忽略该画布内容的丢失。

实验总结

本次基于助睿数智平台完成浏览器市场与用户画像数据加工实验,成功实现半结构化日志到标准结构化数据的转换与多维度分析。实验中,我掌握了日志批量采集、Java 代码解析、字段筛选规整等 ETL 核心操作,将原始日志落地为标准行为数据表。通过数据清洗、空值替换、时长计算等步骤,完成有效数据筛选与维度衍生,构建用户 - 日 - 浏览器 - 小时明细数据集。

依托分组聚合与分流处理,生成浏览器市场格局表与时段活跃统计表,清晰呈现各浏览器用户规模、使用时长及小时级活跃分布。实验过程中遇到数据流画布内容丢失问题,经验证结果数据正常存储,不影响分析结论。

本次实验熟练运用助睿平台 ETL 与 BI 可视化功能,深化了对数据加工流程与用户行为分析逻辑的理解,提升了日志解析、数据聚合与跨表关联的实操能力。

http://www.jsqmd.com/news/927276/

相关文章:

  • 2026年口碑好的基地/绣球基地/亚麻基地/三角梅养殖基地精选推荐榜 - 品牌宣传支持者
  • 2026年热门的岩棉净化板/甘肃净化板厂家精选合集 - 品牌宣传支持者
  • 保姆级教程:用Python脚本将OPIXray/HIXray安检X光数据集转成YOLO格式(附完整代码)
  • 从‘刻舟求剑’到‘乒乓切换’:图解STM32H7中DMA双缓存与Cache的协同工作
  • 2026年评价高的庐阳区窗帘/合肥窗帘/包河区窗帘/新站区窗帘长期合作厂家推荐 - 品牌宣传支持者
  • 广度优先搜索 (BFS)
  • 第 5 周——诗词创作模块后端接口对接
  • 2026年比较好的梁山水处理乳品设备/梁山乳品设备/离心机乳品设备/均质机乳品设备精选推荐公司 - 行业平台推荐
  • AI时代密码安全新策略:从随机密码到密码管理器的全面防御
  • 2026年质量好的共挤膜气泡膜卷/彩色气泡膜卷可靠供应商推荐 - 行业平台推荐
  • 在WSL2的Ubuntu 22.04上,用Intel OneAPI 2024编译VASP 6.3.2的保姆级教程
  • 别再只用Aircrack了!横向评测Kismet与airodump-ng:无线网络扫描工具到底怎么选?
  • 2026年知名的水表箱/SMC水表箱/防冻水表箱优质厂家汇总推荐 - 行业平台推荐
  • 用STM32F103和继电器DIY智能家居:低成本改造台灯与风扇的保姆级教程
  • 从开源哲学到AI伦理:模块化、透明性与协作如何重塑技术未来
  • 2026年义乌本地快递气泡袋/气泡袋/气泡袋定制长期合作厂家推荐 - 行业平台推荐
  • Go 并发模式深度解析:Fan-out/Fan-in 高效处理大规模数据流
  • GD32F470驱动WS2812B灯带:用SPI+DMA实现“零”CPU占用的呼吸灯效果(附完整代码)
  • 无人机避障规划实战:如何用ESDF地图让Fast-Planner飞得更安全?
  • 2026年比较好的三角梅苗木基地/三角梅养殖基地/三角梅种植基地诚信商家榜 - 品牌宣传支持者
  • 2026年评价高的高温衬氟磁力泵/磁力泵品牌厂家推荐 - 品牌宣传支持者
  • mbedtls AES加密的PKCS#7填充详解:为什么你的解密结果总差几个字节?
  • 构建个人增强系统:从可穿戴设备到生物反馈的实践指南
  • [开源] DRG边界病例错分识别与病案首页整改建议系统:面向医院信息科、医保办与病案室的自动化质控工具
  • CRAFT框架:大模型驱动的多机器人协同训练技术解析
  • 2026年江浙沪气泡膜卷/共挤膜气泡膜卷/彩色气泡膜卷/黑色气泡膜卷可靠供应商推荐 - 行业平台推荐
  • 2026年热门的苏州AI算力机房/弱电算力机房热选公司推荐 - 品牌宣传支持者
  • 保姆级教程:用YOLOv8n和BotSORT搞定足球比赛视频的球员与足球追踪(附完整Python源码)
  • 爆火的三个GitHub项目,真香~
  • 2026年知名的浙江机房建设方案/机房建设施工方案榜单优选公司 - 行业平台推荐