aaa视频网站,国产最新进精品视频,国产主播一区二区,999热精品视频,а√天堂资源8在线官网在线,国产免费不卡av,麻豆国产视频

日志信息處理方法和裝置與流程

文檔序號:12124021閱讀:473來源:國知局
日志信息處理方法和裝置與流程

本申請涉及數(shù)據(jù)處理領域,具體而言,涉及一種日志信息處理方法和裝置。



背景技術:

在日志信息中通常包含多個維度,例如,引用地址ReferrerUrl、Cookie、互聯(lián)網協(xié)議IP、用戶代理UserAgent等,其中,ReferrerUrl可以解析出來源域名(domain)、來源路徑(path)和第一參數(shù)、第二參數(shù)等信息,UserAgent可以解析出操作系統(tǒng)信息、瀏覽器信息、設備類型、設備廠商和是否移動端等信息,IP可以解析出用戶所屬國家、省份及所在城市和區(qū)域等信息。例如,在對廣告展現(xiàn)或跳轉的監(jiān)控日志信息進行分析時,根據(jù)日志信息中的IP、UserAgent、ReferrerUrl等信息分別能解析出廣告的多個維度信息,以便于廣告主對廣告投放效果進行分析。

相同的IP、UserAgent、ReferrerUrl字符串解析得到的維度信息相同,即IP、UserAgent、ReferrerUrl字符串與解析后的維度信息一一對應。此外,IP、UserAgent和ReferrerUrl解析后的維度信息數(shù)量不會隨著廣告主投放廣告數(shù)據(jù)的增多而增加,即IP、UserAgent和ReferrerUrl解析后的維度信息數(shù)量是可枚舉的,但是廣告主投放的廣告的數(shù)據(jù)是無限增長的(即廣告的監(jiān)控日志信息是無限增長的)?,F(xiàn)有技術中將維度信息與廣告日志信息存儲在一起,造成存儲空間的嚴重浪費。

針對相關技術中日志信息存儲浪費存儲空間的問題,目前尚未提出有效的解決方案。



技術實現(xiàn)要素:

本申請的主要目的在于提供一種日志信息處理方法和裝置,以解決相關技術中日志信息存儲浪費存儲空間的問題。

為了實現(xiàn)上述目的,根據(jù)本申請的一個方面,提供了一種日志信息處理方法,日志信息存儲于日志信息表中,日志信息的維度信息存儲于維度信息表中,其中,維度信息包括如下至少之一:引用地址維度信息、用戶代理維度信息和互聯(lián)網協(xié)議維度信息,日志信息表和維度信息表相關聯(lián),該方法包括:獲取待處理日志信息的維度信息;判斷待處理日志信息的維度信息是否存儲于維度信息表中;在判斷出待處理日志信息的維度信息存儲于維度信息表中時,則不重復存儲待處理日志信息的維度信息;以及 在判斷出待處理日志信息的維度信息未存儲于維度信息表中時,則存儲待處理日志信息的維度信息至維度信息表中。

進一步地,在判斷出待處理日志信息的維度信息未存儲于維度信息表中時,則存儲待處理日志信息的維度信息至維度信息表中之后,方法還包括:生成待處理日志信息的維度信息的唯一標識符;以及根據(jù)唯一標識符存儲待處理日志信息至日志信息表中。

進一步地,判斷待處理日志信息的維度信息是否存儲于維度信息表中包括:判斷待處理日志信息的維度信息是否存在于第一緩存字典中,其中,第一緩存字典中存儲有已經存儲至維度信息表的維度信息;在判斷出待處理日志信息的維度信息不存在于第一緩存字典中時,則確定待處理日志信息的維度信息未存儲于維度信息表中;以及在判斷出待處理日志信息的維度信息存在于第一緩存字典中時,則確定待處理日志信息的維度信息存儲于維度信息表中。

進一步地,判斷待處理日志信息的維度信息是否存在于第一緩存字典中包括:對待處理日志信息的維度信息對應的字符串進行散列運算,得到待處理日志信息的維度信息對應的散列值;判斷待處理日志信息的維度信息對應的散列值是否存在于第一緩存字典中;如果判斷出待處理日志信息的維度信息對應的散列值存在于第一緩存字典中,則確定待處理日志信息的維度信息存在于第一緩存字典中;以及如果判斷出待處理日志信息的維度信息對應的散列值不存在于第一緩存字典中,則確定待處理日志信息的維度信息不存在于第一緩存字典中。

進一步地,在判斷出待處理日志信息的維度信息不存在于第一緩存字典中時,方法還包括:判斷待處理日志信息的維度信息是否存儲于第二緩存字典中,其中,第二緩存字典用于存儲尚未存儲至維度信息表的維度信息;如果待處理日志信息的維度信息未存儲于第二緩存字典中,存儲待處理日志信息的維度信息至第二緩存字典中;如果待處理日志信息的維度信息存儲于第二緩存字典中,則不重復存儲待處理日志信息的維度信息至第二緩存字典,第二緩存字典中存儲有多條待處理日志信息的維度信息,存儲待處理日志信息的維度信息至維度信息表中包括:判斷第二緩存字典中維度信息的數(shù)量是否大于預設值;以及在判斷出第二緩存字典中維度信息的數(shù)量大于預設值時,將第二緩存字典中的維度信息批量存儲至維度信息表中。

