交叉阐发的根本
这里不克不及不再说一下交叉阐发基于的底层根本数据模型,因为如果没有设计好底层的数据模型,上层的交叉阐发是很难实现的,或多维的交叉受到限制而使阐发存在局限性。
从手艺层面来看,交叉阐发基于多维模型,数据的维度越丰富,所能实现的交叉也越丰富和矫捷,通过各类交叉阐发能够加倍有效地发现问题;但相应的,如果要尽可能地丰富各维度的交叉阐发,对下层模型的要求也就越高。所以如何设计好数据的底层模型很是关头,仍是引用数据立方体与OLAP文中的那个数据立方看个简单的例子:
如果一张网站阐发的报表只包含以月度为单位的日期维和相应的指标,那么数据的存储就是每个月一条记实,但显然这种高度聚合的数据晦气于阐发,我们需要构建如上图的数据立方体来获得加倍细节的数据。用数据立方来拓展数据细节有两种标的目的,一类是纵深拓展,也就是基于一个维度的细分,比如将一个月细分到每一天,那么一条记实将会被拓展成30条;还有一种是横向的拓展,就是多个维度的交叉,就像上面立方中添加了产品维和地区维。这样存储的数据就从原本单一的时间维度扩大成了时间、产品和地区三个维度,也就是三维立方体所能展现的形式,当然维度可以继续扩大,四个五个直到N个,理论上都是可行的,这里只要以三个维度进行举例便可以。对数据存储而言,横向的拓展与纵深拓展的影响是一样的,记实数都是以倍乘的体例增长,假定这里产品维是产品年夜类,有20个产品年夜类,再加上32个省份或直辖市,那么颠末纵深和横向拓展之后,原先每月的1条记实就酿成了:
1 × 30 × 20 × 32 = 19200
而我们在构建多维模型的时候很多维度中包含的数据量绝对不像上面例举的那么小,想象一下网站的商品或页面的数量多是成百上千甚至不计其数的,那么一旦以倍乘的形式扩大之后,数据量就会一下子剧增。虽然丰富的多维立方能够给阐发带来便当,但也同时给数据的存储和查询带来的压力。
所以,加倍丰富和矫捷的阐发需求的实现基于加倍复杂的多维模型或数据立方,同时会带来更年夜的系统开消。谷歌 Analytics很好地权衡了矫捷的数据阐发与复杂数据模型之间的关系,这也是谷歌 Analytics强年夜功能的根基保障,GA的高级细分(Advanced Segments)和自定义Dashboard是其他同类免费网站阐发东西所无法对比的,这也正是为什么我们将GA划分到网站数据阐发东西,而其他的年夜部分只能算作网站数据统计东西的原因。而GA正是基于其构建的强年夜的底层数据模型和高效的数据计较和响应能力,使很多阐发功能可以取得扩大,其中很多就涉及交叉阐发,这里截图了其中的两个功能,Secondary Dimension和Pivot:
谷歌 Analytics新版本增加了很多使人心动的功能,Secondary dimension的功能从老版本取得了延续,上图在Content模块的Page报表中选择了流量来历作为第二维度,这样我们便可以查看每个页面的流量是从何而来,每个流量来历在该页面的数据表示,同时可能还可以发现一些有趣的现象,比如某些页面的流量根基都是一个来历带来的,比如我的博客的某些文章根基都是通过搜索引擎进来的,而别的一些文章根基通过直接流量带来。
在GA的各类报表中可以在右上角选择展现的形式,最后的一种就是Pivot,Pivot的形式对表格的表头进行了扩大,可以分条理放置别的的维度,如上图仍是使用了页面与流量来历的交叉,将Source维度放到了指标的上方。同时GA支持在两个维度的根本上最多选择两个怀抱Metric,我这里选择了Pageviews和Bounce Rate,来权衡每个页面中各类流量来历所带来的"量"和"质",同样对阐发很是有价值。
多维的交叉阐发我们在日常中潜移默化地常常会用到,交叉阐发对问题的排查和定位额外有效,所以我们需要想体例用更好的形式去展现数据,以便于更有利于进行交叉阐发,其实这里介绍的透视表的体例是最常常使用的,也是比较好用的,但这类体例太少,不知道年夜家有没有其他加倍有效的交叉阐发展现体例。