网站分析数据收集方式详解

回顾网站数据分析历史,从“您是第***位来访用户”到现在百家齐放的专业工具提供商,网站分析已经逐渐发展衍化成一门科学。但面对形态各异的分析数据,很多人仍然困惑于数据的来源,了解数据的收集原理,也许对你解决这些困惑有所帮助。

眼下网站分析数据主要有三种收集方式:Web日志JavaScript标记包嗅探器

1. Web日志

下图是Web日志收集数据过程的示意图。

从上图可以看出网站分析数据的收集从网站访问者输入URL向网站服务器发出http请求就开始了。网站服务器接收到请求后会在自己的Log文件中追加一条记录,记录内容包括:远程主机名(或者是IP地址)、登录名、登录全名、发请求的日期、发请求的时间、请求的详细(包括请求的方法、地址、协议)、请求返回的状态、请求文档的大小。随后网站服务器将页面返回到访问者的浏览器内得以展现。

一些专业的工具厂商会有专门的处理服务器对大量的Log数据进行处理,并将处理后的数据存放入自己的数据库中。网站经营人员通过访问分析报表系统查看网站的分析数据。也有一些中小网站主出于成本的考虑不会求助于专业的工具厂商,他们会借助简单的网站日志分析软件完成对Log数据的处理,当然处理后的数据会有一定的局限性。

(版权归数码林网站分析博客所有,欢迎转载,但转载请注明出处。)

2. JavaScript标记

下图是JavaScript标记收集数据过程的示意图。

上图所示JavaScript标记同Web日志收集数据一样,从网站访问者发出http请求开始。不同的是,JavaScript标记返回给访问者的网页代码中会包含一段特殊的JavaScript代码,当页面展示的同时这段代码也得以执行。这段代码会从访问者的Cookie中取得详细信息(访问时间、浏览器信息、工具厂商赋予当前访问者的userID等)并发送到工具商的数据收集服务器。数据收集服务器对收集到的数据处理后存入数据库中。网站经营人员通过访问分析报表系统查看这些数据。

JavaScript标记以其快捷性和精确性已经得到大多数工具厂商的青睐,已经发展成为当前最为流行的数据收集方式。

(版权归数码林网站分析博客所有,欢迎转载,但转载请注明出处。)

3. 包嗅探器

下图是包嗅探器收集数据过程的示意图。

上图可以看出网站访问者发出的请求到达网站服务器之前,会先经过包嗅探器,然后包嗅探器才会将请求发送到网站服务器。包嗅探器收集到的数据经过工具厂商的处理服务器后存入数据库。随后网站经营人员就可以通过分析报表系统看到这些数据。

(版权归数码林网站分析博客所有,欢迎转载,但转载请注明出处。)

4. 数据收集方式的优劣比较

没有一种数据收集方式是完美无缺的,不同数据收集方式也决定了各自的特性,了解不同收集方式的优劣所在,会对工具的选择也有一定的指导作用。

下表是三种数据收集方式的优劣比较详细:

  Web日志 JavaScript标记 包嗅探器
优点 ?比较容易获取数据源
?方便对历史数据再处理
?可以记录搜索引擎爬虫的访问记录
?记录文件下载状况
?数据收集灵活,可定制性强
?可以记录缓存、代理服务器访问
?对访问者行动追踪更为准确
?对跨域访问的监测比较方便
?取得实时数据比较方便
缺点 ?无法记录缓存、代理服务器访问
?无法捕获自定义的业务信息
?对访问者的定位过于模糊
?对跨域访问的监测比较麻烦
?用户端的JS设置会影响数据收集
?记录下载和重定向数据比较困难
?会增加网站的JS脚本负荷
?初期导入费用较高
?无法记录缓存、代理服务器访问
?对用户数据隐私有安全隐患

决定选择采用哪种数据收集方式之前,你需要先了解自己的需求。如果你不想自己网站的流量数据被任何第三方获取,那么Web日志无疑是你的最佳选择了。但想得到更贴近网站访问者行为的精确数据,还是需要采用JavaScript标记收集数据。这种数据收集方式不仅可以对缓存访问、代理访问正确记录,而且可以通过Cookie对独立访问者进行更为精确的定位。

当然也有一些网站为了获得多方面的数据而同时采取多种数据收集方式。例如采用JavaScript标记收集精确数据的同时,为了搜索引擎优化对Web日志中的搜索引擎爬虫记录也进行分析。也有已经采用包嗅探器收集数据,但为获取缓存访问而同时进行JavaScript标记。

采取何种数据收集方式也就很大程度决定了分析工具的选择,但仅仅从这一个方面考虑工具如何选择还是不够的,后面的内容会详细介绍在选择工具前,你都需要从工具提供商那里了解哪些技术参数来帮助你做出理智的判断。

(版权归数码林网站分析博客所有,欢迎转载,但转载请注明出处。)

时间: 2024-10-17 09:04:12

网站分析数据收集方式详解的相关文章

Android开发笔记之: 数据存储方式详解