進一步地,在判斷出第二緩存字典中維度信息的數(shù)量大于預設值時,將第二緩存字典中的維度信息批量存儲至維度信息表中之后,該方法還包括:分別生成第二緩存字典中每一條維度信息對應的唯一標識符;以及根據(jù)每一條維度信息對應的唯一標識符將每一條維度信息對應的待處理日志信息存儲至日志信息表中。

進一步地,判斷待處理日志信息的維度信息是否存儲于維度信息表中包括:包括:判斷待處理日志信息的維度信息是否存在于第三緩存字典中,其中,第三緩存字典中存儲有已經存儲至維度信息表的維度信息和尚未存儲至維度信息表的維度信息,已經存儲至維度信息表的維度信息存在對應的唯一標識符,尚未存儲至維度信息表的維度信息不存在對應的唯一標識符;在判斷出待處理日志信息的維度信息不存在于第三緩存字典中時,則確定待處理日志信息的維度信息未存儲于維度信息表中;在判斷出待處理日志信息的維度信息存在于第三緩存字典中時,判斷待處理日志信息的維度信息在第三緩存字典中是否存在對應的唯一標識符;在判斷出待處理日志信息的維度信息在第三緩存字典中存在對應的唯一標識符時,則確定待處理日志信息的維度信息已經存儲于維度信息表中;以及在判斷出待處理日志信息的維度信息在第三緩存字典中不存在對應的唯一標識符,則確定待處理日志信息的維度信息尚未存儲于維度信息表中。

進一步地,在判斷出待處理日志信息的維度信息不存在于第三緩存字典中時,方法還包括:將待處理日志信息的維度信息存儲于第三緩存字典中,其中,在第三緩存字典中待處理日志信息的維度信息不存在對應的唯一標識符,第三緩存字典中存儲有多條待處理日志信息的維度信息,存儲待處理日志信息的維度信息至維度信息表中包括:統(tǒng)計第三緩存字典中不存在對應的唯一標識符的維度信息的數(shù)量;判斷第三緩存字典中不存在對應的唯一標識符的維度信息的數(shù)量是否大于預設值;以及在判斷出第三緩存字典中不存在對應的唯一標識符的維度信息的數(shù)量大于預設值時,將第三緩存字典中不存在對應的唯一標識符的維度信息批量存儲至維度信息表中。

為了實現(xiàn)上述目的,根據(jù)本申請的另一方面,提供了一種日志信息處理裝置,日志信息存儲于日志信息表中,日志信息的維度信息存儲于維度信息表中,其中,維度信息包括如下至少之一:引用地址維度信息、用戶代理維度信息和互聯(lián)網協(xié)議維度信息,日志信息表和維度信息表相關聯(lián),該裝置包括:第一獲取單元,用于獲取待處理日志信息的維度信息;第一判斷單元,用于判斷待處理日志信息的維度信息是否存儲于維度信息表中;以及第一存儲單元,用于在判斷出待處理日志信息的維度信息存儲于維度信息表中時,則不重復存儲待處理日志信息的維度信息,在判斷出待處理日志信息的維度信息未存儲于維度信息表中時,則存儲待處理日志信息的維度信息至維度信息表中。

進一步地,該裝置還包括:第一生成單元,用于生成待處理日志信息的維度信息的唯一標識符;以及第二存儲單元,用于根據(jù)唯一標識符存儲待處理日志信息至日志信息表中。

通過本申請,采用將日志信息存儲于日志信息表中,日志信息的維度信息存儲于維度信息表中,日志信息表和維度信息表相關聯(lián),并獲取待處理日志信息的維度信息; 判斷待處理日志信息的維度信息是否存儲于維度信息表中;在判斷出待處理日志信息的維度信息存儲于維度信息表中時,則不重復存儲待處理日志信息的維度信息;以及在判斷出待處理日志信息的維度信息未存儲于維度信息表中時,則存儲待處理日志信息的維度信息至維度信息表中,從而可以避免維度信息重復存儲造成數(shù)據(jù)冗余,解決了相關技術中日志信息存儲浪費存儲空間的問題,進而達到了節(jié)省存儲空間效果。

附圖說明

構成本申請的一部分的附圖用來提供對本申請的進一步理解,本申請的示意性實施例及其說明用于解釋本申請,并不構成對本申請的不當限定。在附圖中:

圖1是根據(jù)本申請第一實施例的日志信息處理方法的流程圖;

圖2是根據(jù)本申請實施例的日志信息表和維度信息表的示意圖;

圖3是根據(jù)本申請第二實施例的日志信息處理方法的流程圖;以及

圖4是根據(jù)本申請實施例的日志信息處理裝置的示意圖。

具體實施方式

需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互組合。下面將參考附圖并結合實施例來詳細說明本申請。

為了使本技術領域的人員更好地理解本申請方案,下面將結合本申請實施例中的附圖,對本申請實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本申請一部分的實施例,而不是全部的實施例。基于本申請中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都應當屬于本申請保護的范圍。

