Flink项目系列1-项目介绍 一. 电商的用户行为 二. 项目主要模块 三. 数据源解析 四. 项目模块设计 参考:

一. 电商的用户行为

  电商平台中的用户行为频繁且较复杂,系统上线运行一段时间后,可以收集到大量的用户行为数据, 进而利用大数据技术进行深入挖掘和分析, 得到感兴趣的商 业指标并增强对风险的控制。

  电商用户行为数据多样,整体可以分为用户行为习惯数据和业务行为数据两大类。用户的行为习惯数据包括了用户的登录方式、上线的时间点及时长、点击和浏 览页面、页面停留时间以及页面跳转等等, 我们可以从中进行流量统计和热门商品 的统计,也可以深入挖掘用户的特征;这些数据往往可以从 web 服务器日志中直接 读取到。 而业务行为数据就是用户在电商平台中针对每个业务( 通常是某个具体商 品) 所作的操作, 我们一般会在业务系统中相应的位置埋点, 然后收集日志进行分 析 。业 务行为数据又可以简单分为两类 :一 类是能够明显地表现出用户兴趣的行为, 比如对商品的收藏、 喜欢、评分和评价,我们可以从中对数据进行深入分析,得到 用户画像,进而对用户给出个性化的推荐商品列表,这个过程往往会用到机器学习 相关的算法;另一类则是常规的业务操作, 但需要着重关注一些异常状况以做好风 控,比如登录和订单支付。

二. 项目主要模块

  基于对电商用户行为数据的基本分类 ,我们可以发现主要有以下三个分析方向:

  1. 热门统计 利用用户的点击浏览行为,进行流量统计、近期热门商品统计等。

  2. 偏好统计 利用用户的偏好行为,比如收藏、喜欢、评分等,进行用户画像分析,给出个 性化的商品推荐列表。

  3. 风险控制 利用用户的常规业务行为,比如登录、下单、支付等,分析数据,对异常情况 进行报警提示。 本项目限于数据,我们只实现热门统计和风险控制中的部分内容,将包括以下 五大模块:
    1)实时热门商品统计
    2)实时流量统计
    3)市场营销商业指标统计
    4)恶意登录
    5)监控和订单支付失效监控
    其中细分为以下 9 个具体指标:

  由于对实时性要求较高,我们会用 flink 作为数据处理的框架。在项目中,我们 将综合运用 flink 的各种 API,基于 EventTime 去处理基本的业务需求,并且灵活地 使用底层的 processFunction,基于状态编程和 CEP 去处理更加复杂的情形。

三. 数据源解析

  我们准备了一份淘宝用户行为数据集 ,保存 为 csv 文件 。本 数据集包含了淘宝上 某一天随机一百万用户的所有行为(包括点击、购买、 收藏、喜欢)。 数据集的每 一行表示一条用户行为,由用户 ID、商品 ID、商品类目 ID、 行为类型和时间戳组 成,并以逗号分隔。关于数据集中每一列的详细描述如下:


  另外 ,我 们还可以拿到 web 服务器的日志数据,这里以 apache 服务器的一份 log 为例,每一行日志记录了访问者的 IP、userId、访问时间、访问方法以及访问的 url, 具体描述如下:


  由于行为数据有限 ,在实时热门商品统计模块中 可以使用 UserBehavior 数据集, 而对于恶意登录监控和订单支付失效监控,我们只以示例数据来做演示。

四. 项目模块设计

4.1 数据源解析

用户行为数据:UserBehavior.csv
e.g. 543462, 1715, 1464116, pv, 1511658000

web 服务器日志:apache.log
e.g. 66.249.73.135 - - 17/05/2015:10:05:40 +0000 GET /blog/tags/ipv6

4.2 项目模块

参考:

  1. https://www.bilibili.com/video/BV1qy4y1q728
  2. https://ashiamd.github.io/docsify-notes/#/study/BigData/Flink/%E5%B0%9A%E7%A1%85%E8%B0%B7Flink%E5%85%A5%E9%97%A8%E5%88%B0%E5%AE%9E%E6%88%98-%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0?id=_143-%e9%a1%b9%e7%9b%ae%e6%a8%a1%e5%9d%97
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章