无论是神马平台,神马开发环境,神马软件程序,数据都是核心.对于开发平台来讲,如果对数据的存储有良好的支持,那么对应用程序的开发将会有很大的促进作用.总体的来讲,数据存储方式有三种:一个是文件,一个是数据库,另一个则是网络.其中文件和数据库可能用的稍多一些,文件用起来较为方便,程序可以自己定义格式:数据库用起稍烦锁一些,但它有它的优点,比如在海量数据时性能优越,有查询功能,可以加密,可以加锁,可以跨应用,跨平台等等:网络,则用于比较重要的事情,比如科研,勘探,航空等实时采集到的数据需要马上通过网络

Linux用户态程序计时方式详解

前言 良好的计时器可帮助程序开发人员确定程序的性能瓶颈,或对不同算法进行性能比较.但要精确测量程序的运行时间并不容易,因为进程切换.中断.共享的多用户.网络流量.高速缓存访问及转移预测等因素都会对程序计时产生影响. 本文将不考虑这些影响因素(相关资料可参考<深入理解计算机系统>一书),而仅仅关注Linux系统中用户态程序执行时间的计算方式.除本文所述计时方式外,还可借助外部工具统计耗时,如<Linux调试分析诊断利器——strace>一文中介绍的strace. 本文示例代码的运行环

虚拟机的几种网络方式详解

虚拟机的几种网络方式详解本部分作为2部分进行讲解1.虚拟机常见的上网模式详细解析2.在使用虚拟机中常见的问题处理 先看问题1虚拟机常见的上网模式详细解析虚拟机就是利用真实机的环境用软件的方式模拟成类似真实机系统的一个软件,现在主流的有微软的虚拟机,有vmare,orcale virtualBOx(orcale  virtualBOx原名叫做Sun virtualBOx 前不久刚被orcale公司收购所以改名为orcale  virtualBOx)那么不管是那种虚拟机,在虚拟机软件都内置了几种虚拟

DNN7网站系统需求及部署指南详解

此安装指南适用于DNN6.x和DNN7.x在本地测试及主机的安装.最近QQ群里不少朋友问我关于DotNetNuke的安装和运行的问题. 为了让大家更清楚地了解DNN的安装方式,我在这里对DotNetNuke的系统需求,和在不同环境下的安装和运行方式做一个全面地介绍.个人经验来看,DNN7的运行内存最好保证有1G以上,否则会频繁的回收. 运行DotNetNuke (DNN)所需的环境: Web服务器: IIS5, IIS6, IIS7, Visual Studio内置Web服务器 服务器系统: W

数据传送指令详解

数据传送指令详解 前言 上一章我们说了汇编语言的基础,包括数据格式,寄存器以及操作数的标识方式,接下来我们就应该去认识一下hiU币按语言当红真难过的格各个指令了.这些指令大部署很简单,但是组合在一起却能模拟出我们程序当中香烟的任何效果,确实很神奇. 数据传送指令 数据传送指令的目的是我了将一个数据从一个位置复制到另一个位置.既然如此,那么数据传送至零就会包含一个源操作数和一个目的操作数,指令会将源操作数的值复制到目的操作数并覆盖. 数据传送指令一共可以分为5种,分别是mov,movs,movz,

android adb 的各种使用方式详解

这篇文章主要介绍在windows 程序中使用adb 的方法,不介绍adb 的命令. 1) 启动adb 进程,从管道获取输出. 这种方式的弊端有多少,我也不知道,反正就是各种问题吧.但是目前我问过很多朋友,他们都是这么做的,因为这种方法最简单.弊端我列举一下 1) 每次执行一个adb 命令都要启动一个adb 进程,速度太慢,好像就是很不爽 2)  偶尔发现进程管理器中有N 多个adb 进程,然后就卡了. 3)  从管道获取输出,在很多情况下会发现adb 卡死了,进程退不出来. 4)  曾经发现 a

Spring事务Transaction配置的五种注入方式详解

Spring事务Transaction配置的五种注入方式详解 前段时间对Spring的事务配置做了比较深入的研究,在此之间对Spring的事务配置虽说也配置过,但是一直没有一个清楚的认识.通过这次的学习发觉Spring的事务配置只要把思路理清,还是比较好掌握的. ??? 总结如下: ??? Spring配置文件中关于事务配置总是由三个组成部分,分别是DataSource.TransactionManager和代理机制这三部分,无论哪种配置方式,一般变化的只是代理机制这部分. ???DataSou

一篇非常经典的springMVC注解实现方式详解

今天公司让搭建个springMVC的注解框架,研究了好半天,网络搜罗了半天,好不容易找到篇,拿来分享下: 原文出处:http://www.itxxz.com/a/kuangjia/2014/0531/4.html 大家好,我是IT学习者的螃蟹,前两天写了一个spring MVC的注解实例,目前看来下载使用的人数已有不少,使用过程中也有不少人对其中的配置存有一些不解和疑问,在这里螃蟹就那个实例中的spring配置详细说明一下,算作是对spring注解模式的一次全方位解析.         在实例中

Android中的几种网络请求方式详解

http://blog.csdn.net/zuolongsnail/article/details/6373051 Android应用中使用AsyncHttpClient来异步网络数据 http://blog.csdn.net/sdvch/article/details/13615605 Android中的几种网络请求方式详解,布布扣,bubuko.com