需要說明的是,本申請的說明書和權利要求書及上述附圖中的術語“第一”、“第二”等是用于區(qū)別類似的對象,而不必用于描述特定的順序或先后次序。應該理解這樣使用的數(shù)據(jù)在適當情況下可以互換,以便這里描述的本申請的實施例。此外,術語“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統(tǒng)、產品或設備不必限于清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或對于這些過程、方法、產品或設備固有的其它步驟或單元。

為了便于描述,以下對本申請實施例涉及的幾個術語進行說明:

日志信息:是指用戶訪問網頁時產生的訪問日志,一條日志信息通常包含引用地址ReferrerUrl、Cookie、互聯(lián)網協(xié)議IP、用戶代理UserAgent等信息。

維度信息:日志信息的ReferrerUrl、IP、UserAgent為不同的維度,維度信息是指對日志信息的維度進行解析得到的數(shù)據(jù),例如,對日志信息的ReferrerUrl進行解析可以得到來源域名(domain)、來源路徑(path)和第一參數(shù)、第二參數(shù)等信息,對日志信息的UserAgent進行解析可以得到操作系統(tǒng)信息、瀏覽器信息、設備類型、設備廠商和是否移動端等信息,對日志信息的IP進行解析可以得到用戶所屬國家、省份及所在城市和區(qū)域等信息。

引用地址維度信息:即ReferrerUrl維度信息,是指對日志信息的ReferrerUrl維度進行解析得到的數(shù)據(jù),包括來源域名(domain)、來源路徑(path)和來源第一參數(shù)、第二參數(shù)等信息。

用戶代理維度信息:即UserAgent維度信息,是指對日志信息的UserAgent維度進行解析得到的數(shù)據(jù),包括操作系統(tǒng)信息、瀏覽器信息、設備類型、設備廠商和是否移動端等信息。

互聯(lián)網協(xié)議維度信息:即IP維度信息,是指對日志信息的IP維度進行解析得到的數(shù)據(jù),包括用戶所屬國家、省份及所在城市和區(qū)域等信息。

根據(jù)本申請實施例,提供了一種日志信息處理方法,本申請實施例將日志信息存儲于日志信息表中,日志信息的維度信息存儲于維度信息表中,其中,維度信息包括如下至少之一:引用地址維度信息、用戶代理維度信息和互聯(lián)網協(xié)議維度信息,日志信息表和維度信息表相關聯(lián)。圖1是根據(jù)本申請第一實施例的日志信息處理方法的流程圖,如圖1所示,該日志信息處理方法包括如下的步驟S102至步驟S108:

步驟S102:獲取待處理日志信息的維度信息。

具體地,可以預先將目標網頁在預設時間段內的日志信息存儲于數(shù)據(jù)庫中,從數(shù)據(jù)庫中獲取待處理日志信息,也可以是通過網絡爬蟲從目標網頁中爬取日志信息作為待處理日志信息,目標網頁即需要進行日志信息處理的網頁,例如,包含目標監(jiān)測廣告的網頁。本申請實施例通過對待處理日志信息進行解析處理,即可獲得待處理日志信息的維度信息。

步驟S104:判斷待處理日志信息的維度信息是否存儲于維度信息表中。

需要說明的是,本申請實施例的維度信息表用于存儲日志信息的維度信息,其中,維度信息包括如下至少之一:引用地址維度信息、用戶代理維度信息和互聯(lián)網協(xié)議維度信息。具體地,日志信息的各個維度的信息存儲于不同的維度信息表中,例如,維 度信息包括引用地址維度信息、用戶代理維度信息和互聯(lián)網協(xié)議維度信息,則引用地址維度信息存儲于第一維度信息表中,用戶代理維度信息存儲于第二維度信息表中,互聯(lián)網協(xié)議維度信息存儲于第三維度信息表中。

以廣告監(jiān)控日志信息為例進行說明,如圖2所示,引用地址維度信息表(DimReferrer)用于存儲引用地址維度信息,其中,在引用地址維度信息表中包括唯一標識符、域名、路徑、第一參數(shù)和第二參數(shù)等字段;用戶代理維度信息表(DimUserAgent)用于存儲用戶代理維度信息,在用戶代理維度信息表中包括唯一標識符、操作系統(tǒng)、操作系統(tǒng)版本、瀏覽器、瀏覽器版本、設備類型、設備廠商、設備詳情、是否移動端等字段;IP維度信息表(Location)用于存儲IP維度信息,其中,在IP維度信息表中包括唯一標識符、地域名稱、所屬國家、所屬省份、所屬城市和區(qū)域等字段;日志信息表用于存儲日志信息,其中,日志信息表中包括唯一標識符、廣告標識符、時間、用戶標識、地域標識、用戶代理鍵(UserAgentKey)、引用地址鍵(ReferrerKey)和IP字符串(IPString)等字段,日志信息表通過用戶代理鍵、引用地址鍵和IP字符串分別關聯(lián)用戶代理維度信息表、引用地址維度信息表和IP維度信息表。需要說明的是,每個字段后面對應的是該字段的數(shù)據(jù)類型。

