网站内容采集系统( 一种基于大数据的网站用户行为数据采集系统的研究)
优采云 发布时间: 2022-01-09 02:08网站内容采集系统(
一种基于大数据的网站用户行为数据采集系统的研究)
本实用新型涉及一种数据采集系统,尤其是一种基于大数据的网站用户行为数据采集系统。
背景技术:
目前在*敏*感*词*网站中,需要对登录和未登录用户的行为数据进行采集。网站运营商可以帮助改进网站的栏目结构,提升用户体验,进行商业用户行为分析、信息推送、广告投放等。
传统的网站User Behavior采集方案基本采用采集代码和采集handler在网站应用中的部署,并通过网站应用自己进行采集和用户行为数据的采集,将用户行为数据直接记录到网站数据库或者应用程序自身的日志文件中。这样的解决方案会带来三个问题:
(1)网站应用程序除了处理网站业务外,还需要承担其他工作。随着用户访问量的增加,服务器资源消耗非常大,网站应用会受到影响,明显减少,网站应用的失败率逐渐上升;
(2)网站应用的数据库服务需要承受高频的用户行为数据写入操作,数据库的数据存储容量在增加,而数据库的性能在逐渐下降。随着随着行为数据的日益增多,数据库服务器的运行风险也呈现上升趋势,服务器磁盘故障率也会非常高。
(3)当用户行为数据量变得海量时,传统的数据库查询已经无法应对海量数据的查询、分析和统计,统计会导致服务器崩溃和瘫痪。
另外,对于大型或特大型门户网站网站,大型和特大型门户网站网站的应用系统基本上是以分布式集群的方式部署在多台服务器上,网站的部署系统的核心是多节点、去中心化的应用,给采集用户行为数据带来了很大的麻烦。*敏*感*词*的用户行为数据和分散的数据文件存储成为制约因素。用户行为大数据分析的主要矛盾。
技术实施要素:
本实用新型提出了一种基于大数据的网站用户行为数据采集系统,包括接入终端、安装有网站代码插入的网站服务器、网络交换机,用户行为数据采集服务器,数据采集云存储,大数据存储HDFS,网站服务器,数据采集服务器,数据采集云存储NAS,大数据存储HDFS都与网络交换机网络连接有关;
网站服务器安装网站插件代码,用户行为数据采集服务器安装文件数据传输组件,数据采集云存储安装文件数据采集组件,大数据存储HDFS是数据存储,安装了支持存储的存储系统和用户行为数据数据库。
网站插入代码包括用户行为数据采集脚本文件和脚本代码;用户行为数据采集服务器包括采集用户行为数据采集脚本采集文件和脚本代码采集的用户行为组件,重组用户行为的数据转换组件将数据转化为指定规格的用户行为数据包,通过HTTP协议数据包发送组件将用户行为发送到用户行为采集服务器;文件数据传输组件包括将用户行为数据包转换为用户行为日志文件的数据转换组件和将用户行为日志文件发送至数据采集云存储的传输组件。数据采集云存储包括数据接收部分,数据存储部分,数据接收部分接收文件数据传输部分发送的用户行为日志文件,数据存储部分采集数据接收部分接收的用户行为日志文件。文件数据采集组件包括数据监控组件,监控不断增加的用户行为日志文件的数据采集云存储,并将日志文件中的数据实时传输至大数据存储数据传输组件;大数据存储HDFS包括数据存储、配套的Memory存储系统和用户行为数据数据库。文件数据采集组件包括数据监控组件,监控不断增加的用户行为日志文件的数据采集云存储,并将日志文件中的数据实时传输至大数据存储数据传输组件;大数据存储HDFS包括数据存储、配套的Memory存储系统和用户行为数据数据库。文件数据采集组件包括数据监控组件,监控不断增加的用户行为日志文件的数据采集云存储,并将日志文件中的数据实时传输至大数据存储数据传输组件;大数据存储HDFS包括数据存储、配套的Memory存储系统和用户行为数据数据库。
接入终端包括手机、PC、平板电脑。
有益效果:本发明基于大数据的网站用户行为数据采集系统采用分布式集群部署,用户行为数据采集与网站分离应用本身,有效降低了用户行为数据采集对网站应用性能和网站服务器性能资源的影响。与数据库存储网站用户行为采集数据的方式分离,分离用户行为数据对数据库服务器的依赖,有效解决海量数据的查询、分析、统计,网站服务器CPU、内存等资源消耗问题。
图纸说明
图1是网站用户行为数据采集基于大数据的系统架构图;
图2是网站用户行为数据采集基于大数据的体系结构*敏*感*词*。
详细说明
实施例1:如图1所示。1、一个基于大数据的网站用户行为数据采集系统,包括一个接入终端、一个带有网站插件代码安装的网站服务器、网络交换机、用户行为数据采集服务器、数据采集云存储、大数据存储HDFS,网站服务器、数据采集服务器、数据采集云存储NAS、大数据存储HDFS连接到网络交换网络;
如图2所示,网站服务器安装网站插件代码,用户行为数据采集服务器安装文件数据传输组件,数据采集云存储安装文件数据采集组件,大数据存储HDFS为数据存储,安装支持存储的存储系统和用户行为数据数据库。
网站插入代码包括用户行为数据采集脚本文件和脚本代码;用户行为数据采集服务器包括采集用户行为数据采集脚本采集文件和脚本代码采集的用户行为组件,重组用户行为的数据转换组件将数据转化为指定规格的用户行为数据包,通过HTTP协议数据包发送组件将用户行为发送到用户行为采集服务器;文件数据传输组件包括将用户行为数据包转换为用户行为日志文件的数据转换组件和将用户行为日志文件发送至数据采集云存储的传输组件。数据采集云存储包括数据接收部分,数据存储部分,数据接收部分接收文件数据传输部分发送的用户行为日志文件,数据存储部分采集数据接收部分接收的用户行为日志文件。文件数据采集组件包括数据监控组件,监控不断增加的用户行为日志文件的数据采集云存储,并将日志文件中的数据实时传输至大数据存储数据传输组件;大数据存储HDFS包括数据存储、配套的Memory存储系统和用户行为数据数据库。文件数据采集组件包括数据监控组件,监控不断增加的用户行为日志文件的数据采集云存储,并将日志文件中的数据实时传输至大数据存储数据传输组件;大数据存储HDFS包括数据存储、配套的Memory存储系统和用户行为数据数据库。文件数据采集组件包括数据监控组件,监控不断增加的用户行为日志文件的数据采集云存储,并将日志文件中的数据实时传输至大数据存储数据传输组件;大数据存储HDFS包括数据存储、配套的Memory存储系统和用户行为数据数据库。
基于大数据的网站用户行为数据采集系统的工作步骤包括:
(1)网站代码插入步骤由网站开发者在网站页面执行,插入用户行为数据采集脚本文件和脚本代码;
(2)采集用户行为数据的步骤,当用户访问网站页面时,用户行为数据采集脚本文件和脚本代码采集用户行为数据,并将数据重组为指定的规范.用户行为数据包,通过HTTP协议发送到用户行为采集服务器;
(3)用户行为数据包转换成用户行为日志文件的步骤,用户行为采集服务器接收网页发送的用户行为数据包,使用OpenResty组件进行数据转换数据包进入用户行为日志文件;
(4)发送用户行为日志文件到数据采集云存储的步骤,在用户行为采集服务器上部署Linux Shell脚本,定时发送用户行为日志文件到统一数据采集云存储;
(5)将不断增长的用户行为日志文件中的数据实时传输到大数据存储的步骤,使用监控数据工具对不断增长的用户行为日志文件的数据采集进行监控。云存储NAS,实时存储日志文件中的数据传输到大数据存储;
(6)大数据存储步骤,使用HDFS作为大数据存储,将所有用户行为数据存储在HDFS中。
进一步优选地,OpenResty组件为Lua和Nginx绑定的ngx_lua模块(Nginx+Lua);数据采集云存储为NAS云存储;监控数据工具是Flume。
进一步优选地,在将不断增加的用户行为日志文件中的数据实时传输到大数据存储的步骤中,监控数据工具用于监控云存储上新增的用户行为日志文件的数据采集情况。 NAS,并使用增量传输的数据。日志文件中的数据实时传输到大数据存储中。
进一步优选地,文件数据采集组件包括数据监控组件,用于监控数据采集云存储新增用户行为日志文件,并将日志文件中新增数据实时传输至大数据存储数据传输组件。
示例2:网站用户行为数据采集方案由六个功能组件组成:网站代码插入、用户行为数据采集服务器、文件数据传输组件、数据采集云存储、文件数据采集组件和大数据存储HDFS。
网站插件代码是一个javascript脚本文件和一段放置在网页上用于采集用户行为数据的javascript脚本代码;
用户行为数据采集服务器是采集网站代码插入脚本发送的用户行为数据的专用服务器,用户行为数据转换成日志文件;
文件数据传输组件是用于将用户行为数据采集服务器产生的日志文件传输到统一数据存储空间的工具;
数据采集云存储是专用于聚合所有用户行为数据日志文件的NAS存储空间;
文件数据采集组件是从NAS存储空间监控用户行为数据日志文件,并将新增的日志文件采集到大数据存储中的工具;
大数据存储 HDFS 是存储所有用户行为日志数据的存储。
应用基于大数据的网站用户行为数据采集方法的方案工作如下:在网站页面进行代码插入。当用户访问网页时,代码插入脚本被发送到后端。发送对用户行为数据的请求,用户行为采集数据服务器接收到请求并将其转换为日志文件。文件是数据传输组件,将所有日志文件聚合到一个统一的NAS存储中,然后文件数据采集组件对日志文件进行实时采集。数据传输到大数据存储。
工作流程如下:Nginx+Lua生成用户行为日志,由Linux Shell发送到数据采集云存储(NAS/FTP),Flume将采集到的日志文件存储在大数据存储HDFS上。
具体的:
网站开发者会在网站页面插入代码,插入用户行为数据采集脚本文件和脚本代码;
当用户访问网站页面时,用户行为数据采集脚本和脚本代码采集用户行为数据,并将数据重组成指定规格的数据包通过HTTP协议发送;
用户行为采集服务器接收网页发送的用户行为数据包,使用Nginx+Lua程序将数据包转换成用户行为日志文件;
在用户行为采集服务器上部署Linux Shell脚本,定期将用户行为日志文件发送到统一数据采集云存储NAS;
使用Flume工具程序监控云存储上用户行为日志文件的数据采集,并将日志文件中的数据实时传输到大数据存储;
使用HDFS作为大数据存储,将所有用户行为数据存储在HDFS中。
用户行为数据是通过插入网页中的Javascript脚本来采集和发送的,而javascript脚本运行在客户端浏览器上,所以用户行为数据的采集不依赖于网站应用程序的服务器端,实现与网站的应用分离,不影响网站的性能;
用户行为数据的采集是通过用户行为采集服务器实现的。由于采用了Nginx+Lua程序,既轻量又高性能,日志数据存储在HDFS中,完全摆脱了对数据库服务的依赖。;
HDFS是一种支持大数据存储的数据存储服务。支持海量数据的存储、查询、分析和统计。当数据量剧增时,HDFS可以提供比专业关系型数据库更高性能的数据查询服务。