网站数据分析软件的设计与实现
2010-08-15杜晓春
杜晓春
西安欧亚学院信息工程学院,陕西西安 710065
网站数据分析软件的主要功能是在获得网站访问量等重要数据以后,对有关数据进行统计、分析,以便了解网站当前的访问效果和访问用户行为,并发现当前网络营销活动中存在的问题,为进一步修正或重新制定网络营销策略提供依据。目前国内外有很多提供类似功能的软件,其中很多都是免费的,功能单一,针对性不强,安全性也得不到保证。所以迫切需要一种专业而又全面的网站数据统计分析工具,它能够满足不同用户的不同需求,对网站数据进行有针对性的收集和整理,并在此基础上对数据进行深入的分析和挖掘,将用户所需要的数据以直观的形式实时的展现在用户面前。
本文设计实现的系统除了要实现上述基本功能外,还设计针对不同的用户群体,提供不同的解决方案,每种解决方案中有不同的侧重点以适应不同个人和企业的需求。初步设想系统能提供4种不同的解决方案:
1)个人解决方案
为个人网站提供流量监测、网站导航、访问来源等基本的网站流量监测统计数据,让个人用户能够简单地监测访问者在网站中的网络行为。解决访问者在什么时间什么地址通过何种路径访问网站具体某个页面等问题的统计,便于用户从互联网上找到那些对此网站和设备感兴趣的用户,此方案设计适用于页面点击量小于5万的网站。
2)企业解决方案
为企业网站和个人网站提供流量监测、网站导航、访问来源等全面的网站流量监测统计数据,在免费的个人解决方案基础上丰富了各大统计功能,让用户能够全面的监测访问者在此网站中的网络行为,并对此网站本身的结构、用户体验以及转化情况给予足够的数据支持,此方案设计适用于页面点击量小于10万的网站。
3)标准企业解决方案
对网站的监控和统计更加全面,更加完善地分析和研究每一次访问,尤其是与访问路径和轨迹有关的访问轨迹数据。特别是要实现页面关注度功能:以页面为对象,不仅可以展示与页面有关的来源统计,而且可以标明该页面的点击热点以及访客转化情况等,可以帮助用户轻松地追踪和分析导航以外的访问者;从而提供一个真正详细的访问来源分析,以供决策支持,此方案设计适用于页面点击量小于500万的网站。
4)集团门户解决方案
专门为大型门户、行业网站提供完整的投资回报分析,内、外网监控等全方位功能的大型用户解决方案。能够同时监测多个网络节点,从而部分或全部确定和整合所指定的不同网站间的流向。使用户能够同时监测多个分开的网站并将访问者进行整合。也可以将一个大的网站分为若干个子网站以满足用户只需要其中部分数据的要求,此方案设计适用于页面点击量在500万以上的网站。
为实现较好的可伸缩性、友好性、可维护性,系统的体系结构可采用多层体系结构,后台数据库可采用MYSQL或PGSQL,前台开发工具可采用PHP,整个系统基于三层结构,数据库服务器,应用服务器,客户端。网络操作系统采用UNIX和Windows系列,应用服务器采用主流Apache2,前台全为B/S结构,运用Web2.0及网站重构的技术。数据操作不是直接的对数据库进行操作,而是通过平台内置的API进行操作。由于采用了通过平台内置的API操作数据的技术,一旦数据库结构发生变化则无法获得正确数据的情况就可以避免。可将系统的整体运作流程设计为以下两个步骤:首先,如果客户已经采用了本系统作为他的网站数据统计分析软件,那么当其他用户对客户的服务器提出访问网站请求并对客户网站进行访问时,本系统可以通过预先在客户网站安装的“标签”来获取相关访问信息;其次,本系统通过“标签”将访问者的相关信息传输到系统服务器。系统服务器对数据进行简单的筛选和整理,然后将数据插入到数据库中备用。这种标签技术的优点主要体现在以下几个方面:可以统计出所有的访问用户;访问统计结果不受用户端浏览器的Cache设置的影响;标签技术不会对客户的网页产生任何显示影响;处理单个页面的统计时间很少;模拟预先下载的图片非常小;由于标签处在网页的底部,所以它不会降低网页的下载显示速度。除此以外,这种标签技术还有很多优点,比如数据与操作更加安全可靠,防止通过拷贝盗版源代码,对客户的网站信息进行知识产权的保护;操作方便、统计精确;灵活简便,当客户的网站部署在几个服务器上,系统可以直接组合来自这些服务器的数据,当客户更换了服务器托管商或服务器地点,客户的统计数据将仍然有效,并且客户的历史数据也不会因此而丢失,客户在系统的持续技术升级中,不需要下载或安装任何补丁,所有操作将在服务器端完成;在标签的使用上,系统坚持简单性、统一性,换句话说,对于用户的每一个页面来说,标签代码都是一样的。
综上所述,整个系统采用B/S模式,依照面向对象思想中的工厂模式,按照系统将要实现的功能模块建立对象类。比如,可以抽象一个类,这样,在绘制饼图、柱状体、折线图时,不必每一次都生成它们的对象,也不必为这些对象做准备,只要简单的调用这个类,当需要绘制饼图或柱状图时,这个类就会自动的为饼图或柱状图准备数据,生成饼图或柱状图的类,然后绘制图形。将系统的核心类图设计完毕后,根据核心类图进行编程,最终实现系统功能。
[1]Grady Booch著,冯博琴译.面向对象分析与设计.2版.北京:机械工业出版社,2003.
[2]Erich Gamma,Richard Helm,Ralph Johnson,等著,李英军,等译.设计模式:可复用面向对象软件的基础.北京:机械工业出版社,2004.