具體地,判斷待處理日志信息的維度信息是否存儲于維度信息表中可以是通過遍歷維度信息表查找是否存在與待處理日志信息的維度信息相同的信息,如果存在,則判斷出待處理日志信息的維度信息存儲于維度信息表,否則判斷出待處理日志信息的維度信息未存儲于維度信息表。

優(yōu)選地,為了提高處理速度,判斷待處理日志信息的維度信息是否存儲于維度信息表中包括:判斷待處理日志信息的維度信息是否存在于第一緩存字典中,其中,第一緩存字典中存儲有已經存儲至維度信息表的維度信息;在判斷出待處理日志信息的維度信息不存在于第一緩存字典中時,則確定待處理日志信息的維度信息未存儲于維度信息表中;以及在判斷出待處理日志信息的維度信息存在于第一緩存字典中時,則確定待處理日志信息的維度信息存儲于維度信息表中。

第一緩存字典是指存儲有已經存儲至維度信息表的維度信息,可選地,可以預先從維度信息表中讀取已存儲的維度信息并存儲至第一緩存字典中。

具體地,第一緩存字典采用鍵值(key value)的存儲方式,即包含標識部分和屬性值部分,其中,標識部分用于唯一的標識維度信息,屬性值部分用于存儲具體的維度信息的內容,例如,維度信息為引用地址維度信息,其具體地內容可以包括來源域名(domain)、來源路徑(path)和來源第一參數(shù)、第二參數(shù)等。可選地,標識部分可以是維度信息對應的字符串,例如,維度信息為引用地址維度信息,則其對應的字符串即引用地址字符串。優(yōu)選地,為了節(jié)省存儲空間,便于檢索,標識部分可以是維度 信息對應的字符串的散列值,例如,對維度信息對應的字符串進行哈希運算,得到維度信息對應的字符串對應的哈希值(即散列值)。

可選地,判斷待處理日志信息的維度信息是否存在于第一緩存字典中可以是判斷待處理日志信息的維度信息對應的字符串是否存儲在于第一緩存字典中,其中,在待處理日志信息的維度信息對應的字符串存在于第一緩存字典中,則說明待處理日志信息的維度信息存在于第一緩存字典中,否則說明待處理日志信息的維度信息不存在于第一緩存字典中。

優(yōu)選地,判斷待處理日志信息的維度信息是否存在于第一緩存字典中包括:對待處理日志信息的維度信息對應的字符串進行散列運算,得到待處理日志信息的維度信息對應的散列值;判斷待處理日志信息的維度信息對應的散列值是否存在于第一緩存字典中;如果判斷出待處理日志信息的維度信息對應的散列值存在于第一緩存字典中,則確定待處理日志信息的維度信息存在于第一緩存字典中;以及如果判斷出待處理日志信息的維度信息對應的散列值不存在于第一緩存字典中,則確定待處理日志信息的維度信息不存在于第一緩存字典中。

本申請實施例中第一緩存字典的標識部分存儲的是維度信息對應的字符串的散列值,通過對待處理日志信息的維度信息對應的字符串進行散列運算,得到待處理日志信息的維度信息對應的散列值,并遍歷第一緩存字典,查找第一緩存字典中是否存在待處理日志信息的維度信息對應的散列值,如果存在,則說明待處理日志信息的維度信息存在于第一緩存字典中,否則說明待處理日志信息的維度信息不存在于第一緩存字典中。本申請實施例基于維度信息對應的字符串的散列值進行查找和比較,不僅可以節(jié)省存儲空間,而且可以提高查找速度。

需要說明的是,本申請實施例的第一緩存字典位于緩存中,便于快速的對數(shù)據(jù)進行處理。

步驟S106:在判斷出待處理日志信息的維度信息存儲于維度信息表中時,則不重復存儲待處理日志信息的維度信息。

本申請實施例對于已經存儲于維度信息表中的維度信息不進行重復存儲,從而避免數(shù)據(jù)冗余,不僅可以節(jié)省存儲空間,而且可以提高后續(xù)查詢效率。

步驟S108:在判斷出待處理日志信息的維度信息未存儲于維度信息表中時,則存儲待處理日志信息的維度信息至維度信息表中。

本申請實施例通過將日志信息存儲于日志信息表中,日志信息的維度信息存儲于維度信息表中,并將日志信息表和維度信息表相關聯(lián),其中維度信息表僅新增存儲未存儲過的維度信息,對于已經存儲過的維度信息則不重復存儲,避免了相同的維度信 息重復存儲,解決了相關技術中日志信息存儲浪費存儲空間的問題,進而達到了節(jié)省存儲空間效果,也可以提高日志信息的查詢效率。

可選地,在判斷出待處理日志信息的維度信息未存儲于維度信息表中時,則存儲待處理日志信息的維度信息至維度信息表中之后,該方法還包括:生成待處理日志信息的維度信息的唯一標識符;以及根據(jù)唯一標識符存儲待處理日志信息至日志信息表中。

為了便于快速的關聯(lián)待處理日志信息和維度信息,本申請實施例在將待處理日志信息的維度信息存儲至維度信息表中之后,生成待處理日志信息的維度信息的唯一標識符,并將待處理日志信息和唯一標識符關聯(lián)的存儲至日志信息表中,例如,存儲在日志信息表的同一行中,從而,根據(jù)日志信息表中存儲的維度信息對應的唯一標識符即可從維度信息表中查找到對應的維度信息。

