一种基于并行化关联规则算法的教育云应用统计方法_2

文档序号:8258995阅读:来源:国知局
资源的URL,包括请求类型、请求资源、协议版本号, status为状态码,表示服务器的响应状态,bytes为传输的字节数,referrer为来源页面的 URL,表示浏览者在访问该页面之前所浏览的页面,agent为访问者的详细信息;编写shell 脚本,使用awk命令分割每一行,获取每行的〈remotehost,date,request,referrer〉四个 字段,再存入分布式文件系统HDFS中; 3) 基于分割所获取的字段生成访问序列:基于字段date获取同一时间段的记录 〈remotehost,request,referrer〉,其中request和referrer字段根据表 1 所不的应 用名称与访问路径映射表映射为相应的ID,然后基于字段remotehost进行排序,同一 remotehost视为同一访问者; 4) 针对每个访问者的访问序列生成数据项集;每行的访问序列的格式为 〈referrer,request〉,其中referrer为来源页面的URL,request为请求资源的URL;基于 MapReduce进行单表连接。
4.根据权利要求3所述的一种基于并行化关联规则算法的教育云应用统计方法,其特 征在于,步骤二的步骤4),具体方法如下: a) 输入访问序列; b) 在map阶段,将读入数据分割成referrer和request后,将request设置成key, referrer设置成value进行输出,并作为输出左表,在输出value的开始处加上字符"L", 表示左表,这样输出左表的数据格式为〈request,〈"L",referrer,request〉〉; 数据以列存储的形式,存储在HBase中,在HBase中,Key-Value存储以KeyValue类 进行表示,Key-Value包括四部分:Key、TimeStamp、Type和Value四部分; c) 在map阶段,将读入数据分割成referrer和request后,将referrer设置成key, request设置成value进行输出,并作为输出右表,在输出value的开始处加上字符"R",表 示右表,这样输出右表的输出数据格式为〈referrer,〈"R",referrer,request〉〉,数据以 列存储的形式存储在HBase中; d)在shuffle阶段完成排序和连接:首先把输出左表和输出右表根据key值进行排 序,排序后再把输出左表和输出右表中key值相同的项进行连接,放在一起,生成value -list; e) 在reduce阶段,会接收到shuffle连接的结果,取出每个key的value-list进行 解析,对输出左表和输出右表的value计算笛卡尔积,求出部分页面跳转序列; f) 循环迭代map和reduce过程,对步骤二的步骤4)中的步骤e)中输出的结果继续 进行连接,得到完整的页面跳转序列,此时,完整的页面跳转序列中的key代表步骤二中步 骤1)中表1所示的应用名称与访问路径映射表中某个应用对应的ID,value为对应ID的 完整的页面跳转序列; g) 根据日志信息数据,对不同的访问者,即对不同的remotehost执行步骤二中步骤4) 中的步骤a)到步骤f),得到指定时间段内所有访问者的访问序列,形成数据项集,所述数 据项集的数据格式如下: 01.03.06.02.04.07.08 02,03,06,09,04,10,08,06 02.04.07.08 04,03,09,02,07 06,08,04,03,01,02,09 01,03,05,07,09,06,04 02.04.06.03.05.09.08 04.03.02.06.08.05.08 02,031,05,07,09,03,02〇
5.根据权利要求1所述的一种基于并行化关联规则算法的教育云应用统计方法,其特 征在于,步骤三的具体步骤如下: 5) 扫描一次数据项集,将数据项集中的每个项目都看作是一个属性,计算数据项集中 出现的项目的个数,所述的项目为所有访问者访问过的应用对应的ID; 6) 如果一个事务包含某个项目,即该访问者访问了这个应用,那么相应的那个属性值 就是1,否则就是〇 ;设数据项集为T= {怀〖2,……,〖丄项目集为王二!^,",……im},对 于数据项集中的每一项D,有f:D->rij,f(D) =rij,rij定义为:
7) 构造数据项集对应的布尔矩阵,包括m个数据项集记录和n个项目,即m行n列,通 过一次扫描获得下面的布尔矩阵:
A」取1,表示第i个数据项集记录包含第j个项目,ru取0,表示第i个数据项集记录 不包含第j个项目; 8) 采用稀疏矩阵的存储方式,在布尔矩阵文件中只存储非零数值:在存储的时候采用 三元组记录矩阵中的每一个元素,存储矩阵的文件每一条记录的结构如下: (i,j,A[i,j]) 其中,第一个字段i为行标签,第二个字段j为列标签,第三个字段A[i,j]表示该元素 的值,值为〇的元素在存储矩阵的文件中不存储; 9)生成的布尔矩阵存储在分布式文件系统HDFS中。
6.根据权利要求1所述的一种基于并行化关联规则算法的教育云应用统计方法,其特 征在于,步骤四的步骤10)的具体步骤如下: h) 扫描存储在分布式文件系统HDFS中的布尔矩阵; i) 计算所有只包含一个项目的数据项在数据项集中的支持度,据此得到初始的频繁 1 -项集,即F1,所述的1 -表示该集合的基数为1,即只含有一个元素,同理x-表示集合含 有x个元素,计算过程基于Map和Reduce两个函数进行,具体计算过程如下: ① 当数据传递给Map时,Map会将输入的矩阵分块进行分割,输出〈key,value〉 形式的数对,具体的数据结构为<j,〈i,j,A[i,j]>>,其中键j为矩阵列,值为三元组 <i,j,A[i,j]>,三元组中i为元素所在行号,j为元素所在列号,A[i,j]为对应的元素值,在 这里值都为1 ; ②Map处理的中间结果传递给Reduce时,中间结果已经通过shuffle阶段按照key进 行了排序,Reduce阶段主要是将相同的key对应的value值累加,Reduce阶段将输入的key 值,即矩阵列的值作为输出的key值,相同key对应的value值累加,作为输出的value值; ③ 由步骤②得到的〈key,value〉中的key对应数据项,value代表数据项对应的支持 度,将每个key对应的value与最小支持度min_support比较,舍弃小于min_support的项, 剩余项合并为频繁1 -项集F1 ; j) 对频繁1 -项集F1中的任意两项进行合并生成候选2 -项集C2,这个过程通过排列 组合完成; k) 根据向下封闭原理剔除步骤j)得到的候选2 -项集C2中不满足条件的候选项,所 述不满足条件的候选项为小于最小支持度的候选项,所述的向下封闭原理为如果一个集合 不是频繁项集,则它的所有超集都不是频繁项集; l) 通过Map计算和Reduce计算,统计候选2 -项集中每个数据项的支持度,与最小支 持度min_support进行比较,得到频繁2 -项集,具体的计算过程如下: ④ 在Map阶段根据候选2-项集的字符串,在矩阵内对应的2个列向量之间做逻辑与 运算,将每一行的运算结果相加得到候选2 -项集的局部支持度,若为0则丢弃,形成第一 〈key, value〉对,所述第一〈key, value〉对中的key表示候选2-项集的候选项,新的value 代表该候选项的局部支持度; ⑤Reduce函数对Map生成的候选2-项集的局部支持度进行合并,得到候选k-项集 的支持度,输入为第一〈key, value〉对,将key相同的第一〈key, value〉对的value进行相 力口,得到第二〈key, value〉对,所述第二〈key, value〉对中的key还是表示候选2-项集的 候选项,value值为候选项的支持度,将每个候选项的支持度与min_support进行比较,得 到频繁2 -项集; m) 依次类推,逐级搜索,第(k- 1)轮搜索生成的频繁项集Fk_Jt为种子集合产生候选 项集Ck,产生的候选项集Ck再根据向下封闭原理进行剪枝,所述的剪枝为消除不满足向下 封闭原理的项集; n)将步骤四的步骤10)中,步骤h)至步骤m)生成的频繁项集写入文件并存储在分布 式文件系统HDFS中。
7. 根据权利要求1所述的一种基于并行化关联规则算法的教育云应用统计方法,其特 征在于,步骤四的步骤11)的具体步骤如下: 〇)从分布式文件系统HDFS中逐行读取频繁项集; P)对于每个频繁项集F,产生F的所有非空子集,进而生成规则,该过程通过排列组合 进行计算; q) 根据置信度的计算方法,计算每个规则的置信度,然后和最小置信度min_ confidence进行比较,将小于最小置信度的规则删除,剩下的即关联规则; r) 将步骤四的步骤11)中步骤q)生成的关联规则写入文件并存储在分布式文件系统 HDFS中。
8. 根据权利要求1所述的一种基于并行化关联规则算法的教育云应用统计方法,其特 征在于,步骤五的具体步骤如下: 12) 从分布式文件系统HDFS中读取频繁项集文件; 13) 筛选出频繁1 -项集,即只有一个元素的集合,该集合key的编号即步骤一中表1 应用名称与访问路径映射表中教育云应用对应的ID,对应的value值就是该应用的使用次 数; 14) 调用jfreechart类库编写java程序,把步骤13)中的使用次数数据以柱状图和折 线图的形式呈现给访问者。
9. 根据权利要求1所述的一种基于并行化关联规则算法的教育云应用统计方法,其特 征在于,还包括步骤六: 步骤六、基于关联规则分析教育云应用的访问者的使用喜好,向访问者推荐教育云应 用,该过程的步骤如下: 15) 从分布式文件系统HDFS读取关联规则文件,作为先验知识; 16) 从日志信息数据获取访问者的应用访问序列,将该序列与先验知识进行比较,如果 和先验知识匹配,则向访问者推荐对应的应用; 17) 对于访问者频繁访问的应用,在教育云平台就近部署,即将所述频繁访问的应用的 链接放在访问者界面上相邻的位置。
【专利摘要】本发明涉及一种基于并行化关联规则算法的教育云应用统计方法,首先对教育云应用访问情况进行数据建模,将源数据以布尔矩阵的形式存储在分布式文件系统HDFS中;其次基于MapReduce框架对关联规则算法进行并行化优化,分别编写Map函数和Reduce函数,对存储在分布式文件系统HDFS中的源数据进行挖掘分析,然后得到访问者对教育云应用的使用情况,进行特色推荐。发明的技术方案大大减少了扫描数据项集的次数,降低了系统I/O消耗。
【IPC分类】G06F17-30
【公开号】CN104573124
【申请号】CN201510066472
【发明人】袁东风, 王宏宾, 刘萍
【申请人】山东大学
【公开日】2015年4月29日
【申请日】2015年2月9日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1