网站流量日志项目Day01
项目背景
除了政府和公益类网站之外,大多数网站的目的都是为了产生货币收入,说白了就是赚钱。 要创建出用户需要的网站就必须进行网站分析,通过分析,找出用户实际需求,构建出符合用户需求的网站。
网站分析意义
网站分析,可以帮助网站管理员、运营人员、推广人员等实时获取网站流量信息,并从流量来源、网站内容、网站访客特性等多方面提供网站分析的数据依据。从而帮助提高网站流量,提升网站用户体验,让访客更多的沉淀下来变成会员或客户,通过更少的投入获取最大化的收入。
三种角度看待网站分析
网站的营销角度
网站分析是网站的眼睛。 是从网站的营销角度看到的网站分析。在这部分中,网站分析的主要对象是访问者,访问者在网站中的行为以及不同流量之间的关系 。
产品和架构的角度
网站分析是整个网站的神经系统。这是从产品和架构的角度看到的网站分析。在这部分中,网站分析的主要对象是网站的逻辑和结构,网站的导航结构是否合理,注册购买流程的逻辑是否顺畅
投资回报率(ROI)的角度
网站分析是网站的大脑, 在这部门中, 网站分析的主要分析对象是投资回报率(ROI)。也就是说在现有的情况下,如何合理的分配预算和资源以完成网站的目标 。
终极意义:—>改善网站的运行—>获取更高的ROI—>赚更多的钱
如何进行网站分析
网站分析的整体过程是一个金字塔,其包含三大分析内容(可以继续细分):
- 流量分析
- 内容分析
- 转化分析
我们的目标就是取得更高的ROI
流量分析
质量分析
流量对于每个网站来说都是很重要,但流量并不是越多越好,应该更加看重流量的质量,换句话来说就是流量可以为我们带来多少收入 。
X 轴代表量,指网站获得的访问量。 Y 轴代表质,指可以促进网站目标的事件次数(比如商品浏览、注册、购买等行为)。圆圈大小表示获得流量的成本。
- 第一象限: 质高量高。这是网站的核心流量,对于这部分流量保持即可。建议降低获取流量的成本。
- 第二象限: 质高量低。 这部分是网站的忠诚用户,有很高的质,建议提高量。
- 第三象限: 量可以质较低,并且获取量的成本比较高。
- 第四象限: 量高质低。这部分需要提高质量。
BD 流量是指商务拓展流量。一般指的是互联网经过运营或者竞价排名等方式,从外部拉来的流量。比如在百度上花钱来竞价排名,产生的流量就是 BD 流量的一部分。
多维度细分
细分是指通过不同维度对指标进行分割,查看同一个指标在不同维度下的表现,进而找出有问题的那部分指标,对这部分指标进行优化。
指标是访问量, 就是我们常说的流量。 在来源维度、媒介维度、时间维度、位置维度等维度下,我们可以对访问量进行单独或者重叠的多维度细分。
内容分析
对于所有网站来说,页面都可以被划分为三个类别:
- 导航页
- 功能页
- 内容页
首页和列表页都是典型的导航页; 站内搜索页面、注册表单页面和购物车页面都是典型的功能页, 而产品详情页、新闻和文章页都是典型的内容页。 **导航页的目的是引导访问者找到信息, 功能页的目的是帮助访问者完成特定任务, 内容页的目的是向访问者展示信息并帮助访问者进行决策 **
比如从内容导航分析中,以下两类行为就是网站运营者不希望看到的行为:
第一个问题:访问者从导航类页面(首页) 进入, 还没有看到内容类页面(详情页) 之前就从导航类页面(列表页) 离开网站。 在这次访问中,访问者并没有完成任务,导航类页面也没有将访问者带入到内容类页面(详情页)中。因此,需要分析导航类页面(列表页) 造成访问者中途离开的原因。 第二个问题:访问者从导航类页面(首页或列表页)进入网站, 从内容类页面(详情页) 又返回到导航类页面(首页)。看似访问者在这次访问中完成了任务(如果浏览内容页就是这个网站的最终目标的话),但其实访问者返回首页是在开始一次新的导航或任务。 说明需要分析内容页的最初设计,并考虑中内容页提供交叉的信息推荐 。
转化分析(漏斗分析)
转化,指网站业务流程中的一个封闭渠道,引导用户按照流程最终实现业务目标(比如商品成交); 在这个渠道中,我们希望访问者一路向前,不要回头也不要离开,直到完成转化目标。
漏斗模型则是指进入渠道的用户在各环节递进过程中逐渐流失的形象描述。
对于转化渠道,主要进行两部分的分析: 访问者的流失和迷失。
转化中的阻力的流失
转化的阻力是造成访问者流失的主要原因之一。 这里的阻力包括: 错误的设计、 错误的引导
错误的设计包括访问者在转化过程中找不到下一步操作的按钮,无法确认订单信息,或无法完成支付等。
错误的引导包括在支付过程中提供很多离开的渠道链接, 如不恰当的商品或者活动推荐、 对支付环节中专业名称的解释、 帮助信息等内容。
造成流失的原因很多,如: 不恰当的商品或活动推荐 对支付环节中专业名词的解释、帮助信息等内容不当
访问者的迷失
造成迷失的主要原因是转化流量设计不合理,访问者在特定阶段得不到需要的信息,并且不能根据现有的信息作出决策 ,比如在线购买演唱会门票,直到支付也没看到在线选座的提示,这时候就很可能会产生迷失,返回查看 。
**总之,网站数据分析是一门内容非常丰富的学科,本课程中主要关注网站流量分析过程中的技术运用,更多关于网站数据分析的业务知识可学习文档首页推荐的资料。 **
整体技术流程及架构
数据处理流程
网站流量日志数据分析是一个纯粹的数据分析项目,其整体流程基本上就是依据数据的处理流转流程进行。 通俗可以概括为:数据从哪里来和数据到哪里去,可以分为以下几个大的步骤 :
数据采集
数据采集概念,目前行业会有两种解释:
- 数据从无到有产生的过程(服务器打印的 log、自定义采集的日志等)叫做数据采集;
- 通过使用 Flume 等工具把数据采集搬运到指定位置的这个过程叫做数据采集。
数据预处理
数据预处理( data preprocessing)是指在正式处理以前对数据进行的一些处理。 现实世界中数据大体上都是不完整,不一致的脏数据,无法直接进行数据分析,或者说不利于分析。 为了提高数据分析的质量和便捷性产生了数据预处理技术。
数据预处理有多种方法:数据清理,数据集成,数据变换等。这些数据处理技术在正式数据分析之前使用,大大提高了后续数据分析的质量与便捷,降低实际分析所需要的时间。
技术上原则来说,任何可以接受数据经过处理输出数据的语言技术都可以用来进行数据预处理。比如 java、Python、 shell 等。
本项目中通过 MapReduce 程序对采集到的原始日志数据进行预处理,比如 数据清洗, 日期格式整理,滤除不合法数据等,并且梳理成点击流模型数据。
使用 MapReduce 的好处在于: 一是 java 语言熟悉度高, 有很多开源的工具 库便于数据处理, 二是 MR 可以进行分布式的计算, 并发处理效率高。
数据入库
预处理完的结构化数据通常会导入到 Hive 数据仓库中,建立相应的库和表与之映射关联。这样后续就可以使用 Hive SQL 针对数据进行分析。
因此这里所说的入库是把数据加进面向分析的数据仓库,而不是数据库。因项目中数据格式比较清晰简明,可以直接 load 进入数据仓库 。
数据分析
本阶段是项目的核心内容,即根据需求使用 Hive SQL 分析语句,得出指标各种统计结果。
数据可视化
将分析所得数据结果进行数据可视化,一般通过图表进行展示。数据可视化可以帮你更容易的解释趋势和统计数据
系统的架构
相对于传统的 BI 数据处理,流程几乎差不多,但是因为是处理大数据, 所以流程中各环节所使用的技术则跟传统 BI 完全不同 :
- 数据采集: 页面埋点 JavaScript 采集; 开源框架 Apache Flume
- 数据预处理: Hadoop MapReduce 程序
- 数据仓库技术:基于 hadoop 的数据仓库 Hive
- 数据导出:基于 hadoop 的 sqoop 数据导入导出工具
- 数据可视化:定制开发 web 程序(echarts)
- 整个过程的流程调度: hadoop 生态圈中的 azkaban 工具