需要說明的是,可以將維度信息的唯一標識符作為外鍵,關聯(lián)維度信息表和日志信息表,在判斷出待處理日志信息的維度信息存儲于維度信息表中時,則直接從維度信息表中獲取待處理日志信息的維度信息的唯一標識符,并將待處理日志信息和唯一標識符關聯(lián)的存儲至日志信息表,在判斷出待處理日志信息的維度信息未存儲于維度信息表中時,則存儲待處理日志信息的維度信息至維度信息表中,并在維度信息表中生成該待處理日志信息的維度信息的唯一標識符,將待處理日志信息和唯一標識符關聯(lián)的存儲至日志信息表中。

優(yōu)選地,為了提高維度信息的存儲效率,在判斷出待處理日志信息的維度信息不存在于第一緩存字典中時,該方法還包括:判斷待處理日志信息的維度信息是否存儲于第二緩存字典中,其中,第二緩存字典用于存儲尚未存儲至維度信息表的維度信息;如果待處理日志信息的維度信息未存儲于第二緩存字典中,存儲待處理日志信息的維度信息至第二緩存字典中;如果待處理日志信息的維度信息存儲于第二緩存字典中,則不重復存儲待處理日志信息的維度信息至第二緩存字典,第二緩存字典中存儲有多條待處理日志信息的維度信息,存儲待處理日志信息的維度信息至維度信息表中包括:判斷第二緩存字典中維度信息的數(shù)量是否大于預設值;以及在判斷出第二緩存字典中維度信息的數(shù)量大于預設值時,將第二緩存字典中的維度信息批量存儲至維度信息表中。

第二緩存字典用于存儲那些還未存儲至維度信息表的維度信息,例如,當前訪問日志A的維度信息未在維度信息表中存儲,則將該訪問日志A的維度信息先存儲于第二緩存字典中,同第一緩存字典,第二緩存字典也可以采用鍵值的存儲方式。

具體地,本申請實施例在判斷出待處理日志信息的維度信息不存在于第一緩存字 典中時(即待處理日志信息的維度信息未存儲于維度信息表中),繼續(xù)判斷待處理日志信息的維度信息是否存儲于第二緩存字典中,如果第二緩存字典中也未存儲該待處理日志信息的維度信息,則將該待處理日志信息的維度信息存儲于第二緩存字典中,如果第二緩存字典中已經存儲有該待處理日志信息的維度信息,則不再重復存儲。在第二緩存字典中維度信息的數(shù)量大于預設值(例如,1萬條)時,則將第二緩存字典中存儲的維度信息批量插入至維度信息表中。

可選地,在判斷出第二緩存字典中維度信息的數(shù)量大于預設值時,將第二緩存字典中的維度信息批量存儲至維度信息表中之后,該方法還包括:分別生成第二緩存字典中每一條維度信息對應的唯一標識符;以及根據(jù)每一條維度信息對應的唯一標識符將每一條維度信息對應的待處理日志信息存儲至日志信息表中。

為了便于快速的關聯(lián)待處理日志信息和維度信息,本申請實施例在將第二緩存字典中的維度信息批量存儲至維度信息表中之后,分別生成第二緩存字典中每一條維度信息對應的唯一標識符(即維度信息和唯一標識符一一對應),并將每一條維度信息對應的唯一標識符和該維度信息對應的待處理日志信息關聯(lián)存儲至日志信息表中,從而,根據(jù)日志信息表中存儲的維度信息對應的唯一標識符即可從維度信息表中查找到對應的維度信息。

需要說明的是,本申請實施例在根據(jù)每一條維度信息對應的唯一標識符將每一條維度信息對應的待處理日志信息存儲至日志信息表中之前,需要預先建立待處理日志信息和其維度信息的對應關系,具體地,可以在判斷出待處理日志信息的維度信息不存在于第一緩存字典中之后,即建立待處理日志信息和其維度信息的對應關系,例如,可以采用對象引用的方式建立待處理日志信息和其維度信息的對應關系,即將待處理日志信息的維度信息添加為待處理日志信息對象的一個屬性值。

優(yōu)選地,為了提高處理速度,判斷待處理日志信息的維度信息是否存儲于維度信息表中包括:判斷待處理日志信息的維度信息是否存在于第三緩存字典中,其中,第三緩存字典中存儲有已經存儲至維度信息表的維度信息和尚未存儲至維度信息表的維度信息,已經存儲至維度信息表的維度信息存在對應的唯一標識符,尚未存儲至維度信息表的維度信息不存在對應的唯一標識符;在判斷出待處理日志信息的維度信息不存在于第三緩存字典中時,則確定待處理日志信息的維度信息未存儲于維度信息表中;在判斷出待處理日志信息的維度信息存在于第三緩存字典中時,判斷待處理日志信息的維度信息在第三緩存字典中是否存在對應的唯一標識符;在判斷出待處理日志信息的維度信息在第三緩存字典中存在對應的唯一標識符時,則確定待處理日志信息的維度信息已經存儲于維度信息表中;以及在判斷出待處理日志信息的維度信息在第三緩存字典中不存在對應的唯一標識符,則確定待處理日志信息的維度信息尚未存儲于維 度信息表中。

