專利名稱:一種個(gè)人數(shù)據(jù)空間環(huán)境下的任務(wù)識(shí)別系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及任務(wù)識(shí)別技術(shù)領(lǐng)域,尤其是涉及一種個(gè)人數(shù)據(jù)空間環(huán) 境下的任務(wù)識(shí)別系統(tǒng)和方法。
背景技術(shù):
計(jì)算機(jī)技術(shù)的飛速發(fā)展在給人們提供了很大便利的同時(shí),也給人們帶來(lái)新的數(shù)據(jù)管理的問(wèn)題用戶面臨的數(shù)據(jù)的數(shù)量和種類越來(lái)越多, 這些個(gè)人數(shù)據(jù)信息具有異構(gòu)、分布、演化的特性,傳統(tǒng)的數(shù)據(jù)庫(kù)管理 技術(shù)不能對(duì)其進(jìn)行有效管理;與此同時(shí),用戶管理個(gè)人數(shù)據(jù)的手段以 及可以投入管理數(shù)據(jù)的精力并沒(méi)有提高。在這種情況下,管理紛繁復(fù) 雜的個(gè)人數(shù)據(jù)使得人們?nèi)找媪Σ粡男?。如何有效的進(jìn)行個(gè)人數(shù)據(jù)管理, 成為一個(gè)極富挑戰(zhàn)性的問(wèn)題,于是人們提出了一種新的數(shù)據(jù)管理技術(shù): 個(gè)人數(shù)據(jù)空間。不同于傳統(tǒng)的數(shù)據(jù)管理技術(shù),主體人的特性在個(gè)人數(shù)據(jù)空間中具 有重要作用,對(duì)于主體行為特性的研究以及在個(gè)人數(shù)據(jù)空間管理中的 應(yīng)用日益成為研究熱點(diǎn)。主體的數(shù)據(jù)管理需求有多種,在不同的環(huán)境 下往往需要采用不同的方法。例如有的時(shí)候需要根據(jù)關(guān)鍵字查詢,有 的時(shí)候需要通過(guò)資源瀏覽器查詢,有的時(shí)候需要基于任務(wù)進(jìn)行查詢。 但是現(xiàn)階段的個(gè)人數(shù)據(jù)管理工具所提供的方法比較有限,無(wú)法適應(yīng)個(gè) 人數(shù)據(jù)管理需求。桌面搜索和文件系統(tǒng)的資源瀏覽器是目前最常使用的個(gè)人數(shù)據(jù)管 理工具。桌面搜索的核心是通過(guò)對(duì)桌面文件建立全文索引支持關(guān)鍵字查詢。這種方法有以下局限性 一是對(duì)于一些4艮長(zhǎng)時(shí)間沒(méi)有^f吏用的文 件,用戶往往不能準(zhǔn)確回憶起所需要的關(guān)鍵字,這種情況下這種搜索 技術(shù)就不能有效的工作;二是這種方式不能夠支持一些基于語(yǔ)義關(guān)聯(lián) 的復(fù)雜查詢,而且全文索引也往往導(dǎo)致比較低的效率。資源瀏覽器搜 索需要用戶能夠回憶起文件的存放路徑。因此這些工具在一些情況下 不能很好地滿足用戶需求。例如當(dāng)用戶想查找一篇個(gè)人文檔,但又記 不起文件的存放位置和關(guān)鍵字信息的時(shí)候,這些工具就不能很好的支 持用戶查詢。觀察發(fā)現(xiàn)任務(wù)(Task)是人們組織管理個(gè)人數(shù)據(jù)的重要方式。例如 人們往往基于任務(wù)構(gòu)建個(gè)人目錄結(jié)構(gòu);往往需要查詢與某個(gè)任務(wù)關(guān)聯(lián) 的文件等。本發(fā)明就是基于用戶任務(wù)管理的需求,提出了 一種自動(dòng)的個(gè)人任 務(wù)識(shí)別方法。發(fā)明內(nèi)容本發(fā)明是鑒于上述技術(shù)問(wèn)題而產(chǎn)生的。本發(fā)明的一個(gè)目的是提出 一種個(gè)人數(shù)據(jù)空間環(huán)境下的任務(wù)識(shí)別系統(tǒng)和方法。在一個(gè)方面中,根據(jù)本發(fā)明的個(gè)人數(shù)據(jù)空間環(huán)境下的任務(wù)識(shí)別系 統(tǒng)包括數(shù)據(jù)庫(kù),用于存儲(chǔ)用戶操作日志表、用戶文件表、以及用戶 行為日志表;監(jiān)控模塊,用于監(jiān)控用戶操作,獲取用戶的操作記錄, 生成用戶行為記錄;時(shí)序關(guān)聯(lián)圖產(chǎn)生模塊,用于基于用戶行為日志表 生成時(shí)序關(guān)聯(lián)圖;以及任務(wù)識(shí)別模塊,用于在時(shí)序關(guān)聯(lián)圖上識(shí)別任務(wù)。在這個(gè)方面中,其中監(jiān)控模塊進(jìn)一步包括獲取單元用于掃描用 戶最近訪問(wèn)的文件夾,獲取用戶最近訪問(wèn)的文件F,同時(shí)根據(jù)用戶操作 日志表獲取該表中所記錄的用戶最近訪問(wèn)文件F,;判斷單元,用于判 斷文件F和F,是否是同 一個(gè)文件,并且在判斷出文件F和F,不是同一個(gè)文件的情況下,進(jìn)一步判斷文件F是否存在于用戶文件表中;文件 插入單元,用于在判斷單元判斷出文件F不存在于用戶文件表中的情 況下將文件F插入到用戶文件表中;時(shí)間比較單元,用于在判斷單元 判斷出文件F存在于用戶文件表中的情況下將新操作的文件F的修改 時(shí)間t與用戶文件表中該文件原來(lái)的修改時(shí)間t,進(jìn)行比較;操作類型確 定單元,用于在時(shí)間比較單元比較出t〉t,的情況下確定操作類型為"修 改",同時(shí)對(duì)用戶文件表中相應(yīng)記錄的最近修改時(shí)間字段進(jìn)行更新,否 則確定操作類型為"只讀,,;操作記錄插入單元用于將新的用戶操作記 錄插入到用戶行為日志表中。在這個(gè)方面中,其中時(shí)序關(guān)聯(lián)圖產(chǎn)生模塊進(jìn)一步包括初始時(shí)序 關(guān)聯(lián)圖構(gòu)建單元,用于基于用戶行為日志表構(gòu)建初始的時(shí)序關(guān)聯(lián)圖; 優(yōu)化時(shí)序關(guān)聯(lián)圖生成單元,用于基于初始的時(shí)序關(guān)聯(lián)圖生成優(yōu)化的時(shí) 序關(guān)聯(lián)圖。在這個(gè)方面中,其中任務(wù)識(shí)別模塊進(jìn)一步包括矩陣表示單元, 用于以鄰接矩陣方式表示時(shí)序關(guān)聯(lián)圖;核心文件確定單元,用于基于 操作類型來(lái)確定每個(gè)任務(wù)的核心文件;稠密塊尋找單元,用于基于每 個(gè)核心文件尋找該文件在時(shí)序關(guān)聯(lián)圖的稠密塊。在一個(gè)方面中,根據(jù)本發(fā)明的個(gè)人數(shù)據(jù)空間環(huán)境下的任務(wù)識(shí)別方 法包括步驟A、監(jiān)控用戶操作,獲取用戶的操作記錄,生成用戶行為 記錄;B、基于用戶行為日志表生成時(shí)序關(guān)聯(lián)圖;以及C、在時(shí)序關(guān)聯(lián) 圖上識(shí)別任務(wù)。在這個(gè)方面中,其中步驟A進(jìn)一步包括Al、掃描用戶最近訪問(wèn) 的文件夾,獲取用戶最近訪問(wèn)的文件F,同時(shí)根據(jù)用戶日志表獲取該表 中所記錄的用戶最近訪問(wèn)文件F,; A2、判斷文件F和F,是否是同一個(gè) 文件,如果是,則不進(jìn)行操作,繼續(xù)執(zhí)行步驟A1;如果不是,則轉(zhuǎn)步 驟A3; A3:判斷文件F是否存在于用戶文件表中,如果不存在,則將F插入到用戶文件表中,并轉(zhuǎn)步驟A5;如果存在,則轉(zhuǎn)步驟A4; A4: 將新操作的文件F的修改時(shí)間t與用戶文件表中該文件原來(lái)的修改時(shí)間 t,進(jìn)行比較,如果t〉t,,則確定文件F的操作類型為"修改",否則確 定文件F的操作類型為"只讀";A5:將以上步驟所生成新的用戶操作 記錄插入到用戶4亍為日志表中。在這個(gè)方面中,其中步驟B進(jìn)一步包括Bl、基于用戶行為日志 表構(gòu)建初始的時(shí)序關(guān)聯(lián)圖;B2、基于初始的時(shí)序關(guān)聯(lián)圖生成優(yōu)化的時(shí) 序關(guān)聯(lián)圖。在這個(gè)方面中,其中在步驟B1中對(duì)應(yīng)每個(gè)單獨(dú)的用戶文件,生 成圖上的一個(gè)點(diǎn);根據(jù)兩個(gè)文件之間是否存在時(shí)序關(guān)聯(lián),在兩個(gè)文件 對(duì)應(yīng)的頂點(diǎn)之間建立邊。在這個(gè)方面中,其中在步驟B2中在初始的時(shí)序關(guān)聯(lián)圖上尋找時(shí) 序鏈結(jié)構(gòu),將時(shí)序鏈結(jié)構(gòu)合并為一個(gè)頂點(diǎn),其中時(shí)序鏈結(jié)構(gòu)為在時(shí)序 關(guān)聯(lián)圖G上,若存在點(diǎn)vl, v2,…,vn(r^4)以使得vi(i-2,…, n-l)僅與vi-l、 vi+l相鄰,且vl、 vn度數(shù)不等于2,則v2,…,vn-l 構(gòu)成時(shí)序鏈結(jié)構(gòu)。在這個(gè)方面中,其中步驟C進(jìn)一步包括Cl、以鄰接矩陣方式表 示時(shí)序關(guān)聯(lián)圖,每個(gè)頂點(diǎn)對(duì)應(yīng)一個(gè)用戶文件,每個(gè)邊對(duì)應(yīng)用戶之間的 時(shí)序關(guān)聯(lián)度;C2、基于操作類型確定每個(gè)任務(wù)的核心文件;C3、基于 每個(gè)核心文件,尋找該文件在時(shí)序關(guān)聯(lián)圖的稠密塊。在這個(gè)方面中,其中步驟C3進(jìn)一步包括C3-l、將核心文件A 以及與之直接關(guān)聯(lián)的文件Bi加入到頂點(diǎn)集合T中,其中文件Bi為在 時(shí)序關(guān)聯(lián)圖中與核心文件A相鄰的頂點(diǎn);C3-2、對(duì)于T中每個(gè)頂點(diǎn)Fi 而言,對(duì)與Fi相鄰的每個(gè)頂點(diǎn)V^j進(jìn)行檢測(cè);C3-3、如果存在兩條邊 El (Vij, VI)和E2 (VU, V2),且V1, V2GT,則將Vij加入到T 中;C3-4、重復(fù)步驟C3-2和C3-3,直到T中的頂點(diǎn)數(shù)目不再增加為止,此時(shí)T中頂點(diǎn)即為對(duì)應(yīng)核心文件A所在的稠密塊。通過(guò)本發(fā)明,可自動(dòng)監(jiān)控用戶行為,識(shí)別個(gè)人任務(wù)信息,不會(huì)為 用戶增加額外的負(fù)擔(dān)。本發(fā)明是實(shí)現(xiàn)個(gè)人任務(wù)管理的基礎(chǔ)
結(jié)合隨后的附圖,從下面的詳細(xì)說(shuō)明中可顯而易見(jiàn)的得出本發(fā)明 的上述及其他目的、特征及優(yōu)點(diǎn)。在附圖中圖1示出了根據(jù)本發(fā)明的任務(wù)識(shí)別系統(tǒng)的方框圖;圖2示出了根據(jù)本發(fā)明的四個(gè)表的示例;圖3示出了根據(jù)發(fā)明的監(jiān)控模塊的方框圖;圖4示出了根據(jù)發(fā)明的時(shí)序關(guān)聯(lián)圖產(chǎn)生模塊的方框圖;圖5示出了根據(jù)發(fā)明的任務(wù)識(shí)別模塊的方框圖;圖6示出了根據(jù)本發(fā)明的任務(wù)識(shí)別方法的流程圖;圖7示出了根據(jù)本發(fā)明的任務(wù)識(shí)別方法的子流程圖;圖8示出了根據(jù)本發(fā)明的任務(wù)識(shí)別方法的另一子流程圖;圖9示出了根據(jù)本發(fā)明的任務(wù)識(shí)別方法的又一子流程圖;圖IO示出了根據(jù)本發(fā)明的用戶行為日志表的示例;圖11示出了根據(jù)本發(fā)明的基于用戶行為日志構(gòu)建時(shí)序關(guān)聯(lián)圖的示例;圖12示出了根據(jù)本發(fā)明的一個(gè)時(shí)序鏈結(jié)構(gòu)的合并示例;圖13示出了根據(jù)本發(fā)明的稠密快的示例;圖14示出了與圖u中的時(shí)序關(guān)聯(lián)圖相對(duì)應(yīng)的鄰接矩陣的示例。
具體實(shí)施方式
為了更全面地理解本發(fā)明及其優(yōu)點(diǎn),下面結(jié)合附圖及具體實(shí)施例 對(duì)本發(fā)明做進(jìn)一 步詳細(xì)地說(shuō)明。為了便于理解期間,首先對(duì)幾個(gè)概念進(jìn)行簡(jiǎn)單地描述。用戶文件指用戶數(shù)據(jù)空間中的最小的操作單位,記為Item。 用戶行為指用戶對(duì)個(gè)人數(shù)據(jù)空間的一次操作,包括以下屬性操作時(shí)間(AccessTime)、操作的數(shù)據(jù)文件(FileName),操作類型 (OperationType )。任務(wù)從數(shù)據(jù)管理的角度,任務(wù)是一系列個(gè)人數(shù)據(jù)文件的集合,根據(jù)在任務(wù)中地位的不同,這些文件可以分為兩類表示任務(wù)目標(biāo)的核心文件(CoreFile);為完成任務(wù)目標(biāo)參考訪問(wèn)的數(shù)據(jù)文件 (ReferenceFile )。接下來(lái),參考圖1,對(duì)根據(jù)本發(fā)明的系統(tǒng)框圖進(jìn)行詳細(xì)地說(shuō)明。 如圖1所示,根據(jù)本發(fā)明的系統(tǒng)包括數(shù)據(jù)庫(kù)、監(jiān)控模塊、時(shí)序關(guān)聯(lián)圖產(chǎn)生模塊、任務(wù)識(shí)別模塊。數(shù)據(jù)庫(kù)中主要包括如圖2所示的用戶操作日志表、用戶文件表、文件時(shí)序關(guān)聯(lián)表、以及任務(wù)表。此外,該數(shù)據(jù)庫(kù)還包括如圖IO所示的用戶行為日志表。當(dāng)然本發(fā)明并不局限于這些表,而是可以保護(hù)任何適當(dāng)?shù)谋?。監(jiān)控模塊用于監(jiān)控用戶操作,獲取用戶的操作記錄,生成用戶行 為記錄。隨后參考圖3,對(duì)該監(jiān)控模塊進(jìn)行更詳細(xì)地描述。時(shí)序關(guān)聯(lián)圖產(chǎn)生模塊用于基于用戶行為日志表生成時(shí)岸關(guān)聯(lián)圖。 隨后參考圖4,對(duì)該時(shí)序關(guān)聯(lián)圖產(chǎn)生模塊進(jìn)行更詳細(xì)地描述。任務(wù)識(shí)別模塊用于在優(yōu)化的時(shí)序關(guān)聯(lián)圖上識(shí)別任務(wù)。隨后參考圖 5,對(duì)該任務(wù)識(shí)別模塊進(jìn)行更詳細(xì)地描述。下面 參考圖3,對(duì)根據(jù)本發(fā)明的監(jiān)控模塊進(jìn)行說(shuō)明。如圖3所示,該監(jiān)控模塊包括獲取單元、判斷單元、文件插入單 元、時(shí)間比較單元、操作類型確定單元、以及操作記錄插入單元。獲取單元用于掃描用戶最近訪問(wèn)的文件夾,獲取用戶最近訪問(wèn)的文件F,同時(shí)根據(jù)用戶操作日志表獲取該表中所記錄的用戶最近訪問(wèn)文 件F,。
判斷單元用于判斷文件F和F,是否是同一個(gè)文件,并且在判斷出 文件F和F,不是同一個(gè)文件的情況下,進(jìn)一步判斷文件F是否存在于 用戶文件表中。
文件插入單元用于在判斷單元判斷出文件F不存在于用戶文件表 中的情況下將文件F插入到用戶文件表中。
的情況下將新操作的文件F的修改時(shí)間t與用戶文件表中該文件原來(lái)的 修改時(shí)間t,進(jìn)行比較。
操作類型確定單元用于在t〉t,的情況下確定操作類型O為"修 改",同時(shí)對(duì)用戶文件表中相應(yīng)記錄的最近修改時(shí)間字段進(jìn)行更新,否 則確定操作類型O為"只讀"。
操作記錄插入單元用于將新的用戶操作記錄(文件名F,操作時(shí)間 t,操作類型0)插入到用戶行為日志表中。
下面參考圖4,對(duì)根據(jù)本發(fā)明的時(shí)序關(guān)聯(lián)圖產(chǎn)生模塊進(jìn)行說(shuō)明。
該時(shí)序關(guān)聯(lián)圖產(chǎn)生模塊包括初始時(shí)序關(guān)聯(lián)圖構(gòu)建單元和優(yōu)化時(shí)序 關(guān)聯(lián)圖生成單元。
初始時(shí)序關(guān)聯(lián)圖構(gòu)建單元用于基于用戶行為日志表構(gòu)建初始的時(shí) 序關(guān)聯(lián)圖。
優(yōu)化時(shí)序關(guān)聯(lián)圖生成單元用于基于初始的時(shí)序關(guān)聯(lián)圖生成優(yōu)化的 時(shí)序關(guān)聯(lián)圖。
下面參考圖5,對(duì)根據(jù)本發(fā)明的任務(wù)識(shí)別模塊進(jìn)行說(shuō)明。 如圖5所示,該任務(wù)識(shí)別模塊包括矩陣表示單元、核心文件確定 單元、以及稠密塊尋找單元。
矩陣表示單元用于以鄰接矩陣方式表示時(shí)序關(guān)聯(lián)圖,每個(gè)頂點(diǎn)對(duì)應(yīng)一個(gè)用戶文件,每個(gè)邊對(duì)應(yīng)用戶之間的時(shí)序關(guān)聯(lián)度。
核心文件確定單元用于基于操作類型來(lái)確定每個(gè)任務(wù)的核心文件。
稠密塊尋找單元用于基于每個(gè)核心文件構(gòu)建該文件在時(shí)序關(guān)聯(lián)圖 的稠密塊。具體地說(shuō),該稠密塊尋找單元進(jìn)一步包括
接下來(lái),參考圖6,對(duì)根據(jù)本發(fā)明的個(gè)人數(shù)據(jù)空間環(huán)境下的任務(wù)識(shí)
別方法進(jìn)4亍詳細(xì)地^兌明。
如圖6所示,該個(gè)人數(shù)據(jù)空間環(huán)境下的數(shù)據(jù)識(shí)別方法包括步驟 A、監(jiān)控用戶操作,獲取用戶的操作記錄,生成用戶操作記錄。 由于本發(fā)明是一種自動(dòng)的識(shí)別個(gè)人任務(wù)的方法,因此用戶操作曰
志是進(jìn)行任務(wù)識(shí)別的重要依據(jù)。
具體地說(shuō),如圖7所示,該步驟A進(jìn)一步包括
步驟A1):掃描用戶最近訪問(wèn)的文件夾,獲取用戶最近訪問(wèn)的文
件F,同時(shí)根據(jù)用戶操作日志表獲取該表中所記錄的用戶最近訪問(wèn)文件F,。
如圖2所示,用戶操作日志表包4舌訪問(wèn)時(shí)間、文件名稱、文件 路徑、以及操作類型。
步驟A2 ):根據(jù)文件名稱和文件路徑來(lái)判斷文件F和F,是否是同 一個(gè)文件,如果是,則認(rèn)為訪問(wèn)的數(shù)據(jù)文件沒(méi)有變化,不進(jìn)行操作, 繼續(xù)執(zhí)行步驟A1;如果不是,則認(rèn)為發(fā)生了新的數(shù)據(jù)操作,轉(zhuǎn)步驟 A3;
步驟A3 ):根據(jù)文件名稱和文件路徑來(lái)判斷文件F是否存在于用 戶文件表中,如果不存在,則說(shuō)明訪問(wèn)了一個(gè)新的用戶文件(即原來(lái) 沒(méi)有訪問(wèn)過(guò)的文件),則將F插入到用戶文件表中,并轉(zhuǎn)步驟A5;如 果存在,則轉(zhuǎn)步驟A4。
如圖2所示,用戶文件表包括文件標(biāo)識(shí)符、文件名稱、存放路徑、以及最近修改時(shí)間。
步驟A4):將新操作的文件F的修改時(shí)間t與用戶文件表中該文件 原來(lái)的修改時(shí)間t,進(jìn)行比較,如果t〉t,,則認(rèn)為用戶對(duì)文件F進(jìn)行的操 作類型O為"修改",同時(shí)對(duì)用戶文件表中相應(yīng)記錄的最近修改時(shí)間字 段進(jìn)行更新;否則,認(rèn)為用戶對(duì)F進(jìn)行了只讀訪問(wèn),操作類型O為"只讀"。
步驟A5 ):將以上步驟所生成新的用戶操作記錄(文件名F,操作 時(shí)間t,操作類型0)插入到用戶行為日志表中。如圖10所示,圖10 給出了用戶行為日志表的示例。
B、基于用戶行為日志表生成時(shí)序關(guān)聯(lián)圖。 具體地說(shuō),如圖8所示,該步驟B進(jìn)一步包括 步驟B1):基于用戶行為日志表構(gòu)建初始的時(shí)序關(guān)聯(lián)圖。 構(gòu)建規(guī)則如下對(duì)應(yīng)每個(gè)單獨(dú)的用戶文件,生成圖上的一個(gè)點(diǎn); 根據(jù)兩個(gè)文件之間是否存在時(shí)序關(guān)聯(lián),在兩個(gè)文件對(duì)應(yīng)的頂點(diǎn)之間建 立邊。例如,如果文件A在文件B后^皮用戶訪問(wèn),則^人為數(shù)據(jù)項(xiàng)A與 數(shù)據(jù)項(xiàng)B之間存在時(shí)序關(guān)聯(lián)。圖11示出了基于用戶行為日志構(gòu)建時(shí)序 關(guān)聯(lián)圖的示例,左邊示出了一個(gè)日志片段,右邊示出了基于該日志片 段生成的時(shí)序關(guān)聯(lián)圖。
步驟B2):基于初始的時(shí)序關(guān)聯(lián)圖生成優(yōu)化的時(shí)序關(guān)聯(lián)圖。 具體地說(shuō),在初始的時(shí)序關(guān)聯(lián)圖上尋找時(shí)序鏈結(jié)構(gòu),將時(shí)序鏈結(jié) 構(gòu)合并為一個(gè)頂點(diǎn)。其中將時(shí)序鏈結(jié)構(gòu)定義為在時(shí)序關(guān)聯(lián)圖G上, 若存在點(diǎn)vl, v2,…,vn (n24)以使得vi (i=2,…,n-l)僅與vi-l、 vi+l相鄰,且vl、 vn度數(shù)不等于2,則v2,…,vn-l構(gòu)成時(shí)序鏈結(jié)構(gòu), 其中度數(shù)定義為與一個(gè)頂點(diǎn)相關(guān)聯(lián)的邊的數(shù)目。圖12示出了一個(gè)時(shí)序 鏈結(jié)構(gòu)的合并示例,圖12左圖中頂點(diǎn)a、 b和c構(gòu)成一個(gè)時(shí)序鏈結(jié)構(gòu), 右圖為將a、 b和c合并為一個(gè)頂點(diǎn)的視圖。
14c、在優(yōu)化的時(shí)序關(guān)聯(lián)圖上識(shí)別任務(wù)。
具體地說(shuō),如圖9所示,該步驟C進(jìn)一步包括
步驟C1):以鄰接矩陣方式表示時(shí)序關(guān)聯(lián)圖,每個(gè)頂點(diǎn)對(duì)應(yīng)一個(gè) 用戶文件,每個(gè)邊對(duì)應(yīng)用戶之間的時(shí)序關(guān)聯(lián)度。圖14示出了與圖11 中的時(shí)序關(guān)聯(lián)圖相對(duì)應(yīng)的鄰接矩陣。其中對(duì)角線元素設(shè)定為1;對(duì)于非 對(duì)角線元素,為1表示所對(duì)應(yīng)的兩個(gè)頂點(diǎn)之間存在一條邊(在時(shí)序關(guān) 聯(lián)圖中),為0表示不存在這樣的邊。
步驟C2):基于操作類型確定每個(gè)任務(wù)的核心文件。由于用戶操作 日志表中記錄了操作類型信息,因此可以基于日志中用戶修改過(guò)的文 件來(lái)確定用戶的核心文件列表Core List。
CoreList的構(gòu)建方法如下用戶操作日志表中每一條記錄包含一個(gè) 操作類型字段。該字段有兩個(gè)取值修改或只讀(新建用戶文件操作 包含在修改類型之內(nèi))。日志表中所有操作類型標(biāo)志為"修改,,的記錄 涉及的數(shù)據(jù)對(duì)象集合構(gòu)成CoreList。
CoreList中的每一個(gè)文件是一個(gè)任務(wù)的核心文件。
步驟C3):基于每個(gè)核心文件,尋找該文件在時(shí)序關(guān)聯(lián)圖的稠密塊。
首先,對(duì)稠密塊進(jìn)行說(shuō)明。其定義如下G是一個(gè)稠密塊,其不 僅符合塊的定義,而且滿足條件不存在el, e2,使得G-el-e2由兩 個(gè)連通分支G1和G2組成,且G1和G2的頂點(diǎn)數(shù)都大于1。圖13給 出了稠密快的示例。其中G1是一個(gè)稠密塊,G2是一個(gè)普通的塊。對(duì) 稠密塊G1來(lái)說(shuō),不存在兩條邊使得當(dāng)這兩條邊被割掉時(shí),Gl被分為 兩個(gè)度數(shù)均大于1的連通分支。在G1中,割掉邊el, e2形成的兩連 通分支中有一個(gè)度數(shù)為l。 G2是一個(gè)普通的塊,它滿足塊的定義連 通且不存在割點(diǎn)。但是當(dāng)e3、 e4被去掉,該塊可以被分成度數(shù)分別為 2和3的兩個(gè)連通分支,因此不是稠密塊。按照此方法, 一個(gè)稠密快如果包含一個(gè)核心文件(即用戶修改或建立的文件),則該稠密快中所有 頂點(diǎn)對(duì)應(yīng)的文件構(gòu)成一個(gè)任務(wù)。
在該步驟中,G是基于時(shí)序關(guān)聯(lián)表構(gòu)建的時(shí)序關(guān)聯(lián)圖,圖的每個(gè) 頂點(diǎn)代表一個(gè)用戶文件,邊表示兩個(gè)文件凈皮訪問(wèn)的時(shí)序關(guān)系。以圖ll 所示的時(shí)序關(guān)聯(lián)圖為例,可以得到其關(guān)聯(lián)矩陣,如圖14所示。
假設(shè)A是一個(gè)任務(wù)的核心文件,其所對(duì)應(yīng)的稠密塊所包含的頂點(diǎn) 集合為T(mén)。以A為核心尋找稠密快的具體步驟如下
步驟C3-1):開(kāi)始時(shí)丁={八},即只包含所對(duì)應(yīng)的核心文件。將與A 直接關(guān)聯(lián)的文件Bi加入到頂點(diǎn)集合T中。其中文件Bi定義為在時(shí)序 關(guān)聯(lián)圖中A與Bi為相鄰頂點(diǎn)。該例子中與頂點(diǎn)A直接相鄰的頂點(diǎn)包括 B, C, D,因此T叫A, B, C, D}。
步驟C3-2):對(duì)于T中每個(gè)頂點(diǎn)Fi而言,對(duì)與Fi相鄰的每個(gè)頂點(diǎn) Vij進(jìn)行檢測(cè);
步驟C3-3):如果存在兩條邊E1 (Wj, VI)和E2 (V2),且 VI , V2 e T,則將VU加入到T中;
步驟C3-4 ): 重復(fù)步驟C3-2 )和C3-3 ),直到T中的頂點(diǎn)數(shù)目不 再增力口為止。
在本例中,與A, B, C, D相鄰的頂點(diǎn)只有E,而且,不存在兩 條與E相鄰的邊,其另外兩個(gè)頂點(diǎn)在(A, B, C, D)中。所以不再繼續(xù) 執(zhí)行。因此T-(A, B, C, D)對(duì)應(yīng)一個(gè)包含核心文件A的稠密快。
步驟C3-5 ): 將T中所有頂點(diǎn)對(duì)應(yīng)的文件加入到F中,F(xiàn)即為一 個(gè)任務(wù)所關(guān)聯(lián)的用戶文件,且該任務(wù)目標(biāo)文件是A。
至此,根據(jù)本發(fā)明的任務(wù)識(shí)別方法的工作流程已結(jié)束。在步驟C3-4 中所得到的T即就是任務(wù)識(shí)別的結(jié)果。任務(wù)識(shí)別的結(jié)果就是找出與一 個(gè)任務(wù)關(guān)聯(lián)的數(shù)據(jù)文件的集合。
通過(guò)上述可知,本發(fā)明具有簡(jiǎn)潔、高效、容易實(shí)現(xiàn)的特性?;诒景l(fā)明,用戶只需按照自己的行為習(xí)慣操作個(gè)人數(shù)據(jù)文件,本發(fā)明自 動(dòng)的監(jiān)控用戶行為,識(shí)別個(gè)人任務(wù)信息,不會(huì)為用戶增加額外的負(fù)擔(dān)。 本發(fā)明是實(shí)現(xiàn)個(gè)人任務(wù)管理的基礎(chǔ)。通過(guò)自動(dòng)標(biāo)識(shí)個(gè)人任務(wù),可以支 持用戶實(shí)現(xiàn)基于任務(wù)的數(shù)據(jù)查詢、數(shù)據(jù)備份等操作。
對(duì)于本領(lǐng)域的普通技術(shù)人員來(lái)說(shuō)可顯而易見(jiàn)的得出其他優(yōu)點(diǎn)和修
述的具體說(shuō)明及示例性實(shí)施例。因此,在不脫離由隨后權(quán)利要求及其 等價(jià)體所定義的一般發(fā)明構(gòu)思的精神和范圍的情況下,可對(duì)其做出各
種修改。
權(quán)利要求
1、一種個(gè)人數(shù)據(jù)空間環(huán)境下的任務(wù)識(shí)別系統(tǒng)包括數(shù)據(jù)庫(kù),用于存儲(chǔ)用戶操作日志表、用戶文件表、以及用戶行為日志表;監(jiān)控模塊,用于監(jiān)控用戶操作,獲取用戶的操作記錄,生成用戶行為記錄;時(shí)序關(guān)聯(lián)圖產(chǎn)生模塊,用于基于用戶行為日志表生成時(shí)序關(guān)聯(lián)圖;以及任務(wù)識(shí)別模塊,用于在時(shí)序關(guān)聯(lián)圖上識(shí)別任務(wù)。
2、 根據(jù)權(quán)利要求1的系統(tǒng),其中監(jiān)控模塊進(jìn)一步包括 獲取單元用于掃描用戶最近訪問(wèn)的文件夾,獲取用戶最近訪問(wèn)的文件F,同時(shí)根據(jù)用戶操作日志表獲取該表中所記錄的用戶最近訪問(wèn)文件P;判斷單元,用于判斷文件F和F,是否是同一個(gè)文件,并且在判斷 出文件F和F,不是同一個(gè)文件的情況下,進(jìn)一步判斷判斷文件F是否 存在于用戶文件表中;文件插入單元,用于在判斷單元判斷出文件F不存在于用戶文件 表中的情況下將文件F插入到用戶文件表中;時(shí)間比較單元,用于在判斷單元判斷出文件F存在于用戶文件表 中的情況下將新操作的文件F的修改時(shí)間t與用戶文件表中該文件原來(lái) 的修改時(shí)間t,進(jìn)行比較;操作類型確定單元,用于在時(shí)間比較單元比較出t〉t,的情況下確 定操作類型為"修改",同時(shí)對(duì)用戶文件表中相應(yīng)記錄的最近修改時(shí)間 字段進(jìn)行更新,否則確定操作類型為"只讀";操作記錄插入單元用于將新的用戶操作記錄插入到用戶行為日志表中。
3、 根據(jù)權(quán)利要求2的系統(tǒng),其中時(shí)序關(guān)聯(lián)圖產(chǎn)生模塊進(jìn)一步包括 初始時(shí)序關(guān)聯(lián)圖構(gòu)建單元,用于基于用戶行為日志表構(gòu)建初始的時(shí)序關(guān)聯(lián)圖;優(yōu)化時(shí)序關(guān)聯(lián)圖生成單元,用于基于初始的時(shí)序關(guān)聯(lián)圖生成優(yōu)化 的時(shí)序關(guān)聯(lián)圖。
4、 根據(jù)權(quán)利要求3的系統(tǒng),其中任務(wù)識(shí)別模塊進(jìn)一步包括 矩陣表示單元,用于以鄰接矩陣方式表示時(shí)序關(guān)聯(lián)圖; 核心文件確定單元,用于基于操作類型來(lái)確定每個(gè)任務(wù)的核心文件;稠密塊尋找單元,用于基于每個(gè)核心文件尋找該文件在時(shí)序關(guān)聯(lián)圖的稠密塊。
5 、一種個(gè)人數(shù)據(jù)空間環(huán)境下的任務(wù)識(shí)別方法包括步驟A、 監(jiān)控用戶操作,獲取用戶的操作記錄,生成用戶行為記錄;B、 基于用戶行為日志表生成時(shí)序關(guān)聯(lián)圖;以及C、 在時(shí)序關(guān)聯(lián)圖上識(shí)別任務(wù)。
6、根據(jù)權(quán)利要求5的方法,其中步驟A進(jìn)一步包括Al、掃描用戶最近訪問(wèn)的文件夾,獲取用戶最近訪問(wèn)的文件F, 同時(shí)根據(jù)用戶日志表獲取該表中所記錄的用戶最近訪問(wèn)文件F,;A2、判斷文件F和F,是否是同一個(gè)文件,如果是,則不進(jìn)行操作, 繼續(xù)執(zhí)行步驟A1;如果不是,則轉(zhuǎn)步驟A3;A3:判斷文件F是否存在于用戶文件表中,如果不存在,則將F 插入到用戶文件表中,并轉(zhuǎn)步驟A5;如果存在,則轉(zhuǎn)步驟A4;A4:將新操作的文件F的修改時(shí)間t與用戶文件表中該文件原來(lái) 的修改時(shí)間t,進(jìn)行比較,如果t>t,,則確定文件F的操作類型為"修改", 否則確定文件F的操作類型為"只讀";A5:將以上步驟所生成新的用戶揭:作記錄插入到用戶行為日志表中。
7、 根據(jù)權(quán)利要求5的方法,其中步驟B進(jìn)一步包括 Bl、 基于用戶行為日志表構(gòu)建初始的時(shí)序關(guān)聯(lián)圖; B2、 基于初始的時(shí)序關(guān)聯(lián)圖生成優(yōu)化的時(shí)序關(guān)聯(lián)圖。
8、 根據(jù)權(quán)利要求7的方法,其中在步驟B1中 對(duì)應(yīng)每個(gè)單獨(dú)的用戶文件,生成圖上的一個(gè)點(diǎn);根據(jù)兩個(gè)文件之間是否存在時(shí)序關(guān)聯(lián),在兩個(gè)文件對(duì)應(yīng)的頂點(diǎn)之 間建立邊。
9、 根據(jù)權(quán)利要求7的方法,其中在步驟B2中在初始的時(shí)序關(guān)聯(lián)圖 上尋找時(shí)序鏈結(jié)構(gòu),將時(shí)序鏈結(jié)構(gòu)合并為一個(gè)頂點(diǎn),其中時(shí)序鏈結(jié)構(gòu) 為在時(shí)序關(guān)聯(lián)圖G上,若存在點(diǎn)vl,v2, ...,vn(n^4)以使得vi(i=2,..., n—OY義與vi—l、 vi+l相鄰,且vl、 vn度凄史不等于2,則v2,…,vn—l 構(gòu)成時(shí)序鏈結(jié)構(gòu)。
10、 根據(jù)權(quán)利要求5的方法,其中步驟C進(jìn)一步包括Cl、以鄰4妾矩陣方式表示時(shí)序關(guān)聯(lián)圖,每個(gè)頂點(diǎn)對(duì)應(yīng)一個(gè)用戶文 件,每個(gè)邊對(duì)應(yīng)用戶之間的時(shí)序關(guān)聯(lián)度;C2、基于操作類型確定每個(gè)任務(wù)的核心文件;C3、基于每個(gè)核心文件,尋找該文件在時(shí)序關(guān)聯(lián)圖的稠密塊。
11、 根據(jù)權(quán)利要求10的方法,其中步驟C3進(jìn)一步包括C3-l 、將核心文件A以及與之直接關(guān)聯(lián)的文件Bi加入到頂點(diǎn)集合 T中,其中文件Bi為在時(shí)序關(guān)聯(lián)圖中與核心文件A相鄰的頂點(diǎn);C3-2、對(duì)于T中每個(gè)頂點(diǎn)Fi而言,對(duì)與Fi相鄰的每個(gè)頂點(diǎn)V^j進(jìn) 行檢測(cè);C3-3、如果存在兩條邊E1 (Vij, VI)和E2 (Vij, V2),且Vl, V2GT,則將Vg加入到T中;C3-4、重復(fù)步驟C3-2和C3-3,直到T中的頂點(diǎn)數(shù)目不再增加為止。
全文摘要
一種個(gè)人數(shù)據(jù)空間環(huán)境下的任務(wù)識(shí)別系統(tǒng)和方法,其中該系統(tǒng)包括數(shù)據(jù)庫(kù),用于存儲(chǔ)用戶操作日志表、用戶文件表、以及用戶行為日志表;監(jiān)控模塊,用于監(jiān)控用戶操作,獲取用戶的操作記錄,生成用戶行為記錄;時(shí)序關(guān)聯(lián)圖產(chǎn)生模塊,用于基于用戶行為日志表生成時(shí)序關(guān)聯(lián)圖;以及任務(wù)識(shí)別模塊,用于在時(shí)序關(guān)聯(lián)圖上識(shí)別任務(wù)。
文檔編號(hào)G06F11/30GK101609462SQ20091009003
公開(kāi)日2009年12月23日 申請(qǐng)日期2009年7月29日 優(yōu)先權(quán)日2009年7月29日
發(fā)明者孟小峰 申請(qǐng)人:孟小峰