IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> 用户行为采集平台 -> 正文阅读

[大数据]用户行为采集平台

数据仓库概念

数据仓库(Data Warehouse )是为企业所有决策制定过程,提供所有系统数据的战略集合

通过对数据仓库中数据的分析,可以帮助企业,改进业务、控制成本、提高产品质量等。

数据仓库,并不是数据的最终目的地,而是为数据最终的目的地做好准备。

这些准备包括对数据的:

  • 清洗
  • 转义
  • 分类
  • 重组
  • 合并
  • 拆分
  • 统计

在这里插入图片描述

项目需求及架构设计

项目需求分析

项目需求 :

  • 用户行为数据采集平台搭建
  • 业务数据采集平台搭建
  • 数据仓库维度建模
  • 分析,设备、会员、商品、地区、活动等电商核心主题,统计的报表指标近100个
  • 采用即席查询工具,随时进行指标分析
  • 对集群性能进行监控,发生异常需要报警
  • 元数据管理
  • 质量监控

项目框架

技术选型

数据采集传输:FlumeDataX , Maxwell , Kafka , Sqoop

数据存储:MySqlHDFSHBaseRedis , MongoDB

数据计算:HiveSparkFlink , Tez , Strom

数据查询:PrestoKylin,Impala , DataX

数据可视化:Superset , QuickBI , DataV

任务调度:DolphinScheduler、Azkaban、Oozie

集群监控:Zabbix

元数据管理:Atlas

系统数据流程设计

在这里插入图片描述

业务交互数据:业务流程中产生的登录、订单、用户、商品、支付等相关的数据,通常存储在 DB 中,如 : Mysql、Oracle

埋点用户行为数据 : 用户在使用产品过程中 ,与客户端产品交互程中产生的数据 , 如 : 页面浏览、点击、停留、评论、点赞、收藏

框架版本选型

Apache:运维麻烦,组件间兼容性需要自己调研。(一般大厂使用,技术实力雄厚,有专业的运维人员)(建议使用)

CDH::国内使用最多的版本,但CM不开源,今年开始要收费,一个节点1万美金

HDP:开源,可以进行二次开发,但是没有CDH稳定,国内使用较少

产品版本
Java1.8
Hadoop3.1.3
Hive3.1.2
Flume1.9.0
Zookeeper3.5.7
Kafka2.4.1
DataX3.0
Maxwell1.29.2

框架选型尽量不要选择最新的框架 , 选择最新框架半年前左右的稳定版

服务器选型

物理机:

  • 以128G内存,20核物理CPU,40线程,8THDD和2TSSD硬盘,戴尔品牌单台报价4W出头。一般物理机寿命5年左右
  • 需要有专业的运维人员,平均一个月1万。电费也是不少的开销

云主机:

  • 以阿里云为例,差不多相同配置,每年5W,主要磁盘贵
  • 很多运维工作都由阿里云完成,运维相对较轻松

企业选择 :

  • 金融有钱公司和阿里没有直接冲突的公司选择阿里云
  • 中小公司、为了融资上市,选择阿里云,拉倒融资后买物理机
  • 有长期打算,资金比较足,选择物理机

集群资源规划设计

(假设:每台服务器 8T 磁盘,128G 内存)

  • 每天日活跃用户 100 万,每人一天平均 100 条:100万 * 100条 = 1亿条
  • 每条日志 1K 左右,每天 1 亿条:100000000 / 1024 / 1024 = 约100G
  • 半年内不扩容服务器来算:100G * 180天 = 约18T
  • 保存 3 副本:18T * 3 = 54T
  • 预留20% 30%Buf = 54T / 0.7 = 77T

约 8T * 10 台服务器

集群服务器规划 :

服务名称子服务服务器 cpucode101服务器 cpucode102服务器 cpucode103
HDFSNameNode
DataNode
SecondaryNameNode
YarnNodeManager
Resourcemanager
ZookeeperZookeeper Server
Flume(采集日志)Flume
KafkaKafka
Flume(消费Kafka)Flume
HiveHive
MySQLMySQL
DataXDataX
MaxwellMaxwell
PrestoCoordinator
Worker
DolphinSchedulerMasterServer
WorkerServer
DruidDruid
Kylin
HbaseHMaster
HRegionServer
Superset
Atlas
SolrJar

用户行为日志

用户行为日志概述

用户行为日志的内容 : 用户的各项行为信息以及行为所处的环境信息

收集信息的目的 : 优化产品和为各项分析统计指标提供数据支撑

收集这些信息的手段 : 埋点

埋点方式 :

  • 有代码埋点(前端/后端)
  • 可视化埋点
  • 全埋点

代码埋点 : 通过调用埋点SDK函数,在需要埋点的业务逻辑功能位置调用接口,上报埋点数据。如 : 我们对页面中的某个按钮埋点后,当这个按钮被点击时,可以在这个按钮对应的 OnClick 函数里面调用SDK提供的数据发送接口,来发送数据

可视化埋点 : 只需要研发人员集成采集 SDK,不需要写埋点代码,业务人员就可以通过访问分析平台的“圈选”功能,来“圈”出需要对用户行为进行捕捉的控件,并对该事件进行命名。圈选完毕后,这些配置会同步到各个用户的终端上,由采集 SDK 按照圈选的配置自动进行用户行为数据的采集和发送

全埋点 : 通过在产品中嵌入SDK,前端自动采集页面上的全部用户行为事件,上报埋点数据,相当于做了一个统一的埋点。然后再通过界面配置哪些数据需要在系统里面进行分析

用户行为日志内容

收集和分析的用户行为信息 :

  • 页面浏览记录
  • 动作记录
  • 曝光记录
  • 启动记录
  • 错误记录

页面浏览记录

页面浏览记录 : 记录访客对页面的浏览行为

浏览行为的环境信息 :

  • 用户信息
  • 时间信息
  • 地理位置信息
  • 设备信息
  • 应用信息
  • 渠道信息
  • 页面信息
用户信息包括用户ID、设备ID
时间信息用户跳入页面的时间
地理位置信息用户浏览页面时所处的地理位置
设备信息包括设备品牌、设备型号、设备系统
应用信息指用户访问的应用信息,例如应用版本
渠道信息指应用的下载渠道
页面信息用户浏览的页面相关信息,包括页面ID,页面对象

动作记录

动作记录 : 记录的是用户的业务操作行为

业务操作行为的环境信息 :

  • 用户信息
  • 时间信息
  • 地理位置信息
  • 设备信息
  • 应用信息
  • 渠道信息
  • 动作目标对象信息
用户信息包括用户ID、设备ID
时间信息动作时间
地理位置信息动作发生时所处的地理位置
设备信息设备品牌、设备型号、设备系统
应用信息用户访问的应用信息,例如应用版本
渠道信息应用的下载渠道
动作目标信息动作目标对象相关信息,包括对象类型,对象ID

曝光记录

启动记录

错误记录

错误记录 : 记录用户在使用应用过程中的报错行为

报错行为的环境信息 :

  • 用户信息
  • 时间信息
  • 地理位置信息
  • 设备信息
  • 应用信息
  • 渠道信息
  • 可能与报错相关的页面信息
  • 动作信息
  • 曝光信息
  • 动作信息

用户行为日志格式

日志结构分为两类 :

  • 页面日志
  • 启动日志

页面日志

启动日志

模拟生成用户行为日志

数据采集模块

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-02-14 21:14:25  更:2022-02-14 21:14:54 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 13:27:40-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码