本申請實施例將已經存儲于維度信息表和尚未存儲于維度信息表的維度信息均存儲于同一緩存字典(即第三緩存字典)中,其中,在第三緩存字典中,已經存儲于維度信息表的維度信息在第三緩存字典同時存儲有該維度信息對應的唯一標識符,尚未存儲至維度信息表的維度信息在第三緩存字典中則不存在對應的唯一標識符。

在判斷待處理日志信息的維度信息是否存儲于維度信息表中時可以通過先判斷待處理日志信息的維度信息是否存在于第三緩存字典中。如果待處理日志信息的維度信息不存在于第三緩存字典中,則說明該待處理日志信息的維度信息不存在于維度信息表中;如果待處理日志信息的維度信息存在于第三緩存字典中,則繼續(xù)判斷該待處理日志信息的維度信息在第三緩存字典中是否有對應的唯一標識符,如果該待處理日志信息的維度信息在第三緩存字典中有對應的唯一標識符,則說明該待處理日志信息的維度信息已經存在于維度信息表中,如果該待處理日志信息的維度信息在第三緩存字典中沒有對應的唯一標識符,則說明該待處理日志信息的維度信息尚未存儲于維度信息表中。

優(yōu)選地,在判斷出待處理日志信息的維度信息不存在于第三緩存字典中時,該方法還包括:將待處理日志信息的維度信息存儲于第三緩存字典中,其中,在第三緩存字典中待處理日志信息的維度信息不存在對應的唯一標識符,第三緩存字典中存儲有多條待處理日志信息的維度信息,存儲待處理日志信息的維度信息至維度信息表中包括:統(tǒng)計第三緩存字典中不存在對應的唯一標識符的維度信息的數(shù)量;判斷第三緩存字典中不存在對應的唯一標識符的維度信息的數(shù)量是否大于預設值;以及在判斷出第三緩存字典中不存在對應的唯一標識符的維度信息的數(shù)量大于預設值時,將第三緩存字典中不存在對應的唯一標識符的維度信息批量存儲至維度信息表中。

本申請實施例在判斷出待處理日志信息的維度信息不存在于第三緩存字典中時,在第三緩存字典中存儲該待處理日志信息的維度信息,但是在第三緩存字典中該待處理日志信息的維度信息并沒有對應的唯一標識符,同時建立尚未存儲至維度信息表的維度信息和其對應的待處理日志信息的對應關系,并將其對應的待處理日志信息緩存起來??蛇x地,也可以將第三緩存字典中沒有對應的唯一標識符的維度信息備份一份存儲于第四緩存字典中,便于后續(xù)將尚未存儲至維度信息表的維度信息批量插入至維度信息表中。

當?shù)谌彺孀值渲猩形创鎯χ辆S度信息表的維度信息的數(shù)量大于預設值(例如,1萬條)時,則批量將第三緩存字典中沒有對應的唯一標識符的維度信息(或是第四緩存字典中存儲的維度信息)存儲至維度信息表中并生成其唯一標識符,并將該維度信息的唯一標識符和其對應的待處理日志信息關聯(lián)存儲至日志信息表中。需要說明的是, 也可以是在緩存中的待處理日志信息的數(shù)量大于預設值(例如,5萬條)時,批量將第三緩存字典中沒有對應的唯一標識符的維度信息。

需要說明的是,在將維度信息存入維度信息表和待處理日志信息存入日志信息表中之后,還需要對緩存進行清理,例如,清除緩存字典中的維度信息和緩存中的日志信息,以進行下一次的日志信息處理。具體地,在下一次日志信息處理時,本申請實施例可以根據(jù)更新后的維度信息表重新生成緩存字典,例如,第一緩存字典和第三緩存字典,并根據(jù)新生成的緩存字典進行日志信息處理。

圖3是根據(jù)本申請第二實施例的日志信息處理方法的流程圖。如圖3所示,該方法包括如下步驟:

步驟S302:獲取待處理日志信息的維度信息。

為了便于說明,以下稱待處理日志信息為DataObject,待處理日志信息的維度信息為DimObject。

步驟S304:判斷緩存字典1中是否存儲有待處理日志信息的維度信息。

該緩存字典1同上述第三緩存字典,在此不再贅述。具體地,以引用地址維度信息為例進行說明,緩存字典1中標識部分(key)可以是引用地址維度各個屬性值(例如,域名,路徑,第一參數(shù)、第二參數(shù)、其他參數(shù)等)組裝成的字符串或是該字符串的散列值(散列值占用的空間小,容易檢索),屬性值部分(value)為引用地址維度信息對象,例如,域名,路徑,第一參數(shù)、第二參數(shù)、其他參數(shù)等。根據(jù)DimObject的散列值去緩存字典1中查找DimObject對象,如果存在,則將查找到的DimObject對象添加到DataObject的DimObject屬性上(例如,通過對象引用的方式將查找到的DimObject對象添加到DataObject的DimObject屬性上),即關聯(lián)DimObject和其對應的DataObject。

