4、Web日志数据库 4.1 Web日志数据库介绍 Web日志数据仓库是基于Web日志数据库。根据分析需求,将数据库分为5个表,图2为其ER图,各表功能分别为:(1)IDTbl存储解析后日志的各个属性的 ID号;(2)UserTbl存储访问者的基本信息;(3)PathTbl存储访问路径的相关信息;(4)TimeTbl存储访问时间的相关信息;(5)ProtocolTbl:存储日志其它信息;
4.2 Web日志预处理 在将原始Web日志导入关系数据库之前必须进行清理、转换,计算一些必要的聚集信息。日志数据有其特殊性,它是一种半结构化的数据,因此预处理过程有其特殊性。本文在构建Web日志数据库时通过数据清洗、用户识别和会话识别这几个步骤。 4.2.1 数据清洗 Web日志的清洗工作很多文献都有讨论。当用户请求一个网页时,与这个网页有关的图片、音频等信息会自动下载,并记录在日志中。这些文件对于日志的分析是无用的,所以可以通过检查cs_uri_stem的后缀删除认为不相关的数据。同时无效记录还包括请求失败记录。本文在进行数据清洗时具体过程如图3所示:
4.2.2 用户识别 用户识别是将用户和请求的页面相关联的过程。由于用户机器中缓存、防火墙、代理服务器的使用,使Web日志没有精确记录用户的浏览行为。因此从净化日志中识别用户工作相对比较复杂。主要的用户识别方法主要有三种,分别为基于cookie的技术、基于IP地址的用户识别以及基于网络拓扑结构的路径分析。方法一通过在Web日志文件中添加更多的附加信息如用户机器名、内部IP名来标示用户,从而能识别通过同一代理服务器上网的不同用户。方法二是指不同的IP地址代表不同的用户。方法三要求根据网络拓朴结构分析Web日志文件中的用户请求,构造用户浏览网页的路径,通过一些启发式规则来识别用户。由于本文用到的日志属性信息较多,包括浏览器和操作系统属性,所以系统采用基于IP地址和浏览器的方法进行用户识别,即不同的IP地址和浏览器类型代表不同的用户,并在数据库的表UserTbl以及表IDTbl中添加一个域userID,用于存储进行识别后的用户标识。具体的过程如图4所示:
4.2.3 会话识别 会话是指用户在访问网站期间从进入网站到离开网站所进行的一系列活动。要构造一个会话就是将每个用户的活动日志按照某种方法映射到会话中的过程。识别会话的方法主要有两种:基于时间的启发式方法和基于引用的启发式方法。前者利用会话的时间特性来构造会话候选集合;后者根据用户浏览特性和网页间链接关系确定用户会话集。 本文采用基于时间的启发式方法进行会话识别,即同一用户依次发出相邻的页面请求之间的时间间隔如不超过时间阈值,那么这两个页面请求属于同一个会话将时间阀值设定为20分钟。在数据库表中添加一个域sessionID,用于存储进行识别后的会话标识。进行会话识别的具体流程如图5所示。
|
|