一種Web日志預(yù)處理中基于UUID的會話合并方法
【專利摘要】本發(fā)明涉及一種Web日志預(yù)處理中基于UUID的會話合并方法,其特征在于,步驟為:第一步、識別和收集各個網(wǎng)站Cookie中用于標(biāo)識UUID的UUID字段名稱,建立不同網(wǎng)站域名與UUID字段名稱之間的對應(yīng)關(guān)系;第二步、在用于Web日志挖掘的數(shù)據(jù)中,為每一行標(biāo)記有會話ID的web日志記錄增加一個UUID字段;第三步、將含有相同UUID字段值的會話合并至一個會話中。本發(fā)明提出了一種Web日志預(yù)處理中基于UUID的會話合并方法,創(chuàng)新性地提出了自動識別UUID字段標(biāo)識符,然后將UUID相同的會話合并成一個大集合的會話。
【專利說明】—種Web日志預(yù)處理中基于UUID的會話合并方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及Hadoop云計算平臺以及web日志預(yù)處理中基于通用唯一識別碼(Universally Unique Identifier,UUID)的合并會話,屬于云計算以及web日志預(yù)處理兩大領(lǐng)域。
【背景技術(shù)】
[0002]云計算是一種基于互聯(lián)網(wǎng)的計算方式,是處理大數(shù)據(jù)的非常有效的解決方案。通過云計算這種方式,共享的軟硬件資源和信息可以高效率地按需求提供給計算機和其他設(shè)備。Hadoop是Apache基金會下的一款開源軟件,是一種針對大數(shù)據(jù)處理和分析的開源分布式計算平臺,它實現(xiàn)了包括分布式文件系統(tǒng)和MapReduce框架在內(nèi)的云計算軟件平臺的基礎(chǔ)架構(gòu),并且在其上整合了包括數(shù)據(jù)庫、云計算管理、數(shù)據(jù)倉儲等一系列平臺,其已成為工業(yè)界和學(xué)術(shù)界進(jìn)行云計算應(yīng)用和研究的標(biāo)準(zhǔn)平臺。
[0003]通常,Web日志挖掘包含三大步驟:數(shù)據(jù)預(yù)處理、模式識別和模式分析,其中數(shù)據(jù)預(yù)處理是關(guān)鍵和首要任務(wù)。Web日志挖掘的數(shù)據(jù)預(yù)處理包括數(shù)據(jù)清洗、用戶識別、會話識別,會話合并等步驟,其結(jié)果決定著Web日志挖掘的效率和準(zhǔn)確性。
[0004]會話識別的結(jié)果是短時間內(nèi)具有連續(xù)訪問特點的日志被分配一個唯一的會話ID (session ID),同一個用戶的所有訪問記錄往往由多個會話組成,會話合并是重要的預(yù)處理步驟,其目的就是將屬于同一個用戶的會話合并在一起,分配一個相同用戶標(biāo)記字段,使得屬于同一個用戶的訪問記錄的用戶標(biāo)記字段相同,不同的用戶訪問記錄的用戶標(biāo)記字段不同。根據(jù)方法的不同會話合并可分為基于相同賬戶的用戶識別,基于瀏覽器UUID的會話合并。
[0005]UUID是指web服務(wù)器在客戶端瀏覽器在請求服務(wù)器資源時生成的用于唯一標(biāo)識瀏覽器的數(shù)字,它保證對在同一時空中的所有機器瀏覽器的標(biāo)識都是唯一的。用戶在訪問網(wǎng)站時,網(wǎng)站服務(wù)器將UUID嵌入到Cookie中以標(biāo)識同一個瀏覽器,如果某兩條web日志的Cookie中的UUID相同,貝U說明他們是同一個人在同一個瀏覽器上訪問的web日志。
【發(fā)明內(nèi)容】
[0006]本發(fā)明的目的是提供一種基于UUID進(jìn)行會話合并的方法。
[0007]為了達(dá)到上述目的,本發(fā)明的技術(shù)方案是提供了一種Web日志預(yù)處理中基于UUID的會話合并方法,其特征在于,步驟為:
[0008]第一步、識別和收集各個網(wǎng)站Cookie中用于標(biāo)識UUID的UUID字段名稱,建立不同網(wǎng)站域名與UUID字段名稱之間的對應(yīng)關(guān)系:
[0009]通過特定瀏覽器實例訪問不同的指定網(wǎng)站,收集每個網(wǎng)站的Cookie數(shù)據(jù),對Cookie數(shù)據(jù)的集合進(jìn)行UUID預(yù)處理,從UUID預(yù)處理得到的結(jié)果中篩選出符合UUID特征的當(dāng)前網(wǎng)站Cookie中用于標(biāo)識UUID的UUID字段名稱,獲取某一網(wǎng)站S的用于標(biāo)識UUID的UUID字段名稱的具體步驟為:[0010]步驟1.1、用戶使用特定瀏覽器實例循環(huán)訪問指定的網(wǎng)站S至少N次,N≥2,每次訪問時,提取特定瀏覽器實例中與該網(wǎng)站S相關(guān)的Cookie數(shù)據(jù)組成集合,第i次訪問時,提取到的集合記為Ci,則可得到N個集合,Cl,…,CN ;
[0011]步驟1.2、計算得到N個集合的交集D,則有D = Cl H…H CN;
[0012]步驟1.3、重置特定瀏覽器實例中的Cookie數(shù)據(jù),重新訪問網(wǎng)站S,提取該特定瀏覽器實例中與網(wǎng)站S相關(guān)的Cookie數(shù)據(jù)組成集合Cx ;
[0013]步驟1.4、計算交集D與集合Cx的差,得到集合E,則有E = D-Cx ;
[0014]步驟1.5、獲取特定瀏覽器訪問網(wǎng)站S的所有歷史Cookie數(shù)據(jù)的集合CS:
[0015]步驟1.6、在集合E中去除集合CS中用戶代理UserAgent不同但域值相同的字段域,生成集合E (a);
[0016]步驟1.7、在集合E(a)中去除集合CS中同時存在的相同域值與不同域值的不同部分,生成集合E (b);
[0017]步驟1.8、在集合E (b)中選取生存時間TTL最大且最長的識別串作為與當(dāng)前網(wǎng)站S的域名相對應(yīng)的UUID字段名稱;
[0018]第二步、在用于Web日志挖掘的數(shù)據(jù)中,為每一行標(biāo)記有會話ID的web日志記錄增加一個UUID字段,其中,為第i行標(biāo)記有會話ID的web日志記錄增加UUID字段的步驟為:
[0019]步驟2.1、第i行標(biāo)記有會話ID的web日志記錄的URL字段提取網(wǎng)站域名;
[0020]步驟2.2、找到與當(dāng)前網(wǎng)站域名相對應(yīng)的UUID字段名稱;
[0021]步驟2.3、從第i行標(biāo)記有會話ID的web日志記錄的Cookie字段找到步驟2.2得到的UUID字段名稱所對應(yīng)的UUID字段值;
[0022]步驟2.4、為第i行標(biāo)記有會話ID的web日志記錄增加一個以步驟2.2得到的UUID字段名稱命名的UUID字段,其值為通過步驟2.3獲得的UUID字段值;
[0023]第三步、將含有相同UUID字段值的會話合并至一個會話中。
[0024]優(yōu)選地,在所述步驟1.8中、在集合E(b)中選取生存時間TTL最大且最長的識別串作為基本UUID字段名,其他識別串作為候選UUID字段名,先將基本UUID字段名與當(dāng)前網(wǎng)站S的Cookie數(shù)據(jù)相匹配,若能匹配成功,則將該基本UUID字段名作為與當(dāng)前網(wǎng)站S的域名相對應(yīng)的UUID字段名稱,否則,將候選UUID字段名與當(dāng)前網(wǎng)站S的Cookie數(shù)據(jù)相匹配,若能匹配成功,則將能成功匹配的那個候選UUID字段名作為與當(dāng)前網(wǎng)站S的域名相對應(yīng)的UUID字段名稱。
[0025]優(yōu)選地,所述第三步的具體步驟為:遍歷標(biāo)識有UUID字段的所有web日志記錄,將相同UUID字段值的web日志記錄歸為同一組web日志記錄組,再遍歷所有web日志記錄組,將同一 web日志記錄組內(nèi)的會話ID字段設(shè)置為相同的值。
[0026]本發(fā)明提出了一種Web日志預(yù)處理中基于UUID的會話合并方法,創(chuàng)新性地提出了自動識別UUID字段標(biāo)識符,然后將UUID相同的會話合并成一個大集合的會話。
【專利附圖】
【附圖說明】
[0027]圖1為本發(fā)明會話合并的流程圖; [0028]圖2為本發(fā)明為Web日志每一行記錄標(biāo)識UUID字段值的流程圖;[0029]圖3為本發(fā)明合并相同UUID到同一個會話的流程圖;
[0030]圖4為本發(fā)明第一步驟UUID預(yù)處理模塊數(shù)據(jù)流圖;
[0031]圖5為本發(fā)明第一步驟UUID篩選模塊數(shù)據(jù)流圖。
【具體實施方式】
[0032]為使本發(fā)明更明顯易懂,茲以優(yōu)選實施例,并配合附圖作詳細(xì)說明如下。
[0033]如圖1所示,本發(fā)明提供了一種Web日志預(yù)處理中基于UUID的會話合并方法,其步驟為:
[0034]步驟101、識別和收集各個網(wǎng)站Cookie中用于標(biāo)識UUID的UUID字段名稱,建立不同網(wǎng)站域名與UUID字段名稱之間的對應(yīng)關(guān)系:
[0035]為了實現(xiàn)本步驟,需要使用到兩個模塊,一個模塊為UUID預(yù)處理模塊,另一個模塊為UUID篩選模塊。
[0036]結(jié)合圖4,采用UUID預(yù)處理模塊對指定網(wǎng)站S進(jìn)行操作的具體實現(xiàn)步驟為:
[0037]步驟1、在域名庫中讀取指定網(wǎng)站S的域名后,通過特定瀏覽器實例循環(huán)訪問指定的網(wǎng)站S —共2次,每次訪問時,提取特定瀏覽器實例中與網(wǎng)站S相關(guān)的Cookie數(shù)據(jù)組成集合,第1次訪問時,提取到的集合記為C1,C1 = (a, b, c,d,e),第2次訪問時,提取到的集合記為 C2, C2 = (a, b , c, f, g);
[0038]步驟2、計算 Cl 與 C2 的交集 D1,則有 Dl = Cl H C2 = (a, b, c):
[0039]步驟3、重置特定瀏覽器實例中的Cookie數(shù)據(jù),重新訪問網(wǎng)站S,提取該特定瀏覽器實例中與網(wǎng)站S相關(guān)的Cookie數(shù)據(jù)組成集合C3 = (b, e, f, g);
[0040]步驟4、計算交集Dl與集合C3的差,得到集合E1,則有El = D1-C3 = (a, c):
[0041]結(jié)合圖5,采用UUID篩選模塊對指定網(wǎng)站S進(jìn)行操作的具體實現(xiàn)步驟為:
[0042]步驟1、獲取特定瀏覽器訪問網(wǎng)站S的所有歷史Cookie數(shù)據(jù)的集合CSl ;
[0043]步驟2、在集合El中去除集合CSl中用戶代理UserAgent不同但域值相同的字段域,生成集合El (a);
[0044]步驟3、在集合El (a)中去除集合CSl中同時存在的相同域值與不同域值的不同部分,生成集合El (b);
[0045]步驟4、在集合El (b)中選取生存時間TTL最大且最長的識別串作為基本UUID字段名pUUID,其他識別串作為候選UUID字段名cUUID,先將基本UUID字段名pUUID與當(dāng)前網(wǎng)站S的Cookie數(shù)據(jù)相匹配,若能匹配成功,則將該基本UUID字段名pUUID作為與當(dāng)前網(wǎng)站S的域名相對應(yīng)的UUID字段名稱,否則,將候選UUID字段名cUUID與當(dāng)前網(wǎng)站S的Cookie數(shù)據(jù)相匹配,若能匹配成功,則將能成功匹配的那個候選UUID字段名cUUID作為與當(dāng)前網(wǎng)站S的域名相對應(yīng)的UUID字段名稱。
[0046]通過步驟101得到的幾個網(wǎng)站域名與其UUID字段名稱的對應(yīng)關(guān)系如表1所示。
[0047]
【權(quán)利要求】
1.一種Web日志預(yù)處理中基于UUID的會話合并方法,其特征在于,步驟為: 第一步、識別和收集各個網(wǎng)站Cookie中用于標(biāo)識UUID的UUID字段名稱,建立不同網(wǎng)站域名與UUID字段名稱之間的對應(yīng)關(guān)系: 通過特定瀏覽器實例訪問不同的指定網(wǎng)站,收集每個網(wǎng)站的Cookie數(shù)據(jù),對Cookie數(shù)據(jù)的集合進(jìn)行UUID預(yù)處理,從UUID預(yù)處理得到的結(jié)果中篩選出符合UUID特征的當(dāng)前網(wǎng)站Cookie中用于標(biāo)識UUID的UUID字段名稱,獲取某一網(wǎng)站S的用于標(biāo)識UUID的UUID字段名稱的具體步驟為: 步驟1.1、用戶使用特定瀏覽器實例循環(huán)訪問指定的網(wǎng)站S至少N次,N > 2,每次訪問時,提取特定瀏覽器實例中與該網(wǎng)站S相關(guān)的Cookie數(shù)據(jù)組成集合,第i次訪問時,提取到的集合記為Ci,則可得到N個集合,Cl,…,CN ; 步驟1.2、計算得到N個集合的交集D,則有D = Cl η…n CN; 步驟1.3、重置特定瀏覽器實例中的Cookie數(shù)據(jù),重新訪問網(wǎng)站S,提取該特定瀏覽器實例中與網(wǎng)站S相關(guān)的Cookie數(shù)據(jù)組成集合Cx: 步驟1.4、計算交集D與集合Cx的差,得到集合E,則有E = D-Cx ; 步驟1.5、獲取特定瀏覽器訪問網(wǎng)站S的所有歷史Cookie數(shù)據(jù)的集合CS: 步驟1.6、在集合E中去除集合CS中用戶代理UserAgent不同但域值相同的字段域,生成集合E (a); 步驟1.7、在集合E(a)中去除集合CS中同時存在的相同域值與不同域值的不同部分,生成集合E (b); 步驟1.8、在集合E (b)中選取生存時間TTL最大且最長的識別串作為與當(dāng)前網(wǎng)站S的域名相對應(yīng)的UUID字段名稱; 第二步、在用于Web日志挖掘的數(shù)據(jù)中,為每一行標(biāo)記有會話ID的web日志記錄增加一個UUID字段,其中,為第i行標(biāo)記有會話ID的web日志記錄增加UUID字段的步驟為:步驟2.1、第i行標(biāo)記有會話ID的web日志記錄的URL字段提取網(wǎng)站域名; 步驟2.2、找到與當(dāng)前網(wǎng)站域名相對應(yīng)的UUID字段名稱; 步驟2.3、從第i行標(biāo)記有會話ID的web日志記錄的Cookie字段找到步驟2.2得到的UUID字段名稱所對應(yīng)的UUID字段值; 步驟2.4、為第i行標(biāo)記有會話ID的web日志記錄增加一個以步驟2.2得到的UUD字段名稱命名的UUID字段,其值為通過步驟2.3獲得的UUID字段值; 第三步、將含有相同UUID字段值的會話合并至一個會話中。
2.如權(quán)利要求1所述的一種Web日志預(yù)處理中基于UUID的會話合并方法,其特征在于,在所述步驟1.8中、在集合E(b)中選取生存時間TTL最大且最長的識別串作為基本UUID字段名,其他識別串作為候選UUID字段名,先將基本UUID字段名與當(dāng)前網(wǎng)站S的Cookie數(shù)據(jù)相匹配,若能匹配成功,則將該基本UUID字段名作為與當(dāng)前網(wǎng)站S的域名相對應(yīng)的UUID字段名稱,否則,將候選UUID字段名與當(dāng)前網(wǎng)站S的Cookie數(shù)據(jù)相匹配,若能匹配成功,則將能成功匹配的那個候選UUID字段名作為與當(dāng)前網(wǎng)站S的域名相對應(yīng)的UUID字段名稱。
3.如權(quán)利要求1所述的一種Web日志預(yù)處理中基于UUID的會話合并方法,其特征在于,所述第三步的具體步驟為:遍歷標(biāo)識有UUID字段的所有web日志記錄,將相同UUID字段值的web日志記錄歸為同一組web日志記錄組,再遍歷所有web日志記錄組,將同一 web日志記錄組內(nèi)的會 話ID字段設(shè)置為相同的值。
【文檔編號】G06F17/30GK103970843SQ201410174533
【公開日】2014年8月6日 申請日期:2014年4月28日 優(yōu)先權(quán)日:2014年4月28日
【發(fā)明者】陳德華, 沈昌干, 潘喬, 羅昕 申請人:東華大學(xué), 上海云屹信息技術(shù)有限公司