如果緩存字典1存儲有DimObject,則執(zhí)行步驟S308,否則執(zhí)行步驟S306。

步驟S306:在緩存字典1中創(chuàng)建待處理日志信息的維度信息。即在緩存字典1存儲DimObject,其中,在緩存字典1中該DimObject沒有對應的唯一標識符。

步驟S308:判斷緩存字典1中存儲的待處理日志信息的維度信息是否有對應的唯一標識符。

如果該DimObject在緩存字典1中沒有對應的唯一標識符,則說明該DimObject尚未存儲至維度信息表中(即數(shù)據(jù)庫),執(zhí)行步驟S310,否則執(zhí)行步驟S318。

步驟S310:關聯(lián)待處理日志信息和該待處理日志信息的維度信息。

具體地,可以通過對象引用的方式將DimObject對象添加到DataObject的DimObject屬性上,以建立DataObject和DimObject的關聯(lián)。

步驟S312:將該待處理日志信息的維度信息存儲至緩存字典2中,并緩存該待處理日志信息。

具體地,本申請實施例將DimObject存儲于緩存字典2中,該DimObject關聯(lián)的DataObject存儲至緩存器中。

步驟S314:判斷緩存中的待處理日志信息的數(shù)量是否大于預設值。

本申請實施例也可以是判斷緩存字典2中存儲的DimObject數(shù)量是否大于預設值。如果緩存中待處理日志信息的數(shù)量大于預設值或是緩存字典2中存儲的DimObject數(shù)量大于預設值,則執(zhí)行步驟S316,否則執(zhí)行步驟S302,重新獲取新的待處理日志信息的維度信息。

步驟S316:將緩存字典2中維度信息存入維度信息表。

具體地,在將緩存字典2中維度信息存入維度信息表中之后,生成緩存字典2中每一條維度信息的唯一標識符。

步驟S318:將待處理日志信息存入日志信息表中。

由于一旦維度信息存儲至維度信息表中則相應的生成該維度信息的唯一標識符,此時僅需要將該待處理日志信息和其維度信息對應的唯一標識符關聯(lián)存儲至日志信息表,從而通過日志信息表可以快速查詢到日志信息對應的維度信息。

需要說明的是,在將緩存字典2中維度信息存入維度信息表和將緩存中待處理日志信息存入日志信息表中之后,還需要對緩存字典2和緩存進行清理,以進行下一次的日志信息處理。

本申請實施例通過對未存儲的維度信息和相應的日志信息分別進行緩存,等緩存的維度信息或相應的日志信息達到一定的數(shù)量后將維度信息進行批量存儲;其次通過對象關聯(lián)的方式將日志信息與維度信息進行關聯(lián),從而實現(xiàn)維度信息僅賦值一次對象唯一標識即可實現(xiàn)日志信息的批量關聯(lián)及存儲,不僅節(jié)省了存儲空間,而且能夠提高日志信息的查詢效率。

此外,本申請實施例通過對已存儲維度信息的緩存來減少相同維度信息對象的監(jiān)測和簡化維度解析過程,通過對新增維度信息和相應日志信息的緩存,從而減少單個維度信息的存儲從而減少磁盤IO開銷。通過日志信息與維度信息的關聯(lián)來達到新增維度信息的批量存儲及相關日志信息的快速關聯(lián)處理。

需要說明的是,在附圖的流程圖示出的步驟可以在諸如一組計算機可執(zhí)行指令的計算機系統(tǒng)中執(zhí)行,并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。

根據(jù)本申請實施例的另一方面,提供了一種日志信息處理裝置,該日志信息處理裝置可以用于執(zhí)行本申請實施例的日志信息處理方法,本申請實施例的日志信息處理方法也可以通過本申請實施例的日志信息處理裝置來執(zhí)行。

需要說明的是,本申請實施例的日志信息存儲于日志信息表中,日志信息的維度信息存儲于維度信息表中,其中,維度信息包括如下至少之一:引用地址維度信息、用戶代理維度信息和互聯(lián)網協(xié)議維度信息,日志信息表和維度信息表相關聯(lián)。圖4是根據(jù)本申請實施例的日志信息處理裝置的示意圖,如圖4所示,該裝置包括:第一獲取單元10、第一判斷單元20和第一存儲單元30。

第一獲取單元10,用于獲取待處理日志信息的維度信息。

第一判斷單元20,用于判斷待處理日志信息的維度信息是否存儲于維度信息表中。

優(yōu)選地,第一判斷單元20包括:獲取模塊,用于獲取第一緩存字典,其中,第一緩存字典中存儲有已經存儲至維度信息表的維度信息;第一判斷模塊,用于判斷待處理日志信息的維度信息是否存在于第一緩存字典中;以及確定模塊,用于在判斷出待處理日志信息的維度信息不存在于第一緩存字典中時,則確定待處理日志信息的維度信息未存儲于維度信息表中,在判斷出待處理日志信息的維度信息存在于第一緩存字典中時,則確定待處理日志信息的維度信息存儲于維度信息表中。

優(yōu)選地,第一判斷模塊包括:運算子模塊,用于對待處理日志信息的維度信息對應的字符串進行散列運算,得到待處理日志信息的維度信息對應的散列值;判斷子模塊,用于判斷待處理日志信息的維度信息對應的散列值是否存在于第一緩存字典中;確定子模塊,用于在判斷出待處理日志信息的維度信息對應的散列值存在于第一緩存字典中時,確定待處理日志信息的維度信息存在于第一緩存字典中,在判斷出待處理日志信息的維度信息對應的散列值不存在于第一緩存字典中時,確定待處理日志信息的維度信息不存在于第一緩存字典中。

第一存儲單元30,用于在判斷出待處理日志信息的維度信息存儲于維度信息表中時,則不重復存儲待處理日志信息的維度信息,在判斷出待處理日志信息的維度信息未存儲于維度信息表中時,則存儲待處理日志信息的維度信息至維度信息表中。

本申請實施例將日志信息存儲于日志信息表中,日志信息的維度信息存儲于維度信息表中,并將日志信息表和維度信息表相關聯(lián),此外,通過第一獲取單元10獲取待 處理日志信息的維度信息,第一判斷單元20判斷待處理日志信息的維度信息是否存儲于維度信息表中,第一存儲單元30在判斷出待處理日志信息的維度信息存儲于維度信息表中時,則不重復存儲待處理日志信息的維度信息,在判斷出待處理日志信息的維度信息未存儲于維度信息表中時,則存儲待處理日志信息的維度信息至維度信息表中,避免了相同的維度信息重復,存儲解決了相關技術中日志信息存儲浪費存儲空間的問題,進而達到了節(jié)省存儲空間效果。

可選地,該裝置還包括:第一生成單元,用于生成待處理日志信息的維度信息的唯一標識符;以及第二存儲單元,用于根據(jù)唯一標識符存儲待處理日志信息至日志信息表中。

優(yōu)選地,在判斷出待處理日志信息的維度信息不存在于第一緩存字典中時,該裝置還包括:第二判斷單元,用于判斷待處理日志信息的維度信息是否存儲于第二緩存字典中,其中,第二緩存字典用于存儲尚未存儲至維度信息表的維度信息;第三存儲單元,用于在待處理日志信息的維度信息未存儲于第二緩存字典中,存儲待處理日志信息的維度信息至第二緩存字典中,在待處理日志信息的維度信息存儲于第二緩存字典中時,不重復存儲待處理日志信息的維度信息至第二緩存字典,第二緩存字典中存儲有多條待處理日志信息的維度信息,第一存儲單元包括:第二判斷模塊,用于判斷第二緩存字典中維度信息的數(shù)量是否大于預設值;以及存儲模塊,用于在判斷出第二緩存字典中維度信息的數(shù)量大于預設值時,將第二緩存字典中的維度信息批量存儲至維度信息表中。

可選地,在判斷出第二緩存字典中維度信息的數(shù)量大于預設值時,將第二緩存字典中的維度信息批量存儲至維度信息表中之后,該裝置還包括:第二生成單元,用于分別生成第二緩存字典中每一條維度信息對應的唯一標識符;以及第四存儲單元,用于根據(jù)每一條維度信息對應的唯一標識符將每一條維度信息對應的待處理日志信息存儲至日志信息表中。

上述本申請實施例序號僅僅為了描述,不代表實施例的優(yōu)劣。

在本申請的上述實施例中,對各個實施例的描述都各有側重,某個實施例中沒有詳述的部分,可以參見其他實施例的相關描述。

在本申請所提供的幾個實施例中,應該理解到,所揭露的技術內容,可通過其它的方式實現(xiàn)。其中,以上所描述的裝置實施例僅僅是示意性的,例如所述單元的劃分,可以為一種邏輯功能劃分,實際實現(xiàn)時可以有另外的劃分方式,例如多個單元或組件可以結合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,單元或模 塊的間接耦合或通信連接,可以是電性或其它的形式。

所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個單元上。可以根據(jù)實際的需要選擇其中的部分或者全部單元來實現(xiàn)本實施例方案的目的。

另外,在本申請各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實現(xiàn),也可以采用軟件功能單元的形式實現(xiàn)。

所述集成的單元如果以軟件功能單元的形式實現(xiàn)并作為獨立的產品銷售或使用時,可以存儲在一個計算機可讀取存儲介質中。基于這樣的理解,本申請的技術方案本質上或者說對現(xiàn)有技術做出貢獻的部分或者該技術方案的全部或部分可以以軟件產品的形式體現(xiàn)出來,該計算機軟件產品存儲在一個存儲介質中,包括若干指令用以使得一臺計算機設備(可為個人計算機、服務器或者網絡設備等)執(zhí)行本申請各個實施例所述方法的全部或部分步驟。而前述的存儲介質包括:U盤、只讀存儲器(ROM,Read-Only Memory)、隨機存取存儲器(RAM,Random Access Memory)、移動硬盤、磁碟或者光盤等各種可以存儲程序代碼的介質。

以上所述僅是本申請的優(yōu)選實施方式,應當指出,對于本技術領域的普通技術人員來說,在不脫離本申請原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也應視為本申請的保護范圍。

當前第1頁1 2 3 
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1